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(); }
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; }