Package org.apache.openmeetings.data.flvrecord.listener

Examples of org.apache.openmeetings.data.flvrecord.listener.StreamListener


      log.debug("### streamName " + streamName);
      log.debug("### conn.getScope() " + conn.getScope());
      log.debug("### flvRecordingMetaDataId " + flvRecordingMetaDataId);
      log.debug("### isScreenData " + isScreenData);
      log.debug("### isInterview " + isInterview);
      StreamListener streamListener = new StreamListener(!isScreenData, streamName, conn.getScope(),
          flvRecordingMetaDataId, isScreenData, isInterview, metaDataDao, metaDeltaDao);

      streamListeners.put(flvRecordingMetaDataId, streamListener);

      stream.addStreamListener(streamListener);
View Full Code Here


      log.debug("** stopRecordingShow: " + conn);
      log.debug("### Stop recording show for broadcastId: " + broadcastId + " || " + conn.getScope().getContextPath());

      Object streamToClose = scopeApplicationAdapter.getBroadcastStream(conn.getScope(), broadcastId);

      StreamListener listenerAdapter = streamListeners.get(flvRecordingMetaDataId);

      log.debug("Stream Closing :: " + flvRecordingMetaDataId);

      ClientBroadcastStream stream = (ClientBroadcastStream) streamToClose;

      // the stream can be null if the user just closes the browser
      // without canceling the recording before leaving
      if (stream != null) {
        // Iterate through all stream listeners and stop the appropriate
        if (stream.getStreamListeners() != null) {
          for (IStreamListener iStreamListener : stream.getStreamListeners()) {
            stream.removeStreamListener(iStreamListener);
          }
        }
      }

      if (listenerAdapter == null) {
        log.debug("Stream Not Found :: " + flvRecordingMetaDataId);
        log.debug("Available Streams :: " + streamListeners.size());

        for (Long entryKey : streamListeners.keySet()) {
          log.debug("Stored flvRecordingMetaDataId in Map: " + entryKey);
        }

        // Manually call finish on the stream so that there is no endless loop waiting
        // in the FlvRecorderConverter waiting for the stream to finish
        // this would normally happen in the Listener
        FlvRecordingMetaData metaData = metaDataDao.get(flvRecordingMetaDataId);
        if (metaData.getStreamStatus() == Status.STARTED) {
          metaData.setStreamStatus(Status.STOPPED);
          metaDataDao.update(metaData);
        }
        throw new IllegalStateException("Could not find Listener to stop! flvRecordingMetaDataId " + flvRecordingMetaDataId);
      } else {
        FlvRecordingMetaData metaData = metaDataDao.get(flvRecordingMetaDataId);
        metaData.setStreamStatus(Status.STOPPING);
        metaDataDao.update(metaData);
      }

      listenerAdapter.closeStream();
      streamListeners.remove(flvRecordingMetaDataId);

    } catch (Exception err) {
      log.error("[stopRecordingShow]", err);
    }
View Full Code Here

      log.debug("### streamName " + streamName);
      log.debug("### conn.getScope() " + conn.getScope());
      log.debug("### flvRecordingMetaDataId " + flvRecordingMetaDataId);
      log.debug("### isScreenData " + isScreenData);
      log.debug("### isInterview " + isInterview);
      StreamListener streamListener = new StreamListener(!isScreenData, streamName, conn.getScope(),
          flvRecordingMetaDataId, isScreenData, isInterview, metaDataDao, metaDeltaDao);

      streamListeners.put(flvRecordingMetaDataId, streamListener);

      stream.addStreamListener(streamListener);
View Full Code Here

      log.debug("** stopRecordingShow: " + conn);
      log.debug("### Stop recording show for broadcastId: " + broadcastId + " || " + conn.getScope().getContextPath());

      Object streamToClose = scopeApplicationAdapter.getBroadcastStream(conn.getScope(), broadcastId);

      StreamListener listenerAdapter = streamListeners.get(flvRecordingMetaDataId);

      log.debug("Stream Closing :: " + flvRecordingMetaDataId);

      ClientBroadcastStream stream = (ClientBroadcastStream) streamToClose;

      // the stream can be null if the user just closes the browser
      // without canceling the recording before leaving
      if (stream != null) {
        // Iterate through all stream listeners and stop the appropriate
        if (stream.getStreamListeners() != null) {
          for (IStreamListener iStreamListener : stream.getStreamListeners()) {
            stream.removeStreamListener(iStreamListener);
          }
        }
      }

      if (listenerAdapter == null) {
        log.debug("Stream Not Found :: " + flvRecordingMetaDataId);
        log.debug("Available Streams :: " + streamListeners.size());

        for (Long entryKey : streamListeners.keySet()) {
          log.debug("Stored flvRecordingMetaDataId in Map: " + entryKey);
        }

        // Manually call finish on the stream so that there is no endless loop waiting
        // in the FlvRecorderConverter waiting for the stream to finish
        // this would normally happen in the Listener
        FlvRecordingMetaData metaData = metaDataDao.get(flvRecordingMetaDataId);
        if (metaData.getStreamStatus() == Status.STARTED) {
          metaData.setStreamStatus(Status.STOPPED);
          metaDataDao.update(metaData);
        }
        throw new IllegalStateException("Could not find Listener to stop! flvRecordingMetaDataId " + flvRecordingMetaDataId);
      } else {
        FlvRecordingMetaData metaData = metaDataDao.get(flvRecordingMetaDataId);
        metaData.setStreamStatus(Status.STOPPING);
        metaDataDao.update(metaData);
      }

      listenerAdapter.closeStream();
      streamListeners.remove(flvRecordingMetaDataId);

    } catch (Exception err) {
      log.error("[stopRecordingShow]", err);
    }
