client-cpp  0.6.1
IKaaChannelManager.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 IKAACHANNELMANAGER_HPP_
18 #define IKAACHANNELMANAGER_HPP_
19 
20 #include <list>
21 
22 #include "kaa/gen/BootstrapGen.hpp"
26 
27 namespace kaa {
28 
29 class IIServerInfo;
30 
35 public:
36 
45  virtual void setChannel(TransportType type, IDataChannelPtr channel) = 0;
46 
54  virtual void addChannel(IDataChannelPtr channel) = 0;
55 
63  virtual void removeChannel(const std::string& id) = 0;
64 
72  virtual void removeChannel(IDataChannelPtr channel) = 0;
73 
81  virtual std::list<IDataChannelPtr> getChannels() = 0;
82 
94  virtual std::list<IDataChannelPtr> getChannelsByType(ChannelType type) = 0;
95 
107 
117  virtual IDataChannelPtr getChannel(const std::string& channelId) = 0;
118 
126  virtual void onServerFailed(IServerInfoPtr server) = 0;
127 
135  virtual void onServerUpdated(IServerInfoPtr newServer) = 0;
136 
140  virtual void clearChannelList() = 0;
141 
149  virtual void setConnectivityChecker(ConnectivityCheckerPtr checker) = 0;
150 
155  virtual void shutdown() = 0;
156 
161  virtual void pause() = 0;
162 
167  virtual void resume() = 0;
168 
169  virtual ~IKaaChannelManager() {}
170 };
171 
172 } // namespace kaa
173 
174 
175 #endif /* IKAACHANNELMANAGER_HPP_ */
virtual void setConnectivityChecker(ConnectivityCheckerPtr checker)=0
std::shared_ptr< IConnectivityChecker > ConnectivityCheckerPtr
virtual void onServerFailed(IServerInfoPtr server)=0
virtual void onServerUpdated(IServerInfoPtr newServer)=0
virtual std::list< IDataChannelPtr > getChannelsByType(ChannelType type)=0
virtual IDataChannelPtr getChannelByTransportType(TransportType type)=0
virtual void addChannel(IDataChannelPtr channel)=0
virtual void pause()=0
std::shared_ptr< IServerInfo > IServerInfoPtr
Definition: IServerInfo.hpp:53
virtual void clearChannelList()=0
virtual void removeChannel(const std::string &id)=0
virtual std::list< IDataChannelPtr > getChannels()=0
virtual IDataChannelPtr getChannel(const std::string &channelId)=0
virtual void shutdown()=0
virtual void setChannel(TransportType type, IDataChannelPtr channel)=0
virtual void resume()=0