ConfigProperty.java
package com.tradecloud.domain.configuration;
import org.hibernate.annotations.AccessType;
import javax.persistence.*;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;
import java.io.Serializable;
/**
* Entity to hold configuration property names and values.
*/
@Entity
@Table(name = "config_property", uniqueConstraints = {@UniqueConstraint(columnNames = {"name"})})
@AccessType("field")
@NamedQuery(name = "findPropertyByName", query = "from ConfigProperty where name = :name")
@XmlAccessorType(XmlAccessType.FIELD)
@XmlRootElement(name = "ConfigProperty")
public class ConfigProperty implements Serializable, Comparable<ConfigProperty> {
private static final long serialVersionUID = 1L;
@Id
@Column(nullable = false)
@XmlAttribute
private String name;
@Column(name = "property_value", nullable = false)
@XmlAttribute
private String value;
public ConfigProperty() {
}
public ConfigProperty(String name, String value) {
this.name = name;
this.value = value;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((name == null) ? 0 : name.hashCode());
result = prime * result + ((value == null) ? 0 : value.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
ConfigProperty other = (ConfigProperty) obj;
if (name == null) {
if (other.name != null)
return false;
} else if (!name.equals(other.name))
return false;
if (value == null) {
if (other.value != null)
return false;
} else if (!value.equals(other.value))
return false;
return true;
}
@Override
public String toString() {
return "ConfigProperty [name=" + name + ", value=" + value + "]";
}
@Override
public int compareTo(ConfigProperty o) {
return name.compareToIgnoreCase(o.getName());
}
}