com.dell.cpsd.identity.service.api.ElementsDescribed Maven / Gradle / Ivy
Show all versions of identity-service-api Show documentation
package com.dell.cpsd.identity.service.api;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import com.dell.cpsd.common.rabbitmq.annotation.Message;
import com.dell.cpsd.common.rabbitmq.annotation.stereotypes.MessageReply;
import com.dell.cpsd.common.rabbitmq.message.HasMessageProperties;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyDescription;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
import org.apache.commons.lang3.builder.EqualsBuilder;
import org.apache.commons.lang3.builder.HashCodeBuilder;
import org.apache.commons.lang3.builder.ToStringBuilder;
@JsonInclude(JsonInclude.Include.NON_NULL)
@Message(value = "dell.cpsd.core.identity.element.described", version = "1.0")
@MessageReply
@JsonPropertyOrder({
"messageProperties",
"timestamp",
"correlationId",
"elementDescriptions"
})
public class ElementsDescribed implements HasMessageProperties
{
/**
* AMQP properties properties
*
* AMQP properties.
* (Required)
*
*/
@JsonProperty("messageProperties")
@JsonPropertyDescription("")
private MessageProperties messageProperties;
/**
* Message timestamp
*
* The creation time of the message.
* (Required)
*
*/
@JsonProperty("timestamp")
@JsonPropertyDescription("")
private Date timestamp;
/**
* Correlation identifier
*
* The correlation identifier of the message.
* (Required)
*
*/
@JsonProperty("correlationId")
@JsonPropertyDescription("")
private String correlationId;
@JsonProperty("elementDescriptions")
private List elementDescriptions = new ArrayList();
/**
* No args constructor for use in serialization
*
*/
public ElementsDescribed() {
}
/**
*
* @param messageProperties
* @param elementDescriptions
* @param correlationId
* @param timestamp
*/
public ElementsDescribed(MessageProperties messageProperties, Date timestamp, String correlationId, List elementDescriptions) {
super();
this.messageProperties = messageProperties;
this.timestamp = timestamp;
this.correlationId = correlationId;
this.elementDescriptions = elementDescriptions;
}
/**
* AMQP properties properties
*
* AMQP properties.
* (Required)
*
* @return
* The messageProperties
*/
@JsonProperty("messageProperties")
public MessageProperties getMessageProperties() {
return messageProperties;
}
/**
* AMQP properties properties
*
* AMQP properties.
* (Required)
*
* @param messageProperties
* The messageProperties
*/
@JsonProperty("messageProperties")
public void setMessageProperties(MessageProperties messageProperties) {
this.messageProperties = messageProperties;
}
/**
* Message timestamp
*
* The creation time of the message.
* (Required)
*
* @return
* The timestamp
*/
@JsonProperty("timestamp")
public Date getTimestamp() {
return timestamp;
}
/**
* Message timestamp
*
* The creation time of the message.
* (Required)
*
* @param timestamp
* The timestamp
*/
@JsonProperty("timestamp")
public void setTimestamp(Date timestamp) {
this.timestamp = timestamp;
}
/**
* Correlation identifier
*
* The correlation identifier of the message.
* (Required)
*
* @return
* The correlationId
*/
@JsonProperty("correlationId")
public String getCorrelationId() {
return correlationId;
}
/**
* Correlation identifier
*
* The correlation identifier of the message.
* (Required)
*
* @param correlationId
* The correlationId
*/
@JsonProperty("correlationId")
public void setCorrelationId(String correlationId) {
this.correlationId = correlationId;
}
/**
*
* @return
* The elementDescriptions
*/
@JsonProperty("elementDescriptions")
public List getElementDescriptions() {
return elementDescriptions;
}
/**
*
* @param elementDescriptions
* The elementDescriptions
*/
@JsonProperty("elementDescriptions")
public void setElementDescriptions(List elementDescriptions) {
this.elementDescriptions = elementDescriptions;
}
@Override
public String toString() {
return ToStringBuilder.reflectionToString(this);
}
@Override
public int hashCode() {
return new HashCodeBuilder().append(messageProperties).append(timestamp).append(correlationId).append(elementDescriptions).toHashCode();
}
@Override
public boolean equals(Object other) {
if (other == this) {
return true;
}
if ((other instanceof ElementsDescribed) == false) {
return false;
}
ElementsDescribed rhs = ((ElementsDescribed) other);
return new EqualsBuilder().append(messageProperties, rhs.messageProperties).append(timestamp, rhs.timestamp).append(correlationId, rhs.correlationId).append(elementDescriptions, rhs.elementDescriptions).isEquals();
}
}