--- /dev/null
+//******************************************************************\r
+//\r
+// Copyright 2016 Samsung Electronics All Rights Reserved.\r
+//\r
+//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\r
+//\r
+// Licensed under the Apache License, Version 2.0 (the "License");\r
+// you may not use this file except in compliance with the License.\r
+// You may obtain a copy of the License at\r
+//\r
+// http://www.apache.org/licenses/LICENSE-2.0\r
+//\r
+// Unless required by applicable law or agreed to in writing, software\r
+// distributed under the License is distributed on an "AS IS" BASIS,\r
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+// See the License for the specific language governing permissions and\r
+// limitations under the License.\r
+//\r
+//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=\r
+\r
+#include "NSProviderTopic.h"\r
+\r
+NSTopicList * NSGetTopics(char *consumerId)\r
+{\r
+ NS_LOG(DEBUG, "NSGetTopics()");\r
+\r
+ NSTopicList * topicList;\r
+\r
+ if(consumerId == NULL)\r
+ {\r
+ NS_LOG(DEBUG, "All registered topic list");\r
+ }\r
+ else\r
+ {\r
+ NS_LOG_V(DEBUG, "Subscribed topic list for consumerId(%s)", consumerId);\r
+ }\r
+\r
+ NS_LOG(DEBUG, "NSGetTopics() NS_OK");\r
+ return topicList;\r
+}\r
+\r
+void * NSTopicSchedule(void * ptr)\r
+{\r
+ if (ptr == NULL)\r
+ {\r
+ NS_LOG(DEBUG, "Create NSTopicSchedule");\r
+ }\r
+\r
+ while (NSIsRunning[TOPIC_SCHEDULER])\r
+ {\r
+ sem_wait(&NSSemaphore[TOPIC_SCHEDULER]);\r
+ pthread_mutex_lock(&NSMutex[TOPIC_SCHEDULER]);\r
+\r
+ if (NSHeadMsg[TOPIC_SCHEDULER] != NULL)\r
+ {\r
+ NSTask *node = NSHeadMsg[TOPIC_SCHEDULER];\r
+ NSHeadMsg[TOPIC_SCHEDULER] = node->nextTask;\r
+\r
+ switch (node->taskType)\r
+ {\r
+ case TASK_SEND_TOPICS:\r
+ NS_LOG(DEBUG, "CASE TASK_SEND_TOPICS : ");\r
+ break;\r
+ case TASK_SUBSCRIBE_TOPICS:\r
+ NS_LOG(DEBUG, "CASE TASK_SUBSCRIBE_TOPICS : ");\r
+ break;\r
+ case TASK_REGISTER_TOPICS:\r
+ NS_LOG(DEBUG, "CASE TASK_REGISTER_TOPICS : ");\r
+ break;\r
+ default:\r
+ break;\r
+ }\r
+\r
+ OICFree(node);\r
+ }\r
+\r
+ pthread_mutex_unlock(&NSMutex[TOPIC_SCHEDULER]);\r
+ }\r
+\r
+ NS_LOG(DEBUG, "Destroy NSTopicSchedule");\r
+ return NULL;\r
+}\r