Fix some function signatures
authorSangyoon Jang <jeremy.jang@samsung.com>
Mon, 22 Feb 2021 11:56:31 +0000 (20:56 +0900)
committer장상윤/Tizen Platform Lab(SR)/Engineer/삼성전자 <jeremy.jang@samsung.com>
Tue, 23 Feb 2021 06:00:41 +0000 (15:00 +0900)
Base class should be accessed by pointer type.
Use const reference of vector to avoid unnecessary copy.

Change-Id: I8efae6bcc65e8f7917632cee623cb7ff478722cc
Signed-off-by: Sangyoon Jang <jeremy.jang@samsung.com>
13 files changed:
cion/channel/broadcast_channel.cc
cion/channel/broadcast_channel.hh
cion/channel/client_channel.cc
cion/channel/client_channel.hh
cion/channel/ievent_observer.hh
cion/channel/ievent_sender.hh
cion/channel/server_channel.cc
cion/channel/server_channel.hh
vine_manager/vine_manager.cc
vine_manager/vine_manager.hh
vine_manager/vine_sender.cc
vine_manager/vine_sender.hh
vine_manager/vine_sender_implementation.hh

index 330b75978ac4f52bc78cba0557e29a794409eb10..2246306e398e400820b70a2dbcfcb2b030e0525e 100644 (file)
@@ -41,13 +41,13 @@ void BroadcastChannel::Publish(IPayload* data) {
   }
 }
 
