This commit is contained in:
2019-11-29 08:23:17 -06:00
parent 9c5b19bbc1
commit 75127f46e2
11 changed files with 211 additions and 5 deletions

Binary file not shown.

View File

@@ -2066,3 +2066,171 @@ org.h2.jdbc.JdbcSQLException: Database is already closed (to disable automatic c
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
2019-11-28 09:18:32 jdbc[7]: null
org.h2.message.DbException: The connection was not closed by the application and is garbage collected [90018-194]
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.message.DbException.get(DbException.java:144)
at org.h2.jdbc.JdbcConnection.closeOld(JdbcConnection.java:185)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:127)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:100)
at org.h2.Driver.connect(Driver.java:69)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at com.j256.ormlite.jdbc.JdbcConnectionSource.makeConnection(JdbcConnectionSource.java:266)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadWriteConnection(JdbcPooledConnectionSource.java:140)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadOnlyConnection(JdbcPooledConnectionSource.java:115)
at com.j256.ormlite.field.FieldType.createForeignObject(FieldType.java:1044)
at com.j256.ormlite.field.FieldType.assignField(FieldType.java:556)
at com.j256.ormlite.stmt.mapped.BaseMappedQuery.mapRow(BaseMappedQuery.java:72)
at com.j256.ormlite.stmt.StatementExecutor.queryForFirst(StatementExecutor.java:109)
at com.j256.ormlite.dao.BaseDaoImpl.queryForFirst(BaseDaoImpl.java:239)
at com.j256.ormlite.stmt.QueryBuilder.queryForFirst(QueryBuilder.java:380)
at org.mycontroller.standalone.db.dao.NodeDaoImpl.get(NodeDaoImpl.java:66)
at org.mycontroller.standalone.provider.ExecuterAbstract.getNode(ExecuterAbstract.java:480)
at org.mycontroller.standalone.provider.ExecuterAbstract.isNodeRegistered(ExecuterAbstract.java:620)
at org.mycontroller.standalone.provider.ExecuterAbstract.execute(ExecuterAbstract.java:88)
at org.mycontroller.standalone.provider.EngineAbstract.auditQueue(EngineAbstract.java:274)
at org.mycontroller.standalone.provider.EngineAbstract.run(EngineAbstract.java:133)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.h2.jdbc.JdbcSQLException: The connection was not closed by the application and is garbage collected [90018-194]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
... 27 more
2019-11-28 09:19:06 jdbc[7]: null
org.h2.message.DbException: The connection was not closed by the application and is garbage collected [90018-194]
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.message.DbException.get(DbException.java:144)
at org.h2.jdbc.JdbcConnection.closeOld(JdbcConnection.java:185)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:127)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:100)
at org.h2.Driver.connect(Driver.java:69)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at com.j256.ormlite.jdbc.JdbcConnectionSource.makeConnection(JdbcConnectionSource.java:266)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadWriteConnection(JdbcPooledConnectionSource.java:140)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadOnlyConnection(JdbcPooledConnectionSource.java:115)
at com.j256.ormlite.field.FieldType.createForeignObject(FieldType.java:1044)
at com.j256.ormlite.field.FieldType.assignField(FieldType.java:556)
at com.j256.ormlite.stmt.mapped.BaseMappedQuery.mapRow(BaseMappedQuery.java:72)
at com.j256.ormlite.stmt.StatementExecutor.queryForFirst(StatementExecutor.java:109)
at com.j256.ormlite.dao.BaseDaoImpl.queryForFirst(BaseDaoImpl.java:239)
at com.j256.ormlite.stmt.QueryBuilder.queryForFirst(QueryBuilder.java:380)
at org.mycontroller.standalone.db.dao.NodeDaoImpl.get(NodeDaoImpl.java:66)
at org.mycontroller.standalone.provider.ExecuterAbstract.getNode(ExecuterAbstract.java:480)
at org.mycontroller.standalone.provider.ExecuterAbstract.isNodeRegistered(ExecuterAbstract.java:620)
at org.mycontroller.standalone.provider.ExecuterAbstract.execute(ExecuterAbstract.java:88)
at org.mycontroller.standalone.provider.EngineAbstract.auditQueue(EngineAbstract.java:274)
at org.mycontroller.standalone.provider.EngineAbstract.run(EngineAbstract.java:133)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.h2.jdbc.JdbcSQLException: The connection was not closed by the application and is garbage collected [90018-194]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
... 27 more
2019-11-28 12:07:28 jdbc[567]: exception
org.h2.jdbc.JdbcSQLException: Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-194]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.message.DbException.get(DbException.java:144)
at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1484)
at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1459)
at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:675)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.queryForOne(JdbcDatabaseConnection.java:299)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.queryForLong(JdbcDatabaseConnection.java:235)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.queryForLong(JdbcDatabaseConnection.java:229)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.testConnection(JdbcPooledConnectionSource.java:352)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadWriteConnection(JdbcPooledConnectionSource.java:131)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadOnlyConnection(JdbcPooledConnectionSource.java:115)
at com.j256.ormlite.dao.BaseDaoImpl.queryForId(BaseDaoImpl.java:226)
at org.mycontroller.standalone.db.dao.BaseAbstractDaoImpl.getById(BaseAbstractDaoImpl.java:339)
at org.mycontroller.standalone.gateway.config.GatewayConfig.setStatus(GatewayConfig.java:107)
at org.mycontroller.standalone.gateway.serial.SerialDriverJSerialComm.disconnect(SerialDriverJSerialComm.java:99)
at org.mycontroller.standalone.gateway.serial.GatewaySerial.disconnect(GatewaySerial.java:96)
at org.mycontroller.standalone.provider.EngineAbstract.run(EngineAbstract.java:140)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
2019-11-28 12:07:28 jdbc[587]: exception
org.h2.jdbc.JdbcSQLException: Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-194]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.message.DbException.get(DbException.java:144)
at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1484)
at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1459)
at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:675)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.queryForOne(JdbcDatabaseConnection.java:299)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.queryForLong(JdbcDatabaseConnection.java:235)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.queryForLong(JdbcDatabaseConnection.java:229)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.testConnection(JdbcPooledConnectionSource.java:352)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadWriteConnection(JdbcPooledConnectionSource.java:131)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadOnlyConnection(JdbcPooledConnectionSource.java:115)
at com.j256.ormlite.dao.BaseDaoImpl.queryForId(BaseDaoImpl.java:226)
at org.mycontroller.standalone.db.dao.BaseAbstractDaoImpl.getById(BaseAbstractDaoImpl.java:339)
at org.mycontroller.standalone.gateway.config.GatewayConfig.setStatus(GatewayConfig.java:107)
at org.mycontroller.standalone.gateway.serial.SerialDriverJSerialComm.disconnect(SerialDriverJSerialComm.java:99)
at org.mycontroller.standalone.gateway.serial.GatewaySerial.disconnect(GatewaySerial.java:96)
at org.mycontroller.standalone.provider.EngineAbstract.run(EngineAbstract.java:140)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
2019-11-28 12:07:28 jdbc[589]: exception
org.h2.jdbc.JdbcSQLException: Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-194]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.message.DbException.get(DbException.java:144)
at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1484)
at org.h2.jdbc.JdbcConnection.checkClosed(JdbcConnection.java:1459)
at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:675)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.queryForOne(JdbcDatabaseConnection.java:299)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.queryForLong(JdbcDatabaseConnection.java:235)
at com.j256.ormlite.jdbc.JdbcDatabaseConnection.queryForLong(JdbcDatabaseConnection.java:229)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.testConnection(JdbcPooledConnectionSource.java:352)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadWriteConnection(JdbcPooledConnectionSource.java:131)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadOnlyConnection(JdbcPooledConnectionSource.java:115)
at com.j256.ormlite.dao.BaseDaoImpl.queryForId(BaseDaoImpl.java:226)
at org.mycontroller.standalone.db.dao.BaseAbstractDaoImpl.getById(BaseAbstractDaoImpl.java:339)
at org.mycontroller.standalone.gateway.config.GatewayConfig.setStatus(GatewayConfig.java:107)
at org.mycontroller.standalone.gateway.serial.SerialDriverJSerialComm.disconnect(SerialDriverJSerialComm.java:99)
at org.mycontroller.standalone.gateway.serial.GatewaySerial.disconnect(GatewaySerial.java:96)
at org.mycontroller.standalone.provider.EngineAbstract.run(EngineAbstract.java:140)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
2019-11-28 12:07:58 jdbc[7]: null
org.h2.message.DbException: The connection was not closed by the application and is garbage collected [90018-194]
at org.h2.message.DbException.get(DbException.java:179)
at org.h2.message.DbException.get(DbException.java:155)
at org.h2.message.DbException.get(DbException.java:144)
at org.h2.jdbc.JdbcConnection.closeOld(JdbcConnection.java:185)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:127)
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:100)
at org.h2.Driver.connect(Driver.java:69)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at com.j256.ormlite.jdbc.JdbcConnectionSource.makeConnection(JdbcConnectionSource.java:266)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadWriteConnection(JdbcPooledConnectionSource.java:140)
at com.j256.ormlite.jdbc.JdbcPooledConnectionSource.getReadOnlyConnection(JdbcPooledConnectionSource.java:115)
at com.j256.ormlite.field.FieldType.createForeignObject(FieldType.java:1044)
at com.j256.ormlite.field.FieldType.assignField(FieldType.java:556)
at com.j256.ormlite.stmt.mapped.BaseMappedQuery.mapRow(BaseMappedQuery.java:72)
at com.j256.ormlite.stmt.StatementExecutor.queryForFirst(StatementExecutor.java:109)
at com.j256.ormlite.dao.BaseDaoImpl.queryForFirst(BaseDaoImpl.java:239)
at com.j256.ormlite.stmt.QueryBuilder.queryForFirst(QueryBuilder.java:380)
at org.mycontroller.standalone.db.dao.NodeDaoImpl.get(NodeDaoImpl.java:66)
at org.mycontroller.standalone.provider.ExecuterAbstract.getNode(ExecuterAbstract.java:480)
at org.mycontroller.standalone.provider.ExecuterAbstract.isNodeRegistered(ExecuterAbstract.java:620)
at org.mycontroller.standalone.provider.ExecuterAbstract.execute(ExecuterAbstract.java:88)
at org.mycontroller.standalone.provider.EngineAbstract.auditQueue(EngineAbstract.java:274)
at org.mycontroller.standalone.provider.EngineAbstract.run(EngineAbstract.java:133)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.h2.jdbc.JdbcSQLException: The connection was not closed by the application and is garbage collected [90018-194]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:345)
... 27 more

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,13 @@
// gets each sensor passed in by their uid and
// then returns true if any of them are tripped
anyTripped = false;
for (var key in uidTags) {
var uidThing = mcApi.uidTag().getByUid(uidTags[key]);
if (uidThing && uidThing.getResource().value === "1") {
anyTripped = true;
break;
}
}
anyTripped;

View File

@@ -1,4 +0,0 @@
northDoorOpen = mcApi.uidTag().getByUid("north-garage-door-tripped").getResource();
southDoorOpen = mcApi.uidTag().getByUid("south-garage-door-tripped").getResource();
!northDoorOpen || !southDoorOpen

View File

@@ -0,0 +1,13 @@
// gets each sensor passed in by their uid and
// then returns true if none of them are tripped
noneTripped = true;
for (var key in uidTags) {
var uidThing = mcApi.uidTag().getByUid(uidTags[key]);
if (uidThing && uidThing.getResource().value === "1") {
noneTripped = false;
break;
}
}
noneTripped;

View File

@@ -0,0 +1,8 @@
// disables a timer with the 'timeName' binding passed in
filter = new java.util.HashMap();
filter.put('name', timerName);
timer = mcApi.timer().get(filter);
if (timer) {
mcApi.timer().disable([timer.id]);
}

View File

@@ -0,0 +1,8 @@
// enables a timer with the 'timeName' binding passed in
filter = new java.util.HashMap();
filter.put('name', timerName);
timer = mcApi.timer().get(filter);
if (timer) {
mcApi.timer().enable([timer.id]);
}