Added sorting by name in overview pages
This commit is contained in:
parent
6a15640aea
commit
2f3dbf462e
3 changed files with 37 additions and 2 deletions
|
|
@ -5,8 +5,10 @@ import se.hal.HalContext;
|
|||
import se.hal.intf.HalEventConfig;
|
||||
import se.hal.intf.HalEventData;
|
||||
import se.hal.intf.HalHttpPage;
|
||||
import se.hal.struct.AbstractDevice;
|
||||
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.db.DBConnection;
|
||||
|
|
@ -14,6 +16,7 @@ import zutil.io.file.FileUtil;
|
|||
import zutil.parser.Templator;
|
||||
|
||||
import java.sql.PreparedStatement;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -67,8 +70,11 @@ public class EventOverviewHttpPage extends HalHttpPage {
|
|||
return tmpl;
|
||||
}
|
||||
else {
|
||||
Event[] events = Event.getLocalEvents(db).toArray(new Event[0]);
|
||||
Arrays.sort(events, DeviceNameComparator.getInstance());
|
||||
|
||||
Templator tmpl = new Templator(FileUtil.find(OVERVIEW_TEMPLATE));
|
||||
tmpl.set("events", Event.getLocalEvents(db));
|
||||
tmpl.set("events", events);
|
||||
return tmpl;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,7 +2,9 @@ package se.hal.page;
|
|||
|
||||
import se.hal.HalContext;
|
||||
import se.hal.intf.HalHttpPage;
|
||||
import se.hal.struct.Event;
|
||||
import se.hal.struct.Sensor;
|
||||
import se.hal.util.DeviceNameComparator;
|
||||
import se.hal.util.HistoryDataListSqlResult;
|
||||
import se.hal.util.HistoryDataListSqlResult.HistoryData;
|
||||
import zutil.db.DBConnection;
|
||||
|
|
@ -10,6 +12,7 @@ import zutil.io.file.FileUtil;
|
|||
import zutil.parser.Templator;
|
||||
|
||||
import java.sql.PreparedStatement;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
|
@ -51,8 +54,11 @@ public class SensorOverviewHttpPage extends HalHttpPage {
|
|||
return tmpl;
|
||||
}
|
||||
else {
|
||||
Sensor[] sensors = Sensor.getLocalSensors(db).toArray(new Sensor[0]);
|
||||
Arrays.sort(sensors, DeviceNameComparator.getInstance());
|
||||
|
||||
Templator tmpl = new Templator(FileUtil.find(OVERVIEW_TEMPLATE));
|
||||
tmpl.set("sensors", Sensor.getLocalSensors(db));
|
||||
tmpl.set("sensors", sensors);
|
||||
return tmpl;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
23
src/se/hal/util/DeviceNameComparator.java
Normal file
23
src/se/hal/util/DeviceNameComparator.java
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
package se.hal.util;
|
||||
|
||||
import se.hal.struct.AbstractDevice;
|
||||
|
||||
import java.util.Comparator;
|
||||
|
||||
/**
|
||||
* A comparator that compares on the device name.
|
||||
*/
|
||||
public class DeviceNameComparator implements Comparator<AbstractDevice> {
|
||||
private static DeviceNameComparator instance;
|
||||
|
||||
@Override
|
||||
public int compare(AbstractDevice device1, AbstractDevice device2) {
|
||||
return device1.getName().compareTo(device2.getName());
|
||||
}
|
||||
|
||||
public static DeviceNameComparator getInstance() {
|
||||
if (instance == null)
|
||||
instance = new DeviceNameComparator();
|
||||
return instance;
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue