Renamed AbstractDevice to HalAbstractDevice and moved int intf package

This commit is contained in:
Ziver Koc 2021-03-21 19:40:36 +01:00
parent 8d51526481
commit 7e8938c38c
17 changed files with 37 additions and 52 deletions

View file

@ -1,11 +1,9 @@
package se.hal.intf;
import se.hal.struct.AbstractDevice;
import zutil.ClassUtil;
import zutil.log.LogUtil;
import zutil.plugin.PluginManager;
import java.lang.reflect.ParameterizedType;
import java.util.*;
import java.util.logging.Level;
import java.util.logging.Logger;
@ -15,7 +13,7 @@ import java.util.logging.Logger;
* @param <T> is the device controller class
* @param <C> is the device configuration class
*/
public abstract class HalAbstractControllerManager<T extends HalAbstractController, V extends AbstractDevice, C extends HalDeviceConfig> {
public abstract class HalAbstractControllerManager<T extends HalAbstractController, V extends HalAbstractDevice, C extends HalDeviceConfig> {
private static final Logger logger = LogUtil.getLogger();
/** A map of all instantiated controllers **/

View file

@ -1,10 +1,7 @@
package se.hal.struct;
package se.hal.intf;
import se.hal.HalContext;
import se.hal.intf.HalAbstractController;
import se.hal.intf.HalDeviceConfig;
import se.hal.intf.HalDeviceData;
import se.hal.intf.HalDeviceReportListener;
import se.hal.struct.User;
import zutil.db.DBConnection;
import zutil.db.bean.DBBean;
import zutil.log.LogUtil;
@ -25,7 +22,7 @@ import java.util.logging.Logger;
* @param <C> is the device configuration class
* @param <D> is the device data class
*/
public abstract class AbstractDevice<V extends AbstractDevice,C extends HalDeviceConfig,D extends HalDeviceData> extends DBBean {
public abstract class HalAbstractDevice<V extends HalAbstractDevice, C extends HalDeviceConfig, D extends HalDeviceData> extends DBBean {
private static final Logger logger = LogUtil.getLogger();
// Sensor specific data
@ -74,7 +71,7 @@ public abstract class AbstractDevice<V extends AbstractDevice,C extends HalDevic
applyConfig();
deviceData = getLatestDeviceData(HalContext.getDB());
} catch (Exception e) {
logger.log(Level.SEVERE, "Unable instantiate DeviceConfig: "+type, e);
logger.log(Level.SEVERE, "Unable instantiate DeviceConfig: " + type, e);
}
}
return deviceConfig;
@ -126,6 +123,9 @@ public abstract class AbstractDevice<V extends AbstractDevice,C extends HalDevic
}
}
/**
* @return the class of the Controller responsible for this device type.
*/
public abstract Class<? extends HalAbstractController> getController();
// ----------------------------------------------------

View file

@ -2,13 +2,11 @@ package se.hal.page;
import se.hal.HalContext;
import se.hal.intf.HalJsonPage;
import se.hal.struct.AbstractDevice;
import se.hal.intf.HalAbstractDevice;
import se.hal.struct.Event;
import se.hal.struct.Sensor;
import zutil.db.DBConnection;
import zutil.log.LogUtil;
import zutil.net.http.HttpHeader;
import zutil.net.http.HttpPrintStream;
import zutil.parser.DataNode;
import java.sql.SQLException;
@ -39,7 +37,7 @@ public class MapJsonPage extends HalJsonPage {
getDeviceNode(db, root);
} else if ("save".equals(request.get("action"))) {
int id = Integer.parseInt(request.get("id"));
AbstractDevice device = null;
HalAbstractDevice device = null;
logger.info("Saving Sensor coordinates.");
@ -76,7 +74,7 @@ public class MapJsonPage extends HalJsonPage {
root.set("events", eventsNode);
}
private DataNode getDeviceNode(AbstractDevice device) {
private DataNode getDeviceNode(HalAbstractDevice device) {
DataNode deviceNode = new DataNode(DataNode.DataType.Map);
deviceNode.set("id", device.getId());
deviceNode.set("name", device.getName());

View file

@ -14,7 +14,7 @@ import java.util.logging.Level;
import java.util.logging.Logger;
@DBBean.DBTable(value="event", superBean=true)
public class Event extends AbstractDevice<Event,HalEventConfig,HalEventData> {
public class Event extends HalAbstractDevice<Event, HalEventConfig, HalEventData> {
private static final Logger logger = LogUtil.getLogger();

View file

@ -2,6 +2,7 @@ package se.hal.struct;
import se.hal.HalContext;
import se.hal.intf.HalAbstractController;
import se.hal.intf.HalAbstractDevice;
import se.hal.intf.HalSensorConfig;
import se.hal.intf.HalSensorData;
import se.hal.util.DeviceDataSqlResult;
@ -19,7 +20,7 @@ import java.util.logging.Logger;
@DBBean.DBTable(value="sensor", superBean=true)
public class Sensor extends AbstractDevice<Sensor,HalSensorConfig,HalSensorData> {
public class Sensor extends HalAbstractDevice<Sensor, HalSensorConfig, HalSensorData> {
private static final Logger logger = LogUtil.getLogger();
private long external_id = -1;

View file

@ -5,7 +5,7 @@ import se.hal.intf.HalDeviceConfig;
import se.hal.intf.HalDeviceData;
import se.hal.intf.HalDeviceReportListener;
import se.hal.intf.HalTrigger;
import se.hal.struct.AbstractDevice;
import se.hal.intf.HalAbstractDevice;
import zutil.ui.Configurator;
import zutil.ui.Configurator.PostConfigurationActionListener;
import zutil.ui.Configurator.PreConfigurationActionListener;
@ -31,14 +31,14 @@ public abstract class DeviceTrigger implements HalTrigger,
@Override
public void preConfigurationAction(Configurator configurator, Object obj) {
AbstractDevice device = getDevice(deviceId);
HalAbstractDevice device = getDevice(deviceId);
if (device != null)
device.removeReportListener(this);
reset();
}
@Override
public void postConfigurationAction(Configurator configurator, Object obj) {
AbstractDevice device = getDevice(deviceId);
HalAbstractDevice device = getDevice(deviceId);
if (device != null)
device.addReportListener(this);
}
@ -67,5 +67,5 @@ public abstract class DeviceTrigger implements HalTrigger,
protected abstract AbstractDevice getDevice(long id);
protected abstract HalAbstractDevice getDevice(long id);
}

View file

@ -1,17 +1,17 @@
package se.hal.util;
import se.hal.struct.AbstractDevice;
import se.hal.intf.HalAbstractDevice;
import java.util.Comparator;
/**
* A comparator that compares on the device name.
*/
public class DeviceNameComparator implements Comparator<AbstractDevice> {
public class DeviceNameComparator implements Comparator<HalAbstractDevice> {
private static DeviceNameComparator instance;
@Override
public int compare(AbstractDevice device1, AbstractDevice device2) {
public int compare(HalAbstractDevice device1, HalAbstractDevice device2) {
return device1.getName().compareTo(device2.getName());
}

View file

@ -114,12 +114,12 @@ public class EventControllerManagerTest {
public void initialize() { }
@Override
public void register(HalEventConfig event) {
public void register(HalDeviceConfig event) {
size++;
}
@Override
public void deregister(HalEventConfig event) {
public void deregister(HalDeviceConfig event) {
size--;
}

View file

@ -1,11 +1,7 @@
package se.hal;
import org.junit.Test;
import se.hal.intf.HalAbstractController;
import se.hal.intf.HalDeviceReportListener;
import se.hal.intf.HalSensorConfig;
import se.hal.intf.HalSensorController;
import se.hal.intf.HalSensorData;
import se.hal.intf.*;
import se.hal.struct.Sensor;
import se.hal.struct.devicedata.HumiditySensorData;
import se.hal.struct.devicedata.TemperatureSensorData;
@ -140,11 +136,11 @@ public class SensorControllerManagerTest {
public void initialize() { }
@Override
public void register(HalSensorConfig sensor) {
public void register(HalDeviceConfig sensor) {
size++;
}
@Override
public void deregister(HalSensorConfig sensor) {
public void deregister(HalDeviceConfig sensor) {
size--;
}
@Override