EventPk.java 2.21 KB
package fi.insomnia.bortal.model;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Embeddable;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;

/**
 * Entity implementation class for Entity: EntityPK
 * 
 */
@Embeddable
public class EventPk implements Serializable {

    private static final String ID_COLUMN = GenericEventChild.ID_COLUMN;
    private static final String EVENT_ID_COLUMN = GenericEventChild.EVENT_ID_COLUMN;
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Column(name = ID_COLUMN, nullable = false)
    private Integer id;

    @Column(name = EVENT_ID_COLUMN, nullable = false, updatable = false)
    private Integer eventId;

    private static final long serialVersionUID = 1L;

    public EventPk() {
        super();
    }

    public EventPk(LanEvent event) {
        super();
        this.setEventId(event.getId());
    }

    public EventPk(LanEvent event, Integer id) {
        this(event.getId(), id);
    }

    public EventPk(Integer eventId) {
        super();
        this.setEventId(eventId);
    }

    public EventPk(Integer eventId, Integer id) {
        super();
        this.setEventId(eventId);
        this.setId(id);
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public Integer getId() {
        return id;
    }

    @Override
    public int hashCode() {
        return (id == null) ? 0 : id.hashCode() ^ ((getEventId() == null) ? 0 : getEventId().hashCode());
    }

    @Override
    public boolean equals(Object obj) {

        if (obj == null) {
            return false;
        }
        if (obj == this) {
            return true;
        }
        if (!(obj instanceof EventPk)) {
            return false;
        }
        EventPk pk = (EventPk) obj;
        return pk.id.equals(this.id) && pk.getEventId().equals(this.getEventId());
    }

    @Override
    public String toString() {
        return new StringBuilder("fi.insomnia.bortal.model.EventPk[id=").append(id).append(", eventId=").append(getEventId()).append("]").toString();
    }

    public void setEventId(Integer eventId) {
        this.eventId = eventId;
    }

    public Integer getEventId() {
        return eventId;
    }
}