diff --git a/hal.db b/hal.db index c14ec158..bcc25b1f 100755 Binary files a/hal.db and b/hal.db differ diff --git a/src/se/koc/hal/PowerChallenge.java b/src/se/koc/hal/PowerChallenge.java new file mode 100755 index 00000000..72d9752f --- /dev/null +++ b/src/se/koc/hal/PowerChallenge.java @@ -0,0 +1,29 @@ +package se.koc.hal; + + +import se.koc.hal.deamon.DataAggregatorDaemon; +import se.koc.hal.deamon.HalDaemon; +import zutil.db.DBConnection; + +import java.util.Timer; + +/** + * Created by Ziver on 2015-12-03. + */ +public class PowerChallenge { + private static HalDaemon[] daemons = new HalDaemon[]{ + new DataAggregatorDaemon() + }; + + public static void main(String[] args) throws Exception { + + // init Database + final DBConnection db = new DBConnection(DBConnection.DBMS.SQLite, "hal.db"); + + // init daemons + Timer daemonTimer = new Timer(); + for(HalDaemon daemon : daemons){ + daemon.initiate(daemonTimer); + } + } +} diff --git a/src/se/koc/hal/deamon/DataAggregatorDaemon.java b/src/se/koc/hal/deamon/DataAggregatorDaemon.java new file mode 100755 index 00000000..4ad7544f --- /dev/null +++ b/src/se/koc/hal/deamon/DataAggregatorDaemon.java @@ -0,0 +1,22 @@ +package se.koc.hal.deamon; + +import java.util.Timer; +import java.util.TimerTask; + +/** + * Created by Ziver on 2015-12-03. + */ +public class DataAggregatorDaemon extends TimerTask implements HalDaemon { + private static final int FIVE_MINUTES_IN_MS = 5 * 60 * 1000; + + + public void initiate(Timer timer){ + timer.schedule(this, FIVE_MINUTES_IN_MS); + } + + + @Override + public void run() { + + } +} diff --git a/src/se/koc/hal/deamon/HalDaemon.java b/src/se/koc/hal/deamon/HalDaemon.java new file mode 100755 index 00000000..82087dda --- /dev/null +++ b/src/se/koc/hal/deamon/HalDaemon.java @@ -0,0 +1,12 @@ +package se.koc.hal.deamon; + +import java.util.Timer; + +/** + * Created by Ziver on 2015-12-03. + */ +public interface HalDaemon { + public void initiate(Timer timer); + + public void run(); +} diff --git a/src/se/koc/hal/struct/PowerMeterSensor.java b/src/se/koc/hal/struct/PowerMeterSensor.java new file mode 100755 index 00000000..13c76a04 --- /dev/null +++ b/src/se/koc/hal/struct/PowerMeterSensor.java @@ -0,0 +1,7 @@ +package se.koc.hal.struct; + +/** + * Created by Ziver on 2015-12-03. + */ +public class PowerMeterSensor extends Sensor{ +} diff --git a/src/se/koc/hal/struct/Sensor.java b/src/se/koc/hal/struct/Sensor.java new file mode 100755 index 00000000..23d47cb6 --- /dev/null +++ b/src/se/koc/hal/struct/Sensor.java @@ -0,0 +1,11 @@ +package se.koc.hal.struct; + +import zutil.db.bean.DBBean; + +/** + * Created by Ziver on 2015-12-03. + */ +@DBBean.DBTable("sensor") +public class Sensor extends DBBean{ + +} diff --git a/src/se/koc/hal/struct/TemperatureSensor.java b/src/se/koc/hal/struct/TemperatureSensor.java new file mode 100755 index 00000000..56d3339a --- /dev/null +++ b/src/se/koc/hal/struct/TemperatureSensor.java @@ -0,0 +1,7 @@ +package se.koc.hal.struct; + +/** + * Created by Ziver on 2015-12-03. + */ +public class TemperatureSensor extends Sensor { +} diff --git a/src/se/koc/hal/struct/Trigger.java b/src/se/koc/hal/struct/Trigger.java deleted file mode 100755 index 4cb84f7a..00000000 --- a/src/se/koc/hal/struct/Trigger.java +++ /dev/null @@ -1,30 +0,0 @@ -/* - * Copyright (c) 2015 Ziver - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -package se.koc.hal.struct; - -/** - * Created by Ziver on 2015-05-07. - */ -public interface Trigger { - -} diff --git a/src/se/koc/hal/struct/User.java b/src/se/koc/hal/struct/User.java new file mode 100755 index 00000000..8abd448a --- /dev/null +++ b/src/se/koc/hal/struct/User.java @@ -0,0 +1,16 @@ +package se.koc.hal.struct; + +import zutil.db.bean.DBBean; + +/** + * Created by Ziver on 2015-12-03. + */ +@DBBean.DBTable("user") +public class User extends DBBean{ + + private String name; + private String address; + private boolean external; + + +}