From 5ef3acc3e64c46acdc1667ea2bed37fcf3a14c59 Mon Sep 17 00:00:00 2001 From: Michael Zillgith Date: Sat, 3 Nov 2018 10:04:15 +0100 Subject: [PATCH] - added error handling in iec61850_client_example4 --- .../client_example4.c | 24 +++++++++++++------ .../server_example_basic_io.c | 5 ++-- 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/examples/iec61850_client_example4/client_example4.c b/examples/iec61850_client_example4/client_example4.c index 1b1d4619..192b35c1 100644 --- a/examples/iec61850_client_example4/client_example4.c +++ b/examples/iec61850_client_example4/client_example4.c @@ -67,18 +67,28 @@ int main(int argc, char** argv) { LinkedList_destroyStatic(newDataSetEntries); - printf("error: %i\n", error); - /* read data set */ - ClientDataSet clientDataSet; + if (error == IED_ERROR_OK ) { - clientDataSet = IedConnection_readDataSetValues(con, &error, "simpleIOGenericIO/LLN0.AnalogueValues", NULL); + /* read new data set */ + ClientDataSet clientDataSet; - printDataSetValues(ClientDataSet_getValues(clientDataSet)); + clientDataSet = IedConnection_readDataSetValues(con, &error, "simpleIOGenericIO/LLN0.AnalogueValues", NULL); - Thread_sleep(1000); + if (error == IED_ERROR_OK) { + printDataSetValues(ClientDataSet_getValues(clientDataSet)); - IedConnection_deleteDataSet(con, &error, "simpleIOGenericIO/LLN0.AnalogueValues"); + ClientDataSet_destroy(clientDataSet); + } + else { + printf("Failed to read data set (error code: %d)\n", error); + } + + IedConnection_deleteDataSet(con, &error, "simpleIOGenericIO/LLN0.AnalogueValues"); + } + else { + printf("Failed to create data set (error code: %d)\n", error); + } IedConnection_close(con); } diff --git a/examples/server_example_basic_io/server_example_basic_io.c b/examples/server_example_basic_io/server_example_basic_io.c index 1f928531..cc73e912 100644 --- a/examples/server_example_basic_io/server_example_basic_io.c +++ b/examples/server_example_basic_io/server_example_basic_io.c @@ -100,9 +100,10 @@ main(int argc, char** argv) IedServerConfig_enableFileService(config, false); /* disable dynamic data set service */ - IedServerConfig_enableDynamicDataSetService(config, false); + IedServerConfig_enableDynamicDataSetService(config, true); - IedServerConfig_enableLogService(config, true); + /* disable log service */ + IedServerConfig_enableLogService(config, false); /* set maximum number of clients */ IedServerConfig_setMaxMmsConnections(config, 2);