Merge branch 'master' into 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 <cstring>\r
23 #include "NSProviderInterface.h"\r
24 #include "NSConstants.h"\r
25 #include "oic_string.h"\r
26 \r
27 namespace OIC\r
28 {\r
29     namespace Service\r
30     {\r
31         ::NSConsumer *NSConsumer::getNSConsumer()\r
32         {\r
33             ::NSConsumer *nsCon = new ::NSConsumer;\r
34             OICStrcpy(nsCon->consumerId, m_consumerId.length(), m_consumerId.c_str());\r
35             return nsCon;\r
36         }\r
37 \r
38         NSConsumer::NSConsumer(::NSConsumer *consumer)\r
39         {\r
40             if (consumer != nullptr)\r
41             {\r
42                 if ((consumer->consumerId != nullptr) && strlen(consumer->consumerId))\r
43                     m_consumerId.assign(consumer->consumerId, strlen(consumer->consumerId));\r
44             }\r
45         }\r
46 \r
47         std::string NSConsumer::getConsumerId() const\r
48         {\r
49             return m_consumerId;\r
50         }\r
51 \r
52         int NSConsumer::acceptSubscription(NSConsumer *consumer, bool accepted)\r
53         {\r
54             NS_LOG(DEBUG, "acceptSubscription - IN");\r
55             if (consumer != nullptr)\r
56                 return NSAcceptSubscription(consumer->getNSConsumer(), accepted);\r
57             NS_LOG(DEBUG, "acceptSubscription - OUT");\r
58             return NS_ERROR;\r
59         }\r
60     }\r
61 }\r