client-cpp  0.6.1
IKaaClient.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 2014 CyberVision, Inc.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 #ifndef IKAACLIENT_HPP_
18 #define IKAACLIENT_HPP_
19 
21 #include "kaa/KaaDefaults.hpp"
22 
23 namespace kaa {
24 
25 class IDeltaManager;
26 class IProfileManager;
27 class EventFamilyFactory;
28 class INotificationManager;
29 class IConfigurationManager;
30 class IEventListenersResolver;
31 class IExternalTransportManager;
32 class ISchemaPersistenceManager;
33 class IEndpointRegistrationManager;
34 class IConfigurationPersistenceManager;
35 class IKaaChannelManager;
36 class ILogCollector;
37 class IKaaDataMultiplexer;
38 class IKaaDataDemultiplexer;
39 
48 class IKaaClient {
49 public:
50 
51 #ifdef KAA_USE_CONFIGURATION
52 
58  virtual IDeltaManager& getDeltaManager() = 0;
59 #endif
60 
67  virtual IProfileManager& getProfileManager() = 0;
68 
69 #ifdef KAA_USE_EVENTS
70 
76  virtual EventFamilyFactory& getEventFamilyFactory() = 0;
77 #endif
78 
79 #ifdef KAA_USE_NOTIFICATIONS
80 
86  virtual INotificationManager& getNotificationManager() = 0;
87 #endif
88 
89 #ifdef KAA_USE_CONFIGURATION
90 
96  virtual IConfigurationManager& getConfigurationManager() = 0;
97 
104  virtual ISchemaPersistenceManager& getSchemaPersistenceManager() = 0;
105 
112  virtual IConfigurationPersistenceManager& getConfigurationPersistenceManager() = 0;
113 #endif
114 
115 #ifdef KAA_USE_EVENTS
116 
121  virtual IEndpointRegistrationManager& getEndpointRegistrationManager() = 0;
122 
128  virtual IEventListenersResolver& getEventListenersResolver() = 0;
129 #endif
130 
136  virtual IKaaChannelManager& getChannelManager() = 0;
137 
149  virtual const KeyPair& getClientKeyPair() = 0;
150 
151 #ifdef KAA_USE_LOGGING
152 
157  virtual ILogCollector& getLogCollector() = 0;
158 #endif
159 
166 
173 
180 
187 
188  virtual ~IKaaClient() { }
189 };
190 
191 }
192 
193 
194 #endif /* IKAACLIENT_HPP_ */
std::pair< Botan::MemoryVector< std::uint8_t >, std::string > KeyPair
Definition: KeyUtils.hpp:29
virtual IProfileManager & getProfileManager()=0
virtual IKaaChannelManager & getChannelManager()=0
virtual IKaaDataMultiplexer & getBootstrapMultiplexer()=0
virtual IKaaDataDemultiplexer & getBootstrapDemultiplexer()=0
virtual const KeyPair & getClientKeyPair()=0
virtual ~IKaaClient()
Definition: IKaaClient.hpp:188
virtual IKaaDataDemultiplexer & getOperationDemultiplexer()=0
virtual IKaaDataMultiplexer & getOperationMultiplexer()=0