Package nl.vpro.domain.media
Class Prediction
- java.lang.Object
-
- nl.vpro.domain.media.Prediction
-
- All Implemented Interfaces:
Serializable
,Comparable<Prediction>
,Child<MediaObject>
,Embargo
,Updatable<Prediction>
,MutableEmbargo<Prediction>
@Entity public class Prediction extends Object implements Comparable<Prediction>, Updatable<Prediction>, Serializable, MutableEmbargo<Prediction>, Child<MediaObject>
A prediction is related to a program and indicates that locations (for a certain platform) will be available.Also, it contains information about the embargo restrictions for that platform.
- Since:
- 1.6
- Author:
- Michiel Meeuwissen
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Prediction.Builder
static class
Prediction.State
-
Field Summary
Fields Modifier and Type Field Description protected Encryption
encryption
protected @NotNull Instant
issueDate
protected MediaObject
mediaObject
protected @NotNull Platform
platform
protected Instant
publishStart
protected Instant
publishStop
protected @NotNull Prediction.State
state
-
Constructor Summary
Constructors Constructor Description Prediction()
Prediction(String platform)
Constructor needed for jackson unmarshallingPrediction(Platform platform)
Prediction(Platform platform, Instant publishStart, Instant publishStop)
Prediction(Platform platform, Prediction.State state)
Prediction(Prediction source)
Prediction(Prediction source, MediaObject parent)
-
Method Summary
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface nl.vpro.domain.Embargo
asRange, inPublicationWindow, inPublicationWindow, isPublishable, isUnderEmbargo, isUnderEmbargo, wasUnderEmbargo, wasUnderEmbargo, willBePublished, willBePublished, willBeUnderEmbargo, willBeUnderEmbargo
-
Methods inherited from interface nl.vpro.domain.MutableEmbargo
set
-
-
-
-
Field Detail
-
issueDate
@NotNull protected @NotNull Instant issueDate
-
state
@NotNull protected @NotNull Prediction.State state
-
publishStart
protected Instant publishStart
-
publishStop
protected Instant publishStop
-
platform
@NotNull protected @NotNull Platform platform
-
mediaObject
protected MediaObject mediaObject
-
encryption
protected Encryption encryption
-
-
Constructor Detail
-
Prediction
public Prediction()
-
Prediction
public Prediction(String platform)
Constructor needed for jackson unmarshalling
-
Prediction
public Prediction(Platform platform)
-
Prediction
public Prediction(Platform platform, Prediction.State state)
-
Prediction
public Prediction(Prediction source)
-
Prediction
public Prediction(Prediction source, MediaObject parent)
-
-
Method Detail
-
copy
public static Prediction copy(Prediction source)
-
copy
public static Prediction copy(Prediction source, MediaObject parent)
-
unavailable
public static Prediction unavailable(MediaObject parent, Platform platform, Authority authority)
-
virtual
public static Prediction virtual(MediaObject parent, Platform platform, Authority authority)
-
announced
public static Prediction.Builder announced()
-
revoked
public static Prediction.Builder revoked()
-
realized
public static Prediction.Builder realized()
-
setParent
public void setParent(MediaObject mo)
- Specified by:
setParent
in interfaceChild<MediaObject>
-
getParent
public MediaObject getParent()
- Specified by:
getParent
in interfaceChild<MediaObject>
-
isNew
public boolean isNew()
-
getPublishStartInstant
public Instant getPublishStartInstant()
- Specified by:
getPublishStartInstant
in interfaceEmbargo
-
setPublishStartInstant
public @NonNull Prediction setPublishStartInstant(Instant start)
- Specified by:
setPublishStartInstant
in interfaceMutableEmbargo<Prediction>
-
getPublishStopInstant
public Instant getPublishStopInstant()
- Specified by:
getPublishStopInstant
in interfaceEmbargo
-
setPublishStopInstant
public @NonNull Prediction setPublishStopInstant(Instant publishStop)
- Specified by:
setPublishStopInstant
in interfaceMutableEmbargo<Prediction>
-
setPlatform
public void setPlatform(Platform platform)
-
setAuthority
public void setAuthority(Authority authority)
-
setPlannedAvailability
public void setPlannedAvailability(boolean plannedAvailability)
-
setEncryption
public void setEncryption(Encryption encryption)
-
invalidateXml
protected void invalidateXml()
-
compareTo
public int compareTo(@NonNull Prediction o)
- Specified by:
compareTo
in interfaceComparable<Prediction>
-
fieldEquals
public boolean fieldEquals(Prediction prediction)
-
update
public void update(Prediction from)
Description copied from interface:Updatable
Copies all fields from argument- Specified by:
update
in interfaceUpdatable<Prediction>
-
isDRM
public boolean isDRM()
// See MSE-3992
-
builder
public static @NonNull Prediction.Builder builder()
-
getIssueDate
public Instant getIssueDate()
-
setIssueDate
public void setIssueDate(Instant issueDate)
-
getState
public Prediction.State getState()
-
setState
public void setState(Prediction.State state)
-
getPlatform
public Platform getPlatform()
-
getAuthority
public Authority getAuthority()
-
isPlannedAvailability
public boolean isPlannedAvailability()
TODO The state is 'ANNOUNCED', so shouldn't we name this field 'announcedAvailability'?- Since:
- 5.6
-
getEncryption
public Encryption getEncryption()
-
-