Own fork of MbedSmartRest

Dependents:   MbedSmartRestMain MbedSmartRestMain

Fork of MbedSmartRest by Cumulocity Official

Revision:
11:e1bee9a77652
Parent:
7:8159a2d12e4e
Child:
13:aba98ad2ac1b
--- a/SmartRest.cpp	Thu Oct 23 14:41:58 2014 +0200
+++ b/SmartRest.cpp	Sat Nov 15 11:21:01 2014 +0100
@@ -30,190 +30,205 @@
 #include <stdlib.h>
 #include <string.h>
 
+
+/*-------------------------------------------------------------------------*/
 SmartRest::SmartRest(AbstractClient& client, const char *identifier) :
-    _client(client),
-    _identifier(identifier)
+	_client(client),
+	_identifier(identifier)
 {
-    _source = NULL;
-    _mogid[0] = 0;
+	_source = NULL;
+	_mogid[0] = 0;
 }
-
+/*-------------------------------------------------------------------------*/
 uint8_t SmartRest::setAuthorization(const char *username, const char *password)
 {
-    uint8_t res;
+	uint8_t res;
 
-    res = _client.setAuthorization(username, password);
-    if (res != CLIENT_OK)
-        return SMARTREST_INTERNAL_ERROR;
-    return SMARTREST_SUCCESS;
+	res = _client.setAuthorization(username, password);
+	if (res != CLIENT_OK)
+		return SMARTREST_INTERNAL_ERROR;
+	return SMARTREST_SUCCESS;
 }
-
+/*-------------------------------------------------------------------------*/
 #ifdef SMARTREST_TRANSACTIONAL
+/*-------------------------------------------------------------------------*/
 uint8_t SmartRest::request(const DataGenerator& generator, const char *overrideIdentifier)
 {
-    uint8_t res;
+	uint8_t res;
 
-    res = send(generator, overrideIdentifier);
-    stop();
-    return res;
+	res = send(generator, overrideIdentifier);
+	stop();
+	return res;
 }
-
+/*-------------------------------------------------------------------------*/
 uint8_t SmartRest::request(const DataGenerator& generator, Aggregator& aggregator, const char *overrideIdentifier)
 {
-    uint8_t res;
+	uint8_t res;
 
-    if (!aggregator.managed())
-        return SMARTREST_INTERNAL_ERROR;
+	if (!aggregator.managed())
+		return SMARTREST_INTERNAL_ERROR;
 
-    res = send(generator, overrideIdentifier);
-    if (res != SMARTREST_SUCCESS) {
-        stop();
-        return res;
-    }
+	res = send(generator, overrideIdentifier);
+	if (res != SMARTREST_SUCCESS)
+	{
+		stop();
+		return res;
+	}
 
-    ParsedRecord recvd;
-    while ((res = receive(recvd)) == SMARTREST_SUCCESS) {
-        if (!aggregator.add(recvd))
-            return SMARTREST_INTERNAL_ERROR;
-    }
+	ParsedRecord recvd;
+	while ((res = receive(recvd)) == SMARTREST_SUCCESS)
+	{
+		if (!aggregator.add(recvd))
+			return SMARTREST_INTERNAL_ERROR;
+	}
 
-    stop();
-    if (res == SMARTREST_END_OF_RESPONSE)
-        return SMARTREST_SUCCESS;
-    return res;
+	stop();
+	if (res == SMARTREST_END_OF_RESPONSE)
+		return SMARTREST_SUCCESS;
+	return res;
 }
-#endif
-
+/*-------------------------------------------------------------------------*/
+#endif  // SMARTREST_TRANSACTIONAL
+/*-------------------------------------------------------------------------*/
 uint8_t SmartRest::bootstrap(const DataGenerator& generator)
 {
-    ParsedRecord record;
-    int8_t ret;
+	ParsedRecord record;
+	int8_t ret;
 
-    ret = beginRequest(NULL);
-    if (ret != SMARTREST_SUCCESS)
-        return ret;
-    ret = awaitResponse();
-    if (ret != SMARTREST_SUCCESS)
-        return ret;
-    ret = receive(record);
-    if (ret != SMARTREST_SUCCESS)
-        return ret;
-    if (!record) {
-        return SMARTREST_INTERNAL_ERROR;
-    }
-    stop();
+	ret = beginRequest(NULL);
+	if (ret != SMARTREST_SUCCESS)
+		return ret;
+	ret = awaitResponse();
+	if (ret != SMARTREST_SUCCESS)
+		return ret;
+	ret = receive(record);
+	if (ret != SMARTREST_SUCCESS)
+		return ret;
+	if (!record)
+	{
+		return SMARTREST_INTERNAL_ERROR;
+	}
+	stop();
 
-    if (setMoGid(record))
-        return SMARTREST_SUCCESS;
+	if (setMoGid(record))
+		return SMARTREST_SUCCESS;
 
-    if (record.value(0).integerValue() != 40)
-        return SMARTREST_INTERNAL_ERROR;
+	if (record.value(0).integerValue() != 40)
+		return SMARTREST_INTERNAL_ERROR;
 
-    ret = send(generator, NULL);
-    if (ret != SMARTREST_SUCCESS)
-        return ret;
-    ret = receive(record);
-    if (ret != SMARTREST_SUCCESS)
-        return ret;
-    stop();
+	ret = send(generator, NULL);
+	if (ret != SMARTREST_SUCCESS)
+		return ret;
+	ret = receive(record);
+	if (ret != SMARTREST_SUCCESS)
+		return ret;
+	stop();
 
-    if (!setMoGid(record))
-        return SMARTREST_INTERNAL_ERROR;
+	if (!setMoGid(record))
+		return SMARTREST_INTERNAL_ERROR;
 
-    return SMARTREST_SUCCESS;
+	return SMARTREST_SUCCESS;
 }
