Renamed HalHttpPage to HalWebPage

This commit is contained in:
Ziver Koc 2020-06-22 22:02:17 +02:00
parent cf3c922fa2
commit 4f7476bb84
14 changed files with 51 additions and 67 deletions

View file

@ -2,7 +2,7 @@ package se.hal;
import se.hal.intf.HalDaemon; import se.hal.intf.HalDaemon;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import se.hal.intf.HalJsonPage; import se.hal.intf.HalJsonPage;
import se.hal.page.*; import se.hal.page.*;
import se.hal.struct.Event; import se.hal.struct.Event;
@ -29,7 +29,7 @@ public class HalServer {
private static List<HalDaemon> daemons = new ArrayList<>(); private static List<HalDaemon> daemons = new ArrayList<>();
private static HttpServer http; private static HttpServer http;
private static List<HalHttpPage> pages = new ArrayList<>(); private static List<HalWebPage> pages = new ArrayList<>();
@ -68,17 +68,18 @@ public class HalServer {
registerDaemon(it.next()); registerDaemon(it.next());
// init http server // Init http server
HalHttpPage.getRootNav().createSubNav("Sensors"); HalWebPage.getRootNav().createSubNav("Sensors");
HalHttpPage.getRootNav().createSubNav("Events").setWeight(100); HalWebPage.getRootNav().createSubNav("Events").setWeight(100);
HalWebPage.getRootNav().createSubNav("Settings").setWeight(200);
http = new HttpServer(HalContext.getIntegerProperty("http_port")); http = new HttpServer(HalContext.getIntegerProperty("http_port"));
http.setDefaultPage(new HttpFilePage(FileUtil.find("resource/web/"))); http.setDefaultPage(new HttpFilePage(FileUtil.find("resource/web/")));
http.setPage("/", new HttpRedirectPage("/map")); http.setPage("/", new HttpRedirectPage("/map"));
http.setPage(HalAlertManager.getInstance().getUrl(), HalAlertManager.getInstance()); http.setPage(HalAlertManager.getInstance().getUrl(), HalAlertManager.getInstance());
for (Iterator<HalHttpPage> it = pluginManager.getObjectIterator(HalJsonPage.class); it.hasNext(); ) for (Iterator<HalWebPage> it = pluginManager.getObjectIterator(HalJsonPage.class); it.hasNext(); )
registerPage(it.next()); registerPage(it.next());
for (Iterator<HalHttpPage> it=pluginManager.getObjectIterator(HalHttpPage.class); it.hasNext(); ) for (Iterator<HalWebPage> it = pluginManager.getObjectIterator(HalWebPage.class); it.hasNext(); )
registerPage(it.next()); registerPage(it.next());
http.start(); http.start();
} }
@ -88,7 +89,7 @@ public class HalServer {
daemons.add(daemon); daemons.add(daemon);
daemon.initiate(daemonExecutor); daemon.initiate(daemonExecutor);
} }
public static void registerPage(HalHttpPage page){ public static void registerPage(HalWebPage page){
pages.add(page); pages.add(page);
http.setPage(page.getId(), page); http.setPage(page.getId(), page);
} }

View file

