From e6eec2d4ac4c5e1456c35512efa25fd4c2cdb604 Mon Sep 17 00:00:00 2001 From: Lukas Woodtli Date: Mon, 9 Sep 2024 16:08:36 +0200 Subject: [PATCH] Extract loop for getting all resource values The loop is put in an own function for maintainability reasons. --- examples/client/object_server.c | 27 ++++++++++++++------------- 1 file changed, 14 insertions(+), 13 deletions(-) diff --git a/examples/client/object_server.c b/examples/client/object_server.c index fc6dbc0b..d023905d 100644 --- a/examples/client/object_server.c +++ b/examples/client/object_server.c @@ -248,6 +248,19 @@ static void remove_all_optional_resources(uint16_t *resList, server_instance_t * remove_optional_resource(resList, targetP->communicationSequenceRetryCount, LWM2M_SERVER_SEQ_RETRY_COUNT_ID, nbRes); } +static uint8_t prv_get_all_values(const int *numDataP, lwm2m_data_t *const *dataArrayP, server_instance_t *targetP) { + int i = 0; + uint8_t result; + do { + if ((*dataArrayP)[i].type == LWM2M_TYPE_MULTIPLE_RESOURCE) { + result = COAP_404_NOT_FOUND; + } else { + result = prv_get_value((*dataArrayP) + i, targetP); + } + i++; + } while (i < *numDataP && result == COAP_205_CONTENT); + return result; +} static uint8_t prv_server_read(lwm2m_context_t *contextP, uint16_t instanceId, int * numDataP, @@ -296,19 +309,7 @@ static uint8_t prv_server_read(lwm2m_context_t *contextP, } } - i = 0; - do - { - if ((*dataArrayP)[i].type == LWM2M_TYPE_MULTIPLE_RESOURCE) - { - result = COAP_404_NOT_FOUND; - } - else - { - result = prv_get_value((*dataArrayP) + i, targetP); - } - i++; - } while (i < *numDataP && result == COAP_205_CONTENT); + result = prv_get_all_values(numDataP, dataArrayP, targetP); return result; }