-
+/*-------------------------------------------------------------------------*/
 uint8_t SmartRest::send(const DataGenerator& generator, const char *overrideIdentifier)
 {
-    uint8_t res;
+	uint8_t res;
 
-    res = beginRequest(overrideIdentifier);
-    if (res != SMARTREST_SUCCESS)
-        return res;
+	res = beginRequest(overrideIdentifier);
+	if (res != SMARTREST_SUCCESS)
+		return res;
 
-    _client.sendData(generator);
-    return awaitResponse();
+	_client.sendData(generator);
+	return awaitResponse();
 }
-
+/*-------------------------------------------------------------------------*/
 uint8_t SmartRest::receive(ParsedRecord& record)
 {
-    uint8_t res;
-    
-    if (_source == NULL)
-        return SMARTREST_INTERNAL_ERROR;
+	uint8_t res;
 
-    res = _parser.readFrom(*_source, record);
+	if (_source == NULL)
+		return SMARTREST_INTERNAL_ERROR;
+
+	res = _parser.readFrom(*_source, record);
 
-    switch (res) {
-    case PARSER_SUCCESS:
-        return SMARTREST_SUCCESS;
-    case PARSER_END_OF_RESPONSE:
-        return SMARTREST_END_OF_RESPONSE;
-    case PARSER_TIMEOUT_ERROR:
-        return SMARTREST_TIMEOUT_ERROR;
-    }
-    return SMARTREST_INTERNAL_ERROR;
+	switch (res)
+	{
+		case PARSER_SUCCESS:
+			return SMARTREST_SUCCESS;
+		case PARSER_END_OF_RESPONSE:
+			return SMARTREST_END_OF_RESPONSE;
+		case PARSER_TIMEOUT_ERROR:
+			return SMARTREST_TIMEOUT_ERROR;
+	}
+	return SMARTREST_INTERNAL_ERROR;
 }
-
+/*-------------------------------------------------------------------------*/
 void SmartRest::stop()
 {
-    _source = NULL;
-    _client.stop();
+	_source = NULL;
+	_client.stop();
 }
-
+/*-------------------------------------------------------------------------*/
 const char * SmartRest::getIdentifier()
 {
-    if (*_mogid)
-        return _mogid;
-    return _identifier;
+	if (*_mogid)
+		return _mogid;
+	return _identifier;
 }
-
+/*-------------------------------------------------------------------------*/
 uint8_t SmartRest::beginRequest(const char *overrideIdentifier)
 {
-    int res;
+	int res;
 
-    res = _client.beginRequest();
-    if (res == CLIENT_CONNECTION_ERROR) {
-        return SMARTREST_CONNECTION_FAILED;
-    } else if (res != CLIENT_OK) {
-        return SMARTREST_INTERNAL_ERROR;
-    }
-    if (overrideIdentifier != NULL) {
-        if (_client.sendIdentifier(overrideIdentifier) != CLIENT_OK)
-            return SMARTREST_INTERNAL_ERROR;
-    } else {
-        if (_client.sendIdentifier(getIdentifier()) != CLIENT_OK)
-            return SMARTREST_INTERNAL_ERROR;
-    }
-    return SMARTREST_SUCCESS;
+	res = _client.beginRequest();
+	if (res == CLIENT_CONNECTION_ERROR)
+	{
+		return SMARTREST_CONNECTION_FAILED;
+	}
+	else if (res != CLIENT_OK)
+	{
+		return SMARTREST_INTERNAL_ERROR;
+	}
+	if (overrideIdentifier != NULL)
+	{
+		if (_client.sendIdentifier(overrideIdentifier) != CLIENT_OK)
+			return SMARTREST_INTERNAL_ERROR;
+	}
+	else
+	{
+		if (_client.sendIdentifier(getIdentifier()) != CLIENT_OK)
+			return SMARTREST_INTERNAL_ERROR;
+	}
+	return SMARTREST_SUCCESS;
 }
-
+/*-------------------------------------------------------------------------*/
 uint8_t SmartRest::awaitResponse()
 {
-    if ((_client.endRequest() != CLIENT_OK) ||
-        (_client.awaitResponse() != CLIENT_OK))
-        return SMARTREST_INTERNAL_ERROR;
-    _source = &_client.receiveData();
-    return SMARTREST_SUCCESS;
+	if ((_client.endRequest() != CLIENT_OK) ||
+			(_client.awaitResponse() != CLIENT_OK))
+		return SMARTREST_INTERNAL_ERROR;
+	_source = &_client.receiveData();
+	return SMARTREST_SUCCESS;
 }
-
+/*-------------------------------------------------------------------------*/
 bool SmartRest::setMoGid(ParsedRecord& record)
 {
-    const char *mogid;
+	const char *mogid;
 
-    *_mogid = 0;
-    if ((record.values() < 2) || (record.value(0).integerValue() != 20))
-        return false;
+	*_mogid = 0;
+	if ((record.values() < 2) || (record.value(0).integerValue() != 20))
+		return false;
+
+	if ((record.value(1).valueType() != VALUE_INTEGER) ||
+			(record.value(1).integerValue() <= 0))
+		return false;
 
-    if ((record.value(1).valueType() != VALUE_INTEGER) ||
-        (record.value(1).integerValue() <= 0))
-        return false;
+	mogid = record.rawValue(1);
+	if (strlen(mogid)+1 > sizeof(_mogid))
+		return false;
 
-    mogid = record.rawValue(1);
-    if (strlen(mogid)+1 > sizeof(_mogid))
-        return false;
+	strcpy(_mogid, mogid);
 
-    strcpy(_mogid, mogid);
-
-    return true;
+	return true;
 }
+/*-------------------------------------------------------------------------*/