View Full Code Here

      log.debug("### streamName " + streamName);
      log.debug("### conn.getScope() " + conn.getScope());
      log.debug("### flvRecordingMetaDataId " + metaId);
      log.debug("### isScreenData " + isScreenData);
      log.debug("### isInterview " + isInterview);
      StreamListener streamListener = new StreamListener(!isScreenData, streamName, conn.getScope(), metaId, isScreenData, isInterview, metaDataDao, metaDeltaDao);

      streamListeners.put(metaId, streamListener);

      stream.addStreamListener(streamListener);
      // Just for Debug Purpose
View Full Code Here

      log.debug("** stopRecordingShow: " + conn);
      log.debug("### Stop recording show for broadcastId: " + broadcastId + " || " + conn.getScope().getContextPath());

      Object streamToClose = scopeApplicationAdapter.getBroadcastStream(conn.getScope(), broadcastId);

      StreamListener listenerAdapter = streamListeners.get(metaId);

      log.debug("Stream Closing :: " + metaId);

      ClientBroadcastStream stream = (ClientBroadcastStream) streamToClose;

      // the stream can be null if the user just closes the browser
      // without canceling the recording before leaving
      if (stream != null) {
        // Iterate through all stream listeners and stop the appropriate
        if (stream.getStreamListeners() != null) {
          for (IStreamListener iStreamListener : stream.getStreamListeners()) {
            stream.removeStreamListener(iStreamListener);
          }
        }
      }

      FlvRecordingMetaData metaData = metaDataDao.get(metaId);
      BaseConverter.printMetaInfo(metaData, "Stopping the stream");
      // Manually call finish on the stream so that there is no endless loop waiting in the FlvRecorderConverter waiting for the stream to finish
      // this would normally happen in the Listener
      Status s = metaData.getStreamStatus();
      if (Status.NONE == s) {
        log.debug("Stream was not started, no need to stop :: stream with id " + metaId);
      } else {
        metaData.setStreamStatus(listenerAdapter == null && s == Status.STARTED ? Status.STOPPED : Status.STOPPING);
        log.debug("Stopping the stream :: New status == " + metaData.getStreamStatus());
      }
      metaDataDao.update(metaData);
      if (listenerAdapter == null) {
        log.debug("Stream Not Found :: " + metaId);
        log.debug("Available Streams :: " + streamListeners.size());

        for (Long entryKey : streamListeners.keySet()) {
          log.debug("Stored flvRecordingMetaDataId in Map: " + entryKey);
        }
        throw new IllegalStateException("Could not find Listener to stop! flvRecordingMetaDataId " + metaId);
      }

      listenerAdapter.closeStream();
      streamListeners.remove(metaId);

    } catch (Exception err) {
      log.error("[stopRecordingShow]", err);
    }
View Full Code Here

      log.debug("### flvRecordingMetaDataId "
          + flvRecordingMetaDataId);
      log.debug("### isScreenData " + isScreenData);
      log.debug("### isInterview " + isInterview);

      StreamListener streamListener = new StreamListener(!isScreenData, streamName,
                                conn.getScope(), flvRecordingMetaDataId, isScreenData,
                                isInterview, flvRecordingMetaDataDao, flvRecordingMetaDeltaDao);

      streamListeners.put(flvRecordingMetaDataId, streamListener);
View Full Code Here

          + " || " + conn.getScope().getContextPath());

      Object streamToClose = scopeApplicationAdapter.getBroadcastStream(
          conn.getScope(), broadcastId);

      StreamListener listenerAdapter = streamListeners.get(flvRecordingMetaDataId);
     
      log.debug("Stream Closing :: " + flvRecordingMetaDataId);
     
      ClientBroadcastStream stream = (ClientBroadcastStream) streamToClose;

      //the stream can be null if the user just closes the browser
      //without canceling the recording before leaving
      if (stream != null) {
        //Iterate through all stream listeners and stop the appropriate
        if (stream.getStreamListeners() != null) {
 
          for (IStreamListener iStreamListener : stream
              .getStreamListeners()) {
            stream.removeStreamListener(iStreamListener);
          }
        }
      }
     
      if (listenerAdapter == null) {
       
        log.debug("Stream Not Found :: " + flvRecordingMetaDataId);
        log.debug("Available Streams :: "+streamListeners.size());
       
        for (Long entryKey : streamListeners.keySet()) {
          log.debug("Stored flvRecordingMetaDataId in Map: "+ entryKey);
        }
       
        //Manually call finish on the stream so that there is no endless loop waiting 
        //in the FlvRecorderConverter waiting for the stream to finish
        //this would normally happen in the Listener
        FlvRecordingMetaData flvRecordingMetaData = flvRecordingMetaDataDaoImpl.
              getFlvRecordingMetaDataById(flvRecordingMetaDataId);
        flvRecordingMetaData.setStreamReaderThreadComplete(true);
        flvRecordingMetaDataDaoImpl.updateFlvRecordingMetaData(flvRecordingMetaData);
       
        throw new IllegalStateException("Could not find Listener to stop! flvRecordingMetaDataId "+flvRecordingMetaDataId);
      }
     
      listenerAdapter.closeStream();
      streamListeners.remove(flvRecordingMetaDataId);
     

    } catch (Exception err) {
      log.error("[stopRecordingShow]", err);
View Full Code Here

TOP

Related Classes of org.apache.openmeetings.data.flvrecord.listener.StreamListener

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.