-void BroadcastChannel::OnDataEvent(const IDataInfo& info,
-    std::vector<char> data) {
+void BroadcastChannel::OnDataEvent(std::shared_ptr<IDataInfo> info,
+    const std::vector<char>& data) {
 
 }
 
-void BroadcastChannel::OnConnectionEvent(const IConnectionInfo& info,
-    std::vector<char> serialized_peerInfo) {
+void BroadcastChannel::OnConnectionEvent(std::shared_ptr<IConnectionInfo> info,
+    const std::vector<char>& serialized_peerInfo) {
 
 }
 
index cffdd2bae20c3b6911cfb798ecfb23a3bb1c476f..c57125b6cd6d43c2ba7772b798f21732fd090081 100644 (file)
@@ -39,10 +39,10 @@ public:
 protected:
   virtual void OnMessageReceived(IPayload* data,
       std::shared_ptr<PeerInfo> peer) = 0;
-  void OnDataEvent(const IDataInfo& info,
-      std::vector<char> serialized_payload) override;
-  void OnConnectionEvent(const IConnectionInfo& info,
-      std::vector<char> serialized_peerinfo) override;
+  void OnDataEvent(std::shared_ptr<IDataInfo> info,
+      const std::vector<char>& serialized_payload) override;
+  void OnConnectionEvent(std::shared_ptr<IConnectionInfo> info,
+      const std::vector<char>& serialized_peerinfo) override;
   std::string GetServiceName() override;
   int GetChannelId() override;
 
index 6c8a5f00ecc139467f673a283be6e81b9e587c37..6a5bd6b81a334d491870c9e8e6bfd0ab495fc862 100644 (file)
@@ -14,6 +14,8 @@
  * limitations under the License.
  */
 
+#include <memory>
+
 #include "client_channel.hh"
 #include "client_channel_implementation.hh"
 #include "control_info.hh"
@@ -53,36 +55,39 @@ ClientChannel::Impl::Impl(ClientChannel* parent, std::string service_name,
 }
 
 void ClientChannel::TryDiscovery() {
-  auto ci = ControlInfo(IControlInfo::ControlType::DISCOVERY,
+  auto ci = std::make_shared<ControlInfo>(IControlInfo::ControlType::DISCOVERY,
     IControlInfo::ChannelType::COMMUNICATION, impl_->service_name_);
   impl_->sender_->OperateChannel(ci, nullptr);
 }
 
 void ClientChannel::StopDiscovery() {
-  auto ci = ControlInfo(IControlInfo::ControlType::STOP_DISCOVERY,
+  auto ci = std::make_shared<ControlInfo>(
+    IControlInfo::ControlType::STOP_DISCOVERY,
     IControlInfo::ChannelType::COMMUNICATION, impl_->service_name_);
   impl_->sender_->OperateChannel(ci, nullptr);
 }
 
 void ClientChannel::Connect(std::shared_ptr<PeerInfo> peer) {
-  auto ci = ControlInfo(IControlInfo::ControlType::CONNECT,
+  auto ci = std::make_shared<ControlInfo>(IControlInfo::ControlType::CONNECT,
     IControlInfo::ChannelType::COMMUNICATION, impl_->service_name_);
   impl_->sender_->OperateChannel(ci, peer);
 }
 
 void ClientChannel::Disconnect() {
-  auto ci = ControlInfo(IControlInfo::ControlType::DISCONNECT,
+  auto ci = std::make_shared<ControlInfo>(IControlInfo::ControlType::DISCONNECT,
     IControlInfo::ChannelType::COMMUNICATION, impl_->service_name_);
   impl_->sender_->OperateChannel(ci, impl_->peer_);
 }
 
 std::vector<char> ClientChannel::SendData(std::vector<char> data, int timeout) {
-  auto di = DataInfo(IDataInfo::MessageType::Sync, impl_->peer_->GetUUID());
+  auto di = std::make_shared<DataInfo>(IDataInfo::MessageType::Sync,
+      impl_->peer_->GetUUID());
   return impl_->sender_->SendData(data, di, impl_->peer_, timeout);
 }
 
 void ClientChannel::SendPayLoadAsync(IPayload* data) {
-  auto di = DataInfo(IDataInfo::MessageType::Sync, impl_->peer_->GetUUID());
+  auto di = std::make_shared<DataInfo>(IDataInfo::MessageType::Sync,
+      impl_->peer_->GetUUID());
   impl_->sender_->SendData(data->Serialize(), di, impl_->peer_, -1);
 }
 
@@ -90,17 +95,18 @@ std::shared_ptr<PeerInfo> ClientChannel::GetPeerInfo() {
   return impl_->peer_;
 }
 
-void ClientChannel::OnDataEvent(const IDataInfo& info, std::vector<char> data) {
-  if (info.GetType() == IDataInfo::MessageType::Async) {
-    auto pl = DataPayload(data);
+void ClientChannel::OnDataEvent(std::shared_ptr<IDataInfo> info,
+    const std::vector<char>& data) {
+  if (info->GetType() == IDataInfo::MessageType::Async) {
+    auto pl = std::make_shared<DataPayload>(data);
     OnPayloadReceived(pl);
   }
 }
 
-void ClientChannel::OnConnectionEvent(const IConnectionInfo& info,
-    std::vector<char> serialized_peerInfo) {
+void ClientChannel::OnConnectionEvent(std::shared_ptr<IConnectionInfo> info,
+    const std::vector<char>& serialized_peerInfo) {
   std::shared_ptr<PeerInfo> peer;
-  IConnectionInfo::ConnectionType type = info.GetConnectionType();
+  IConnectionInfo::ConnectionType type = info->GetConnectionType();
   switch (type) {
     case IConnectionInfo::ConnectionType::Connected: {
       impl_->peer_ = std::shared_ptr<PeerInfo>(peer);
index 278c0001d3363ee1b6f6d920b925862cf46296d3..55ace5b452bb66668f22fc9e14a9f52c69502f90 100644 (file)
@@ -46,14 +46,14 @@ public:
 protected:
   virtual void OnConnentionStatusChaneged(std::shared_ptr<PeerInfo> peer,
       IConnectionInfo::ConnectionStatus status) = 0;
-  virtual void OnPayloadReceived(IPayload& data) = 0;
+  virtual void OnPayloadReceived(std::shared_ptr<IPayload> data) = 0;
   virtual void OnErrorReported(int code, std::shared_ptr<PeerInfo> peer) = 0;
   virtual void OnDiscovered(std::shared_ptr<PeerInfo> peer) = 0;
 
-  void OnDataEvent(const IDataInfo& info,
-      std::vector<char> serialized_payload) override;
-  void OnConnectionEvent(const IConnectionInfo& info,
-      std::vector<char> serialized_peerinfo) override;
+  void OnDataEvent(std::shared_ptr<IDataInfo> info,
+      const std::vector<char>& serialized_payload) override;
+  void OnConnectionEvent(std::shared_ptr<IConnectionInfo> info,
+      const std::vector<char>& serialized_peerinfo) override;
   std::string GetServiceName() override;
   int GetChannelId() override;
 
index b8fae58e009f775c113da8b061c4a3398ab28b3b..b54c922f79debcbcb4393f55afe89bf390039adf 100644 (file)
@@ -18,6 +18,7 @@
 #ifndef CION_IEVENTOBSERVER_H_
 #define CION_IEVENTOBSERVER_H_
 
+#include <memory>
 #include <string>
 #include <vector>
 
@@ -31,11 +32,11 @@ namespace channel {
 class IEventObserver {
  public:
 
-  virtual void OnDataEvent(const IDataInfo& info,
-      std::vector<char> serialized_payload) = 0;
+  virtual void OnDataEvent(std::shared_ptr<IDataInfo> info,
+      const std::vector<char>& serialized_payload) = 0;
 
-  virtual void OnConnectionEvent(const IConnectionInfo& info,
-      std::vector<char> serialized_peerinfo) = 0;
+  virtual void OnConnectionEvent(std::shared_ptr<IConnectionInfo> info,
+      const std::vector<char>& serialized_peerinfo) = 0;
 
   virtual std::string GetServiceName() = 0;
   virtual int GetChannelId() = 0;
index 733bc4dc3d57497f1dfa305a52e450c666dfa91d..2f1d340b2c34ed09a1c4237f13ff5a4041d7bbe7 100644 (file)
@@ -31,12 +31,13 @@ namespace channel {
 
 class IEventSender {
  public:
-  virtual void SendDataAsync(std::vector<char> serialized_payload,
-      const IDataInfo& info, std::shared_ptr<PeerInfo> peer_info) = 0;
-  virtual std::vector<char> SendData(std::vector<char> serialized_payload,
-      const IDataInfo& info, std::shared_ptr<PeerInfo> peer_info,
+  virtual void SendDataAsync(const std::vector<char>& serialized_payload,
+      std::shared_ptr<IDataInfo> info, std::shared_ptr<PeerInfo> peer_info) = 0;
+  virtual std::vector<char> SendData(
+      const std::vector<char>& serialized_payload,
+      std::shared_ptr<IDataInfo> info, std::shared_ptr<PeerInfo> peer_info,
       int timeout) = 0;
-  virtual void OperateChannel(const IControlInfo& info,
+  virtual void OperateChannel(std::shared_ptr<IControlInfo> info,
       std::shared_ptr<PeerInfo> peer_info) = 0;
   virtual void SetSecurity(SecurityInfo sec) = 0;
 };
index 4808f77c58951e415e8d4caa47523009296685bc..5a75e5098c02811a6f17e1f1827e2440865172d4 100644 (file)
@@ -15,6 +15,8 @@
  * limitations under the License.
  */
 
+#include <memory>
+
 #include "server_channel.hh"
 #include "server_channel_implementation.hh"
 #include "control_info.hh"
@@ -57,21 +59,21 @@ ServerChannel::Impl::Impl(ServerChannel* parent, std::string service_name,
 }
 
 void ServerChannel::Listen() {
-  auto ci = ControlInfo(IControlInfo::ControlType::LISTEN,
+  auto ci = std::make_shared<ControlInfo>(IControlInfo::ControlType::LISTEN,
       IControlInfo::ChannelType::COMMUNICATION, impl_->service_name_);
   impl_->listener_->RegisterObserver(this);
        impl_->sender_->OperateChannel(ci, impl_->peer_info_);
 }
 
 void ServerChannel::Stop() {
-  auto ci = ControlInfo(IControlInfo::ControlType::STOP,
+  auto ci = std::make_shared<ControlInfo>(IControlInfo::ControlType::STOP,
     IControlInfo::ChannelType::COMMUNICATION, impl_->service_name_);
   impl_->listener_->UnregisterObserver(this);
   impl_->sender_->OperateChannel(ci, impl_->peer_info_);
 }
 
 void ServerChannel::Disconnect(std::shared_ptr<PeerInfo> peer) {
-  auto ci = ControlInfo(IControlInfo::ControlType::DISCONNECT,
+  auto ci = std::make_shared<ControlInfo>(IControlInfo::ControlType::DISCONNECT,
       IControlInfo::ChannelType::COMMUNICATION, impl_->service_name_);
   impl_->sender_->OperateChannel(ci, peer);
 }
@@ -91,13 +93,14 @@ std::list<std::shared_ptr<PeerInfo>> ServerChannel::GetConnectedPeerList() {
 }
 
 
-void ServerChannel::OnDataEvent(const IDataInfo& info, std::vector<char> data) {
+void ServerChannel::OnDataEvent(std::shared_ptr<IDataInfo> info,
+    const std::vector<char>& data) {
   for (auto& i : impl_->peerlist_) {
-    if (i->GetUUID() == info.GetUUID()) {
-      if (info.GetType() == IDataInfo::MessageType::Async) {
-        auto pl = DataPayload(data);
+    if (i->GetUUID() == info->GetUUID()) {
+      if (info->GetType() == IDataInfo::MessageType::Async) {
+        auto pl = std::make_shared<DataPayload>(data);
         OnPayloadReceived(pl, i);
-      } else if (info.GetType() == IDataInfo::MessageType::Sync) {
+      } else if (info->GetType() == IDataInfo::MessageType::Sync) {
         OnDataReceived(data, i);
       }
       break;
@@ -105,10 +108,10 @@ void ServerChannel::OnDataEvent(const IDataInfo& info, std::vector<char> data) {
   }
 }
 
-void ServerChannel::OnConnectionEvent(const IConnectionInfo& info,
-    std::vector<char> serialized_peerInfo) {
+void ServerChannel::OnConnectionEvent(std::shared_ptr<IConnectionInfo> info,
+    const std::vector<char>& serialized_peerInfo) {
   std::shared_ptr<PeerInfo> peer;
-  IConnectionInfo::ConnectionType type = info.GetConnectionType();
+  IConnectionInfo::ConnectionType type = info->GetConnectionType();
   switch (type) {
     case IConnectionInfo::ConnectionType::ConnectionRequested: {
       OnConnentionRequest(peer);
@@ -122,7 +125,7 @@ void ServerChannel::OnConnectionEvent(const IConnectionInfo& info,
     }
     case IConnectionInfo::ConnectionType::Disconnected: {
       for (auto it : impl_->peerlist_) {
-        if (it->GetUUID() == info.GetUUID()) {
+        if (it->GetUUID() == info->GetUUID()) {
             impl_->peerlist_.remove(it);
             break;
         }
index 2e868f59c3fa21b1a38df75beb0263feaef16050..3c81dc7f219a3fece59d703bb0bb01c4d499bb5f 100644 (file)
@@ -49,17 +49,17 @@ class ServerChannel: public IEventObserver {
  protected:
   virtual void OnConnentionStatusChaneged(std::shared_ptr<PeerInfo> peer,
       IConnectionInfo::ConnectionStatus status) = 0;
-  virtual std::vector<char> OnDataReceived(std::vector<char> data,
+  virtual std::vector<char> OnDataReceived(const std::vector<char>& data,
       std::shared_ptr<PeerInfo> peer) = 0;
-  virtual void OnPayloadReceived(IPayload& data,
+  virtual void OnPayloadReceived(std::shared_ptr<IPayload> data,
       std::shared_ptr<PeerInfo> peer) = 0;
   virtual bool OnConnentionRequest(std::shared_ptr<PeerInfo> peer) = 0;
   virtual void OnErrorReported(int code, std::shared_ptr<PeerInfo> peer) = 0;
 
-  void OnDataEvent(const IDataInfo& info,
-      std::vector<char> serialized_payload) override;
-  void OnConnectionEvent(const IConnectionInfo& info,
-      std::vector<char> serialized_peerinfo) override;
+  void OnDataEvent(std::shared_ptr<IDataInfo> info,
+      const std::vector<char>& serialized_payload) override;
+  void OnConnectionEvent(std::shared_ptr<IConnectionInfo> info,
+      const std::vector<char>& serialized_peerinfo) override;
   std::string GetServiceName() override;
   int GetChannelId() override;
 
index 0fca81a18125cdf26bfd4b5c298ffcc5fbad5505..22585e7e4308bd44505cf087e2b3036ad6e12a5a 100644 (file)
@@ -259,19 +259,21 @@ void VineManager::RegisterObserver(channel::IEventObserver* observer) {
 void VineManager::UnregisterObserver(channel::IEventObserver* observer) {
 }
 
-void VineManager::SendDataAsync(std::vector<char> serialized_payload,
-    channel::IDataInfo& info, int channel_id,
+void VineManager::SendDataAsync(const std::vector<char>& serialized_payload,
+    std::shared_ptr<channel::IDataInfo> info, int channel_id,
     std::shared_ptr<PeerInfo> peer_info) {
 }
 
-std::vector<char> VineManager::SendData(std::vector<char> serialized_payload,
-    channel::IDataInfo& info, int channel_id,
+std::vector<char> VineManager::SendData(
+    const std::vector<char>& serialized_payload,
+    std::shared_ptr<channel::IDataInfo> info, int channel_id,
     std::string peer_uuid, int timeout) {
   return {};
 }
 
 void VineManager::OperateChannel(int channel_id,
-    const channel::IControlInfo& info, std::shared_ptr<PeerInfo> peer_info) {
+    std::shared_ptr<channel::IControlInfo> info,
+    std::shared_ptr<PeerInfo> peer_info) {
 }
 
 }  // namespace cion
\ No newline at end of file
index d08dbc8c3d766cf4f11a0930f20fced8ead6ed32..a7d4eb6a8a1e80d126942ad04295e7d8b881ce13 100644 (file)
@@ -41,13 +41,14 @@ class EXPORT_API VineManager {
   void UnregisterSender(int channel_id);
   void RegisterObserver(channel::IEventObserver* observer);
   void UnregisterObserver(channel::IEventObserver* observer);
-  void SendDataAsync(std::vector<char> serialized_payload,
-      channel::IDataInfo& info, int channel_id,
+  void SendDataAsync(const std::vector<char>& serialized_payload,
+      std::shared_ptr<channel::IDataInfo> info, int channel_id,
       std::shared_ptr<PeerInfo> peer_info);
-  std::vector<char> SendData(std::vector<char> serialized_payload,
-      channel::IDataInfo& info, int channel_id,
+  std::vector<char> SendData(const std::vector<char>& serialized_payload,
+      std::shared_ptr<channel::IDataInfo> info, int channel_id,
       std::string peer_uuid, int timeout);
-  void OperateChannel(int channel_id, const channel::IControlInfo& info,
+  void OperateChannel(int channel_id,
+      std::shared_ptr<channel::IControlInfo> info,
       std::shared_ptr<PeerInfo> peer_info);
   void Discovery();
   VineManager();
index 1197fe2cd6fe1de5976dff2bf2cf1809a2f79dd9..5d706cfe9d2906cbc9834705b5d7477cb1ebf42c 100644 (file)
@@ -34,7 +34,7 @@ VineSender::~VineSender() {
 }
 
 VineSender::Impl::Impl(std::string service_name, int channel_id)
-         : service_name_(service_name), channel_id_(channel_id) {
+    : service_name_(service_name), channel_id_(channel_id) {
   port_ = 0;
   VineManager::GetInst().RegisterSender(service_name, channel_id);
 }
@@ -43,22 +43,25 @@ VineSender::Impl::~Impl() {
   VineManager::GetInst().UnregisterSender(channel_id_);
 }
 
-void VineSender::Impl::OperateChannel(const channel::IControlInfo& info,
-       std::shared_ptr<PeerInfo> peer_info) {
-
-       VineManager::GetInst().OperateChannel(channel_id_, info, peer_info);
+void VineSender::Impl::OperateChannel(
+  std::shared_ptr<channel::IControlInfo> info,
+  std::shared_ptr<PeerInfo> peer_info) {
+  VineManager::GetInst().OperateChannel(channel_id_, info, peer_info);
 }
 
-void VineSender::SendDataAsync(std::vector<char> serialized_payload,
-    const channel::IDataInfo& info, std::shared_ptr<PeerInfo> peer_info) {
+void VineSender::SendDataAsync(const std::vector<char>& serialized_payload,
+    std::shared_ptr<channel::IDataInfo> info,
+    std::shared_ptr<PeerInfo> peer_info) {
 }
 
-std::vector<char> VineSender::SendData(std::vector<char> serialized_payload,
-    const channel::IDataInfo& info, std::shared_ptr<PeerInfo> peer_info, int timeout) {
+std::vector<char> VineSender::SendData(
+    const std::vector<char>& serialized_payload,
+    std::shared_ptr<channel::IDataInfo> info,
+    std::shared_ptr<PeerInfo> peer_info, int timeout) {
   return {};
 }
 
-void VineSender::OperateChannel(const channel::IControlInfo& info,
+void VineSender::OperateChannel(std::shared_ptr<channel::IControlInfo> info,
     std::shared_ptr<PeerInfo> peer_info) {
   impl_->OperateChannel(info, peer_info);
 }
index 06f55c80c0f6c0341ceb9b3f5b3a77a607651f54..c08bc942779e8c63eb744f3be305c3e78d165736 100644 (file)
@@ -40,13 +40,13 @@ class EXPORT_API VineSender : public channel::IEventSender {
   virtual ~VineSender();
 
  protected:
-  void SendDataAsync(std::vector<char> serialized_payload,
-      const channel::IDataInfo& info,
+  void SendDataAsync(const std::vector<char>& serialized_payload,
+      std::shared_ptr<channel::IDataInfo> info,
       std::shared_ptr<PeerInfo> peer_info) override;
-  std::vector<char> SendData(std::vector<char> serialized_payload,
-      const channel::IDataInfo& info,
+  std::vector<char> SendData(const std::vector<char>& serialized_payload,
+      std::shared_ptr<channel::IDataInfo> info,
       std::shared_ptr<PeerInfo> peer_info, int timeout) override;
-  void OperateChannel(const channel::IControlInfo& info,
+  void OperateChannel(std::shared_ptr<channel::IControlInfo> info,
       std::shared_ptr<PeerInfo> peer_info) override;
   void SetSecurity(SecurityInfo sec) override;
 
index f16ae79f466e6939df74a745f39eae05997fbf6c..8aabe5f952e0390e5430c85687b9f99df37c5f20 100644 (file)
@@ -17,6 +17,8 @@
 #ifndef CION_API_VINE_SENDER_IMPLEMENTATION_HH_
 #define CION_API_VINE_SENDER_IMPLEMENTATION_HH_
 
+#include <memory>
+
 #include "cion/common/peer_info.hh"
 #include "cion/channel/idata_info.hh"
 #include "cion/channel/icontrol_info.hh"
@@ -32,7 +34,7 @@ class VineSender::Impl {
   friend class VineSender;
 
   explicit Impl(std::string service_name, int channel_id);
-  void OperateChannel(const channel::IControlInfo& info,
+  void OperateChannel(std::shared_ptr<channel::IControlInfo> info,
       std::shared_ptr<PeerInfo> peer_info);
 
  private: