diff --git a/src/se/hal/HalServer.java b/src/se/hal/HalServer.java index e568715b..ff3ceb09 100755 --- a/src/se/hal/HalServer.java +++ b/src/se/hal/HalServer.java @@ -1,12 +1,9 @@ package se.hal; -import se.hal.deamon.PCDataSynchronizationClient; -import se.hal.deamon.PCDataSynchronizationDaemon; -import se.hal.deamon.SensorDataAggregatorDaemon; -import se.hal.deamon.SensorDataCleanupDaemon; import se.hal.intf.HalDaemon; import se.hal.intf.HalHttpPage; +import se.hal.intf.HalJsonPage; import se.hal.page.*; import se.hal.struct.Event; import se.hal.struct.Sensor; @@ -56,14 +53,8 @@ public class HalServer { // init daemons daemons = new ArrayList<>(); - daemons.addAll(Arrays.asList(new HalDaemon[]{ - new SensorDataAggregatorDaemon(), - new SensorDataCleanupDaemon(), - })); - for (Iterator it=pluginManager.getObjectIterator(HalDaemon.class); - it.hasNext(); ){ + for (Iterator it=pluginManager.getObjectIterator(HalDaemon.class); it.hasNext(); ) daemons.add(it.next()); - } // We set only one thread for easier troubleshooting ScheduledExecutorService executor = Executors.newScheduledThreadPool(1); for(HalDaemon daemon : daemons){ @@ -75,20 +66,10 @@ public class HalServer { HalHttpPage.getRootNav().createSubNav("Sensors"); HalHttpPage.getRootNav().createSubNav("Events").setWeight(100); pages = new ArrayList<>(); - pages.addAll(Arrays.asList(new HalHttpPage[]{ - new MapHttpPage(), - - new SensorOverviewHttpPage(), - new SensorConfigHttpPage(), - - new EventOverviewHttpPage(), - new EventConfigHttpPage(), - new UserConfigHttpPage(), - })); - for (Iterator it=pluginManager.getObjectIterator(HalHttpPage.class); - it.hasNext(); ){ + for (Iterator it = pluginManager.getObjectIterator(HalJsonPage.class); it.hasNext(); ) + pages.add(it.next()); + for (Iterator it=pluginManager.getObjectIterator(HalHttpPage.class); it.hasNext(); ) pages.add(it.next()); - } HttpServer http = new HttpServer(HalContext.getIntegerProperty("http_port")); http.setDefaultPage(new HttpFilePage(FileUtil.find("resource/web/"))); diff --git a/src/se/hal/plugin.json b/src/se/hal/plugin.json new file mode 100755 index 00000000..658594a9 --- /dev/null +++ b/src/se/hal/plugin.json @@ -0,0 +1,20 @@ +{ + "version": 1.0, + "name": "Hal Core", + "interfaces": [ + {"se.hal.intf.HalDaemon": "se.hal.daemon.SensorDataAggregatorDaemon"}, + {"se.hal.intf.HalDaemon": "se.hal.daemon.SensorDataCleanupDaemon"}, + + + {"se.hal.intf.HalJsonPage": "se.hal.page.MapJsonPage"}, + {"se.hal.intf.HalHttpPage": "se.hal.page.MapHttpPage"}, + + {"se.hal.intf.HalJsonPage": "se.hal.page.SensorJsonPage"}, + {"se.hal.intf.HalHttpPage": "se.hal.page.SensorOverviewHttpPage"}, + {"se.hal.intf.HalHttpPage": "se.hal.page.SensorConfigHttpPage"}, + + {"se.hal.intf.HalHttpPage": "se.hal.page.EventOverviewHttpPage"}, + {"se.hal.intf.HalHttpPage": "se.hal.page.EventConfigHttpPage"}, + {"se.hal.intf.HalHttpPage": "se.hal.page.UserConfigHttpPage"} + ] +}