void connected(ipc::channel *ch) {}
void disconnected(ipc::channel *ch)
{
+ _D("Disconnected");
/* If channel->disconnect() is not explicitly called,
* listener will be restored */
m_listener->restore();
m_evt_channel->bind();
- _D("Listener ID[%d]", get_id());
+ _I("Connected listener[%d] with sensor[%s]", get_id(), m_sensor->get_uri().c_str());
return true;
}
m_cmd_channel->send_sync(&msg);
m_cmd_channel->read_sync(reply);
- if (reply.header()->err < 0)
+ if (reply.header()->err < 0) {
+ _E("Failed to start listener[%d], sensor[%s]", get_id(), m_sensor->get_uri().c_str());
return reply.header()->err;
+ }
m_started.store(true);
+ _I("Listener[%d] started", get_id());
+
return OP_SUCCESS;
}
m_cmd_channel->send_sync(&msg);
m_cmd_channel->read_sync(reply);
- if (reply.header()->err < 0)
+ if (reply.header()->err < 0) {
+ _E("Failed to stop listener[%d], sensor[%s]", get_id(), m_sensor->get_uri().c_str());
return reply.header()->err;
+ }
m_started.store(false);
+ _I("Listener[%d] stopped", get_id());
+
return OP_SUCCESS;
}
else
_interval = interval;
+ _I("Listener[%d] set interval[%u]", get_id(), _interval);
+
return set_attribute(SENSORD_ATTRIBUTE_INTERVAL, _interval);
}
int sensor_listener::set_max_batch_latency(unsigned int max_batch_latency)
{
+ _I("Listener[%d] set max batch latency[%u]", get_id(), max_batch_latency);
+
return set_attribute(SENSORD_ATTRIBUTE_MAX_BATCH_LATENCY, max_batch_latency);
}
int sensor_listener::set_passive_mode(bool passive)
{
+ _I("Listener[%d] set passive mode[%d]", get_id(), passive);
+
return set_attribute(SENSORD_ATTRIBUTE_PASSIVE_MODE, passive);
}
int sensor_listener::flush(void)
{
+ _I("Listener[%d] flushes", get_id());
+
return set_attribute(SENSORD_ATTRIBUTE_FLUSH, 1);
}
memcpy(data, &buf.data, buf.len);
+ _D("Listener[%d] read sensor data", get_id());
+
return OP_SUCCESS;
}
m_sensors.push_back(info);
+ _I("Added sensor[%s]", info.get_uri().c_str());
+
return OP_SUCCESS;
}
for (auto it = m_sensors.begin(); it != m_sensors.end(); ++it) {
if ((*it).get_uri() == uri) {
m_sensors.erase(it);
+ _I("Removed sensor[%s]", (*it).get_uri().c_str());
+
return OP_SUCCESS;
}
}
if (reply.header()->err == OP_SUCCESS)
return true;
+ _W("This client doesn't have the privilege for sensor[%s]", uri.c_str());
+
return false;
}
m_ch->send_sync(&msg);
m_started.store(true);
+ _I("Started[%s]", m_info.get_uri().c_str());
+
return OP_SUCCESS;
}
m_ch->send_sync(&msg);
m_started.store(false);
+ _I("Stopped[%s]", m_info.get_uri().c_str());
+
return OP_SUCCESS;
}
m_prev_interval = cur_interval;
+ _I("Set interval[%d] to sensor[%s]", cur_interval, m_info.get_uri().c_str());
+
return OP_SUCCESS;
}
add_observer(ob);
+ _I("Started[%s]", m_info.get_uri().c_str());
+
return OP_SUCCESS;
}
remove_observer(ob);
+ _I("Stopped[%s]", m_info.get_uri().c_str());
+
return OP_SUCCESS;
}
return m_sensor->set_interval(ob, _interval);
}
+ _I("Set interval[%d] to sensor[%s]", _interval, m_info.get_uri().c_str());
+
return OP_SUCCESS;
}
return OP_SUCCESS;
}
+ _I("Started[%s]", m_info.get_uri().c_str());
+
return start_internal();
}
return OP_SUCCESS; /* already started */
}
+ _I("Stopped[%s]", m_info.get_uri().c_str());
+
return stop_internal();
}
if (policy == OP_DEFAULT)
_interval = get_min_interval();
+ _I("Set interval[%d] to sensor[%s]", _interval, m_info.get_uri().c_str());
+
return set_interval_internal(_interval);
}
return OP_SUCCESS; /* already started */
}
+ _I("Started[%s]", m_info.get_uri().c_str());
+
return m_device->enable(m_hal_id);
}
return OP_SUCCESS; /* already stopped */
}
+ _I("Stopped[%s]", m_info.get_uri().c_str());
+
return m_device->disable(m_hal_id);
}
m_prev_interval = cur_interval;
+ _I("Set interval[%d] to sensor[%s]", cur_interval, m_info.get_uri().c_str());
+
return (ret ? OP_SUCCESS : OP_ERROR);
}
sensor_handler *sensor = m_manager->get_sensor(m_uri);
retv_if(!sensor, -EINVAL);
+ _D("Listener[%d] try to start", get_id());
+
/* TODO: listen pause policy */
return sensor->start(this);
}
retv_if(!sensor, -EINVAL);
/* TODO: listen pause policy */
- int ret;
- ret = sensor->stop(this);
+ _D("Listener[%d] try to stop", get_id());
+
+ int ret = sensor->stop(this);
retv_if(ret < 0, OP_ERROR);
/* unset attributes */
sensor_handler *sensor = m_manager->get_sensor(m_uri);
retv_if(!sensor, -EINVAL);
+ _D("Listener[%d] try to set interval[%d]", get_id(), interval);
+
return sensor->set_interval(this, interval);
}
sensor_handler *sensor = m_manager->get_sensor(m_uri);
retv_if(!sensor, -EINVAL);
+ _D("Listener[%d] try to set max batch latency[%d]", get_id(), max_batch_latency);
+
return sensor->set_batch_latency(this, max_batch_latency);
}
sensor_handler *sensor = m_manager->get_sensor(m_uri);
retv_if(!sensor, -EINVAL);
+ _D("Listener[%d] try to set attribute[%d, %d]", get_id(), attribute, value);
+
if (attribute == SENSORD_ATTRIBUTE_PAUSE_POLICY) {
m_pause_policy = value;
return OP_SUCCESS;
sensor_handler *sensor = m_manager->get_sensor(m_uri);
retv_if(!sensor, -EINVAL);
+ _D("Listener[%d] try to set attribute[%d, %s]", get_id(), attribute, value);
+
return sensor->set_attribute(this, attribute, value, len);
}
buf.sensor, m_manager, ch);
retvm_if(!listener, OP_ERROR, "Failed to allocate memory");
retvm_if(!has_privileges(ch->get_fd(), listener->get_required_privileges()),
- -EACCES, "Permission denied");
+ -EACCES, "Permission denied[%d, %s]",
+ listener_id, m_listeners[listener_id]->get_required_privileges().c_str());
buf.listener_id = listener_id;
auto it = m_listeners.find(id);
retv_if(it == m_listeners.end(), -EINVAL);
retvm_if(!has_privileges(ch->get_fd(), m_listeners[id]->get_required_privileges()),
- -EACCES, "Permission denied");
+ -EACCES, "Permission denied[%d, %s]",
+ id, m_listeners[id]->get_required_privileges().c_str());
int ret = m_listeners[id]->start();
- retv_if(ret < 0, ret);
+ retvm_if(ret < 0, ret, "Failed to start listener[%d]", id);
return send_reply(ch, OP_SUCCESS);
}
auto it = m_listeners.find(id);
retv_if(it == m_listeners.end(), -EINVAL);
retvm_if(!has_privileges(ch->get_fd(), m_listeners[id]->get_required_privileges()),
- -EACCES, "Permission denied");
+ -EACCES, "Permission denied[%d, %s]",
+ id, m_listeners[id]->get_required_privileges().c_str());
int ret = m_listeners[id]->stop();
- retv_if(ret < 0, ret);
+ retvm_if(ret < 0, ret, "Failed to stop listener[%d]", id);
return send_reply(ch, OP_SUCCESS);
}
auto it = m_listeners.find(id);
retv_if(it == m_listeners.end(), -EINVAL);
retvm_if(!has_privileges(ch->get_fd(), m_listeners[id]->get_required_privileges()),
- -EACCES, "Permission denied");
+ -EACCES, "Permission denied[%d, %s]",
+ id, m_listeners[id]->get_required_privileges().c_str());
switch (buf.attribute) {
case SENSORD_ATTRIBUTE_INTERVAL:
auto it = m_listeners.find(id);
retv_if(it == m_listeners.end(), -EINVAL);
retvm_if(!has_privileges(ch->get_fd(), m_listeners[id]->get_required_privileges()),
- -EACCES, "Permission denied");
+ -EACCES, "Permission denied[%d, %s]",
+ id, m_listeners[id]->get_required_privileges().c_str());
int ret = m_listeners[id]->set_attribute(buf.attribute, buf.value, buf.len);
retv_if(ret < 0, ret);
auto it = m_listeners.find(id);
retv_if(it == m_listeners.end(), -EINVAL);
retvm_if(!has_privileges(ch->get_fd(), m_listeners[id]->get_required_privileges()),
- -EACCES, "Permission denied");
+ -EACCES, "Permission denied[%d, %s]",
+ id, m_listeners[id]->get_required_privileges().c_str());
int ret = m_listeners[id]->get_data(&data, &len);
retv_if(ret < 0, ret);