--- /dev/null
+/*\r
+* ============LICENSE_START=======================================================\r
+* ONAP : DCAE\r
+* ================================================================================\r
+* Copyright 2018 TechMahindra\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
+package org.onap.dcaegen2.ves.domain.ves7_0;\r
+\r
+import java.util.ArrayList;\r
+import java.util.List;\r
+import com.fasterxml.jackson.annotation.JsonInclude;\r
+import com.fasterxml.jackson.annotation.JsonProperty;\r
+import com.fasterxml.jackson.annotation.JsonPropertyDescription;\r
+import com.fasterxml.jackson.annotation.JsonPropertyOrder;\r
+import org.apache.commons.lang.builder.EqualsBuilder;\r
+import org.apache.commons.lang.builder.HashCodeBuilder;\r
+import org.apache.commons.lang.builder.ToStringBuilder;\r
+\r
+\r
+/**\r
+ * meta-information about an instance of a jsonObject along with the actual object instance\r
+ * \r
+ */\r
+@JsonInclude(JsonInclude.Include.NON_NULL)\r
+@JsonPropertyOrder({\r
+ "jsonObject",\r
+ "objectInstance",\r
+ "objectInstanceEpochMicrosec",\r
+ "objectKeys"\r
+})\r
+public class ObjectInstance {\r
+\r
+ /**\r
+ * json object schema, name and other meta-information along with one or more object instances\r
+ * \r
+ */\r
+ @JsonProperty("jsonObject")\r
+ @JsonPropertyDescription("json object schema, name and other meta-information along with one or more object instances")\r
+ private AdditionalObject jsonObject;\r
+ /**\r
+ * an instance conforming to the jsonObject objectSchema\r
+ * \r
+ */\r
+ @JsonProperty("objectInstance")\r
+ @JsonPropertyDescription("an instance conforming to the jsonObject objectSchema")\r
+ private ObjectInstance objectInstance;\r
+ /**\r
+ * the unix time aka epoch time associated with this objectInstance--as microseconds elapsed since 1 Jan 1970 not including leap seconds\r
+ * \r
+ */\r
+ @JsonProperty("objectInstanceEpochMicrosec")\r
+ @JsonPropertyDescription("the unix time aka epoch time associated with this objectInstance--as microseconds elapsed since 1 Jan 1970 not including leap seconds")\r
+ private Double objectInstanceEpochMicrosec;\r
+ /**\r
+ * an ordered set of keys that identifies this particular instance of jsonObject\r
+ * \r
+ */\r
+ @JsonProperty("objectKeys")\r
+ @JsonPropertyDescription("an ordered set of keys that identifies this particular instance of jsonObject")\r
+ private List<ObjectKey> objectKeys = new ArrayList<ObjectKey>();\r
+\r
+ /**\r
+ * json object schema, name and other meta-information along with one or more object instances\r
+ * \r
+ */\r
+ @JsonProperty("jsonObject")\r
+ public AdditionalObject getJsonObject() {\r
+ return jsonObject;\r
+ }\r
+\r
+ /**\r
+ * json object schema, name and other meta-information along with one or more object instances\r
+ * \r
+ */\r
+ @JsonProperty("jsonObject")\r
+ public void setJsonObject(AdditionalObject jsonObject) {\r
+ this.jsonObject = jsonObject;\r
+ }\r
+\r
+ /**\r
+ * an instance conforming to the jsonObject objectSchema\r
+ * \r
+ */\r
+ @JsonProperty("objectInstance")\r
+ public ObjectInstance getObjectInstance() {\r
+ return objectInstance;\r
+ }\r
+\r
+ /**\r
+ * an instance conforming to the jsonObject objectSchema\r
+ * \r
+ */\r
+ @JsonProperty("objectInstance")\r
+ public void setObjectInstance(ObjectInstance objectInstance) {\r
+ this.objectInstance = objectInstance;\r
+ }\r
+\r
+ /**\r
+ * the unix time aka epoch time associated with this objectInstance--as microseconds elapsed since 1 Jan 1970 not including leap seconds\r
+ * \r
+ */\r
+ @JsonProperty("objectInstanceEpochMicrosec")\r
+ public Double getObjectInstanceEpochMicrosec() {\r
+ return objectInstanceEpochMicrosec;\r
+ }\r
+\r
+ /**\r
+ * the unix time aka epoch time associated with this objectInstance--as microseconds elapsed since 1 Jan 1970 not including leap seconds\r
+ * \r
+ */\r
+ @JsonProperty("objectInstanceEpochMicrosec")\r
+ public void setObjectInstanceEpochMicrosec(Double objectInstanceEpochMicrosec) {\r
+ this.objectInstanceEpochMicrosec = objectInstanceEpochMicrosec;\r
+ }\r
+\r
+ /**\r
+ * an ordered set of keys that identifies this particular instance of jsonObject\r
+ * \r
+ */\r
+ @JsonProperty("objectKeys")\r
+ public List<ObjectKey> getObjectKeys() {\r
+ return objectKeys;\r
+ }\r
+\r
+ /**\r
+ * an ordered set of keys that identifies this particular instance of jsonObject\r
+ * \r
+ */\r
+ @JsonProperty("objectKeys")\r
+ public void setObjectKeys(List<ObjectKey> objectKeys) {\r
+ this.objectKeys = objectKeys;\r
+ }\r
+\r
+ @Override\r
+ public String toString() {\r
+ return ToStringBuilder.reflectionToString(this);\r
+ }\r
+\r
+ @Override\r
+ public int hashCode() {\r
+ return new HashCodeBuilder().append(jsonObject).append(objectInstance).append(objectInstanceEpochMicrosec).append(objectKeys).toHashCode();\r
+ }\r
+\r
+ @Override\r
+ public boolean equals(Object other) {\r
+ if (other == this) {\r
+ return true;\r
+ }\r
+ if ((other instanceof ObjectInstance) == false) {\r
+ return false;\r
+ }\r
+ ObjectInstance rhs = ((ObjectInstance) other);\r
+ return new EqualsBuilder().append(jsonObject, rhs.jsonObject).append(objectInstance, rhs.objectInstance).append(objectInstanceEpochMicrosec, rhs.objectInstanceEpochMicrosec).append(objectKeys, rhs.objectKeys).isEquals();\r
+ }\r
+\r
+}\r