diff options
Diffstat (limited to 'src/CommonAPI/DBus/DBusStubAdapter.cpp')
-rw-r--r-- | src/CommonAPI/DBus/DBusStubAdapter.cpp | 91 |
1 files changed, 21 insertions, 70 deletions
diff --git a/src/CommonAPI/DBus/DBusStubAdapter.cpp b/src/CommonAPI/DBus/DBusStubAdapter.cpp index a27bf40..03fa6c3 100644 --- a/src/CommonAPI/DBus/DBusStubAdapter.cpp +++ b/src/CommonAPI/DBus/DBusStubAdapter.cpp @@ -1,97 +1,48 @@ -/* Copyright (C) 2013 BMW Group - * Author: Manfred Bathelt (manfred.bathelt@bmw.de) - * Author: Juergen Gehring (juergen.gehring@bmw.de) - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ -#include "DBusStubAdapter.h" -#include "DBusUtils.h" +// Copyright (C) 2013-2015 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) +// This Source Code Form is subject to the terms of the Mozilla Public +// License, v. 2.0. If a copy of the MPL was not distributed with this +// file, You can obtain one at http://mozilla.org/MPL/2.0/. -#include <CommonAPI/utils.h> - -#include <cassert> -#include <functional> -#include <sstream> +#include <CommonAPI/DBus/DBusAddressTranslator.hpp> +#include <CommonAPI/DBus/DBusStubAdapter.hpp> namespace CommonAPI { namespace DBus { -const std::string DBusStubAdapter::domain_ = "local"; - -DBusStubAdapter::DBusStubAdapter(const std::shared_ptr<DBusFactory>& factory, - const std::string& commonApiAddress, - const std::string& dbusInterfaceName, - const std::string& dbusBusName, - const std::string& dbusObjectPath, - const std::shared_ptr<DBusProxyConnection>& dbusConnection, - const bool isManagingInterface) : - commonApiDomain_(split(commonApiAddress, ':')[0]), - commonApiServiceId_(split(commonApiAddress, ':')[1]), - commonApiParticipantId_(split(commonApiAddress, ':')[2]), - dbusBusName_(dbusBusName), - dbusObjectPath_(dbusObjectPath), - dbusInterfaceName_(dbusInterfaceName), - dbusConnection_(dbusConnection), - factory_(factory), - isManagingInterface_(isManagingInterface) { - - assert(!dbusBusName_.empty()); - assert(!dbusInterfaceName_.empty()); - assert(!dbusObjectPath_.empty()); - assert(dbusObjectPath_[0] == '/'); - assert(!dbusInterfaceName_.empty()); - assert(dbusConnection_); +DBusStubAdapter::DBusStubAdapter(const DBusAddress &_dbusAddress, + const std::shared_ptr<DBusProxyConnection> &_connection, + const bool _isManaging) + : dbusAddress_(_dbusAddress), + connection_(_connection), + isManaging_(_isManaging) { } DBusStubAdapter::~DBusStubAdapter() { deinit(); } -void DBusStubAdapter::init(std::shared_ptr<DBusStubAdapter> instance) { +void DBusStubAdapter::init(std::shared_ptr<DBusStubAdapter> _instance) { + DBusAddressTranslator::get()->translate(dbusAddress_, address_); } void DBusStubAdapter::deinit() { } -const std::string DBusStubAdapter::getAddress() const { - return commonApiDomain_ + ":" + commonApiServiceId_ + ":" + commonApiParticipantId_; -} - -const std::string& DBusStubAdapter::getDomain() const { - return commonApiDomain_; +const DBusAddress &DBusStubAdapter::getDBusAddress() const { + return dbusAddress_; } -const std::string& DBusStubAdapter::getServiceId() const { - return commonApiServiceId_; +const std::shared_ptr<DBusProxyConnection> &DBusStubAdapter::getDBusConnection() const { + return connection_; } -const std::string& DBusStubAdapter::getInstanceId() const { - return commonApiParticipantId_; +const bool DBusStubAdapter::isManaging() const { + return isManaging_; } const bool DBusStubAdapter::hasFreedesktopProperties() { return false; } -const bool DBusStubAdapter::isManagingInterface() { - return isManagingInterface_; -} - -const std::string& DBusStubAdapter::getDBusName() const { - return dbusBusName_; -} - -const std::string& DBusStubAdapter::getObjectPath() const { - return dbusObjectPath_; -} - -const std::string& DBusStubAdapter::getInterfaceName() const { - return dbusInterfaceName_; -} - -const std::shared_ptr<DBusProxyConnection>& DBusStubAdapter::getDBusConnection() const { - return dbusConnection_; -} - -} // namespace dbus +} // namespace DBus } // namespace CommonAPI |