package net.curisit.securis.db; import java.io.Serializable; import java.util.Date; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; import javax.persistence.NamedQueries; import javax.persistence.NamedQuery; import javax.persistence.Table; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import com.fasterxml.jackson.annotation.JsonAutoDetect; import com.fasterxml.jackson.annotation.JsonBackReference; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonProperty; /** * Entity implementation class for Entity: application_metadata * */ @JsonAutoDetect @JsonInclude(Include.NON_NULL) @Entity @Table(name = "application_metadata") @NamedQueries({ @NamedQuery(name = "list-application-metadata", query = "SELECT a FROM ApplicationMetadata a where a.application.id = :applicationId") }) public class ApplicationMetadata implements Serializable { private static final Logger LOG = LogManager.getLogger(ApplicationMetadata.class); private static final long serialVersionUID = 1L; @Id @ManyToOne @JoinColumn(name = "application_id") @JsonBackReference private Application application; @Id @Column(name = "\"key\"") private String key; private String value; private boolean mandatory; @Column(name = "creation_timestamp") @JsonProperty("creation_timestamp") private Date creationTimestamp; public String getKey() { return key; } public void setKey(String key) { this.key = key; } public Application getApplication() { LOG.info("Getting application from app metadata: {}", application); return application; } public void setApplication(Application application) { this.application = application; } public Date getCreationTimestamp() { return creationTimestamp; } public void setCreationTimestamp(Date creationTimestamp) { this.creationTimestamp = creationTimestamp; } public String getValue() { return value; } public void setValue(String value) { this.value = value; } public boolean isMandatory() { return mandatory; } public void setMandatory(boolean mandatory) { this.mandatory = mandatory; } @Override public String toString() { return String.format("ApplicationMetadata (%s)", this.key); } }