TCA: Support for VES/A&AI enrichment
[dcaegen2/analytics/tca.git] / dcae-analytics-cdap-common / src / main / java / org / openecomp / dcae / apod / analytics / cdap / common / persistance / tca / TCAMessageStatusEntity.java
index d6b3099..98c9337 100644 (file)
-/*
- * ===============================LICENSE_START======================================
- *  dcae-analytics
- * ================================================================================
- *    Copyright © 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- *  Licensed under the Apache License, Version 2.0 (the "License");
- *  you may not use this file except in compliance with the License.
- *   You may obtain a copy of the License at
- *
- *          http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *  ============================LICENSE_END===========================================
- */
-
-package org.openecomp.dcae.apod.analytics.cdap.common.persistance.tca;
-
-import org.apache.hadoop.io.Writable;
-import org.apache.hadoop.io.WritableUtils;
-import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.Direction;
-import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.TCAPolicy;
-import org.openecomp.dcae.apod.analytics.tca.processor.TCACEFJsonProcessor;
-import org.openecomp.dcae.apod.analytics.tca.processor.TCACEFPolicyDomainFilter;
-import org.openecomp.dcae.apod.analytics.tca.processor.TCACEFPolicyEventNameFilter;
-import org.openecomp.dcae.apod.analytics.tca.processor.TCACEFPolicyThresholdsProcessor;
-
-import java.io.DataInput;
-import java.io.DataOutput;
-import java.io.IOException;
-import java.io.Serializable;
-
-/**
- * TCA Message Status is an Entity which is used to persist TCA VES Message status information in Message Status Table
- *
- * @author Rajiv Singla . Creation Date: 11/16/2016.
- */
-public class TCAMessageStatusEntity implements Writable, Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    private long creationTS;
-    private int instanceId;
-    private String messageType;
-    private String vesMessage;
-    private String domain;
-    private String eventName;
-    private String thresholdPath;
-    private String thresholdSeverity;
-    private String thresholdDirection;
-    private Long thresholdValue;
-    private String jsonProcessorStatus;
-    private String jsonProcessorMessage;
-    private String domainFilterStatus;
-    private String domainFilterMessage;
-    private String eventNameFilterStatus;
-    private String eventNameFilterMessage;
-    private String thresholdCalculatorStatus;
-    private String thresholdCalculatorMessage;
-    private String alertMessage;
-
-    /**
-     * No Arg constructor required for Jackson Json Serialization / Deserialization
-     */
-    public TCAMessageStatusEntity() {
-        // no argument constructor required for json serialization / deserialization
-    }
-
-    /**
-     * Create new Instance of {@link TCAMessageStatusEntity}
-     *
-     * @param creationTS creation Timestamp
-     * @param instanceId CDAP flowlet instance ID
-     * @param messageType {@link TCACalculatorMessageType}
-     * @param vesMessage incoming VES message from collector
-     * @param domain VES message domain if present
-     * @param eventName VES message functional role if present
-     */
-    public TCAMessageStatusEntity(final long creationTS, final int instanceId, final String messageType,
-                                  final String vesMessage, final String domain, final String eventName) {
-        this(creationTS, instanceId, messageType, vesMessage, domain, eventName, null, null, null, null,
-                null, null, null, null, null, null, null, null, null);
-    }
-
-
-    /**
-     * Create new Instance of {@link TCAMessageStatusEntity}
-     *
-     * @param creationTS creation Timestamp
-     * @param instanceId CDAP flowlet instance ID
-     * @param messageType {@link TCACalculatorMessageType}
-     * @param vesMessage incoming VES message from collector
-     * @param domain VES message domain if present
-     * @param eventName VES message event name if present
-     * @param thresholdPath Violated threshold path
-     * @param thresholdSeverity Violated threshold Severity if any
-     * @param thresholdDirection Violated threshold Direction if any
-     * @param thresholdValue Violated threshold value if any
-     * @param jsonProcessorStatus {@link TCACEFJsonProcessor} status
-     * @param jsonProcessorMessage {@link TCACEFJsonProcessor} message
-     * @param domainFilterStatus {@link TCACEFPolicyDomainFilter} status
-     * @param domainFilterMessage {@link TCACEFPolicyDomainFilter} message
-     * @param eventNameFilterStatus {@link TCACEFPolicyEventNameFilter} status
-     * @param eventNameFilterMessage {@link TCACEFPolicyEventNameFilter} message
-     * @param thresholdCalculatorStatus {@link TCACEFPolicyThresholdsProcessor} status
-     * @param thresholdCalculatorMessage {@link TCACEFPolicyThresholdsProcessor} message
-     * @param alertMessage alert message that will be sent out in case of threshold violation
-     */
-    public TCAMessageStatusEntity(long creationTS, int instanceId, String messageType, String vesMessage,
-                                  String domain, String eventName,
-                                  String thresholdPath, String thresholdSeverity, String thresholdDirection,
-                                  Long thresholdValue,
-                                  String jsonProcessorStatus, String jsonProcessorMessage,
-                                  String domainFilterStatus, String domainFilterMessage,
-                                  String eventNameFilterStatus, String eventNameFilterMessage,
-                                  String thresholdCalculatorStatus, String thresholdCalculatorMessage,
-                                  String alertMessage) {
-        this.creationTS = creationTS;
-        this.instanceId = instanceId;
-        this.messageType = messageType;
-        this.vesMessage = vesMessage;
-        this.domain = domain;
-        this.eventName = eventName;
-        this.thresholdPath = thresholdPath;
-        this.thresholdSeverity = thresholdSeverity;
-        this.thresholdDirection = thresholdDirection;
-        this.thresholdValue = thresholdValue;
-        this.jsonProcessorStatus = jsonProcessorStatus;
-        this.jsonProcessorMessage = jsonProcessorMessage;
-        this.domainFilterStatus = domainFilterStatus;
-        this.domainFilterMessage = domainFilterMessage;
-        this.eventNameFilterStatus = eventNameFilterStatus;
-        this.eventNameFilterMessage = eventNameFilterMessage;
-        this.thresholdCalculatorStatus = thresholdCalculatorStatus;
-        this.thresholdCalculatorMessage = thresholdCalculatorMessage;
-        this.alertMessage = alertMessage;
-    }
-
-    /**
-     * Provides Creation Timestamp
-     *
-     * @return creation timestamp long value
-     */
-    public long getCreationTS() {
-        return creationTS;
-    }
-
-    /**
-     * Sets Creations Timestamp
-     *
-     * @param creationTS creation timestamp long value
-     */
-    public void setCreationTS(long creationTS) {
-        this.creationTS = creationTS;
-    }
-
-
-    /**
-     * Provides CDAP Flowlet instance ID
-     *
-     * @return cdap flowlet instance ID
-     */
-    public int getInstanceId() {
-        return instanceId;
-    }
-
-    /**
-     * Sets CDAP Flowlet instance ID
-     *
-     * @param instanceId flowlet instance ID
-     */
-    public void setInstanceId(int instanceId) {
-        this.instanceId = instanceId;
-    }
-
-    /**
-     * Provides Message Calculator Type {@link TCACalculatorMessageType}
-     *
-     * @return calculator message type
-     */
-    public String getMessageType() {
-        return messageType;
-    }
-
-    /**
-     * Sets Calculator message Type {@link TCACalculatorMessageType}
-     *
-     * @param messageType calculator message type
-     */
-    public void setMessageType(String messageType) {
-        this.messageType = messageType;
-    }
-
-    /**
-     * Provides incoming VES Message
-     *
-     * @return ves message
-     */
-    public String getVesMessage() {
-        return vesMessage;
-    }
-
-    /**
-     * Set new value for VES message
-     *
-     * @param vesMessage ves message
-     */
-    public void setVesMessage(String vesMessage) {
-        this.vesMessage = vesMessage;
-    }
-
-    /**
-     * Provides VES message Domain
-     *
-     * @return ves message domain
-     */
-    public String getDomain() {
-        return domain;
-    }
-
-    /**
-     * Sets VES Message Domain
-     *
-     * @param domain ves message domain
-     */
-    public void setDomain(String domain) {
-        this.domain = domain;
-    }
-
-    /**
-     * Provides VES Message Event Name
-     *
-     * @return ves message Event Name
-     */
-    public String getEventName() {
-        return eventName;
-    }
-
-    /**
-     * Sets VES Message Functional Role
-     *
-     * @param eventName ves message Functional Role
-     */
-    public void setEventName(String eventName) {
-        this.eventName = eventName;
-    }
-
-    /**
-     * Violated Threshold Path as extracted from {@link TCAPolicy}
-     *
-     * @return violated threshold path
-     */
-    public String getThresholdPath() {
-        return thresholdPath;
-    }
-
-    /**
-     * Sets value for Violated Threshold Path
-     *
-     * @param thresholdPath violated threshold path
-     */
-    public void setThresholdPath(String thresholdPath) {
-        this.thresholdPath = thresholdPath;
-    }
-
-    /**
-     * Violated threshold Event Severity
-     *
-     * @return event severity
-     */
-    public String getThresholdSeverity() {
-        return thresholdSeverity;
-    }
-
-    /**
-     * Violated Threshold Severity
-     *
-     * @param thresholdSeverity violated threshold severity
-     */
-    public void setThresholdSeverity(String thresholdSeverity) {
-        this.thresholdSeverity = thresholdSeverity;
-    }
-
-    /**
-     * Violated Threshold {@link Direction}
-     *
-     * @return violated threshold Direction
-     */
-    public String getThresholdDirection() {
-        return thresholdDirection;
-    }
-
-    /**
-     * Sets Violated Threshold Direction
-     *
-     * @param thresholdDirection violated threshold direction
-     */
-    public void setThresholdDirection(String thresholdDirection) {
-        this.thresholdDirection = thresholdDirection;
-    }
-
-    /**
-     * Provides Violated Threshold Value
-     *
-     * @return violated Threshold value
-     */
-    public Long getThresholdValue() {
-        return thresholdValue;
-    }
-
-    /**
-     * Sets Violated Threshold Value
-     *
-     * @param thresholdValue violated threshold value
-     */
-    public void setThresholdValue(Long thresholdValue) {
-        this.thresholdValue = thresholdValue;
-    }
-
-    /**
-     * Provides {@link TCACEFJsonProcessor} status
-     *
-     * @return json processor status
-     */
-    public String getJsonProcessorStatus() {
-        return jsonProcessorStatus;
-    }
-
-    /**
-     * Sets Json Processor status
-     *
-     * @param jsonProcessorStatus json processor status
-     */
-    public void setJsonProcessorStatus(String jsonProcessorStatus) {
-        this.jsonProcessorStatus = jsonProcessorStatus;
-    }
-
-    /**
-     * Provides {@link TCACEFJsonProcessor} message
-     *
-     * @return json processor message
-     */
-    public String getJsonProcessorMessage() {
-        return jsonProcessorMessage;
-    }
-
-    /**
-     * Sets Json Processor Message
-     *
-     * @param jsonProcessorMessage json processor message
-     */
-    public void setJsonProcessorMessage(String jsonProcessorMessage) {
-        this.jsonProcessorMessage = jsonProcessorMessage;
-    }
-
-    /**
-     * Provides {@link TCACEFPolicyDomainFilter} status
-     *
-     * @return domain filter status
-     */
-    public String getDomainFilterStatus() {
-        return domainFilterStatus;
-    }
-
-    /**
-     * Sets Domain Filter status
-     *
-     * @param domainFilterStatus domain filter status
-     */
-    public void setDomainFilterStatus(String domainFilterStatus) {
-        this.domainFilterStatus = domainFilterStatus;
-    }
-
-    /**
-     * Provides {@link TCACEFPolicyDomainFilter} message
-     *
-     * @return domain filter message
-     */
-    public String getDomainFilterMessage() {
-        return domainFilterMessage;
-    }
-
-    /**
-     * Sets Domain filter message
-     *
-     * @param domainFilterMessage domain filter message
-     */
-    public void setDomainFilterMessage(String domainFilterMessage) {
-        this.domainFilterMessage = domainFilterMessage;
-    }
-
-    public String getEventNameFilterStatus() {
-        return eventNameFilterStatus;
-    }
-
-    /**
-     * Provides {@link TCACEFPolicyEventNameFilter} status
-     *
-     * @param eventNameFilterStatus functional Role filter status
-     */
-    public void setEventNameFilterStatus(String eventNameFilterStatus) {
-        this.eventNameFilterStatus = eventNameFilterStatus;
-    }
-
-    /**
-     * Provides {@link TCACEFPolicyEventNameFilter} message
-     *
-     * @return functional role filter message
-     */
-    public String getEventNameFilterMessage() {
-        return eventNameFilterMessage;
-    }
-
-    /**
-     * Sets Functional Role filter message
-     *
-     * @param eventNameFilterMessage functional role filter message
-     */
-    public void setEventNameFilterMessage(String eventNameFilterMessage) {
-        this.eventNameFilterMessage = eventNameFilterMessage;
-    }
-
-    /**
-     * Provides {@link TCACEFPolicyThresholdsProcessor} status
-     *
-     * @return threshold processor status
-     */
-    public String getThresholdCalculatorStatus() {
-        return thresholdCalculatorStatus;
-    }
-
-    /**
-     * Sets threshold calculator status
-     *
-     * @param thresholdCalculatorStatus threshold calculator status
-     */
-    public void setThresholdCalculatorStatus(String thresholdCalculatorStatus) {
-        this.thresholdCalculatorStatus = thresholdCalculatorStatus;
-    }
-
-    /**
-     * Provides {@link TCACEFPolicyThresholdsProcessor} message
-     *
-     * @return threshold processor message
-     */
-    public String getThresholdCalculatorMessage() {
-        return thresholdCalculatorMessage;
-    }
-
-    /**
-     * Sets Threshold Calculator Processor Message
-     *
-     * @param thresholdCalculatorMessage threshold calculator message
-     */
-    public void setThresholdCalculatorMessage(String thresholdCalculatorMessage) {
-        this.thresholdCalculatorMessage = thresholdCalculatorMessage;
-    }
-
-    /**
-     * Provides generated alert message
-     *
-     * @return generated alert message
-     */
-    public String getAlertMessage() {
-        return alertMessage;
-    }
-
-    /**
-     * Sets alert message
-     *
-     * @param alertMessage alert message
-     */
-    public void setAlertMessage(String alertMessage) {
-        this.alertMessage = alertMessage;
-    }
-
-    /**
-     * Write entity to Table
-     *
-     * @param dataOutput data output
-     *
-     * @throws IOException io exception
-     */
-    @Override
-    public void write(DataOutput dataOutput) throws IOException {
-        WritableUtils.writeVLong(dataOutput, creationTS);
-        WritableUtils.writeVInt(dataOutput, instanceId);
-        WritableUtils.writeString(dataOutput, messageType);
-        WritableUtils.writeString(dataOutput, vesMessage);
-
-        WritableUtils.writeString(dataOutput, domain);
-        WritableUtils.writeString(dataOutput, eventName);
-
-        WritableUtils.writeString(dataOutput, thresholdPath);
-        WritableUtils.writeString(dataOutput, thresholdSeverity);
-        WritableUtils.writeString(dataOutput, thresholdDirection);
-        WritableUtils.writeVLong(dataOutput, thresholdValue);
-
-        WritableUtils.writeString(dataOutput, jsonProcessorStatus);
-        WritableUtils.writeString(dataOutput, jsonProcessorMessage);
-        WritableUtils.writeString(dataOutput, domainFilterStatus);
-        WritableUtils.writeString(dataOutput, domainFilterMessage);
-        WritableUtils.writeString(dataOutput, eventNameFilterStatus);
-        WritableUtils.writeString(dataOutput, eventNameFilterMessage);
-        WritableUtils.writeString(dataOutput, thresholdCalculatorStatus);
-        WritableUtils.writeString(dataOutput, thresholdCalculatorMessage);
-
-        WritableUtils.writeString(dataOutput, alertMessage);
-
-    }
-
-    /**
-     * Read entity from table
-     *
-     * @param dataInput data input
-     * @throws IOException io exception
-     */
-    @Override
-    public void readFields(DataInput dataInput) throws IOException {
-        creationTS = WritableUtils.readVLong(dataInput);
-        instanceId = WritableUtils.readVInt(dataInput);
-        messageType = WritableUtils.readString(dataInput);
-        vesMessage = WritableUtils.readString(dataInput);
-
-        domain = WritableUtils.readString(dataInput);
-        eventName = WritableUtils.readString(dataInput);
-
-        thresholdPath = WritableUtils.readString(dataInput);
-        thresholdSeverity = WritableUtils.readString(dataInput);
-        thresholdDirection = WritableUtils.readString(dataInput);
-        thresholdValue = WritableUtils.readVLong(dataInput);
-
-        jsonProcessorStatus = WritableUtils.readString(dataInput);
-        jsonProcessorMessage = WritableUtils.readString(dataInput);
-        domainFilterStatus = WritableUtils.readString(dataInput);
-        domainFilterMessage = WritableUtils.readString(dataInput);
-        eventNameFilterStatus = WritableUtils.readString(dataInput);
-        eventNameFilterMessage = WritableUtils.readString(dataInput);
-        thresholdCalculatorStatus = WritableUtils.readString(dataInput);
-        thresholdCalculatorMessage = WritableUtils.readString(dataInput);
-
-        alertMessage = WritableUtils.readString(dataInput);
-
-    }
-
-}
+/*\r
+ * ===============================LICENSE_START======================================\r
+ *  dcae-analytics\r
+ * ================================================================================\r
+ *    Copyright © 2017 AT&T Intellectual Property. All rights reserved.\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
+ *  ============================LICENSE_END===========================================\r
+ */\r
+\r
+package org.openecomp.dcae.apod.analytics.cdap.common.persistance.tca;\r
+\r
+import org.apache.hadoop.io.Writable;\r
+import org.apache.hadoop.io.WritableUtils;\r
+import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.Direction;\r
+import org.openecomp.dcae.apod.analytics.model.domain.policy.tca.TCAPolicy;\r
+import org.openecomp.dcae.apod.analytics.tca.processor.TCACEFJsonProcessor;\r
+import org.openecomp.dcae.apod.analytics.tca.processor.TCACEFPolicyDomainFilter;\r
+import org.openecomp.dcae.apod.analytics.tca.processor.TCACEFPolicyEventNameFilter;\r
+import org.openecomp.dcae.apod.analytics.tca.processor.TCACEFPolicyThresholdsProcessor;\r
+\r
+import java.io.DataInput;\r
+import java.io.DataOutput;\r
+import java.io.IOException;\r
+import java.io.Serializable;\r
+\r
+/**\r
+ * TCA Message Status is an Entity which is used to persist TCA VES Message status information in Message Status Table\r
+ *\r
+ * @author Rajiv Singla . Creation Date: 11/16/2016.\r
+ */\r
+public class TCAMessageStatusEntity implements Writable, Serializable {\r
+\r
+    private static final long serialVersionUID = 1L;\r
+\r
+    private long creationTS;\r
+    private int instanceId;\r
+    private String messageType;\r
+    private String vesMessage;\r
+    private String domain;\r
+    private String eventName;\r
+    private String thresholdPath;\r
+    private String thresholdSeverity;\r
+    private String thresholdDirection;\r
+    private Long thresholdValue;\r
+    private String jsonProcessorStatus;\r
+    private String jsonProcessorMessage;\r
+    private String domainFilterStatus;\r
+    private String domainFilterMessage;\r
+    private String eventNameFilterStatus;\r
+    private String eventNameFilterMessage;\r
+    private String thresholdCalculatorStatus;\r
+    private String thresholdCalculatorMessage;\r
+    private String alertMessage;\r
+\r
+    /**\r
+     * No Arg constructor required for Jackson Json Serialization / Deserialization\r
+     */\r
+    public TCAMessageStatusEntity() {\r
+        // no argument constructor required for json serialization / deserialization\r
+    }\r
+\r
+    /**\r
+     * Create new Instance of {@link TCAMessageStatusEntity}\r
+     *\r
+     * @param creationTS creation Timestamp\r
+     * @param instanceId CDAP flowlet instance ID\r
+     * @param messageType {@link TCACalculatorMessageType}\r
+     * @param vesMessage incoming VES message from collector\r
+     * @param domain VES message domain if present\r
+     * @param eventName VES message functional role if present\r
+     */\r
+    public TCAMessageStatusEntity(final long creationTS, final int instanceId, final String messageType,\r
+                                  final String vesMessage, final String domain, final String eventName) {\r
+        this(creationTS, instanceId, messageType, vesMessage, domain, eventName, null, null, null, null,\r
+                null, null, null, null, null, null, null, null, null);\r
+    }\r
+\r
+\r
+    /**\r
+     * Create new Instance of {@link TCAMessageStatusEntity}\r
+     *\r
+     * @param creationTS creation Timestamp\r
+     * @param instanceId CDAP flowlet instance ID\r
+     * @param messageType {@link TCACalculatorMessageType}\r
+     * @param vesMessage incoming VES message from collector\r
+     * @param domain VES message domain if present\r
+     * @param eventName VES message event name if present\r
+     * @param thresholdPath Violated threshold path\r
+     * @param thresholdSeverity Violated threshold Severity if any\r
+     * @param thresholdDirection Violated threshold Direction if any\r
+     * @param thresholdValue Violated threshold value if any\r
+     * @param jsonProcessorStatus {@link TCACEFJsonProcessor} status\r
+     * @param jsonProcessorMessage {@link TCACEFJsonProcessor} message\r
+     * @param domainFilterStatus {@link TCACEFPolicyDomainFilter} status\r
+     * @param domainFilterMessage {@link TCACEFPolicyDomainFilter} message\r
+     * @param eventNameFilterStatus {@link TCACEFPolicyEventNameFilter} status\r
+     * @param eventNameFilterMessage {@link TCACEFPolicyEventNameFilter} message\r
+     * @param thresholdCalculatorStatus {@link TCACEFPolicyThresholdsProcessor} status\r
+     * @param thresholdCalculatorMessage {@link TCACEFPolicyThresholdsProcessor} message\r
+     * @param alertMessage alert message that will be sent out in case of threshold violation\r
+     */\r
+    public TCAMessageStatusEntity(long creationTS, int instanceId, String messageType, String vesMessage,\r
+                                  String domain, String eventName,\r
+                                  String thresholdPath, String thresholdSeverity, String thresholdDirection,\r
+                                  Long thresholdValue,\r
+                                  String jsonProcessorStatus, String jsonProcessorMessage,\r
+                                  String domainFilterStatus, String domainFilterMessage,\r
+                                  String eventNameFilterStatus, String eventNameFilterMessage,\r
+                                  String thresholdCalculatorStatus, String thresholdCalculatorMessage,\r
+                                  String alertMessage) {\r
+        this.creationTS = creationTS;\r
+        this.instanceId = instanceId;\r
+        this.messageType = messageType;\r
+        this.vesMessage = vesMessage;\r
+        this.domain = domain;\r
+        this.eventName = eventName;\r
+        this.thresholdPath = thresholdPath;\r
+        this.thresholdSeverity = thresholdSeverity;\r
+        this.thresholdDirection = thresholdDirection;\r
+        this.thresholdValue = thresholdValue;\r
+        this.jsonProcessorStatus = jsonProcessorStatus;\r
+        this.jsonProcessorMessage = jsonProcessorMessage;\r
+        this.domainFilterStatus = domainFilterStatus;\r
+        this.domainFilterMessage = domainFilterMessage;\r
+        this.eventNameFilterStatus = eventNameFilterStatus;\r
+        this.eventNameFilterMessage = eventNameFilterMessage;\r
+        this.thresholdCalculatorStatus = thresholdCalculatorStatus;\r
+        this.thresholdCalculatorMessage = thresholdCalculatorMessage;\r
+        this.alertMessage = alertMessage;\r
+    }\r
+\r
+    /**\r
+     * Provides Creation Timestamp\r
+     *\r
+     * @return creation timestamp long value\r
+     */\r
+    public long getCreationTS() {\r
+        return creationTS;\r
+    }\r
+\r
+    /**\r
+     * Sets Creations Timestamp\r
+     *\r
+     * @param creationTS creation timestamp long value\r
+     */\r
+    public void setCreationTS(long creationTS) {\r
+        this.creationTS = creationTS;\r
+    }\r
+\r
+\r
+    /**\r
+     * Provides CDAP Flowlet instance ID\r
+     *\r
+     * @return cdap flowlet instance ID\r
+     */\r
+    public int getInstanceId() {\r
+        return instanceId;\r
+    }\r
+\r
+    /**\r
+     * Sets CDAP Flowlet instance ID\r
+     *\r
+     * @param instanceId flowlet instance ID\r
+     */\r
+    public void setInstanceId(int instanceId) {\r
+        this.instanceId = instanceId;\r
+    }\r
+\r
+    /**\r
+     * Provides Message Calculator Type {@link TCACalculatorMessageType}\r
+     *\r
+     * @return calculator message type\r
+     */\r
+    public String getMessageType() {\r
+        return messageType;\r
+    }\r
+\r
+    /**\r
+     * Sets Calculator message Type {@link TCACalculatorMessageType}\r
+     *\r
+     * @param messageType calculator message type\r
+     */\r
+    public void setMessageType(String messageType) {\r
+        this.messageType = messageType;\r
+    }\r
+\r
+    /**\r
+     * Provides incoming VES Message\r
+     *\r
+     * @return ves message\r
+     */\r
+    public String getVesMessage() {\r
+        return vesMessage;\r
+    }\r
+\r
+    /**\r
+     * Set new value for VES message\r
+     *\r
+     * @param vesMessage ves message\r
+     */\r
+    public void setVesMessage(String vesMessage) {\r
+        this.vesMessage = vesMessage;\r
+    }\r
+\r
+    /**\r
+     * Provides VES message Domain\r
+     *\r
+     * @return ves message domain\r
+     */\r
+    public String getDomain() {\r
+        return domain;\r
+    }\r
+\r
+    /**\r
+     * Sets VES Message Domain\r
+     *\r
+     * @param domain ves message domain\r
+     */\r
+    public void setDomain(String domain) {\r
+        this.domain = domain;\r
+    }\r
+\r
+    /**\r
+     * Provides VES Message Event Name\r
+     *\r
+     * @return ves message Event Name\r
+     */\r
+    public String getEventName() {\r
+        return eventName;\r
+    }\r
+\r
+    /**\r
+     * Sets VES Message Functional Role\r
+     *\r
+     * @param eventName ves message Functional Role\r
+     */\r
+    public void setEventName(String eventName) {\r
+        this.eventName = eventName;\r
+    }\r
+\r
+    /**\r
+     * Violated Threshold Path as extracted from {@link TCAPolicy}\r
+     *\r
+     * @return violated threshold path\r
+     */\r
+    public String getThresholdPath() {\r
+        return thresholdPath;\r
+    }\r
+\r
+    /**\r
+     * Sets value for Violated Threshold Path\r
+     *\r
+     * @param thresholdPath violated threshold path\r
+     */\r
+    public void setThresholdPath(String thresholdPath) {\r
+        this.thresholdPath = thresholdPath;\r
+    }\r
+\r
+    /**\r
+     * Violated threshold Event Severity\r
+     *\r
+     * @return event severity\r
+     */\r
+    public String getThresholdSeverity() {\r
+        return thresholdSeverity;\r
+    }\r
+\r
+    /**\r
+     * Violated Threshold Severity\r
+     *\r
+     * @param thresholdSeverity violated threshold severity\r
+     */\r
+    public void setThresholdSeverity(String thresholdSeverity) {\r
+        this.thresholdSeverity = thresholdSeverity;\r
+    }\r
+\r
+    /**\r
+     * Violated Threshold {@link Direction}\r
+     *\r
+     * @return violated threshold Direction\r
+     */\r
+    public String getThresholdDirection() {\r
+        return thresholdDirection;\r
+    }\r
+\r
+    /**\r
+     * Sets Violated Threshold Direction\r
+     *\r
+     * @param thresholdDirection violated threshold direction\r
+     */\r
+    public void setThresholdDirection(String thresholdDirection) {\r
+        this.thresholdDirection = thresholdDirection;\r
+    }\r
+\r
+    /**\r
+     * Provides Violated Threshold Value\r
+     *\r
+     * @return violated Threshold value\r
+     */\r
+    public Long getThresholdValue() {\r
+        return thresholdValue;\r
+    }\r
+\r
+    /**\r
+     * Sets Violated Threshold Value\r
+     *\r
+     * @param thresholdValue violated threshold value\r
+     */\r
+    public void setThresholdValue(Long thresholdValue) {\r
+        this.thresholdValue = thresholdValue;\r
+    }\r
+\r
+    /**\r
+     * Provides {@link TCACEFJsonProcessor} status\r
+     *\r
+     * @return json processor status\r
+     */\r
+    public String getJsonProcessorStatus() {\r
+        return jsonProcessorStatus;\r
+    }\r
+\r
+    /**\r
+     * Sets Json Processor status\r
+     *\r
+     * @param jsonProcessorStatus json processor status\r
+     */\r
+    public void setJsonProcessorStatus(String jsonProcessorStatus) {\r
+        this.jsonProcessorStatus = jsonProcessorStatus;\r
+    }\r
+\r
+    /**\r
+     * Provides {@link TCACEFJsonProcessor} message\r
+     *\r
+     * @return json processor message\r
+     */\r
+    public String getJsonProcessorMessage() {\r
+        return jsonProcessorMessage;\r
+    }\r
+\r
+    /**\r
+     * Sets Json Processor Message\r
+     *\r
+     * @param jsonProcessorMessage json processor message\r
+     */\r
+    public void setJsonProcessorMessage(String jsonProcessorMessage) {\r
+        this.jsonProcessorMessage = jsonProcessorMessage;\r
+    }\r
+\r
+    /**\r
+     * Provides {@link TCACEFPolicyDomainFilter} status\r
+     *\r
+     * @return domain filter status\r
+     */\r
+    public String getDomainFilterStatus() {\r
+        return domainFilterStatus;\r
+    }\r
+\r
+    /**\r
+     * Sets Domain Filter status\r
+     *\r
+     * @param domainFilterStatus domain filter status\r
+     */\r
+    public void setDomainFilterStatus(String domainFilterStatus) {\r
+        this.domainFilterStatus = domainFilterStatus;\r
+    }\r
+\r
+    /**\r
+     * Provides {@link TCACEFPolicyDomainFilter} message\r
+     *\r
+     * @return domain filter message\r
+     */\r
+    public String getDomainFilterMessage() {\r
+        return domainFilterMessage;\r
+    }\r
+\r
+    /**\r
+     * Sets Domain filter message\r
+     *\r
+     * @param domainFilterMessage domain filter message\r
+     */\r
+    public void setDomainFilterMessage(String domainFilterMessage) {\r
+        this.domainFilterMessage = domainFilterMessage;\r
+    }\r
+\r
+    public String getEventNameFilterStatus() {\r
+        return eventNameFilterStatus;\r
+    }\r
+\r
+    /**\r
+     * Provides {@link TCACEFPolicyEventNameFilter} status\r
+     *\r
+     * @param eventNameFilterStatus functional Role filter status\r
+     */\r
+    public void setEventNameFilterStatus(String eventNameFilterStatus) {\r
+        this.eventNameFilterStatus = eventNameFilterStatus;\r
+    }\r
+\r
+    /**\r
+     * Provides {@link TCACEFPolicyEventNameFilter} message\r
+     *\r
+     * @return functional role filter message\r
+     */\r
+    public String getEventNameFilterMessage() {\r
+        return eventNameFilterMessage;\r
+    }\r
+\r
+    /**\r
+     * Sets Functional Role filter message\r
+     *\r
+     * @param eventNameFilterMessage functional role filter message\r
+     */\r
+    public void setEventNameFilterMessage(String eventNameFilterMessage) {\r
+        this.eventNameFilterMessage = eventNameFilterMessage;\r
+    }\r
+\r
+    /**\r
+     * Provides {@link TCACEFPolicyThresholdsProcessor} status\r
+     *\r
+     * @return threshold processor status\r
+     */\r
+    public String getThresholdCalculatorStatus() {\r
+        return thresholdCalculatorStatus;\r
+    }\r
+\r
+    /**\r
+     * Sets threshold calculator status\r
+     *\r
+     * @param thresholdCalculatorStatus threshold calculator status\r
+     */\r
+    public void setThresholdCalculatorStatus(String thresholdCalculatorStatus) {\r
+        this.thresholdCalculatorStatus = thresholdCalculatorStatus;\r
+    }\r
+\r
+    /**\r
+     * Provides {@link TCACEFPolicyThresholdsProcessor} message\r
+     *\r
+     * @return threshold processor message\r
+     */\r
+    public String getThresholdCalculatorMessage() {\r
+        return thresholdCalculatorMessage;\r
+    }\r
+\r
+    /**\r
+     * Sets Threshold Calculator Processor Message\r
+     *\r
+     * @param thresholdCalculatorMessage threshold calculator message\r
+     */\r
+    public void setThresholdCalculatorMessage(String thresholdCalculatorMessage) {\r
+        this.thresholdCalculatorMessage = thresholdCalculatorMessage;\r
+    }\r
+\r
+    /**\r
+     * Provides generated alert message\r
+     *\r
+     * @return generated alert message\r
+     */\r
+    public String getAlertMessage() {\r
+        return alertMessage;\r
+    }\r
+\r
+    /**\r
+     * Sets alert message\r
+     *\r
+     * @param alertMessage alert message\r
+     */\r
+    public void setAlertMessage(String alertMessage) {\r
+        this.alertMessage = alertMessage;\r
+    }\r
+\r
+    /**\r
+     * Write entity to Table\r
+     *\r
+     * @param dataOutput data output\r
+     *\r
+     * @throws IOException io exception\r
+     */\r
+    @Override\r
+    public void write(DataOutput dataOutput) throws IOException {\r
+        WritableUtils.writeVLong(dataOutput, creationTS);\r
+        WritableUtils.writeVInt(dataOutput, instanceId);\r
+        WritableUtils.writeString(dataOutput, messageType);\r
+        WritableUtils.writeString(dataOutput, vesMessage);\r
+\r
+        WritableUtils.writeString(dataOutput, domain);\r
+        WritableUtils.writeString(dataOutput, eventName);\r
+\r
+        WritableUtils.writeString(dataOutput, thresholdPath);\r
+        WritableUtils.writeString(dataOutput, thresholdSeverity);\r
+        WritableUtils.writeString(dataOutput, thresholdDirection);\r
+        WritableUtils.writeVLong(dataOutput, thresholdValue);\r
+\r
+        WritableUtils.writeString(dataOutput, jsonProcessorStatus);\r
+        WritableUtils.writeString(dataOutput, jsonProcessorMessage);\r
+        WritableUtils.writeString(dataOutput, domainFilterStatus);\r
+        WritableUtils.writeString(dataOutput, domainFilterMessage);\r
+        WritableUtils.writeString(dataOutput, eventNameFilterStatus);\r
+        WritableUtils.writeString(dataOutput, eventNameFilterMessage);\r
+        WritableUtils.writeString(dataOutput, thresholdCalculatorStatus);\r
+        WritableUtils.writeString(dataOutput, thresholdCalculatorMessage);\r
+\r
+        WritableUtils.writeString(dataOutput, alertMessage);\r
+\r
+    }\r
+\r
+    /**\r
+     * Read entity from table\r
+     *\r
+     * @param dataInput data input\r
+     * @throws IOException io exception\r
+     */\r
+    @Override\r
+    public void readFields(DataInput dataInput) throws IOException {\r
+        creationTS = WritableUtils.readVLong(dataInput);\r
+        instanceId = WritableUtils.readVInt(dataInput);\r
+        messageType = WritableUtils.readString(dataInput);\r
+        vesMessage = WritableUtils.readString(dataInput);\r
+\r
+        domain = WritableUtils.readString(dataInput);\r
+        eventName = WritableUtils.readString(dataInput);\r
+\r
+        thresholdPath = WritableUtils.readString(dataInput);\r
+        thresholdSeverity = WritableUtils.readString(dataInput);\r
+        thresholdDirection = WritableUtils.readString(dataInput);\r
+        thresholdValue = WritableUtils.readVLong(dataInput);\r
+\r
+        jsonProcessorStatus = WritableUtils.readString(dataInput);\r
+        jsonProcessorMessage = WritableUtils.readString(dataInput);\r
+        domainFilterStatus = WritableUtils.readString(dataInput);\r
+        domainFilterMessage = WritableUtils.readString(dataInput);\r
+        eventNameFilterStatus = WritableUtils.readString(dataInput);\r
+        eventNameFilterMessage = WritableUtils.readString(dataInput);\r
+        thresholdCalculatorStatus = WritableUtils.readString(dataInput);\r
+        thresholdCalculatorMessage = WritableUtils.readString(dataInput);\r
+\r
+        alertMessage = WritableUtils.readString(dataInput);\r
+\r
+    }\r
+\r
+}\r