@PostConstruct public void init() { super.setJsonMarshaller(DataSetCore.get().getDataSetDefJSONMarshaller()); super.setDataSetDefRegistry(dataSetDefRegistry); super.setScanIntervalInMillis(scanIntervalInMillis); if (!StringUtils.isBlank(directory)) { deploy(directory); } }
public synchronized void deploy(final String dir) { if (scanIntervalInMillis < 1000) { log.error("Polling time can't be lower than 1000 ms"); return; } if (!validateDirectory(dir)) { log.warn("Data sets deployment directory invalid: " + dir); directory = null; return; } log.info("Data sets deployment directory = " + dir); directory = dir; doDeploy(); if (scanIntervalInMillis > 0 && watcherThread == null) { watcherThread = new Thread(new Runnable() { public void run() { // TODO: replace by NIO WatcherService (requires upgrade to Java 7) while (directory != null) { try { Thread.sleep(scanIntervalInMillis); doDeploy(); } catch (InterruptedException e) { log.error("Data set watcher thread error.", e); } } } }); watcherThread.start(); } }
@PreDestroy public synchronized void stop() { super.stop(); } }
@Before public void setUp() { dataSetDefDeployer = DataSetCore.get().getDataSetDefDeployer(); dataSetDefRegistry = DataSetCore.get().getDataSetDefRegistry(); dataSetDefRegistry.addListener(registryListener); dataSetDefDeployer.setScanIntervalInMillis(1000); assertNotNull(dataSetDefDeployer); assertNotNull(dataSetDefRegistry); }
@Test public void testDoDeploy() throws Exception { assertNull(dataSetDefRegistry.getDataSetDef("salesPerYearAutoDeploy")); dataSetDefDeployer.deploy(dataSetsDir); FileOutputStream doDeploy = new FileOutputStream(new File(dataSetsDir, "salesPerYear.dset.deploy")); doDeploy.write("".getBytes()); doDeploy.flush(); doDeploy.close(); Thread.sleep(2000); DataSetDef def = dataSetDefRegistry.getDataSetDef("salesPerYearAutoDeploy"); assertNotNull(def); verify(registryListener).onDataSetDefRegistered(def); } }
public void run() { // TODO: replace by NIO WatcherService (requires upgrade to Java 7) while (directory != null) { try { Thread.sleep(scanIntervalInMillis); doDeploy(); } catch (InterruptedException e) { log.error("Data set watcher thread error.", e); } } } });
public DataSetDefDeployer getDataSetDefDeployer() { if (dataSetDefDeployer == null) { dataSetDefDeployer = new DataSetDefDeployer( checkNotNull(getDataSetDefJSONMarshaller(), "DataSetDefJSONMarshaller"), checkNotNull(getDataSetDefRegistry(), DATA_SET_DEF_REGISTRY)); } return dataSetDefDeployer; }
File csvFile = getCSVFile(csvDef); if (csvFile != null) { csvDef.setFilePath(csvFile.getAbsolutePath());
@Before public void setUp() { dataSetDefDeployer = DataSetCore.get().getDataSetDefDeployer(); dataSetDefRegistry = DataSetCore.get().getDataSetDefRegistry(); dataSetDefRegistry.addListener(registryListener); dataSetDefDeployer.setScanIntervalInMillis(1000); assertNotNull(dataSetDefDeployer); assertNotNull(dataSetDefRegistry); }
@Test public void testDoDeploy() throws Exception { assertNull(dataSetDefRegistry.getDataSetDef("salesPerYearAutoDeploy")); dataSetDefDeployer.deploy(dataSetsDir); FileOutputStream doDeploy = new FileOutputStream(new File(dataSetsDir, "salesPerYear.dset.deploy")); doDeploy.write("".getBytes()); doDeploy.flush(); doDeploy.close(); Thread.sleep(2000); DataSetDef def = dataSetDefRegistry.getDataSetDef("salesPerYearAutoDeploy"); assertNotNull(def); verify(registryListener).onDataSetDefRegistered(def); } }
@PostConstruct public void init() { super.setJsonMarshaller(DataSetCore.get().getDataSetDefJSONMarshaller()); super.setDataSetDefRegistry(dataSetDefRegistry); super.setScanIntervalInMillis(scanIntervalInMillis); if (!StringUtils.isBlank(directory)) { deploy(directory); } }
@PreDestroy public synchronized void stop() { super.stop(); } }