15 package cz.vutbr.fit.knot.annotations.modules.suggestionManager.attributes;
19 import java.io.Serializable;
20 import java.util.logging.Level;
21 import java.util.logging.Logger;
22 import javax.persistence.Basic;
23 import javax.persistence.Column;
24 import javax.persistence.Entity;
25 import javax.persistence.GeneratedValue;
26 import javax.persistence.GenerationType;
27 import javax.persistence.Id;
28 import javax.persistence.JoinColumn;
29 import javax.persistence.ManyToOne;
30 import javax.persistence.NamedQueries;
31 import javax.persistence.NamedQuery;
32 import javax.persistence.Table;
33 import javax.validation.constraints.NotNull;
34 import javax.validation.constraints.Size;
35 import javax.xml.bind.annotation.XmlRootElement;
44 @Table(name =
"sugEntityAdditionalAttribute")
47 @NamedQuery(name =
"SugEntityAdditionalAttribute.findAll", query =
"SELECT s FROM SugEntityAdditionalAttribute s"),
48 @NamedQuery(name =
"SugEntityAdditionalAttribute.findById", query =
"SELECT s FROM SugEntityAdditionalAttribute s WHERE s.id = :id"),
49 @NamedQuery(name =
"SugEntityAdditionalAttribute.findByName", query =
"SELECT s FROM SugEntityAdditionalAttribute s WHERE s.name = :name"),
50 @NamedQuery(name =
"SugEntityAdditionalAttribute.findByStringValue", query =
"SELECT s FROM SugEntityAdditionalAttribute s WHERE s.stringValue = :stringValue"),
51 @NamedQuery(name =
"SugEntityAdditionalAttribute.findByEntityId", query =
"SELECT s FROM SugEntityAdditionalAttribute s WHERE s.entityId = :entityId")})
53 private static final long serialVersionUID = 1L;
57 @GeneratedValue(strategy = GenerationType.IDENTITY)
58 @Basic(optional =
false)
63 @Basic(optional = false)
65 @Size(min = 1, max = 255)
66 @Column(name = "name")
70 @Basic(optional = false)
72 @Column(name = "type")
76 @Basic(optional = true)
77 @Size(min = 0, max = 255)
78 @Column(name = "stringValue")
79 private String stringValue;
82 @Column(name = "priority")
83 protected Integer priority;
86 @Basic(optional = false)
87 @Column(name = "entityId", nullable = false, insertable = false, updatable = false)
91 @ManyToOne(optional = false)
92 @JoinColumn(name = "entityId", referencedColumnName = "
id")
119 this.stringValue = stringValue;
120 this.refEntityAttribute = refEntityAttribute;
134 this.stringValue = stringValue;
135 this.refEntityAttribute = refEntityAttribute;
149 this.stringValue = stringValue;
150 this.refEntityAttribute = refEntityAttribute;
222 this.stringValue = stringValue;
240 this.entityId = entityId;
249 return refEntityAttribute;
258 this.refEntityAttribute = refEntityAttribute;
276 this.priority = priority;
282 hash += (
id != null ? id.hashCode() : 0);
296 int typeIndex = Constants.SIMPLE_TYPES_FOR_ENT_AD_AT.indexOf(type);
299 result =
"<" + name +
" type=\"" + Constants.SIMPLE_TYPES_URIS_FOR_ENT_AD_AT.get(typeIndex)
302 result =
"<" + name +
">" + Util.toHTMLString(stringValue) +
"</" + name +
">";
305 result =
"<" + name +
">" + Util.toHTMLString(stringValue) +
"</" + name +
">";
317 int typeIndex = Constants.SIMPLE_TYPES_FOR_ENT_AD_AT.indexOf(type);
319 typeIndex = Constants.SIMPLE_TYPES_FOR_ENT_AD_AT.indexOf(
"String");
322 String msg =
"URI for string was not found!";
323 Logger.getLogger(SugEntityAdditionalAttribute.class.getName()).log(Level.SEVERE, msg);
329 typeURI = Constants.SIMPLE_TYPES_URIS_FOR_ENT_AD_AT.get(typeIndex);
331 StringBuilder result =
new StringBuilder();
332 result.append(
"<trix:triple><trix:uri>");
333 result.append(Util.toHTMLString(this.refEntityAttribute.getUri()));
334 result.append(
"</trix:uri><trix:name>");
335 result.append(Util.toHTMLString(name));
336 result.append(
"</trix:name><trix:typedLiteral datatype=\"").append(typeURI).append(
"\">");
337 result.append(Util.toHTMLString(stringValue));
338 result.append(
"</trix:typedLiteral></trix:triple>");
339 return result.toString();
354 SugEntityAdditionalAttribute other = (SugEntityAdditionalAttribute)
object;
355 if ((this.
id == null && other.
id != null) || (this.id != null && !this.id.equals(other.id))) {
363 return "cz.vutbr.fit.knot.annotations.modules.suggestionManager.attributes.SugEntityAdditionalAttribute[ id=" +
id +
" ]";
379 throw new UnsupportedOperationException(
"Not supported yet.");
381 SugEntityAdditionalAttribute other = (SugEntityAdditionalAttribute) o;
382 if (this.priority == null && other.
getPriority() == null) {
385 if (this.priority == null && other.
getPriority() != null) {
388 if (this.priority != null && other.
getPriority() == null) {
391 return this.priority.compareTo(other.getPriority());
void setPriority(Integer priority)
Additional attribute of entity in suggestion attribute.
Class representing vocabulary entity attribute for prupose of suggestion.
void setRefEntityAttribute(SugEntityAttribute refEntityAttribute)
void setEntityId(int entityId)
SugEntityAttribute getRefEntityAttribute()
void setName(String name)
static final int LOG_LEVEL
static final String DEFAULT_SIMPLE_TYPE_FOR_ENT_AD_AT
SugEntityAdditionalAttribute(Integer id)
boolean equals(Object object)
void setType(String type)
SugEntityAdditionalAttribute(String name, String stringValue, SugEntityAttribute refEntityAttribute)
void setStringValue(String stringValue)
static final int LOG_LEVEL_SERVER_ERRORS
static String toHTMLString(String source)
SugEntityAdditionalAttribute(String name, String type, String stringValue, SugEntityAttribute refEntityAttribute)
Utility class (manipulates RFC 3339 dates)
String toXMLResponseStringV2()
SugEntityAdditionalAttribute(Integer id, String name, String stringValue, SugEntityAttribute refEntityAttribute)