LanEventPrivateProperty.java 3.81 KB
package fi.insomnia.bortal.model;

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.JoinColumn;
import javax.persistence.Lob;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.UniqueConstraint;

@Entity
@Table(name = "event_private_properties", uniqueConstraints = {
        @UniqueConstraint(columnNames = { LanEventPrivateProperty.EVENT_ID_COLUMN, LanEventPrivateProperty.KEY_COLUMN }),
        @UniqueConstraint(columnNames = { LanEventPrivateProperty.EVENTORG_ID_COLUMN, LanEventPrivateProperty.KEY_COLUMN }),
})
public class LanEventPrivateProperty extends GenericEntity {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;

    protected static final String KEY_COLUMN = "key";

    protected static final String EVENT_ID_COLUMN = "event_id";

    protected static final String EVENTORG_ID_COLUMN = "organisation_id";

    @ManyToOne()
    @JoinColumn(name = EVENTORG_ID_COLUMN, nullable = true)
    private EventOrganiser eventorg;

    @ManyToOne()
    @JoinColumn(name = EVENT_ID_COLUMN, nullable = true)
    private LanEvent event;

    @Column(name = KEY_COLUMN, nullable = false)
    @Enumerated(EnumType.STRING)
    private LanEventPrivatePropertyKey key;

    @Lob
    @Column(name = "description")
    private String description;

    @Column(name = "boolean_value")
    private boolean booleanValue;

    @Column(name = "text_value")
    @Lob
    private String textvalue;

    @Column(precision = 30, scale = 8, name = "decimal_value")
    private BigDecimal decimalValue;

    @Column(name = "long_value")
    private Long longValue;

    @Column(name = "byte_mime")
    private String byteMime;

    @Column(name = "byte_value")
    @Lob
    private byte[] byteValue;

    @Column(name = "date_value")
    @Temporal(TemporalType.TIMESTAMP)
    private Date dateValue;

    public LanEvent getEvent() {
        return event;
    }

    public void setEvent(LanEvent event) {
        this.event = event;
    }

    public LanEventPrivatePropertyKey getKey() {
        return key;
    }

    public void setKey(LanEventPrivatePropertyKey key) {
        this.key = key;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public boolean isBooleanValue() {
        return booleanValue;
    }

    public void setBooleanValue(boolean booleanValue) {
        this.booleanValue = booleanValue;
    }

    public String getTextvalue() {
        return textvalue;
    }

    public void setTextvalue(String textvalue) {
        this.textvalue = textvalue;
    }

    public BigDecimal getDecimalValue() {
        return decimalValue;
    }

    public void setDecimalValue(BigDecimal decimalValue) {
        this.decimalValue = decimalValue;
    }

    public Long getLongValue() {
        return longValue;
    }

    public void setLongValue(Long longValue) {
        this.longValue = longValue;
    }

    public String getByteMime() {
        return byteMime;
    }

    public void setByteMime(String byteMime) {
        this.byteMime = byteMime;
    }

    public byte[] getByteValue() {
        return byteValue;
    }

    public void setByteValue(byte[] byteValue) {
        this.byteValue = byteValue;
    }

    public Date getDateValue() {
        return dateValue;
    }

    public void setDateValue(Date dateValue) {
        this.dateValue = dateValue;
    }

    public EventOrganiser getEventorg() {
        return eventorg;
    }

    public void setEventorg(EventOrganiser eventorg) {
        this.eventorg = eventorg;
    }

}