Commit Graph

15 Commits (c004c0d81de70f3448b48c69ff09615dc7e28eed)

Author SHA1 Message Date
Michael Zanetti 717b4f33cc Remove deprecated Devices, Action, Events, States namespaces from JSONRPC 2022-02-08 00:29:07 +01:00
Michael Zanetti 8208473302 bump api 2020-03-05 16:16:57 +01:00
Michael Zanetti 3e425fc55b Rename devices to integrations/things 2020-03-02 13:40:26 +01:00
Michael Zanetti 8f5536ba1a Update copyright 2020-01-23 20:07:26 +01:00
Michael Zanetti c7dd26d525 cleanup, fix last tests 2019-11-16 00:44:08 +01:00
Michael Zanetti 3eac06de6e Threaded log database
This
a) makes the log db threaded by using QtConcurrent to run queries in a
different thread but still keeps ordering of the queries and always
only allows a single query at a time (QSql is not threadsafe). This fixes
removeDevice calls failing if we take more than $jsonprc_timeout to clean
a deleted device from the DB and keeps nymead responsive during that too.

b) generally improces performance of the system by not requiring operations
(emitting events, changing states) to wait for the sync log db entry to be
made.

c) drops some of the houskeeping code on nymea startup. While this will still
do log db housekeeping if the DB exceeds maxDbSize, it will not run
housekeeping on the DB any more at application startup. Reasoning for this
is that there have been reports of rules/log entries beimg destroyed if a
plugin can't be found at application startup. Given our general direction
of working towards more dynamic plugin loading, this might happen more often
in the future and we sure don't want to destroy rules etc when we just
temporarily miss a plugin.

d) tries to fix issue #226 by rotating the DB not only when it fails to open
initially, but also when it fails to insert new entries.
2019-11-15 18:33:10 +01:00
Michael Zanetti baaa719b6a Restructuring json done 2019-11-01 20:55:45 +01:00
Michael Zanetti bdd9876a88 Allow registering QMetaObjects on JSON api 2019-11-01 20:55:45 +01:00
Michael Zanetti 5e3bc2acbd Drop JsonTypes class by distributing logic to json handlers
This is required in order to be able to be more flexible in registering
new types/methods.
2019-11-01 20:46:55 +01:00
Michael Zanetti 2e2e86d68a Documentation and finetuning 2019-05-20 22:52:35 +02:00
Michael Zanetti b49dafa7e3 add limits and offset to GetLogEntries 2019-04-08 13:55:15 +02:00
Michael Zanetti b8a86b095d copyright headers guh -> nymea 2019-04-08 13:55:15 +02:00
Michael Zanetti 36d4f89b24 namespace guhserver -> namespace nymeaserver 2019-04-08 13:55:15 +02:00
Michael Zanetti 559a8be1f6 guhcore -> nymeacore 2019-04-08 13:55:15 +02:00
Michael Zanetti 4be14f1904 libguh-core -> libnymea-core 2019-04-08 13:55:15 +02:00