Add DCAE configuration parsing tools
[holmes/common.git] / holmes-actions / src / main / java / org / onap / holmes / common / dcae / entity / DcaeConfigurations.java
diff --git a/holmes-actions/src/main/java/org/onap/holmes/common/dcae/entity/DcaeConfigurations.java b/holmes-actions/src/main/java/org/onap/holmes/common/dcae/entity/DcaeConfigurations.java
new file mode 100644 (file)
index 0000000..b08261f
--- /dev/null
@@ -0,0 +1,58 @@
+/**\r
+ * Copyright 2017 ZTE Corporation.\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
+package org.onap.holmes.common.dcae.entity;\r
+\r
+import java.util.ArrayList;\r
+import java.util.HashMap;\r
+import java.util.List;\r
+import java.util.Map;\r
+import lombok.NoArgsConstructor;\r
+\r
+@NoArgsConstructor\r
+public class DcaeConfigurations extends HashMap<String, Object>{\r
+    private Map<String, SecurityInfo> streamsPublishes = new HashMap<>();\r
+    private Map<String, SecurityInfo> streamsSubscribes = new HashMap<>();\r
+    private List<Rule> rules = new ArrayList<>();\r
+\r
+    public void addDefaultRule(Rule rule) {\r
+        if (null == rule) {\r
+            return;\r
+        }\r
+\r
+        this.rules.add(rule);\r
+    }\r
+\r
+    public List<Rule> getDefaultRules() {\r
+        return this.rules;\r
+    }\r
+\r
+    public SecurityInfo addPubSecInfo(String key, SecurityInfo value) {\r
+        return this.streamsPublishes.put(key, value);\r
+    }\r
+\r
+    public SecurityInfo getPubSecInfo(String key) {\r
+        return this.streamsPublishes.get(key);\r
+    }\r
+\r
+    public SecurityInfo addSubSecInfo(String key, SecurityInfo value) {\r
+        return this.streamsSubscribes.put(key, value);\r
+    }\r
+\r
+    public SecurityInfo getSubSecInfo(String key) {\r
+        return this.streamsSubscribes.get(key);\r
+    }\r
+}\r