summaryrefslogtreecommitdiffstats
path: root/veslibrary/ves_cpplibrary/src/lib/encode/include/XStateChangeFields.h
diff options
context:
space:
mode:
authorYatian XU <yatian.xu@nokia-sbell.com>2019-09-10 13:50:31 +0800
committerYatian XU <yatian.xu@nokia-sbell.com>2019-09-10 13:50:31 +0800
commitbe6db99ca9b99a3b72b71a8fb1f5fcd9fc8aaf8f (patch)
tree6bbb90f07e03f4b90886391e859884898604ae05 /veslibrary/ves_cpplibrary/src/lib/encode/include/XStateChangeFields.h
parent6c27d22ac7af3d1379a5448eef5894083bcae9ec (diff)
Contribute C++ implement of VES spec 7.0.1 to ONAP/vnfsdk:
Part3: encode library Issue-ID: VNFSDK-466 Signed-off-by: Yatian XU <yatian.xu@nokia-sbell.com> Change-Id: I2bf21e61e9027385ec9b604206ba81a3acea99c5
Diffstat (limited to 'veslibrary/ves_cpplibrary/src/lib/encode/include/XStateChangeFields.h')
-rwxr-xr-xveslibrary/ves_cpplibrary/src/lib/encode/include/XStateChangeFields.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/veslibrary/ves_cpplibrary/src/lib/encode/include/XStateChangeFields.h b/veslibrary/ves_cpplibrary/src/lib/encode/include/XStateChangeFields.h
new file mode 100755
index 0000000..c965a47
--- /dev/null
+++ b/veslibrary/ves_cpplibrary/src/lib/encode/include/XStateChangeFields.h
@@ -0,0 +1,40 @@
+#pragma once
+
+#include "XCommonEventHeader.h"
+
+namespace vagt
+{
+ namespace encode
+ {
+ enum XEnumStateChangeFieldsState
+ {
+ XEnumStateChangeFieldsStateInService,
+ XEnumStateChangeFieldsStateMaintenance,
+ XEnumStateChangeFieldsStateOutOfService,
+ };
+
+ enum XEnumStateChangeFieldsStateChangeFieldsVersion
+ {
+ XEnumStateChangeFieldsStateChangeFieldsVersion4_0,
+ };
+
+ class XStateChangeFields : public XExtendEvent
+ {
+ public:
+ virtual std::string toString() = 0;
+
+ virtual std::shared_ptr<XCommonEventHeader> getCommonHeader() = 0;
+
+ virtual void setNewState(XEnumStateChangeFieldsState newState) = 0;
+ virtual void setOldState(XEnumStateChangeFieldsState oldState) = 0;
+ virtual void setAdditionalFields(const XHashMap& additionalFields) = 0;
+ virtual void setStateInterface(const XString& stateInterface) = 0;
+
+ static std::shared_ptr<XStateChangeFields> create(std::shared_ptr<XCommonEventHeader> header,
+ XEnumStateChangeFieldsState newState,
+ XEnumStateChangeFieldsState oldState,
+ const XString& stateInterface);
+ };
+ }
+}
+ \ No newline at end of file