Merge branch 'notification-service'
[platform/upstream/iotivity.git] / service / notification / cpp-wrapper / provider / src / NSConsumer.cpp
1 //******************************************************************\r
2 //\r
3 // Copyright 2016 Samsung Electronics All Rights Reserved.\r
4 //\r
5 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\r
6 //\r
7 // Licensed under the Apache License, Version 2.0 (the "License");\r
8 // you may not use this file except in compliance with the License.\r
9 // You may obtain a copy of the License at\r
10 //\r
11 //      http://www.apache.org/licenses/LICENSE-2.0\r
12 //\r
13 // Unless required by applicable law or agreed to in writing, software\r
14 // distributed under the License is distributed on an "AS IS" BASIS,\r
15 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16 // See the License for the specific language governing permissions and\r
17 // limitations under the License.\r
18 //\r
19 //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\r
20 \r
21 #include "NSConsumer.h"\r
22 #include "NSProviderInterface.h"\r
23 \r
24 namespace OIC\r
25 {\r
26     namespace Service\r
27     {\r
28         ::NSConsumer *NSConsumer::getNSConsumer()\r
29         {\r
30             ::NSConsumer *nsCon = new ::NSConsumer;\r
31             OICStrcpy(nsCon->consumerId, m_consumerId.length(), m_consumerId.c_str());\r
32             return nsCon;\r
33         }\r
34 \r
35         NSConsumer::NSConsumer(::NSConsumer *consumer)\r
36         {\r
37             if (consumer != nullptr)\r
38             {\r
39                 if ((consumer->consumerId != nullptr) && strlen(consumer->consumerId))\r
40                     m_consumerId.assign(consumer->consumerId, strlen(consumer->consumerId));\r
41             }\r
42         }\r
43 \r
44         std::string NSConsumer::getConsumerId() const\r
45         {\r
46             return m_consumerId;\r
47         }\r
48 \r
49         int NSConsumer::acceptSubscription(NSConsumer *consumer, bool accepted)\r
50         {\r
51             NS_LOG(DEBUG, "acceptSubscription - IN");\r
52             if (consumer != nullptr)\r
53                 return NSAcceptSubscription(consumer->getNSConsumer(), accepted);\r
54             NS_LOG(DEBUG, "acceptSubscription - OUT");\r
55             return NS_ERROR;\r
56         }\r
57     }\r
58 }\r