aboutsummaryrefslogtreecommitdiffstats
path: root/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy
diff options
context:
space:
mode:
Diffstat (limited to 'dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy')
-rw-r--r--dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/ControlLoopEventStatus.java14
-rw-r--r--dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/ControlLoopSchemaType.java13
-rw-r--r--dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Direction.java6
-rw-r--r--dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/MetricsPerEventName.java (renamed from dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/MetricsPerFunctionalRole.java)49
-rw-r--r--dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/TCAPolicy.java7
-rw-r--r--dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Threshold.java16
6 files changed, 80 insertions, 25 deletions
diff --git a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/ControlLoopEventStatus.java b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/ControlLoopEventStatus.java
new file mode 100644
index 0000000..3f780af
--- /dev/null
+++ b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/ControlLoopEventStatus.java
@@ -0,0 +1,14 @@
+package org.openecomp.dcae.apod.analytics.model.domain.policy.tca;
+
+/**
+ * TCA Policy Control Loop Event Status
+ *
+ * Author: rs153v (Rajiv Singla) . Creation Date: 9/11/2017.
+ */
+public enum ControlLoopEventStatus implements TCAPolicyModel {
+
+ ONSET,
+ ABATED,
+ CONTINUE;
+
+}
diff --git a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/ControlLoopSchemaType.java b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/ControlLoopSchemaType.java
new file mode 100644
index 0000000..63d74ce
--- /dev/null
+++ b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/ControlLoopSchemaType.java
@@ -0,0 +1,13 @@
+package org.openecomp.dcae.apod.analytics.model.domain.policy.tca;
+
+import org.openecomp.dcae.apod.analytics.model.domain.policy.PolicyModel;
+
+/**
+ * Control Loop Schema Type
+ *
+ * Author: rs153v (Rajiv Singla) . Creation Date: 8/24/2017.
+ */
+public enum ControlLoopSchemaType implements PolicyModel {
+
+ VNF, VM;
+}
diff --git a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Direction.java b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Direction.java
index dc85d97..8cad66b 100644
--- a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Direction.java
+++ b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Direction.java
@@ -30,6 +30,12 @@ import javax.annotation.Nonnull;
*/
public enum Direction implements TCAPolicyModel {
+ EQUAL {
+ @Override
+ public Boolean operate(@Nonnull Long value1, @Nonnull Long value2) {
+ return value1.equals(value2);
+ }
+ },
LESS {
@Override
public Boolean operate(@Nonnull Long value1, @Nonnull Long value2) {
diff --git a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/MetricsPerFunctionalRole.java b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/MetricsPerEventName.java
index 4edbac1..add1002 100644
--- a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/MetricsPerFunctionalRole.java
+++ b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/MetricsPerEventName.java
@@ -27,24 +27,32 @@ import java.util.ArrayList;
import java.util.List;
/**
- * TCA Metrics that need to applied to each functional Role
+ * TCA Metrics that need to applied to each Event Name
*
* @author Rajiv Singla . Creation Date: 11/5/2016.
*/
@Data
@EqualsAndHashCode(callSuper = true)
-public class MetricsPerFunctionalRole extends BaseTCAPolicyModel{
+public class MetricsPerEventName extends BaseTCAPolicyModel{
private static final long serialVersionUID = 1L;
/**
- * Functional Role to which TCA Policy needs to applied.
+ * Event Name to which TCA Policy needs to applied.
*
- * @param functionalRole New value for Functional Role to which TCA Policy needs to applied
- * @return Functional Role to which TCA Policy needs to applied
+ * @param eventName New value for eventName to which TCA Policy needs to applied
+ * @return Event Name to which TCA Policy needs to applied
*/
- private String functionalRole;
+ private String eventName;
+
+ /**
+ * Control Loop Schema Type
+ *
+ * @param controlLoopSchemaType New value for Control Loop Schema Type
+ * @return Control Loop Schema Type
+ */
+ private ControlLoopSchemaType controlLoopSchemaType;
/**
* Policy Scope
@@ -80,22 +88,27 @@ public class MetricsPerFunctionalRole extends BaseTCAPolicyModel{
/**
- * Creates a copy of given {@link MetricsPerFunctionalRole}
+ * Creates a deep copy of given {@link MetricsPerEventName}
*
- * @param metricsPerFunctionalRole metrics Per functional role that need to copied
+ * @param metricsPerEventName metrics Per Event Name that need to copied
*
- * @return copy of new metrics per function role with values copied from given metrics per functional role
+ * @return copy of new metrics per event Name with values copied from given metrics per Event Name
*/
- public static MetricsPerFunctionalRole copy(final MetricsPerFunctionalRole metricsPerFunctionalRole) {
- final MetricsPerFunctionalRole newMetricsPerFunctionalRole = new MetricsPerFunctionalRole();
- newMetricsPerFunctionalRole.setFunctionalRole(metricsPerFunctionalRole.getFunctionalRole());
- newMetricsPerFunctionalRole.setPolicyScope(metricsPerFunctionalRole.getPolicyScope());
- newMetricsPerFunctionalRole.setPolicyName(metricsPerFunctionalRole.getPolicyName());
- newMetricsPerFunctionalRole.setPolicyVersion(metricsPerFunctionalRole.getPolicyVersion());
- if (metricsPerFunctionalRole.getThresholds() != null) {
- newMetricsPerFunctionalRole.setThresholds(new ArrayList<>(metricsPerFunctionalRole.getThresholds()));
+ public static MetricsPerEventName copy(final MetricsPerEventName metricsPerEventName) {
+ final MetricsPerEventName newMetricsPerEventName = new MetricsPerEventName();
+ newMetricsPerEventName.setEventName(metricsPerEventName.getEventName());
+ newMetricsPerEventName.setControlLoopSchemaType(metricsPerEventName.getControlLoopSchemaType());
+ newMetricsPerEventName.setPolicyScope(metricsPerEventName.getPolicyScope());
+ newMetricsPerEventName.setPolicyName(metricsPerEventName.getPolicyName());
+ newMetricsPerEventName.setPolicyVersion(metricsPerEventName.getPolicyVersion());
+ if (metricsPerEventName.getThresholds() != null) {
+ List<Threshold> newThresholds = new ArrayList<>(metricsPerEventName.getThresholds().size());
+ for( Threshold threshold : metricsPerEventName.getThresholds()) {
+ newThresholds.add(Threshold.copy(threshold));
+ }
+ newMetricsPerEventName.setThresholds(newThresholds);
}
- return newMetricsPerFunctionalRole;
+ return newMetricsPerEventName;
}
diff --git a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/TCAPolicy.java b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/TCAPolicy.java
index b62d91d..3ae113a 100644
--- a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/TCAPolicy.java
+++ b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/TCAPolicy.java
@@ -22,7 +22,6 @@ package org.openecomp.dcae.apod.analytics.model.domain.policy.tca;
import lombok.Data;
import lombok.EqualsAndHashCode;
-import org.openecomp.dcae.apod.analytics.model.domain.cef.CommonEventHeader;
import java.util.List;
@@ -40,7 +39,7 @@ public class TCAPolicy extends BaseTCAPolicyModel {
private static final long serialVersionUID = 1L;
/**
- * TCA Policy domain which is associated with TCA incoming CEF message {@link CommonEventHeader#getDomain()}
+ * TCA Policy domain which is associated with TCA incoming CEF message domain
*
* @param domain New value for domain
* @return Policy domain which is associated with incoming CEF message
@@ -50,10 +49,10 @@ public class TCAPolicy extends BaseTCAPolicyModel {
/**
* Contains TCA Policy metrics that needs to be applied to each Functional Role
*
- * @param metricsPerFunctionalRole New value for metrics that needs to be applied to each Functional Role
+ * @param metricsPerEventName New value for metrics that needs to be applied to each Functional Role
* @return Contains TCA Policy metrics that needs to be applied to each Functional Role
*/
- private List<MetricsPerFunctionalRole> metricsPerFunctionalRole;
+ private List<MetricsPerEventName> metricsPerEventName;
}
diff --git a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Threshold.java b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Threshold.java
index b23d109..e05cc26 100644
--- a/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Threshold.java
+++ b/dcae-analytics-model/src/main/java/org/openecomp/dcae/apod/analytics/model/domain/policy/tca/Threshold.java
@@ -42,6 +42,15 @@ public class Threshold extends BaseTCAPolicyModel {
*/
private String closedLoopControlName;
+
+ /**
+ * Closed Loop Event Status
+ *
+ * @param closedLoopEventStatus New value for Closed Loop Event Status
+ * @return Closed Loop Event Status
+ */
+ private ControlLoopEventStatus closedLoopEventStatus;
+
/**
* Threshold Version
*
@@ -85,16 +94,16 @@ public class Threshold extends BaseTCAPolicyModel {
/**
- * Actual Field value that caused the threshold violation. Ignored for deserialization
+ * Actual Field value that caused the threshold violation. Note: Ignored for serialization / deserialization
*
*
- * @param actualFieldValue new value value for actual Field value that caused the violation
+ * @param actualFieldValue new value for actual Field value that caused the violation
* @return actual field value that caused the violation
*/
private Long actualFieldValue;
/**
- * Creates a copy of give {@link Threshold}
+ * Creates a deep copy of give {@link Threshold}
*
* @param threshold threshold that need to be copied
*
@@ -103,6 +112,7 @@ public class Threshold extends BaseTCAPolicyModel {
public static Threshold copy(final Threshold threshold) {
final Threshold newThreshold = new Threshold();
newThreshold.setClosedLoopControlName(threshold.getClosedLoopControlName());
+ newThreshold.setClosedLoopEventStatus(threshold.getClosedLoopEventStatus());
newThreshold.setFieldPath(threshold.getFieldPath());
newThreshold.setThresholdValue(threshold.getThresholdValue());
newThreshold.setDirection(threshold.getDirection());