1
#ifndef LOCATION_SERVICE_COM_UBUNTU_LOCATION_SERVICE_INTERFACE_H_
2
#define LOCATION_SERVICE_COM_UBUNTU_LOCATION_SERVICE_INTERFACE_H_
4
#include "com/ubuntu/location/service/session/interface.h"
6
#include <org/freedesktop/dbus/service.h>
7
#include <org/freedesktop/dbus/traits/service.h>
8
#include <org/freedesktop/dbus/types/object_path.h>
13
namespace dbus = org::freedesktop::dbus;
27
friend class ServiceStub;
28
friend class ServiceSkeleton;
33
struct InsufficientPermissions { inline static std::string name() { return "com.ubuntu.location.Service.Error.InsufficientPermissions"; } };
34
struct CreatingSession { inline static std::string name() { return "com.ubuntu.location.Service.Error.CreatingSession"; } };
37
struct CreateSessionForCriteria
39
typedef com::ubuntu::location::service::Interface Interface;
41
inline static const std::string& name()
43
static const std::string s
45
"CreateSessionForCriteria"
50
typedef dbus::types::ObjectPath ResultType;
52
inline static const std::chrono::milliseconds default_timeout() { return std::chrono::seconds{1}; }
55
Interface() = default;
58
typedef std::shared_ptr<Interface> Ptr;
60
inline static const std::string& path()
62
static const std::string s{"/com/ubuntu/location/Service"};
66
Interface(const Interface&) = delete;
67
Interface& operator=(const Interface&) = delete;
68
virtual ~Interface() = default;
70
virtual session::Interface::Ptr create_session_for_criteria(const Criteria& criteria) = 0;
86
struct Service<com::ubuntu::location::service::Interface>
88
static const std::string& interface_name()
90
static const std::string s
92
"com.ubuntu.location.Service"
102
#include "com/ubuntu/location/codec.h"
104
#endif // LOCATION_SERVICE_COM_UBUNTU_LOCATION_SERVICE_INTERFACE_H_