\r
#include <string.h>\r
#include <stdlib.h>\r
+#include <stdio.h>\r
+#include <stdbool.h>\r
+#include <octypes.h>\r
#include "NSCommon.h"\r
#include "NSConstants.h"\r
+#include "ocstack.h"\r
\r
typedef struct _nsTask\r
{\r
NSTaskType taskType;\r
- void* taskData;\r
- struct _nsTask* nextTask;\r
+ void * taskData;\r
+ struct _nsTask * nextTask;\r
+\r
} NSTask;\r
\r
+typedef struct\r
+{\r
+ NSTopicLL * head;\r
+ NSTopicLL * tail;\r
+ char consumerId[NS_UUID_STRING_SIZE];\r
+ NSTopicLL ** topics;\r
+\r
+} NSTopicList;\r
+\r
+typedef void * NSCacheData;\r
+\r
+typedef struct _NSCacheElement\r
+{\r
+ NSCacheData * data;\r
+ struct _NSCacheElement * next;\r
+\r
+} NSCacheElement;\r
+\r
+typedef struct\r
+{\r
+ NSCacheType cacheType;\r
+ NSCacheElement * head;\r
+ NSCacheElement * tail;\r
+\r
+} NSCacheList;\r
+\r
+typedef struct\r
+{\r
+ char id[NS_UUID_STRING_SIZE];\r
+ int syncObId; // sync resource observer ID for local consumer\r
+ int messageObId; // message resource observer ID for local consumer\r
+ int remote_syncObId; //sync observer ID subscribed through remote server\r
+ int remote_messageObId; //message observer ID subscribed through remote server\r
+ bool isWhite; // access state -> True: allowed / False: blocked\r
+\r
+} NSCacheSubData;\r
+\r
+typedef struct\r
+{\r
+ char * id;\r
+ int messageType; // noti = 1, read = 2, dismiss = 3\r
+ NSMessage * nsMessage;\r
+\r
+} NSCacheMsgData;\r
+\r
+typedef struct\r
+{\r
+ char * topicName;\r
+ NSTopicState state;\r
+\r
+} NSCacheTopicData;\r
+\r
+typedef struct\r
+{\r
+ char id[NS_UUID_STRING_SIZE];\r
+ char * topicName;\r
+\r
+} NSCacheTopicSubData;\r
+\r
+typedef struct\r
+{\r
+ OCResourceHandle handle;\r
+ char providerId[NS_UUID_STRING_SIZE];\r
+ char * version;\r
+ bool policy;\r
+ char * message_uri;\r
+ char * sync_uri;\r
+\r
+ //optional\r
+ char * topic_uri;\r
+\r
+} NSNotificationResource;\r
+\r
+typedef struct\r
+{\r
+ OCResourceHandle handle;\r
+\r
+ uint64_t messageId;\r
+ char providerId[NS_UUID_STRING_SIZE];\r
+\r
+ //optional\r
+ NSMessageType type;\r
+ char * dateTime;\r
+ uint64_t ttl;\r
+ char * title;\r
+ char * contentText;\r
+ char * sourceName;\r
+ char * topicName;\r
+ NSMediaContents * mediaContents;\r
+\r
+} NSMessageResource;\r
+\r
+typedef struct\r
+{\r
+ OCResourceHandle handle;\r
+ uint64_t messageId;\r
+ char providerId[NS_UUID_STRING_SIZE];\r
+ char * state;\r
+\r
+} NSSyncResource;\r
+\r
+typedef struct\r
+{\r
+ OCResourceHandle handle;\r
+ char providerId[NS_UUID_STRING_SIZE];\r
+ char consumerId[NS_UUID_STRING_SIZE];\r
+ NSTopicList ** TopicList;\r
+\r
+} NSTopicResource;\r
+\r
+typedef struct\r
+{\r
+ char providerId[NS_UUID_STRING_SIZE];\r
+ char * providerName;\r
+ char * userInfo;\r
+\r
+} NSProviderInfo;\r
+\r
+#ifdef WITH_MQ\r
+typedef struct\r
+{\r
+ char * serverAddr;\r
+ char * topicName;\r
+\r
+} NSMQTopicAddress;\r
+\r
+typedef struct\r
+{\r
+ char * serverUri;\r
+ OCDevAddr * devAddr;\r
+\r
+} NSMQServerInfo;\r
+#endif\r
+\r
#endif /* _NS_STRUCTS_H_ */\r