com.dell.cpsd.hal.data.provider.api.ComponentData Maven / Gradle / Ivy
package com.dell.cpsd.hal.data.provider.api;
import java.util.ArrayList;
import java.util.List;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
/**
* ComponentData
*
*
*
*/
@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
"elementIdentity",
"contextIdentity",
"networkIdentity",
"elementDefinition",
"versionData",
"subComponents"
})
public class ComponentData {
/**
* ElementIdentity
*
*
*
*/
@JsonProperty("elementIdentity")
private ElementIdentity elementIdentity;
/**
*
*/
@JsonProperty("contextIdentity")
private ContextIdentity contextIdentity;
/**
*
*/
@JsonProperty("networkIdentity")
private NetworkIdentity networkIdentity;
/**
* ElementDefinition
*
*
*
*/
@JsonProperty("elementDefinition")
private ElementDefinition elementDefinition;
@JsonProperty("versionData")
private List versionData = new ArrayList();
@JsonProperty("subComponents")
private List subComponents = new ArrayList();
/**
* No args constructor for use in serialization
*
*/
public ComponentData() {
}
/**
*
* @param contextIdentity
* @param versionData
* @param subComponents
* @param networkIdentity
* @param elementIdentity
* @param elementDefinition
*/
public ComponentData(ElementIdentity elementIdentity, ContextIdentity contextIdentity, NetworkIdentity networkIdentity, ElementDefinition elementDefinition, List versionData, List subComponents) {
super();
this.elementIdentity = elementIdentity;
this.contextIdentity = contextIdentity;
this.networkIdentity = networkIdentity;
this.elementDefinition = elementDefinition;
this.versionData = versionData;
this.subComponents = subComponents;
}
/**
* ElementIdentity
*
*
*
* @return
* The elementIdentity
*/
@JsonProperty("elementIdentity")
public ElementIdentity getElementIdentity() {
return elementIdentity;
}
/**
* ElementIdentity
*
*
*
* @param elementIdentity
* The elementIdentity
*/
@JsonProperty("elementIdentity")
public void setElementIdentity(ElementIdentity elementIdentity) {
this.elementIdentity = elementIdentity;
}
/**
*
* @return
* The contextIdentity
*/
@JsonProperty("contextIdentity")
public ContextIdentity getContextIdentity() {
return contextIdentity;
}
/**
*
* @param contextIdentity
* The contextIdentity
*/
@JsonProperty("contextIdentity")
public void setContextIdentity(ContextIdentity contextIdentity) {
this.contextIdentity = contextIdentity;
}
/**
*
* @return
* The networkIdentity
*/
@JsonProperty("networkIdentity")
public NetworkIdentity getNetworkIdentity() {
return networkIdentity;
}
/**
*
* @param networkIdentity
* The networkIdentity
*/
@JsonProperty("networkIdentity")
public void setNetworkIdentity(NetworkIdentity networkIdentity) {
this.networkIdentity = networkIdentity;
}
/**
* ElementDefinition
*
*
*
* @return
* The elementDefinition
*/
@JsonProperty("elementDefinition")
public ElementDefinition getElementDefinition() {
return elementDefinition;
}
/**
* ElementDefinition
*
*
*
* @param elementDefinition
* The elementDefinition
*/
@JsonProperty("elementDefinition")
public void setElementDefinition(ElementDefinition elementDefinition) {
this.elementDefinition = elementDefinition;
}
/**
*
* @return
* The versionData
*/
@JsonProperty("versionData")
public List getVersionData() {
return versionData;
}
/**
*
* @param versionData
* The versionData
*/
@JsonProperty("versionData")
public void setVersionData(List versionData) {
this.versionData = versionData;
}
/**
*
* @return
* The subComponents
*/
@JsonProperty("subComponents")
public List getSubComponents() {
return subComponents;
}
/**
*
* @param subComponents
* The subComponents
*/
@JsonProperty("subComponents")
public void setSubComponents(List subComponents) {
this.subComponents = subComponents;
}
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this);
}
@Override
public int hashCode() {
return new HashCodeBuilder().append(elementIdentity).append(contextIdentity).append(networkIdentity).append(elementDefinition).append(versionData).append(subComponents).toHashCode();
}
@Override
public boolean equals(Object other) {
if (other == this) {
return true;
}
if ((other instanceof ComponentData) == false) {
return false;
}
ComponentData rhs = ((ComponentData) other);
return new EqualsBuilder().append(elementIdentity, rhs.elementIdentity).append(contextIdentity, rhs.contextIdentity).append(networkIdentity, rhs.networkIdentity).append(elementDefinition, rhs.elementDefinition).append(versionData, rhs.versionData).append(subComponents, rhs.subComponents).isEquals();
}
}