ActivityLog.java
package com.tradecloud.domain.event;
import com.tradecloud.domain.party.ServiceProvider;
import javax.persistence.*;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
@Entity
@Table(name = "activitylogs")
@Access(AccessType.FIELD)
@XmlAccessorType(XmlAccessType.FIELD)
public class ActivityLog extends Event implements EnumTypedEvent<ActivityLogType> {
/**
* UID.
*/
private static final long serialVersionUID = 1L;
/**
* Event type.
*/
@Enumerated(EnumType.STRING)
private ActivityLogType eventType;
private String orderReference;
private String orderNumber;
private String consignmentNumber;
@OneToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY)
private ActivitySnapshot snapshot;
public ActivityLog() {
}
public ActivityLog(ActivityLogType eventTypeParam, String username, String orderReference, String orderNumber, String consignmentNumber) {
super(username);
this.orderReference = orderReference;
this.orderNumber = orderNumber;
this.consignmentNumber = consignmentNumber;
this.eventType = eventTypeParam;
}
public ActivityLog(String username, ActivityLogType eventType, ServiceProvider freightForwarder) {
super(username);
this.eventType = eventType;
}
@Override
public ActivityLogType getEventType() {
return eventType;
}
@Override
public void setEventType(ActivityLogType eventTypeParam) {
this.eventType = eventTypeParam;
}
public String getOrderReference() {
return orderReference;
}
public void setOrderReference(String orderReference) {
this.orderReference = orderReference;
}
public ActivitySnapshot getSnapshot() {
return snapshot;
}
public void setSnapshot(ActivitySnapshot snapshot) {
this.snapshot = snapshot;
}
@Override
public int hashCode() {
final int prime = 31;
int result = super.hashCode();
result = prime * result + ((eventType == null) ? 0 : eventType.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (!super.equals(obj))
return false;
if (getClass() != obj.getClass())
return false;
ActivityLog other = (ActivityLog) obj;
return eventType == other.eventType;
}
public String getOrderNumber() {
return orderNumber;
}
public void setOrderNumber(String orderNumber) {
this.orderNumber = orderNumber;
}
public String getConsignmentNumber() {
return consignmentNumber;
}
public void setConsignmentNumber(String consignmentNumber) {
this.consignmentNumber = consignmentNumber;
}
}