Revision a2d22dbd
Added by Andreas Müller almost 6 years ago
cdmlib-model/src/main/java/eu/etaxonomy/cdm/model/media/Media.java | ||
---|---|---|
15 | 15 |
import java.util.Map; |
16 | 16 |
import java.util.Set; |
17 | 17 |
|
18 |
import javax.persistence.Basic;
|
|
18 |
import javax.persistence.Embedded;
|
|
19 | 19 |
import javax.persistence.Entity; |
20 | 20 |
import javax.persistence.FetchType; |
21 | 21 |
import javax.persistence.Inheritance; |
... | ... | |
40 | 40 |
import org.apache.log4j.Logger; |
41 | 41 |
import org.hibernate.annotations.Cascade; |
42 | 42 |
import org.hibernate.annotations.CascadeType; |
43 |
import org.hibernate.annotations.Type; |
|
44 | 43 |
import org.hibernate.envers.Audited; |
45 | 44 |
import org.hibernate.search.annotations.IndexedEmbedded; |
46 | 45 |
import org.hibernate.validator.constraints.NotEmpty; |
47 |
import org.joda.time.DateTime; |
|
48 | 46 |
|
49 |
import eu.etaxonomy.cdm.jaxb.DateTimeAdapter; |
|
50 | 47 |
import eu.etaxonomy.cdm.jaxb.MultilanguageTextAdapter; |
51 | 48 |
import eu.etaxonomy.cdm.model.agent.AgentBase; |
52 | 49 |
import eu.etaxonomy.cdm.model.common.IIntextReferenceTarget; |
... | ... | |
56 | 53 |
import eu.etaxonomy.cdm.model.common.Language; |
57 | 54 |
import eu.etaxonomy.cdm.model.common.LanguageString; |
58 | 55 |
import eu.etaxonomy.cdm.model.common.MultilanguageText; |
56 |
import eu.etaxonomy.cdm.model.common.TimePeriod; |
|
59 | 57 |
import eu.etaxonomy.cdm.model.reference.Reference; |
60 | 58 |
import eu.etaxonomy.cdm.strategy.cache.common.IIdentifiableEntityCacheStrategy; |
61 | 59 |
import eu.etaxonomy.cdm.strategy.cache.media.MediaDefaultCacheStrategy; |
... | ... | |
105 | 103 |
private Map<Language,LanguageString> title = new HashMap<>(); |
106 | 104 |
|
107 | 105 |
//creation date of the media (not of the record) |
108 |
@XmlElement(name = "MediaCreated", type= String.class)
|
|
109 |
@XmlJavaTypeAdapter(DateTimeAdapter.class)
|
|
110 |
@Type(type="dateTimeUserType")
|
|
111 |
@Basic(fetch = FetchType.LAZY)
|
|
112 |
private DateTime mediaCreated; |
|
106 |
@XmlElement(name ="MediaCreated" )
|
|
107 |
@Embedded
|
|
108 |
@IndexedEmbedded
|
|
109 |
private TimePeriod mediaCreated;
|
|
110 |
|
|
113 | 111 |
|
114 |
// TODO once hibernate annotations support custom collection type
|
|
112 |
// TODO once hibernate annotations support custom collection type |
|
115 | 113 |
// private MultilanguageText description = new MultilanguageText(); |
116 | 114 |
@XmlElement(name = "MediaDescription") |
117 | 115 |
@XmlJavaTypeAdapter(MultilanguageTextAdapter.class) |
... | ... | |
131 | 129 |
@Cascade({CascadeType.SAVE_UPDATE, CascadeType.MERGE, CascadeType.DELETE, CascadeType.REFRESH}) |
132 | 130 |
@NotNull |
133 | 131 |
@NotEmpty(groups = Level2.class) |
134 |
private Set<MediaRepresentation> representations = new HashSet<MediaRepresentation>();
|
|
132 |
private Set<MediaRepresentation> representations = new HashSet<>(); |
|
135 | 133 |
|
136 | 134 |
@XmlElement(name = "Artist") |
137 | 135 |
@XmlIDREF |
... | ... | |
141 | 139 |
@Cascade({CascadeType.SAVE_UPDATE,CascadeType.MERGE}) |
142 | 140 |
private AgentBase<?> artist; |
143 | 141 |
|
142 |
//************************* FACTORY METHODS *******************************/ |
|
144 | 143 |
|
145 | 144 |
/** |
146 | 145 |
* Factory method |
... | ... | |
323 | 322 |
|
324 | 323 |
|
325 | 324 |
|
326 |
public DateTime getMediaCreated(){
|
|
325 |
public TimePeriod getMediaCreated(){
|
|
327 | 326 |
return this.mediaCreated; |
328 | 327 |
} |
329 | 328 |
|
330 |
public void setMediaCreated(DateTime mediaCreated){
|
|
329 |
public void setMediaCreated(TimePeriod mediaCreated){
|
|
331 | 330 |
this.mediaCreated = mediaCreated; |
332 | 331 |
} |
333 | 332 |
|
Also available in: Unified diff
fix #7074 Change Media.mediaCreated to TimePeriod and make let PartialUserType support hour and minute