data_str = msg_param->get_string_parameter(RSP__GET_LATEST_DATA__VALUE, err_flg);
data = Data::parse_string(data_str);
ret_val = new DataRange(data);
data_str = msg_param->get_string_parameter(RSP__GET_LATEST_DATA__VALUE, err_flg);
data = Data::parse_string(data_str);
ret_val = new DataRange(data);
key << RSP__DEVICE_LIST__ID << ii;
id = msg_param->get_string_parameter(key.str(), err_flg);
if (*err_flg != PLP_OK) {
key << RSP__DEVICE_LIST__ID << ii;
id = msg_param->get_string_parameter(key.str(), err_flg);
if (*err_flg != PLP_OK) {
key << RSP__DEVICE_LIST__NAME << ii;
name = msg_param->get_string_parameter(key.str(), err_flg);
if (*err_flg != PLP_OK) {
key << RSP__DEVICE_LIST__NAME << ii;
name = msg_param->get_string_parameter(key.str(), err_flg);
if (*err_flg != PLP_OK) {
key << RSP__DEVICE_LIST__TYPE << ii;
type = msg_param->get_string_parameter(key.str(), err_flg);
if (*err_flg != PLP_OK) {
key << RSP__DEVICE_LIST__TYPE << ii;
type = msg_param->get_string_parameter(key.str(), err_flg);
if (*err_flg != PLP_OK) {
key << RSP__DEVICE_LIST__LF_STATE << ii;
state_i = msg_param->get_int_parameter(key.str(), err_flg);
if (*err_flg != PLP_OK) {
key << RSP__DEVICE_LIST__LF_STATE << ii;
state_i = msg_param->get_int_parameter(key.str(), err_flg);
if (*err_flg != PLP_OK) {
key.str("");
key << RSP__DEVICE_LIST__DATA << ii;
datastr = msg_param->get_string_parameter(key.str(), err_flg);
key.str("");
key << RSP__DEVICE_LIST__DATA << ii;
datastr = msg_param->get_string_parameter(key.str(), err_flg);
- if (*err_flg != PLP_OK) {
- log_error("Failed to parse device's data\n");
- break;
+ if (*err_flg == PLP_OK) {
+ data = Data::parse_string(datastr);
+ if (data == NULL) {
+ log_error("Failed to parse data items for the device: %s\n", id.c_str());
+ *err_flg = PLP_ERR;
+ break;
+ }
}
dev = new DeviceData(id, type, name, state, data);
ret_val->push_back(dev);
}
dev = new DeviceData(id, type, name, state, data);
ret_val->push_back(dev);