summaryrefslogtreecommitdiffstats
path: root/veslibrary/ves_cpplibrary/src/lib/encode/include/XJsonObject.h
blob: 25cec50253f46d3ee555f7c7e3ce0a8e94996573 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#pragma once
        
#include "XEvent.h"
#include "XJsonObjectInstance.h"

namespace vagt
{
    namespace encode
    {
        class XJsonObject 
        {
        public:
            XJsonObject(const XString& objectName,
                const XArrayOfXJsonObjectInstance& objectInstances
                );

            virtual void setObjectSchema(const XString& objectSchema);
            virtual void setObjectName(const XString& objectName);
            virtual void setNfSubscriptionId(const XString& nfSubscriptionId);
            virtual void setObjectInstances(const XArrayOfXJsonObjectInstance& objectInstances);
            virtual void setNfSubscribedObjectName(const XString& nfSubscribedObjectName);
            virtual void setObjectSchemaUrl(const XString& objectSchemaUrl);

            std::shared_ptr<XJsonObject> imp_;
        protected:
            XJsonObject();
        };

        using XArrayOfJsonObject = std::vector<XJsonObject>;
    }
}