summaryrefslogtreecommitdiff
path: root/src/CommonAPI
diff options
context:
space:
mode:
Diffstat (limited to 'src/CommonAPI')
-rw-r--r--src/CommonAPI/DBus/DBusConfiguration.cpp4
-rw-r--r--src/CommonAPI/DBus/DBusConnection.cpp67
-rw-r--r--src/CommonAPI/DBus/DBusDaemonProxy.cpp4
-rw-r--r--src/CommonAPI/DBus/DBusInputStream.cpp4
-rw-r--r--src/CommonAPI/DBus/DBusMainLoopContext.cpp4
-rw-r--r--src/CommonAPI/DBus/DBusObjectManager.cpp8
-rw-r--r--src/CommonAPI/DBus/DBusObjectManagerStub.cpp4
-rw-r--r--src/CommonAPI/DBus/DBusOutputStream.cpp2
-rw-r--r--src/CommonAPI/DBus/DBusProxy.cpp10
-rw-r--r--src/CommonAPI/DBus/DBusProxyAsyncCallbackHandler.h48
-rw-r--r--src/CommonAPI/DBus/DBusProxyBase.cpp4
-rw-r--r--src/CommonAPI/DBus/DBusProxyHelper.h9
-rw-r--r--src/CommonAPI/DBus/DBusProxyManager.cpp4
-rw-r--r--src/CommonAPI/DBus/DBusServiceRegistry.cpp4
-rw-r--r--src/CommonAPI/DBus/DBusServiceRegistry.h2
-rw-r--r--src/CommonAPI/DBus/DBusStubAdapter.cpp4
-rw-r--r--src/CommonAPI/DBus/DBusStubAdapterHelper.h14
17 files changed, 100 insertions, 96 deletions
diff --git a/src/CommonAPI/DBus/DBusConfiguration.cpp b/src/CommonAPI/DBus/DBusConfiguration.cpp
index 743fdaa..1fa9ae7 100644
--- a/src/CommonAPI/DBus/DBusConfiguration.cpp
+++ b/src/CommonAPI/DBus/DBusConfiguration.cpp
@@ -213,6 +213,8 @@ void DBusConfiguration::readConfigFile(std::ifstream& addressConfigFile) {
}
newFactoryFound = false;
break;
+ case FileParsingState::UNDEFINED:
+ break;
}
}
@@ -241,6 +243,8 @@ void DBusConfiguration::readConfigFile(std::ifstream& addressConfigFile) {
case FileParsingState::PARSING_ADDRESS:
readValue(readLine, serviceDetails);
break;
+ case FileParsingState::UNDEFINED:
+ break;
}
break;
}
diff --git a/src/CommonAPI/DBus/DBusConnection.cpp b/src/CommonAPI/DBus/DBusConnection.cpp
index 8f0bd86..61b31d7 100644
--- a/src/CommonAPI/DBus/DBusConnection.cpp
+++ b/src/CommonAPI/DBus/DBusConnection.cpp
@@ -79,37 +79,38 @@ void DBusConnection::resumeDispatching() const {
}
DBusConnection::DBusConnection(BusType busType) :
- busType_(busType),
- libdbusConnection_(NULL),
- dbusConnectionStatusEvent_(this),
+ dispatchThread_(NULL),
stopDispatching_(false),
+ mainLoopContext_(std::shared_ptr<MainLoopContext>(NULL)),
+ dispatchSource_(),
+ watchContext_(NULL),
pauseDispatching_(false),
- dispatchThread_(NULL),
+ libdbusConnection_(NULL),
+ busType_(busType),
+ dbusConnectionStatusEvent_(this),
+ libdbusSignalMatchRulesCount_(0),
dbusObjectMessageHandler_(),
- watchContext_(NULL),
connectionNameCount_(),
- dispatchSource_(),
- mainLoopContext_(std::shared_ptr<MainLoopContext>(NULL)),
- enforcerThread_(NULL),
- libdbusSignalMatchRulesCount_(0) {
+ enforcerThread_(NULL)
+ {
dbus_threads_init_default();
}
DBusConnection::DBusConnection(::DBusConnection* libDbusConnection) :
- busType_(WRAPPED),
- libdbusConnection_(libDbusConnection),
- dbusConnectionStatusEvent_(this),
+ dispatchThread_(NULL),
stopDispatching_(false),
+ mainLoopContext_(std::shared_ptr<MainLoopContext>(NULL)),
+ dispatchSource_(),
+ watchContext_(NULL),
pauseDispatching_(false),
- dispatchThread_(NULL),
+ libdbusConnection_(libDbusConnection),
+ busType_(WRAPPED),
+ dbusConnectionStatusEvent_(this),
+ libdbusSignalMatchRulesCount_(0),
dbusObjectMessageHandler_(),
- watchContext_(NULL),
connectionNameCount_(),
- dispatchSource_(),
- mainLoopContext_(std::shared_ptr<MainLoopContext>(NULL)),
- enforcerThread_(NULL),
- libdbusSignalMatchRulesCount_(0) {
+ enforcerThread_(NULL) {
dbus_threads_init_default();
}
@@ -454,29 +455,29 @@ bool DBusConnection::sendDBusMessage(const DBusMessage& dbusMessage, uint32_t* a
}
void DBusConnection::onLibdbusPendingCallNotifyThunk(::DBusPendingCall* libdbusPendingCall, void *userData) {
- assert(userData);
- assert(libdbusPendingCall);
+ assert(userData);
+ assert(libdbusPendingCall);
- auto dbusMessageReplyAsyncHandler = reinterpret_cast<DBusMessageReplyAsyncHandler*>(userData);
+ auto dbusMessageReplyAsyncHandler = reinterpret_cast<DBusMessageReplyAsyncHandler*>(userData);
- ::DBusMessage* libdbusMessage = dbus_pending_call_steal_reply(libdbusPendingCall);
- const bool increaseLibdbusMessageReferenceCount = false;
- DBusMessage dbusMessage(libdbusMessage, increaseLibdbusMessageReferenceCount);
- CallStatus callStatus = CallStatus::SUCCESS;
+ ::DBusMessage* libdbusMessage = dbus_pending_call_steal_reply(libdbusPendingCall);
+ const bool increaseLibdbusMessageReferenceCount = false;
+ DBusMessage dbusMessage(libdbusMessage, increaseLibdbusMessageReferenceCount);
+ CallStatus callStatus = CallStatus::SUCCESS;
- if (!dbusMessage.isMethodReturnType()) {
- callStatus = CallStatus::REMOTE_ERROR;
- }
+ if (!dbusMessage.isMethodReturnType()) {
+ callStatus = CallStatus::REMOTE_ERROR;
+ }
- dbusMessageReplyAsyncHandler->onDBusMessageReply(callStatus, dbusMessage);
+ dbusMessageReplyAsyncHandler->onDBusMessageReply(callStatus, dbusMessage);
- // libdbus calls the Cleanup method below
- dbus_pending_call_unref(libdbusPendingCall);
+ // libdbus calls the Cleanup method below
+ dbus_pending_call_unref(libdbusPendingCall);
}
void DBusConnection::onLibdbusDataCleanup(void* userData) {
- auto dbusMessageReplyAsyncHandler = reinterpret_cast<DBusMessageReplyAsyncHandler*>(userData);
- delete dbusMessageReplyAsyncHandler;
+ auto dbusMessageReplyAsyncHandler = reinterpret_cast<DBusMessageReplyAsyncHandler*>(userData);
+ delete dbusMessageReplyAsyncHandler;
}
diff --git a/src/CommonAPI/DBus/DBusDaemonProxy.cpp b/src/CommonAPI/DBus/DBusDaemonProxy.cpp
index 24d4d16..99ca10d 100644
--- a/src/CommonAPI/DBus/DBusDaemonProxy.cpp
+++ b/src/CommonAPI/DBus/DBusDaemonProxy.cpp
@@ -38,8 +38,8 @@ static const std::string commonApiParticipantId_ = "org.freedesktop.DBus-/org/fr
DBusDaemonProxy::DBusDaemonProxy(const std::shared_ptr<DBusProxyConnection>& dbusConnection):
DBusProxyBase(dbusConnection),
- interfaceVersionAttribute_(1, 0),
- nameOwnerChangedEvent_(*this, "NameOwnerChanged", "sss") {
+ nameOwnerChangedEvent_(*this, "NameOwnerChanged", "sss"),
+ interfaceVersionAttribute_(1, 0) {
}
void DBusDaemonProxy::init() {
diff --git a/src/CommonAPI/DBus/DBusInputStream.cpp b/src/CommonAPI/DBus/DBusInputStream.cpp
index 2d3b1df..53ae32d 100644
--- a/src/CommonAPI/DBus/DBusInputStream.cpp
+++ b/src/CommonAPI/DBus/DBusInputStream.cpp
@@ -10,11 +10,11 @@ namespace CommonAPI {
namespace DBus {
DBusInputStream::DBusInputStream(const CommonAPI::DBus::DBusMessage& message) :
- message_(message),
dataBegin_(message.getBodyData()),
currentDataPosition_(0),
dataLength_(message.getBodyLength()),
- exception_(nullptr) {
+ exception_(nullptr),
+ message_(message) {
}
DBusInputStream::~DBusInputStream() {}
diff --git a/src/CommonAPI/DBus/DBusMainLoopContext.cpp b/src/CommonAPI/DBus/DBusMainLoopContext.cpp
index c1a581f..c093a67 100644
--- a/src/CommonAPI/DBus/DBusMainLoopContext.cpp
+++ b/src/CommonAPI/DBus/DBusMainLoopContext.cpp
@@ -96,9 +96,9 @@ void DBusWatch::addDependentDispatchSource(DispatchSource* dispatchSource) {
DBusTimeout::DBusTimeout(::DBusTimeout* libdbusTimeout, std::weak_ptr<MainLoopContext>& mainLoopContext) :
+ dueTimeInMs_(TIMEOUT_INFINITE),
libdbusTimeout_(libdbusTimeout),
- mainLoopContext_(mainLoopContext),
- dueTimeInMs_(TIMEOUT_INFINITE) {
+ mainLoopContext_(mainLoopContext) {
}
bool DBusTimeout::isReadyToBeMonitored() {
diff --git a/src/CommonAPI/DBus/DBusObjectManager.cpp b/src/CommonAPI/DBus/DBusObjectManager.cpp
index 3525585..bea40a1 100644
--- a/src/CommonAPI/DBus/DBusObjectManager.cpp
+++ b/src/CommonAPI/DBus/DBusObjectManager.cpp
@@ -23,8 +23,8 @@ namespace CommonAPI {
namespace DBus {
DBusObjectManager::DBusObjectManager(const std::shared_ptr<DBusProxyConnection>& dbusConnection):
- dbusConnection_(dbusConnection),
- rootDBusObjectManagerStub_(new DBusObjectManagerStub("/", dbusConnection)) {
+ rootDBusObjectManagerStub_(new DBusObjectManagerStub("/", dbusConnection)),
+ dbusConnection_(dbusConnection){
if (!dbusConnection->isObjectPathMessageHandlerSet()) {
dbusConnection->setObjectPathMessageHandler(
@@ -267,9 +267,9 @@ bool DBusObjectManager::onIntrospectableInterfaceDBusMessage(const DBusMessage&
foundRegisteredObjects = true;
}
} else {
- for (int i = 1; i < elems.size() - 1; i++) {
+ for (unsigned int i = 1; i < elems.size() - 1; i++) {
std::string build;
- for (int j = 1; j <= i; j++) {
+ for (unsigned int j = 1; j <= i; j++) {
build = build + "/" + elems[j];
if (dbusMessage.hasObjectPath(build)) {
if (nodeSet.find(elems[j + 1]) == nodeSet.end()) {
diff --git a/src/CommonAPI/DBus/DBusObjectManagerStub.cpp b/src/CommonAPI/DBus/DBusObjectManagerStub.cpp
index 5d0f721..6d08f8d 100644
--- a/src/CommonAPI/DBus/DBusObjectManagerStub.cpp
+++ b/src/CommonAPI/DBus/DBusObjectManagerStub.cpp
@@ -17,8 +17,8 @@ namespace DBus {
DBusObjectManagerStub::DBusObjectManagerStub(const std::string& dbusObjectPath,
const std::shared_ptr<DBusProxyConnection>& dbusConnection) :
- dbusConnection_(dbusConnection),
- dbusObjectPath_(dbusObjectPath) {
+ dbusObjectPath_(dbusObjectPath),
+ dbusConnection_(dbusConnection) {
assert(!dbusObjectPath.empty());
assert(dbusObjectPath[0] == '/');
assert(dbusConnection);
diff --git a/src/CommonAPI/DBus/DBusOutputStream.cpp b/src/CommonAPI/DBus/DBusOutputStream.cpp
index b94c4d5..4dfc9fa 100644
--- a/src/CommonAPI/DBus/DBusOutputStream.cpp
+++ b/src/CommonAPI/DBus/DBusOutputStream.cpp
@@ -289,7 +289,7 @@ bool DBusOutputStream::hasError() const {
*/
void DBusOutputStream::flush() {
const int toWrite = payload_.size();
- const bool success = dbusMessage_.setBodyLength(toWrite);
+ dbusMessage_.setBodyLength(toWrite);
char* destinationDataPtr = dbusMessage_.getBodyData();
memcpy(destinationDataPtr, payload_.c_str(), toWrite);
diff --git a/src/CommonAPI/DBus/DBusProxy.cpp b/src/CommonAPI/DBus/DBusProxy.cpp
index 24e39a1..73fc54a 100644
--- a/src/CommonAPI/DBus/DBusProxy.cpp
+++ b/src/CommonAPI/DBus/DBusProxy.cpp
@@ -36,16 +36,16 @@ DBusProxy::DBusProxy(const std::shared_ptr<DBusFactory>& factory,
const std::string& dbusObjectPath,
const std::shared_ptr<DBusProxyConnection>& dbusConnection):
DBusProxyBase(dbusConnection),
- factory_(factory),
+ dbusProxyStatusEvent_(this),
+ availabilityStatus_(AvailabilityStatus::UNKNOWN),
+ interfaceVersionAttribute_(*this, "uu", "getInterfaceVersion"),
+ dbusServiceRegistry_(dbusConnection->getDBusServiceRegistry()),
commonApiServiceId_(split(commonApiAddress, ':')[1]),
commonApiParticipantId_(split(commonApiAddress, ':')[2]),
dbusBusName_(dbusBusName),
dbusObjectPath_(dbusObjectPath),
dbusInterfaceName_(dbusInterfaceName),
- dbusProxyStatusEvent_(this),
- availabilityStatus_(AvailabilityStatus::UNKNOWN),
- interfaceVersionAttribute_(*this, "uu", "getInterfaceVersion"),
- dbusServiceRegistry_(dbusConnection->getDBusServiceRegistry()) {
+ factory_(factory) {
}
void DBusProxy::init() {
diff --git a/src/CommonAPI/DBus/DBusProxyAsyncCallbackHandler.h b/src/CommonAPI/DBus/DBusProxyAsyncCallbackHandler.h
index 74bb244..37c3ba6 100644
--- a/src/CommonAPI/DBus/DBusProxyAsyncCallbackHandler.h
+++ b/src/CommonAPI/DBus/DBusProxyAsyncCallbackHandler.h
@@ -28,31 +28,31 @@ namespace DBus {
template <typename ... _ArgTypes>
class DBusProxyAsyncCallbackHandler: public DBusProxyConnection::DBusMessageReplyAsyncHandler {
public:
- typedef std::function<void(CallStatus, _ArgTypes...)> FunctionType;
+ typedef std::function<void(CallStatus, _ArgTypes...)> FunctionType;
- static inline std::unique_ptr<DBusProxyConnection::DBusMessageReplyAsyncHandler> create(FunctionType&& callback) {
- return std::unique_ptr<DBusProxyConnection::DBusMessageReplyAsyncHandler>(
- new DBusProxyAsyncCallbackHandler(std::move(callback)));
- }
+ static inline std::unique_ptr<DBusProxyConnection::DBusMessageReplyAsyncHandler> create(FunctionType&& callback) {
+ return std::unique_ptr<DBusProxyConnection::DBusMessageReplyAsyncHandler>(
+ new DBusProxyAsyncCallbackHandler(std::move(callback)));
+ }
- DBusProxyAsyncCallbackHandler() = delete;
- DBusProxyAsyncCallbackHandler(FunctionType&& callback):
- callback_(std::move(callback)) {
- }
+ DBusProxyAsyncCallbackHandler() = delete;
+ DBusProxyAsyncCallbackHandler(FunctionType&& callback):
+ callback_(std::move(callback)) {
+ }
- virtual std::future<CallStatus> getFuture() {
- return promise_.get_future();
- }
+ virtual std::future<CallStatus> getFuture() {
+ return promise_.get_future();
+ }
- virtual void onDBusMessageReply(const CallStatus& dbusMessageCallStatus, const DBusMessage& dbusMessage) {
- promise_.set_value(handleDBusMessageReply(dbusMessageCallStatus, dbusMessage, typename make_sequence<sizeof...(_ArgTypes)>::type()));
- }
+ virtual void onDBusMessageReply(const CallStatus& dbusMessageCallStatus, const DBusMessage& dbusMessage) {
+ std::tuple<_ArgTypes...> argTuple;
+ promise_.set_value(handleDBusMessageReply(dbusMessageCallStatus, dbusMessage, typename make_sequence<sizeof...(_ArgTypes)>::type(), argTuple));
+ }
private:
- template <int... _ArgIndices>
- inline CallStatus handleDBusMessageReply(const CallStatus dbusMessageCallStatus, const DBusMessage& dbusMessage, index_sequence<_ArgIndices...>) const {
- CallStatus callStatus = dbusMessageCallStatus;
- std::tuple<_ArgTypes...> argTuple;
+ template <int... _ArgIndices>
+ inline CallStatus handleDBusMessageReply(const CallStatus dbusMessageCallStatus, const DBusMessage& dbusMessage, index_sequence<_ArgIndices...>, std::tuple<_ArgTypes...> argTuple) const {
+ CallStatus callStatus = dbusMessageCallStatus;
if (dbusMessageCallStatus == CallStatus::SUCCESS) {
if (!dbusMessage.isErrorType()) {
@@ -65,12 +65,12 @@ class DBusProxyAsyncCallbackHandler: public DBusProxyConnection::DBusMessageRepl
}
}
- callback_(callStatus, std::move(std::get<_ArgIndices>(argTuple))...);
- return callStatus;
- }
+ callback_(callStatus, std::move(std::get<_ArgIndices>(argTuple))...);
+ return callStatus;
+ }
- std::promise<CallStatus> promise_;
- const FunctionType callback_;
+ std::promise<CallStatus> promise_;
+ const FunctionType callback_;
};
} // namespace DBus
diff --git a/src/CommonAPI/DBus/DBusProxyBase.cpp b/src/CommonAPI/DBus/DBusProxyBase.cpp
index e80224e..5e83875 100644
--- a/src/CommonAPI/DBus/DBusProxyBase.cpp
+++ b/src/CommonAPI/DBus/DBusProxyBase.cpp
@@ -11,8 +11,8 @@ namespace CommonAPI {
namespace DBus {
DBusProxyBase::DBusProxyBase(const std::shared_ptr<DBusProxyConnection>& dbusConnection) :
- dbusConnection_(dbusConnection),
- commonApiDomain_("local") {
+ commonApiDomain_("local"),
+ dbusConnection_(dbusConnection){
}
DBusMessage DBusProxyBase::createMethodCall(const char* methodName,
diff --git a/src/CommonAPI/DBus/DBusProxyHelper.h b/src/CommonAPI/DBus/DBusProxyHelper.h
index 0a316be..336810d 100644
--- a/src/CommonAPI/DBus/DBusProxyHelper.h
+++ b/src/CommonAPI/DBus/DBusProxyHelper.h
@@ -182,7 +182,8 @@ template<
CallStatus callStatus = CallStatus::NOT_AVAILABLE;
- callCallbackOnNotAvailable(asyncCallback, typename make_sequence<sizeof...(_OutArgs)>::type());
+ std::tuple<_OutArgs...> argTuple;
+ callCallbackOnNotAvailable(asyncCallback, typename make_sequence<sizeof...(_OutArgs)>::type(), argTuple);
std::promise<CallStatus> promise;
promise.set_value(callStatus);
@@ -233,7 +234,8 @@ template<
CallStatus callStatus = CallStatus::NOT_AVAILABLE;
- callCallbackOnNotAvailable(asyncCallback, typename make_sequence<sizeof...(_OutArgs)>::type());
+ std::tuple<_OutArgs...> argTuple;
+ callCallbackOnNotAvailable(asyncCallback, typename make_sequence<sizeof...(_OutArgs)>::type(),argTuple);
std::promise<CallStatus> promise;
promise.set_value(callStatus);
@@ -268,9 +270,8 @@ template<
template <int... _ArgIndices>
static void callCallbackOnNotAvailable(std::function<void(CallStatus, _OutArgs...)> callback,
- index_sequence<_ArgIndices...>) {
+ index_sequence<_ArgIndices...>, std::tuple<_OutArgs...> argTuple) {
- std::tuple<_OutArgs...> argTuple;
const CallStatus callstatus = CallStatus::NOT_AVAILABLE;
callback(callstatus, std::move(std::get<_ArgIndices>(argTuple))...);
}
diff --git a/src/CommonAPI/DBus/DBusProxyManager.cpp b/src/CommonAPI/DBus/DBusProxyManager.cpp
index b8ba87e..abbc491 100644
--- a/src/CommonAPI/DBus/DBusProxyManager.cpp
+++ b/src/CommonAPI/DBus/DBusProxyManager.cpp
@@ -18,8 +18,8 @@ DBusProxyManager::DBusProxyManager(DBusProxy& dbusProxy,
dbusProxy_(dbusProxy),
dbusInstanceAvailabilityStatusEvent_(dbusProxy, interfaceId),
factory_(factory),
- interfaceId_(interfaceId),
- registry_(dbusProxy.getDBusConnection()->getDBusServiceRegistry())
+ registry_(dbusProxy.getDBusConnection()->getDBusServiceRegistry()),
+ interfaceId_(interfaceId)
{ }
diff --git a/src/CommonAPI/DBus/DBusServiceRegistry.cpp b/src/CommonAPI/DBus/DBusServiceRegistry.cpp
index e5952de..2041e40 100644
--- a/src/CommonAPI/DBus/DBusServiceRegistry.cpp
+++ b/src/CommonAPI/DBus/DBusServiceRegistry.cpp
@@ -293,7 +293,6 @@ bool DBusServiceRegistry::isServiceInstanceAlive(const std::string& dbusInterfac
dbusServicesMutex_.lock();
//std::unordered_map<std::string, DBusObjectPathCache>::value_type value(dbusObjectPath, std::move(newDbusObjectPathCache));
//auto dbusObjectPathCacheInserted = dbusObjectPathsCache->insert(std::move({dbusObjectPath, std::move(newDbusObjectPathCache)}));
- auto dbusObjectPathCacheInserted =
dbusObjectPathsCache->insert(std::make_pair(dbusObjectPath, std::move(newDbusObjectPathCache)));
dbusObjectPathCacheIterator = dbusObjectPathsCache->find(dbusObjectPath);
@@ -476,10 +475,7 @@ SubscriptionStatus DBusServiceRegistry::onSignalDBusMessage(const DBusMessage& d
dbusInputStream >> dbusObjectPath;
- bool added = false;
-
if (dbusMessage.hasMemberName("InterfacesAdded")) {
- added = true;
dbusInterfaceNameState = DBusRecordState::AVAILABLE;
typedef std::unordered_map<std::string, bool> DBusPropertiesChangedDict;
diff --git a/src/CommonAPI/DBus/DBusServiceRegistry.h b/src/CommonAPI/DBus/DBusServiceRegistry.h
index 9d59cf1..09f020a 100644
--- a/src/CommonAPI/DBus/DBusServiceRegistry.h
+++ b/src/CommonAPI/DBus/DBusServiceRegistry.h
@@ -132,8 +132,8 @@ class DBusServiceRegistry: public std::enable_shared_from_this<DBusServiceRegist
}
DBusServiceListenersRecord(DBusServiceListenersRecord&& other):
- uniqueBusName(std::move(other.uniqueBusName)),
uniqueBusNameState(other.uniqueBusNameState),
+ uniqueBusName(std::move(other.uniqueBusName)),
promiseOnResolve(std::move(other.promiseOnResolve)),
futureOnResolve(std::move(other.futureOnResolve)),
mutexOnResolve(std::move(other.mutexOnResolve)),
diff --git a/src/CommonAPI/DBus/DBusStubAdapter.cpp b/src/CommonAPI/DBus/DBusStubAdapter.cpp
index 7456d9f..f532fed 100644
--- a/src/CommonAPI/DBus/DBusStubAdapter.cpp
+++ b/src/CommonAPI/DBus/DBusStubAdapter.cpp
@@ -25,14 +25,14 @@ DBusStubAdapter::DBusStubAdapter(const std::shared_ptr<DBusFactory>& factory,
const std::string& dbusObjectPath,
const std::shared_ptr<DBusProxyConnection>& dbusConnection,
const bool isManagingInterface) :
- factory_(factory),
commonApiDomain_(split(commonApiAddress, ':')[0]),
commonApiServiceId_(split(commonApiAddress, ':')[1]),
commonApiParticipantId_(split(commonApiAddress, ':')[2]),
- dbusInterfaceName_(dbusInterfaceName),
dbusBusName_(dbusBusName),
dbusObjectPath_(dbusObjectPath),
+ dbusInterfaceName_(dbusInterfaceName),
dbusConnection_(dbusConnection),
+ factory_(factory),
isManagingInterface_(isManagingInterface) {
assert(!dbusBusName_.empty());
diff --git a/src/CommonAPI/DBus/DBusStubAdapterHelper.h b/src/CommonAPI/DBus/DBusStubAdapterHelper.h
index d4c9f5e..a617b15 100644
--- a/src/CommonAPI/DBus/DBusStubAdapterHelper.h
+++ b/src/CommonAPI/DBus/DBusStubAdapterHelper.h
@@ -234,12 +234,13 @@ class DBusMethodWithReplyStubDispatcher<_StubClass, _In<_InArgs...>, _Out<_OutAr
}
bool dispatchDBusMessage(const DBusMessage& dbusMessage, const std::shared_ptr<_StubClass>& stub, DBusStubAdapterHelperType& dbusStubAdapterHelper) {
+ std::tuple<_InArgs..., _OutArgs...> argTuple;
return handleDBusMessage(
dbusMessage,
stub,
dbusStubAdapterHelper,
typename make_sequence_range<sizeof...(_InArgs), 0>::type(),
- typename make_sequence_range<sizeof...(_OutArgs), sizeof...(_InArgs)>::type());
+ typename make_sequence_range<sizeof...(_OutArgs), sizeof...(_InArgs)>::type(),argTuple);
}
private:
template <int... _InArgIndices, int... _OutArgIndices>
@@ -247,8 +248,8 @@ class DBusMethodWithReplyStubDispatcher<_StubClass, _In<_InArgs...>, _Out<_OutAr
const std::shared_ptr<_StubClass>& stub,
DBusStubAdapterHelperType& dbusStubAdapterHelper,
index_sequence<_InArgIndices...>,
- index_sequence<_OutArgIndices...>) const {
- std::tuple<_InArgs..., _OutArgs...> argTuple;
+ index_sequence<_OutArgIndices...>,
+ std::tuple<_InArgs..., _OutArgs...> argTuple) const {
if (sizeof...(_InArgs) > 0) {
DBusInputStream dbusInputStream(dbusMessage);
@@ -300,12 +301,13 @@ class DBusMethodWithReplyAdapterDispatcher<_StubClass, _StubAdapterClass, _In<_I
}
bool dispatchDBusMessage(const DBusMessage& dbusMessage, const std::shared_ptr<_StubClass>& stub, DBusStubAdapterHelperType& dbusStubAdapterHelper) {
+ std::tuple<_InArgs..., _OutArgs...> argTuple;
return handleDBusMessage(
dbusMessage,
stub,
dbusStubAdapterHelper,
typename make_sequence_range<sizeof...(_InArgs), 0>::type(),
- typename make_sequence_range<sizeof...(_OutArgs), sizeof...(_InArgs)>::type());
+ typename make_sequence_range<sizeof...(_OutArgs), sizeof...(_InArgs)>::type(),argTuple);
}
private:
@@ -314,8 +316,8 @@ class DBusMethodWithReplyAdapterDispatcher<_StubClass, _StubAdapterClass, _In<_I
const std::shared_ptr<_StubClass>& stub,
DBusStubAdapterHelperType& dbusStubAdapterHelper,
index_sequence<_InArgIndices...>,
- index_sequence<_OutArgIndices...>) const {
- std::tuple<_InArgs..., _OutArgs...> argTuple;
+ index_sequence<_OutArgIndices...>,
+ std::tuple<_InArgs..., _OutArgs...> argTuple) const {
if (sizeof...(_InArgs) > 0) {
DBusInputStream dbusInputStream(dbusMessage);