ProductEvents.java
package com.tradecloud.domain.configuration;
import com.tradecloud.authentication.User;
import javax.persistence.*;
import javax.xml.bind.annotation.*;
import java.util.HashSet;
import java.util.Set;
/**
* Meta-data of product events.
*/
@Entity
@Table(name = "productevents")
@Access(AccessType.FIELD)
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "ProductEvents")
public class ProductEvents extends EventConfig<ProductEventsMetaData> {
private static final long serialVersionUID = 1L;
@ManyToOne
@XmlElement(name = "ProductEventsMetaData")
@JoinTable(name = "productevents_producteventsmetadata", joinColumns = {@JoinColumn(name = "productevent_id", unique = false)},
inverseJoinColumns = {@JoinColumn(name = "metadata_id", unique = false)})
private ProductEventsMetaData eventsMetaData;
@XmlTransient
@ManyToMany
@JoinTable(name = "integrationuser_productevents", joinColumns = {@JoinColumn(name = "productevent_id", unique = false)},
inverseJoinColumns = {@JoinColumn(name = "integrationuser_id", unique = false)})
private Set<User> users = new HashSet<>();
public ProductEventsMetaData getEventsMetaData() {
return eventsMetaData;
}
@Override
public void setEventsMetaData(ProductEventsMetaData eventsMetaData) {
this.eventsMetaData = eventsMetaData;
}
@Override
public Set<User> getUsers() {
return users;
}
public void setUsers(Set<User> users) {
this.users = users;
}
}