package com.oa.model;
import java.io.Serializable;
import javax.persistence.CascadeType;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.Transient;
@Entity
@Table(name = "oa_documentProperty")
public class DocumentProperty implements Serializable {
private Integer id;
private String java_lang_String;
private String java_util_Date;
private String java_lang_Integer;
private String java_lang_Long;
private String java_io_File;
private String propertyName;
//
private Document document;
private String property;
String getJava_lang_String() {
return java_lang_String;
}
public void setJava_lang_String(String java_lang_String) {
this.java_lang_String = java_lang_String;
}
public String getJava_util_Date() {
return java_util_Date;
}
public void setJava_util_Date(String java_util_Date) {
this.java_util_Date = java_util_Date;
}
public String getJava_lang_Integer() {
return java_lang_Integer;
}
@Transient
public boolean isNull() {
if (this.java_lang_String != null || this.java_io_File != null || this.java_lang_Integer != null || this.java_lang_Long != null || this.java_util_Date != null) {
return false;
}
return true;
}
@Transient
public Object getValue() {
if (this.java_io_File != null)
return java_io_File;
else if (java_lang_Integer != null)
return java_lang_Integer;
else if (java_lang_Long != null)
return java_lang_Long;
else if (java_lang_String != null)
return java_lang_String;
else
return java_util_Date;
}
public void setJava_lang_Integer(String java_lang_Integer) {
this.java_lang_Integer = java_lang_Integer;
}
public String getJava_lang_Long() {
return java_lang_Long;
}
public void setJava_lang_Long(String java_lang_Long) {
this.java_lang_Long = java_lang_Long;
}
public String getJava_io_File() {
return java_io_File;
}
public void setJava_io_File(String java_io_File) {
this.java_io_File = java_io_File;
}
public String getPropertyName() {
return propertyName;
}
public void setPropertyName(String propertyName) {
this.propertyName = propertyName;
}
@Id
@GeneratedValue
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
@ManyToOne(cascade = { CascadeType.ALL }, fetch = FetchType.LAZY)
@JoinColumn(name = "documentId", referencedColumnName = "id")
public Document getDocument() {
return document;
}
public void setDocument(Document document) {
this.document = document;
}
@Override
public String toString() {
return "DocumentProperty [id=" + id + ", java_lang_String=" + java_lang_String + ", java_util_Date=" + java_util_Date + ", java_lang_Integer=" + java_lang_Integer + ", java_lang_Long=" + java_lang_Long + ", java_io_File=" + java_io_File + ", propertyName=" + propertyName + "]";
}
@Transient
public String getProperty() {
if (java_lang_Integer != null)
return java_lang_Integer;
else if (java_lang_Long != null)
return java_lang_Long;
else if (java_lang_String != null)
return java_lang_String;
else
return java_util_Date;
}
public void setProperty(String property) {
this.property = property;
}
}