StateAdditionalInfo.java
package com.tradecloud.domain.state;
import com.tradecloud.authentication.User;
import org.apache.commons.lang3.builder.ToStringBuilder;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
public class StateAdditionalInfo {
private String reason;
private String instruction;
private Date stateDate;
private List<String> containersImpacted;
private Integer numberOfBulkInvoices = 1;
private String user;
private boolean publishEvent = true;
private User userObject;
public StateAdditionalInfo(String reason, String instruction, Date stateDate) {
this.reason = reason;
this.instruction = instruction;
this.stateDate = stateDate;
}
public StateAdditionalInfo(String reason, String instruction) {
this.reason = reason;
this.instruction = instruction;
}
public StateAdditionalInfo(String reason) {
this.reason = reason;
}
public StateAdditionalInfo() {
}
public String getReason() {
return reason;
}
public void setReason(String reason) {
this.reason = reason;
}
public String getInstruction() {
return instruction;
}
public void setInstruction(String instruction) {
this.instruction = instruction;
}
public Date getStateDate() {
return stateDate;
}
public void setStateDate(Date stateDate) {
this.stateDate = stateDate;
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
StateAdditionalInfo that = (StateAdditionalInfo) o;
return Objects.equals(reason, that.reason) &&
Objects.equals(instruction, that.instruction) &&
Objects.equals(stateDate, that.stateDate);
}
@Override
public int hashCode() {
return Objects.hash(reason, instruction, stateDate);
}
@Override
public String toString() {
return new ToStringBuilder(this)
.append("numberOfBulkInvoices", numberOfBulkInvoices)
.toString();
}
public List<String> getContainersImpacted() {
if (containersImpacted == null) {
containersImpacted = new ArrayList<>();
}
return containersImpacted;
}
public void setContainersImpacted(List<String> containersImpacted) {
this.containersImpacted = containersImpacted;
}
public Integer getNumberOfBulkInvoices() {
return numberOfBulkInvoices;
}
public void setNumberOfBulkInvoices(Integer numberOfBulkInvoices) {
this.numberOfBulkInvoices = numberOfBulkInvoices;
}
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public boolean isPublishEvent() {
return publishEvent;
}
public void setPublishEvent(boolean publishEvent) {
this.publishEvent = publishEvent;
}
public void setUserObject(User userObject) {
this.userObject = userObject;
}
public User getUserObject() {
return userObject;
}
}