@ -2,7 +2,6 @@ package se.hal.intf;
import zutil.log.LogUtil; import zutil.log.LogUtil;
import zutil.net.http.HttpHeader; import zutil.net.http.HttpHeader;
import zutil.net.http.HttpPage;
import zutil.net.http.HttpPrintStream; import zutil.net.http.HttpPrintStream;
import zutil.parser.DataNode; import zutil.parser.DataNode;
import zutil.parser.Templator; import zutil.parser.Templator;
@ -16,7 +15,7 @@ import java.util.logging.Logger;
/** /**
* A interface defining a Hal json endpoint * A interface defining a Hal json endpoint
*/ */
public abstract class HalJsonPage extends HalHttpPage{ public abstract class HalJsonPage extends HalWebPage {
private static final Logger logger = LogUtil.getLogger(); private static final Logger logger = LogUtil.getLogger();
public HalJsonPage(String id) { public HalJsonPage(String id) {

View file

@ -16,7 +16,7 @@ import java.io.IOException;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
public abstract class HalHttpPage implements HttpPage{ public abstract class HalWebPage implements HttpPage{
private static final String TEMPLATE = "resource/web/main_index.tmpl"; private static final String TEMPLATE = "resource/web/main_index.tmpl";
private static Navigation rootNav = Navigation.createRootNav(); private static Navigation rootNav = Navigation.createRootNav();
private static Navigation userNav = Navigation.createRootNav(); private static Navigation userNav = Navigation.createRootNav();
@ -24,7 +24,7 @@ public abstract class HalHttpPage implements HttpPage{
private String pageId; private String pageId;
private boolean showSubNav; private boolean showSubNav;
public HalHttpPage(String id){ public HalWebPage(String id){
this.pageId = id; this.pageId = id;
this.showSubNav = true; this.showSubNav = true;
} }

View file

@ -2,7 +2,7 @@ package se.hal.page;
import se.hal.ControllerManager; import se.hal.ControllerManager;
import se.hal.HalContext; import se.hal.HalContext;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import se.hal.page.HalAlertManager.AlertLevel; import se.hal.page.HalAlertManager.AlertLevel;
import se.hal.page.HalAlertManager.AlertTTL; import se.hal.page.HalAlertManager.AlertTTL;
import se.hal.page.HalAlertManager.HalAlert; import se.hal.page.HalAlertManager.HalAlert;
@ -19,14 +19,14 @@ import java.util.ArrayList;
import java.util.Map; import java.util.Map;
import java.util.logging.Logger; import java.util.logging.Logger;
public class EventConfigHttpPage extends HalHttpPage { public class EventConfigWebPage extends HalWebPage {
private static final Logger logger = LogUtil.getLogger(); private static final Logger logger = LogUtil.getLogger();
private static final String TEMPLATE = "resource/web/event_config.tmpl"; private static final String TEMPLATE = "resource/web/event_config.tmpl";
private ArrayList<ClassConfigurationData> eventConfigurations; private ArrayList<ClassConfigurationData> eventConfigurations;
public EventConfigHttpPage() { public EventConfigWebPage() {
super("event_config"); super("event_config");
super.getRootNav().createSubNav("Settings").createSubNav(this.getId(), "Event Settings").setWeight(100); super.getRootNav().createSubNav("Settings").createSubNav(this.getId(), "Event Settings").setWeight(100);

View file

@ -2,10 +2,7 @@ package se.hal.page;
import se.hal.ControllerManager; import se.hal.ControllerManager;
import se.hal.HalContext; import se.hal.HalContext;
import se.hal.intf.HalEventConfig; import se.hal.intf.HalWebPage;
import se.hal.intf.HalEventData;
import se.hal.intf.HalHttpPage;
import se.hal.struct.AbstractDevice;
import se.hal.struct.Event; import se.hal.struct.Event;
import se.hal.struct.devicedata.SwitchEventData; import se.hal.struct.devicedata.SwitchEventData;
import se.hal.util.DeviceNameComparator; import se.hal.util.DeviceNameComparator;
@ -23,14 +20,14 @@ import java.util.List;
import java.util.Map; import java.util.Map;
import java.util.logging.Logger; import java.util.logging.Logger;
public class EventOverviewHttpPage extends HalHttpPage { public class EventOverviewWebPage extends HalWebPage {
private static final Logger logger = LogUtil.getLogger(); private static final Logger logger = LogUtil.getLogger();
private static final int HISTORY_LIMIT = 200; private static final int HISTORY_LIMIT = 200;
private static final String OVERVIEW_TEMPLATE = "resource/web/event_overview.tmpl"; private static final String OVERVIEW_TEMPLATE = "resource/web/event_overview.tmpl";
private static final String DETAIL_TEMPLATE = "resource/web/event_detail.tmpl"; private static final String DETAIL_TEMPLATE = "resource/web/event_detail.tmpl";
public EventOverviewHttpPage(){ public EventOverviewWebPage(){
super("event_overview"); super("event_overview");
super.getRootNav().createSubNav("Events").createSubNav(this.getId(), "Overview"); super.getRootNav().createSubNav("Events").createSubNav(this.getId(), "Overview");
} }

View file

@ -1,7 +1,7 @@
package se.hal.page; package se.hal.page;
import se.hal.HalContext; import se.hal.HalContext;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import zutil.io.file.FileUtil; import zutil.io.file.FileUtil;
import zutil.net.http.HttpHeader; import zutil.net.http.HttpHeader;
import zutil.net.http.HttpPrintStream; import zutil.net.http.HttpPrintStream;
@ -16,14 +16,14 @@ import java.io.IOException;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.Map; import java.util.Map;
public class MapHttpPage extends HalHttpPage { public class MapWebPage extends HalWebPage {
private static final String TEMPLATE = "resource/web/map.tmpl"; private static final String TEMPLATE = "resource/web/map.tmpl";
private String bgType; private String bgType;
private byte[] bgImage; private byte[] bgImage;
public MapHttpPage() { public MapWebPage() {
super("map"); super("map");
super.getRootNav().createSubNav(this.getId(), "Map").setWeight(-100); super.getRootNav().createSubNav(this.getId(), "Map").setWeight(-100);
super.showSubNav(false); super.showSubNav(false);

View file

@ -1,17 +1,16 @@
package se.hal.page; package se.hal.page;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import zutil.io.file.FileUtil; import zutil.io.file.FileUtil;
import zutil.net.http.HttpHeader;
import zutil.parser.Templator; import zutil.parser.Templator;
import java.util.Map; import java.util.Map;
public class PCHeatMapHttpPage extends HalHttpPage { public class PCHeatMapWebPage extends HalWebPage {
private static final String TEMPLATE = "resource/web/pc_heatmap.tmpl"; private static final String TEMPLATE = "resource/web/pc_heatmap.tmpl";
public PCHeatMapHttpPage() { public PCHeatMapWebPage() {
super("pc_heatmap"); super("pc_heatmap");
super.getRootNav().createSubNav("Sensors").createSubNav(this.getId(), "Heatmap").setWeight(60); super.getRootNav().createSubNav("Sensors").createSubNav(this.getId(), "Heatmap").setWeight(60);
} }

View file

@ -1,7 +1,7 @@
package se.hal.page; package se.hal.page;
import se.hal.HalContext; import se.hal.HalContext;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import se.hal.struct.Sensor; import se.hal.struct.Sensor;
import se.hal.struct.User; import se.hal.struct.User;
import zutil.db.DBConnection; import zutil.db.DBConnection;
@ -11,10 +11,10 @@ import zutil.parser.Templator;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
public class PCOverviewHttpPage extends HalHttpPage { public class PCOverviewWebPage extends HalWebPage {
private static final String TEMPLATE = "resource/web/pc_overview.tmpl"; private static final String TEMPLATE = "resource/web/pc_overview.tmpl";
public PCOverviewHttpPage() { public PCOverviewWebPage() {
super("pc_overview"); super("pc_overview");
super.getRootNav().createSubNav("Sensors").createSubNav(this.getId(), "Power;Challenge").setWeight(50); super.getRootNav().createSubNav("Sensors").createSubNav(this.getId(), "Power;Challenge").setWeight(50);
} }

View file

@ -1,30 +1,20 @@
package se.hal.page; package se.hal.page;
import se.hal.ControllerManager;
import se.hal.HalContext; import se.hal.HalContext;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import se.hal.struct.Event;
import se.hal.struct.devicedata.SwitchEventData;
import se.hal.util.DeviceNameComparator;
import se.hal.util.HistoryDataListSqlResult;
import se.hal.util.HistoryDataListSqlResult.HistoryData;
import zutil.ObjectUtil;
import zutil.db.DBConnection; import zutil.db.DBConnection;
import zutil.io.file.FileUtil; import zutil.io.file.FileUtil;
import zutil.log.LogUtil;
import zutil.parser.Templator; import zutil.parser.Templator;
import java.sql.PreparedStatement;
import java.util.*; import java.util.*;
import java.util.logging.Logger;
public class PropertySettingsPage extends HalHttpPage { public class PropertyConfigWebPage extends HalWebPage {
private static final String TEMPLATE = "resource/web/properties_config.tmpl"; private static final String TEMPLATE = "resource/web/properties_config.tmpl";
public PropertySettingsPage(){ public PropertyConfigWebPage(){
super("properties"); super("properties");
super.getRootNav().createSubNav("Settings").setWeight(100).createSubNav(this.getId(), "Properties"); super.getRootNav().createSubNav("Settings").createSubNav(this.getId(), "Properties");
} }
@Override @Override

View file

@ -2,7 +2,7 @@ package se.hal.page;
import se.hal.ControllerManager; import se.hal.ControllerManager;
import se.hal.HalContext; import se.hal.HalContext;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import se.hal.page.HalAlertManager.AlertLevel; import se.hal.page.HalAlertManager.AlertLevel;
import se.hal.page.HalAlertManager.AlertTTL; import se.hal.page.HalAlertManager.AlertTTL;
import se.hal.page.HalAlertManager.HalAlert; import se.hal.page.HalAlertManager.HalAlert;
@ -19,14 +19,14 @@ import java.util.ArrayList;
import java.util.Map; import java.util.Map;
import java.util.logging.Logger; import java.util.logging.Logger;
public class SensorConfigHttpPage extends HalHttpPage { public class SensorConfigWebPage extends HalWebPage {
private static final Logger logger = LogUtil.getLogger(); private static final Logger logger = LogUtil.getLogger();
private static final String TEMPLATE = "resource/web/sensor_config.tmpl"; private static final String TEMPLATE = "resource/web/sensor_config.tmpl";
private ArrayList<ClassConfigurationData> sensorConfigurations; private ArrayList<ClassConfigurationData> sensorConfigurations;
public SensorConfigHttpPage() { public SensorConfigWebPage() {
super("sensor_config"); super("sensor_config");
super.getRootNav().createSubNav("Settings").createSubNav(this.getId(), "Sensor Settings").setWeight(100); super.getRootNav().createSubNav("Settings").createSubNav(this.getId(), "Sensor Settings").setWeight(100);

View file

@ -1,8 +1,7 @@
package se.hal.page; package se.hal.page;
import se.hal.HalContext; import se.hal.HalContext;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import se.hal.struct.Event;
import se.hal.struct.Sensor; import se.hal.struct.Sensor;
import se.hal.util.DeviceNameComparator; import se.hal.util.DeviceNameComparator;
import se.hal.util.HistoryDataListSqlResult; import se.hal.util.HistoryDataListSqlResult;
@ -17,13 +16,13 @@ import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
public class SensorOverviewHttpPage extends HalHttpPage { public class SensorOverviewWebPage extends HalWebPage {
private static final int HISTORY_LIMIT = 200; private static final int HISTORY_LIMIT = 200;
private static final String OVERVIEW_TEMPLATE = "resource/web/sensor_overview.tmpl"; private static final String OVERVIEW_TEMPLATE = "resource/web/sensor_overview.tmpl";
private static final String DETAIL_TEMPLATE = "resource/web/sensor_detail.tmpl"; private static final String DETAIL_TEMPLATE = "resource/web/sensor_detail.tmpl";
public SensorOverviewHttpPage(){ public SensorOverviewWebPage(){
super("sensor_overview"); super("sensor_overview");
super.getRootNav().createSubNav("Sensors").createSubNav(this.getId(), "Overview"); super.getRootNav().createSubNav("Sensors").createSubNav(this.getId(), "Overview");
} }

View file

@ -2,7 +2,7 @@ package se.hal.page;
import se.hal.HalContext; import se.hal.HalContext;
import se.hal.TriggerManager; import se.hal.TriggerManager;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import se.hal.struct.Action; import se.hal.struct.Action;
import se.hal.struct.ClassConfigurationData; import se.hal.struct.ClassConfigurationData;
import se.hal.struct.Trigger; import se.hal.struct.Trigger;
@ -17,7 +17,7 @@ import java.util.ArrayList;
import java.util.Map; import java.util.Map;
import java.util.logging.Logger; import java.util.logging.Logger;
public class TriggerHttpPage extends HalHttpPage { public class TriggerWebPage extends HalWebPage {
private static final Logger logger = LogUtil.getLogger(); private static final Logger logger = LogUtil.getLogger();
private static final String TEMPLATE = "resource/web/trigger.tmpl"; private static final String TEMPLATE = "resource/web/trigger.tmpl";
@ -25,7 +25,7 @@ public class TriggerHttpPage extends HalHttpPage {
private ArrayList<ClassConfigurationData> actionConfigurators; private ArrayList<ClassConfigurationData> actionConfigurators;
public TriggerHttpPage() { public TriggerWebPage() {
super("trigger"); super("trigger");
super.getRootNav().createSubNav("Events").createSubNav(this.getId(), "Triggers"); super.getRootNav().createSubNav("Events").createSubNav(this.getId(), "Triggers");

View file

@ -1,7 +1,7 @@
package se.hal.page; package se.hal.page;
import se.hal.HalContext; import se.hal.HalContext;
import se.hal.intf.HalHttpPage; import se.hal.intf.HalWebPage;
import se.hal.page.HalAlertManager.AlertLevel; import se.hal.page.HalAlertManager.AlertLevel;
import se.hal.page.HalAlertManager.AlertTTL; import se.hal.page.HalAlertManager.AlertTTL;
import se.hal.page.HalAlertManager.HalAlert; import se.hal.page.HalAlertManager.HalAlert;
@ -14,12 +14,12 @@ import zutil.parser.Templator;
import java.util.Map; import java.util.Map;
import java.util.logging.Logger; import java.util.logging.Logger;
public class UserConfigHttpPage extends HalHttpPage { public class UserConfigWebPage extends HalWebPage {
private static final Logger logger = LogUtil.getLogger(); private static final Logger logger = LogUtil.getLogger();
private static final String TEMPLATE = "resource/web/user_config.tmpl"; private static final String TEMPLATE = "resource/web/user_config.tmpl";
public UserConfigHttpPage() { public UserConfigWebPage() {
super("user_profile"); super("user_profile");
super.getUserNav().createSubNav(this.getId(), "Profile"); super.getUserNav().createSubNav(this.getId(), "Profile");
} }

View file

@ -7,17 +7,16 @@
{"se.hal.intf.HalJsonPage": "se.hal.page.MapJsonPage"}, {"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.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.HalWebPage": "se.hal.page.MapWebPage"},
{"se.hal.intf.HalHttpPage": "se.hal.page.EventConfigHttpPage"}, {"se.hal.intf.HalWebPage": "se.hal.page.SensorOverviewWebPage"},
{"se.hal.intf.HalHttpPage": "se.hal.page.TriggerHttpPage"}, {"se.hal.intf.HalWebPage": "se.hal.page.SensorConfigWebPage"},
{"se.hal.intf.HalHttpPage": "se.hal.page.UserConfigHttpPage"}, {"se.hal.intf.HalWebPage": "se.hal.page.EventOverviewWebPage"},
{"se.hal.intf.HalHttpPage": "se.hal.page.PropertySettingsPage"}, {"se.hal.intf.HalWebPage": "se.hal.page.EventConfigWebPage"},
{"se.hal.intf.HalWebPage": "se.hal.page.TriggerWebPage"},
{"se.hal.intf.HalWebPage": "se.hal.page.UserConfigWebPage"},
{"se.hal.intf.HalWebPage": "se.hal.page.PropertySettingsPage"},
{"se.hal.intf.HalTrigger": "se.hal.trigger.DateTimeTrigger"}, {"se.hal.intf.HalTrigger": "se.hal.trigger.DateTimeTrigger"},