Пример #1
0
  private void fireAddedEvent(StreamDataSource sds) {
    Iterator it = listeners.iterator();

    while (it.hasNext()) {
      ((StreamManagerListener) it.next()).streamAdded(sds);
    }
  }
Пример #2
0
 private void addDefault(StreamDataSource sds) {
   Iterator it = defaultProcs.iterator();
   while (it.hasNext()) {
     FlowProcessor proc = (FlowProcessor) it.next();
     sds.registerRaw(proc);
   }
 }
Пример #3
0
  public void removeStream(StreamDataSource stream) {
    Iterator it = streams.iterator();
    while (it.hasNext()) {
      StreamDataSource sds = (StreamDataSource) it.next();
      sds.removeStream(stream);
    }

    streams.remove(stream);
    fireRemovedEvent(stream);
  }
Пример #4
0
  public void saveStreams() throws IOException {
    Config config = Config.getConfiguration("manager.streams");

    config.setArray("streams", streams.toArray());

    Iterator it = streams.iterator();
    while (it.hasNext()) {
      DataSource ds = (DataSource) it.next();
      ds.save();
    }

    config.save();
  }
Пример #5
0
  public void loadStreams() throws Exception {
    Config config = Config.getConfiguration("manager.streams");
    afterLoadMap = new HashMap();
    Object[] names = config.getArray("streams", null);

    if (names == null) {
      return;
    }

    for (int i = 0; i < names.length; i++) {
      StreamDataSource sds = new StreamDataSource(names[i].toString());
      sds.load();
      sds.initiate();
      addStreamNoFire(sds);
      addDefault(sds);
    }

    Iterator it = afterLoadMap.keySet().iterator();
    while (it.hasNext()) {
      StreamDataSource sds = (StreamDataSource) it.next();
      List sList = (List) afterLoadMap.get(sds);

      Iterator addIt = sList.iterator();
      while (addIt.hasNext()) {
        Integer serial = (Integer) addIt.next();
        StreamDataSource addStream = getStream(serial.intValue());
        if (addStream != null) {
          sds.addStream(addStream);
        } else {
          logger.warn("Unable to find source (" + serial + ") for " + sds);
        }
      }
    }

    afterLoadMap = null;
  }