Package nl.vpro.domain.media
Interface MediaBuilder<B extends MediaBuilder<B,M>,M extends MediaObject>
-
- All Superinterfaces:
EmbargoBuilder<B>
- All Known Implementing Classes:
MediaBuilder.AbstractBuilder
,MediaBuilder.AbstractGroupBuilder
,MediaBuilder.AbstractProgramBuilder
,MediaBuilder.AbstractSegmentBuilder
,MediaBuilder.GroupBuilder
,MediaBuilder.ProgramBuilder
,MediaBuilder.SegmentBuilder
public interface MediaBuilder<B extends MediaBuilder<B,M>,M extends MediaObject> extends EmbargoBuilder<B>
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static class
MediaBuilder.AbstractBuilder<T extends MediaBuilder.AbstractBuilder<T,M>,M extends MediaObject>
static class
MediaBuilder.AbstractGroupBuilder<T extends MediaBuilder.AbstractGroupBuilder<T>>
static class
MediaBuilder.AbstractProgramBuilder<T extends MediaBuilder.AbstractProgramBuilder<T> & MediaBuilder<T,Program>>
static class
MediaBuilder.AbstractSegmentBuilder<T extends MediaBuilder.AbstractSegmentBuilder<T>>
static class
MediaBuilder.GroupBuilder
static class
MediaBuilder.ProgramBuilder
static class
MediaBuilder.SegmentBuilder
-
Field Summary
-
Fields inherited from interface nl.vpro.domain.EmbargoBuilder
ZONE_ID
-
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default B
ageRating(AgeRating ageRating)
default B
ageRatingAllIfUnset()
default B
aspectRatio(AspectRatio as)
default B
audio()
default B
audioOrVideo()
default B
avAttributes(AVAttributes avAttribute)
default B
avType(AVType type)
default B
awards(String... awards)
static MediaBuilder.ProgramBuilder
broadcast()
default B
broadcasters(String... broadcasters)
default B
broadcasters(Collection<Broadcaster> broadcasters)
default B
broadcasters(Broadcaster... broadcasters)
M
build()
default B
clearBroadcasters()
default B
clearCreationDate()
default B
clearLocations()
default B
clearMemberOf()
default B
clearMergedTo()
default B
clearPortals()
default B
clearTwitterRefs()
default B
clearWebsites()
static MediaBuilder.ProgramBuilder
clip()
default B
contentRatings(ContentRating... contentRatings)
B
copy()
Makes a (deep) copy of this builder.default B
countries(String... countries)
default B
createdBy(String user)
default B
createdBy(Editor user)
default B
creationDate(Instant date)
default B
creationDate(LocalDateTime date)
default B
creationDate(ZonedDateTime date)
default B
creationInstant(Instant date)
default B
credits(Credits... name)
default B
crids(String... crids)
default B
crids(Collection<String> crids)
default B
descendantOf(String... mids)
default B
descendantOf(DescendantRef... refs)
This adds descendantOf's explicitely.default B
descriptions(Description... descriptions)
default B
duration(@Nullable Duration duration)
default B
emails(String... emails)
default B
embeddable(boolean isEmbeddable)
default B
genres(String... termIds)
default B
genres(Collection<Genre> genres)
default B
genres(Genre... genres)
default B
geoLocations(Collection<GeoLocations> geoLocations)
default B
geoLocations(GeoLocation... geoLocations)
default B
geoLocations(GeoLocations... geoLocations)
default B
geoLocations(GeoRoleType role, URI... topics)
default B
geoLocations(nl.vpro.domain.media.support.OwnerType owner, GeoLocation... geoLocations)
default B
geoRestrictions(GeoRestriction... restrictions)
default B
geoRestrictions(Region... restrictions)
String
getMid()
default Workflow
getWorkflow()
static MediaBuilder.GroupBuilder
group()
static MediaBuilder.GroupBuilder
group(Group group)
static MediaBuilder.GroupBuilder
group(GroupType type)
default B
id(Long id)
default B
images(Image.Builder... images)
default B
images(Image... images)
default B
intentions(Collection<Intentions> intentions)
default B
intentions(Intentions... intentions)
default B
languages(String... languages)
default B
lastModified(Instant date)
default B
lastModified(LocalDateTime date)
default B
lastModified(ZonedDateTime date)
default B
lastModifiedBy(String user)
default B
lastModifiedBy(Editor user)
default B
lastPublished(Instant date)
default B
lastPublished(LocalDateTime date)
default B
lexicoTitle(String title)
default B
lexicoTitle(String title, @NonNull nl.vpro.domain.media.support.OwnerType owner)
default B
locations(Iterable<Location> locations)
default B
locations(String... locations)
default B
locations(Location... locations)
default B
mainDescription(@Nullable String description)
default B
mainDescription(@Nullable String description, @NonNull nl.vpro.domain.media.support.OwnerType owner)
default B
mainTitle(@NonNull String title)
default B
mainTitle(@NonNull String title, @NonNull nl.vpro.domain.media.support.OwnerType owner)
default B
mainTitle(@NonNull UnaryOperator<String> title)
M
mediaObject()
Access to the underlying media object.default B
memberOf(@NonNull MediaObject media, Integer number)
default B
memberOf(String mid)
default B
memberOf(String mid, Integer number)
default B
memberOf(MediaObject media)
default B
memberOf(MemberRef... memberRef)
default B
mergedTo(String media)
default B
mergedTo(MediaObject media)
B
mid(String mid)
static MediaBuilder.ProgramBuilder
movie()
static <B extends MediaBuilder<B,T>,T extends MediaObject>
Bof(T media)
default B
person(RoleType role, String givenName, String familyName)
default B
persons(Collection<Person> persons)
default B
persons(Person... persons)
default B
portalRestrictions(String... portals)
default B
portalRestrictions(PortalRestriction... restrictions)
default B
portalRestrictions(Portal... restrictions)
default B
portals(String... portals)
default B
portals(Portal... portals)
static MediaBuilder.ProgramBuilder
program()
static MediaBuilder.ProgramBuilder
program(Program program)
static MediaBuilder.ProgramBuilder
program(ProgramType type)
default B
publishStart(Instant date)
default B
publishStop(Instant date)
default B
relations(Relation... relations)
default B
releaseYear(Short y)
static MediaBuilder.SegmentBuilder
segment()
static MediaBuilder.SegmentBuilder
segment(Segment segment)
default B
source(String source)
default B
subTitle(String title)
default B
subTitle(String title, @NonNull nl.vpro.domain.media.support.OwnerType owner)
default B
tags(String... tags)
default B
tags(Tag... tags)
default B
targetGroups(Collection<TargetGroups> targetGroups)
default B
targetGroups(TargetGroups... targetGroups)
default B
teletext(Short teletext)
default B
thirdParties(ThirdParty... thirdParties)
default B
titles(Title... titles)
default B
topics(URI... topics)
default B
topics(Collection<Topics> topics)
default B
topics(nl.vpro.domain.media.support.OwnerType owner, Topic... topics)
default B
topics(Topic... topics)
default B
topics(Topics... topics)
default B
twitterRefs(String... twitter)
default B
twitterRefs(TwitterRef... twitter)
default B
urn(String urn)
static Editor
user(String principalId)
default B
video()
default B
websites(String... websites)
default B
websites(Website... websites)
default B
workflow(Workflow workflow)
-
Methods inherited from interface nl.vpro.domain.EmbargoBuilder
publishStart, publishStart, publishStart, publishStop, publishStop
-
-
-
-
Method Detail
-
program
static MediaBuilder.ProgramBuilder program()
-
program
static MediaBuilder.ProgramBuilder program(ProgramType type)
-
broadcast
static MediaBuilder.ProgramBuilder broadcast()
-
movie
static MediaBuilder.ProgramBuilder movie()
-
clip
static MediaBuilder.ProgramBuilder clip()
-
program
static MediaBuilder.ProgramBuilder program(Program program)
-
group
static MediaBuilder.GroupBuilder group()
-
group
static MediaBuilder.GroupBuilder group(GroupType type)
-
group
static MediaBuilder.GroupBuilder group(Group group)
-
segment
static MediaBuilder.SegmentBuilder segment()
-
segment
static MediaBuilder.SegmentBuilder segment(Segment segment)
-
of
static <B extends MediaBuilder<B,T>,T extends MediaObject> B of(T media)
-
build
M build()
-
mediaObject
M mediaObject()
Access to the underlying media object. Though this is public, this should normally not be used by user code. Usebuild()
in stead.- Returns:
- The mediaobject that is currently built.
-
getMid
String getMid()
-
creationDate
default B creationDate(ZonedDateTime date)
-
creationDate
default B creationDate(LocalDateTime date)
-
clearCreationDate
default B clearCreationDate()
-
lastModified
default B lastModified(ZonedDateTime date)
-
lastModified
default B lastModified(LocalDateTime date)
-
publishStart
default B publishStart(Instant date)
- Specified by:
publishStart
in interfaceEmbargoBuilder<B extends MediaBuilder<B,M>>
-
publishStop
default B publishStop(Instant date)
- Specified by:
publishStop
in interfaceEmbargoBuilder<B extends MediaBuilder<B,M>>
-
lastPublished
default B lastPublished(LocalDateTime date)
-
getWorkflow
default Workflow getWorkflow()
-
crids
default B crids(Collection<String> crids)
-
broadcasters
default B broadcasters(Broadcaster... broadcasters)
-
broadcasters
default B broadcasters(Collection<Broadcaster> broadcasters)
-
clearBroadcasters
default B clearBroadcasters()
-
clearPortals
default B clearPortals()
-
thirdParties
default B thirdParties(ThirdParty... thirdParties)
-
portalRestrictions
default B portalRestrictions(PortalRestriction... restrictions)
-
geoRestrictions
default B geoRestrictions(GeoRestriction... restrictions)
-
mainTitle
default B mainTitle(@NonNull String title, @NonNull nl.vpro.domain.media.support.OwnerType owner)
-
mainTitle
default B mainTitle(@NonNull UnaryOperator<String> title)
- Since:
- 5.32
-
lexicoTitle
default B lexicoTitle(String title, @NonNull nl.vpro.domain.media.support.OwnerType owner)
-
descriptions
default B descriptions(Description... descriptions)
-
mainDescription
default B mainDescription(@Nullable String description, @NonNull nl.vpro.domain.media.support.OwnerType owner)
-
genres
default B genres(Collection<Genre> genres)
-
avAttributes
default B avAttributes(AVAttributes avAttribute)
-
aspectRatio
default B aspectRatio(AspectRatio as)
-
persons
default B persons(Collection<Person> persons)
-
geoLocations
default B geoLocations(GeoLocations... geoLocations)
-
geoLocations
default B geoLocations(nl.vpro.domain.media.support.OwnerType owner, GeoLocation... geoLocations)
-
geoLocations
default B geoLocations(GeoLocation... geoLocations)
-
geoLocations
default B geoLocations(GeoRoleType role, URI... topics)
-
geoLocations
default B geoLocations(Collection<GeoLocations> geoLocations)
-
intentions
default B intentions(Intentions... intentions)
-
intentions
default B intentions(Collection<Intentions> intentions)
-
targetGroups
default B targetGroups(TargetGroups... targetGroups)
-
targetGroups
default B targetGroups(Collection<TargetGroups> targetGroups)
-
topics
default B topics(Collection<Topics> topics)
-
memberOf
default B memberOf(MemberRef... memberRef) throws CircularReferenceException
- Throws:
CircularReferenceException
-
memberOf
default B memberOf(@NonNull MediaObject media, Integer number) throws CircularReferenceException
- Throws:
CircularReferenceException
-
memberOf
default B memberOf(MediaObject media) throws CircularReferenceException
- Throws:
CircularReferenceException
-
memberOf
default B memberOf(String mid, Integer number) throws CircularReferenceException
- Throws:
CircularReferenceException
-
memberOf
default B memberOf(String mid) throws CircularReferenceException
- Throws:
CircularReferenceException
-
clearMemberOf
default B clearMemberOf()
-
ageRatingAllIfUnset
default B ageRatingAllIfUnset()
-
contentRatings
default B contentRatings(ContentRating... contentRatings)
-
clearWebsites
default B clearWebsites()
-
twitterRefs
default B twitterRefs(TwitterRef... twitter)
-
clearTwitterRefs
default B clearTwitterRefs()
-
clearLocations
default B clearLocations()
-
descendantOf
default B descendantOf(DescendantRef... refs) throws CircularReferenceException
This adds descendantOf's explicitely. The use cases for this are limited, a mediaobject basicly hasmemberOf(nl.vpro.domain.media.MemberRef...)
orMediaBuilder.AbstractProgramBuilder.episodeOf(String)
If your mediaobject is not going to be serialized to the database (e.g. in test cases) you might want to fill descendantof explicitely.- Throws:
CircularReferenceException
-
images
default B images(Image.Builder... images)
-
embeddable
default B embeddable(boolean isEmbeddable)
-
mergedTo
default B mergedTo(MediaObject media)
-
clearMergedTo
default B clearMergedTo()
-
video
default B video()
-
audio
default B audio()
-
audioOrVideo
default B audioOrVideo()
-
copy
B copy()
Makes a (deep) copy of this builder. This returns a new instance on which you can make changes without affecting the original one.
-
-