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
/**
- * 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;
}