client-cpp  0.0.1-SNAPSHOT
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 
44  virtual void addChannel(IDataChannelPtr channel) = 0;
45 
53  virtual void removeChannel(IDataChannelPtr channel) = 0;
54 
62  virtual std::list<IDataChannelPtr> getChannels() = 0;
63 
75  virtual std::list<IDataChannelPtr> getChannelsByType(ChannelType type) = 0;
76 
88 
98  virtual IDataChannelPtr getChannel(const std::string& channelId) = 0;
99 
107  virtual void onServerFailed(IServerInfoPtr server) = 0;
108 
116  virtual void onServerUpdated(IServerInfoPtr newServer) = 0;
117 
121  virtual void clearChannelList() = 0;
122 
130  virtual void setConnectivityChecker(ConnectivityCheckerPtr checker) = 0;
131 
132  virtual ~IKaaChannelManager() {}
133 };
134 
135 } // namespace kaa
136 
137 
138 #endif /* IKAACHANNELMANAGER_HPP_ */
virtual void setConnectivityChecker(ConnectivityCheckerPtr checker)=0
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
boost::shared_ptr< IServerInfo > IServerInfoPtr
Definition: IServerInfo.hpp:55
virtual void clearChannelList()=0
virtual std::list< IDataChannelPtr > getChannels()=0
virtual void removeChannel(IDataChannelPtr channel)=0
virtual IDataChannelPtr getChannel(const std::string &channelId)=0
boost::shared_ptr< IConnectivityChecker > ConnectivityCheckerPtr