public abstract class Database
extends java.lang.Object
| Constructor and Description |
|---|
Database(java.lang.String name,
DatabaseProvider provider) |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
close()
Closes the database connection and frees any resources.
|
void |
connect(org.dsa.iot.dslink.util.handler.Handler<Database> onConnected)
Performs a connection to the database supporting reconnecting if a
connection gets dropped.
|
DatabaseProvider |
getProvider() |
abstract void |
initExtensions(org.dsa.iot.dslink.node.Node node)
Initialize additional top level database data and settings.
|
protected abstract void |
performConnect()
Performs a raw connection to the database endpoint.
|
abstract void |
query(java.lang.String path,
long from,
long to,
org.dsa.iot.dslink.util.handler.CompleteHandler<QueryData> handler)
Times must be in UTC.
|
abstract QueryData |
queryFirst(java.lang.String path) |
abstract QueryData |
queryLast(java.lang.String path) |
abstract void |
write(java.lang.String path,
org.dsa.iot.dslink.node.value.Value value,
long ts)
Values must be written into the database in UTC.
|
public Database(java.lang.String name,
DatabaseProvider provider)
public DatabaseProvider getProvider()
public void connect(org.dsa.iot.dslink.util.handler.Handler<Database> onConnected)
onConnected - Called when the database is connected.public abstract void write(java.lang.String path,
org.dsa.iot.dslink.node.value.Value value,
long ts)
path - Path to query.value - Value received from the server.ts - Converted time in UTC.TimeParserpublic abstract void query(java.lang.String path,
long from,
long to,
org.dsa.iot.dslink.util.handler.CompleteHandler<QueryData> handler)
handler must
receive a null event in order to close the table stream.path - Path to query.from - Beginning search time.to - End search time.handler - Handler callback for incoming data.public abstract QueryData queryFirst(java.lang.String path)
path - Path to query.public abstract QueryData queryLast(java.lang.String path)
path - Path to query.public abstract void close()
throws java.lang.Exception
java.lang.Exception - Convenience for a failed close.protected abstract void performConnect()
throws java.lang.Exception
java.lang.Exception - Connection failed.public abstract void initExtensions(org.dsa.iot.dslink.node.Node node)
node - Node to initialize data, usually database node.For action permission level.