Moved PowerChallenge into Hal

Former-commit-id: 34665800518933f0b92723378601a3bafc53fdb0
This commit is contained in:
Ziver Koc 2016-01-11 18:02:45 +01:00
parent 5b2dffeb43
commit 4428824061
14 changed files with 35 additions and 30 deletions

View file

@ -1,13 +1,13 @@
package se.hal;
import se.hal.deamon.DataAggregatorDaemon;
import se.hal.deamon.DataCleanupDaemon;
import se.hal.deamon.DataSynchronizationClient;
import se.hal.deamon.DataSynchronizationDaemon;
import se.hal.deamon.SensorDataAggregatorDaemon;
import se.hal.deamon.SensorDataCleanupDaemon;
import se.hal.deamon.PCDataSynchronizationClient;
import se.hal.deamon.PCDataSynchronizationDaemon;
import se.hal.intf.HalDaemon;
import se.hal.intf.HalHttpPage;
import se.hal.page.PCConfigureHttpPage;
import se.hal.page.SensorConfigHttpPage;
import se.hal.page.PCHeatMapHttpPage;
import se.hal.page.PCOverviewHttpPage;
import se.hal.struct.Event;
@ -26,7 +26,7 @@ import java.util.logging.Level;
/**
* Created by Ziver on 2015-12-03.
*/
public class PowerChallenge {
public class HalServer {
private static HalDaemon[] daemons;
private static HalHttpPage[] pages;
@ -58,10 +58,10 @@ public class PowerChallenge {
// init daemons
daemons = new HalDaemon[]{
new DataAggregatorDaemon(),
new DataSynchronizationDaemon(),
new DataSynchronizationClient(),
new DataCleanupDaemon()
new SensorDataAggregatorDaemon(),
new PCDataSynchronizationDaemon(),
new PCDataSynchronizationClient(),
new SensorDataCleanupDaemon()
};
// We set only one thread for easier troubleshooting
ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
@ -74,7 +74,7 @@ public class PowerChallenge {
pages = new HalHttpPage[]{
new PCOverviewHttpPage(),
new PCHeatMapHttpPage(),
new PCConfigureHttpPage()
new SensorConfigHttpPage()
};
HttpServer http = new HttpServer(HalContext.getIntegerProperty("http_port"));
http.setDefaultPage(new HttpFilePage(FileUtil.find("web-resource/")));

View file

@ -19,7 +19,7 @@ import java.util.regex.Pattern;
* Date: 2013-12-17
* Time: 10:59
*/
public class HalClient {
public class HalSpeechClient {
private static HashMap<String, SwitchEvent> switches = new HashMap<String, SwitchEvent>();

View file

@ -1,7 +1,7 @@
package se.hal.deamon;
import se.hal.HalContext;
import se.hal.deamon.DataSynchronizationDaemon.*;
import se.hal.deamon.PCDataSynchronizationDaemon.*;
import se.hal.intf.HalDaemon;
import se.hal.struct.Sensor;
import se.hal.struct.User;
@ -24,7 +24,7 @@ import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
import java.util.logging.Logger;
public class DataSynchronizationClient implements HalDaemon {
public class PCDataSynchronizationClient implements HalDaemon {
private static final Logger logger = LogUtil.getLogger();
private static final long SYNC_INTERVAL = 5 * 60 * 1000; // 5 min

View file

@ -1,7 +1,7 @@
package se.hal.deamon;
import se.hal.HalContext;
import se.hal.deamon.DataSynchronizationClient.*;
import se.hal.deamon.PCDataSynchronizationClient.*;
import se.hal.intf.HalDaemon;
import se.hal.struct.Sensor;
import se.hal.struct.User;
@ -25,11 +25,11 @@ import java.util.concurrent.ScheduledExecutorService;
import java.util.logging.Level;
import java.util.logging.Logger;
public class DataSynchronizationDaemon extends ThreadedTCPNetworkServer implements HalDaemon {
public class PCDataSynchronizationDaemon extends ThreadedTCPNetworkServer implements HalDaemon {
private static final Logger logger = LogUtil.getLogger();
public DataSynchronizationDaemon() {
public PCDataSynchronizationDaemon() {
super(HalContext.getIntegerProperty("sync_port"));
}

View file

@ -21,7 +21,7 @@ import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
import java.util.logging.Logger;
public class DataAggregatorDaemon implements HalDaemon {
public class SensorDataAggregatorDaemon implements HalDaemon {
private static final Logger logger = LogUtil.getLogger();
public void initiate(ScheduledExecutorService executor){

View file

@ -20,7 +20,7 @@ import java.util.concurrent.TimeUnit;
import java.util.logging.Level;
import java.util.logging.Logger;
public class DataCleanupDaemon implements HalDaemon {
public class SensorDataCleanupDaemon implements HalDaemon {
private static final Logger logger = LogUtil.getLogger();
public void initiate(ScheduledExecutorService executor){

View file

@ -7,6 +7,8 @@ import zutil.parser.Templator;
import java.util.Map;
public class PCHeatMapHttpPage extends HalHttpPage {
private static final String TEMPLATE = "web-resource/pc_heatmap.tmpl";
public PCHeatMapHttpPage() {
super("Heatmap", "map");
@ -19,7 +21,7 @@ public class PCHeatMapHttpPage extends HalHttpPage {
Map<String, String> request)
throws Exception{
Templator tmpl = new Templator(FileUtil.find("web-resource/heatmap.tmpl"));
Templator tmpl = new Templator(FileUtil.find(TEMPLATE));
return tmpl;
}

View file

@ -16,9 +16,10 @@ import java.util.ArrayList;
import java.util.Map;
public class PCOverviewHttpPage extends HalHttpPage {
private static final String TEMPLATE = "web-resource/pc_overview.tmpl";
public PCOverviewHttpPage() {
super("Overview", "overview");
super("Power;Challenge", "powerChallenge");
}
@Override
@ -80,7 +81,7 @@ public class PCOverviewHttpPage extends HalHttpPage {
ArrayList<PowerData> dayDataList = DBConnection.exec(stmt, new SQLPowerDataBuilder());
Templator tmpl = new Templator(FileUtil.find("web-resource/overview.tmpl"));
Templator tmpl = new Templator(FileUtil.find(TEMPLATE));
tmpl.set("minData", minDataList);
tmpl.set("hourData", hourDataList);
tmpl.set("dayData", dayDataList);

View file

@ -13,7 +13,9 @@ import zutil.ui.Configurator.*;
import java.util.Map;
public class PCConfigureHttpPage extends HalHttpPage {
public class SensorConfigHttpPage extends HalHttpPage {
private static final String TEMPLATE = "web-resource/sensor_config.tmpl";
private class SensorDataParams{
public Class clazz;
public ConfigurationParam[] params;
@ -21,7 +23,7 @@ public class PCConfigureHttpPage extends HalHttpPage {
private SensorDataParams[] sensorConfigurations;
public PCConfigureHttpPage() {
public SensorConfigHttpPage() {
super("Configuration", "config");
sensorConfigurations = new SensorDataParams[
@ -118,7 +120,7 @@ public class PCConfigureHttpPage extends HalHttpPage {
}
// Output
Templator tmpl = new Templator(FileUtil.find("web-resource/configure.tmpl"));
Templator tmpl = new Templator(FileUtil.find(TEMPLATE));
tmpl.set("user", localUser);
tmpl.set("localSensors", Sensor.getLocalSensors(db));
tmpl.set("localSensorConf", sensorConfigurations);