add: config loading

This commit is contained in:
Tobias Reisinger 2020-04-17 01:38:25 +02:00
parent 3cd6668f9c
commit 25ba0ff723
22 changed files with 5799 additions and 75 deletions

View file

@ -6,6 +6,8 @@
#include <models/controller.h>
#include <macros.h>
#include <config.h>
#include <constants.h>
controller_t*
controller_create(void)
@ -13,10 +15,12 @@ controller_create(void)
controller_t *new_controller = malloc(sizeof(*new_controller));
uuid_generate(new_controller->id);
strcpy(new_controller->name, "new emgauwa device");
strncpy(new_controller->name, global_config.name, MAX_NAME_LENGTH);
new_controller->name[MAX_NAME_LENGTH] = '\0';
new_controller->command_port = 0;
new_controller->discovery_port = 4421;
new_controller->relay_count = 10;
new_controller->discovery_port = global_config.discovery_port;
new_controller->relay_count = global_config.relay_count;
new_controller->relays = malloc(sizeof(relay_t) * new_controller->relay_count);
uint8_t i;

View file

@ -70,8 +70,7 @@ controller_load(MDB_env *mdb_env)
controller_load_single(mdb_txn, mdb_dbi, DB_KEY_CONTROLLER_DISCOVERY_PORT, &value);
new_controller->discovery_port = ((uint16_t*)value.mv_data)[0];
controller_load_single(mdb_txn, mdb_dbi, DB_KEY_CONTROLLER_RELAY_COUNT, &value);
new_controller->relay_count = ((uint8_t*)value.mv_data)[0];
new_controller->relay_count = global_config.relay_count;
mdb_txn_abort(mdb_txn); // transaction is read only

View file

@ -78,14 +78,6 @@ controller_save(controller_t *controller, MDB_env *mdb_env)
return 1;
}
value.mv_size = sizeof(controller->relay_count);
value.mv_data = &controller->relay_count;
if(controller_save_single(mdb_txn, mdb_dbi, DB_KEY_CONTROLLER_RELAY_COUNT, value))
{
LOG_ERROR("failed to save relay count");
return 1;
}
mdb_txn_commit(mdb_txn);
for(uint8_t i = 0; i < controller->relay_count; ++i)

View file

@ -2,7 +2,6 @@
#include <string.h>
#include <uuid/uuid.h>
#include <constants.h>
#include <logger.h>
#include <models/relay.h>