Interface OaiPmhPublicationService
public interface OaiPmhPublicationService
Publishes elements from MediaPackages to OAI-PMH.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringIdentifier for service registration and locationstatic final StringThe Opencast publication channel id is created from the OAI-PMH channel name prefixed by thePUBLICATION_CHANNEL_PREFIX.static final StringSeparator used to separate strings when serializing arrays of strings. -
Method Summary
Modifier and TypeMethodDescriptionorg.opencastproject.job.api.Jobpublish(org.opencastproject.mediapackage.MediaPackage mediaPackage, String repository, Set<String> downloadElementIds, Set<String> streamingElementIds, boolean checkAvailability) Publishes some media package elements.org.opencastproject.job.api.Jobreplace(org.opencastproject.mediapackage.MediaPackage mediaPackage, String repository, Set<? extends org.opencastproject.mediapackage.MediaPackageElement> downloadElements, Set<? extends org.opencastproject.mediapackage.MediaPackageElement> streamingElements, Set<org.opencastproject.mediapackage.MediaPackageElementFlavor> retractDownloadFlavors, Set<org.opencastproject.mediapackage.MediaPackageElementFlavor> retractStreamingFlavors, Set<? extends org.opencastproject.mediapackage.Publication> publications, boolean checkAvailability) Updates the given media package in the Oai-Pmh storage incrementally, i.e. without retracting the whole media package.org.opencastproject.mediapackage.PublicationreplaceSync(org.opencastproject.mediapackage.MediaPackage mediaPackage, String repository, Set<? extends org.opencastproject.mediapackage.MediaPackageElement> downloadElements, Set<? extends org.opencastproject.mediapackage.MediaPackageElement> streamingElements, Set<org.opencastproject.mediapackage.MediaPackageElementFlavor> retractDownloadFlavors, Set<org.opencastproject.mediapackage.MediaPackageElementFlavor> retractStreamingFlavors, Set<? extends org.opencastproject.mediapackage.Publication> publications, boolean checkAvailability) Synchronously updates the given media package in the Oai-Pmh storage incrementally, i.e. without retracting the whole media package.org.opencastproject.job.api.JobRetract a media package from the publication channel.org.opencastproject.job.api.JobupdateMetadata(org.opencastproject.mediapackage.MediaPackage mediaPackage, String repository, Set<String> flavors, Set<String> tags, boolean checkAvailability) Update all media package elements that match the flavors and tags.
-
Field Details
-
JOB_TYPE
Identifier for service registration and location- See Also:
-
PUBLICATION_CHANNEL_PREFIX
The Opencast publication channel id is created from the OAI-PMH channel name prefixed by thePUBLICATION_CHANNEL_PREFIX.- See Also:
-
SEPARATOR
Separator used to separate strings when serializing arrays of strings.- See Also:
-
-
Method Details
-
publish
org.opencastproject.job.api.Job publish(org.opencastproject.mediapackage.MediaPackage mediaPackage, String repository, Set<String> downloadElementIds, Set<String> streamingElementIds, boolean checkAvailability) throws PublicationException, org.opencastproject.mediapackage.MediaPackageException Publishes some media package elements.- Parameters:
mediaPackage- the media packagerepository- the OAI-PMH repositorydownloadElementIds- the download element ids to publishstreamingElementIds- the streaming element ids to publishcheckAvailability- whether to check the distributed download artifacts are available at its URL- Returns:
- The job
- Throws:
PublicationException- if there was a problem publishing the mediaorg.opencastproject.mediapackage.MediaPackageException- if there was a problem with the mediapackage element
-
replace
org.opencastproject.job.api.Job replace(org.opencastproject.mediapackage.MediaPackage mediaPackage, String repository, Set<? extends org.opencastproject.mediapackage.MediaPackageElement> downloadElements, Set<? extends org.opencastproject.mediapackage.MediaPackageElement> streamingElements, Set<org.opencastproject.mediapackage.MediaPackageElementFlavor> retractDownloadFlavors, Set<org.opencastproject.mediapackage.MediaPackageElementFlavor> retractStreamingFlavors, Set<? extends org.opencastproject.mediapackage.Publication> publications, boolean checkAvailability) throws PublicationException Updates the given media package in the Oai-Pmh storage incrementally, i.e. without retracting the whole media package.- Parameters:
mediaPackage- The media package to publish the element forrepository- The OAI-PMH repositorydownloadElements- the download elements to publishstreamingElements- the streaming elements to publishretractDownloadFlavors- flavors to use to search for download elements to retract.retractStreamingFlavors- flavors to use to search for streaming elements to retract.publications- the publications to updatecheckAvailability- whether to check the distributed download artifacts are available at their URLs- Returns:
- The job which performs the operation (The job payload will hold the publication with the updated media package).
- Throws:
PublicationException- if the job could not be created.
-
replaceSync
org.opencastproject.mediapackage.Publication replaceSync(org.opencastproject.mediapackage.MediaPackage mediaPackage, String repository, Set<? extends org.opencastproject.mediapackage.MediaPackageElement> downloadElements, Set<? extends org.opencastproject.mediapackage.MediaPackageElement> streamingElements, Set<org.opencastproject.mediapackage.MediaPackageElementFlavor> retractDownloadFlavors, Set<org.opencastproject.mediapackage.MediaPackageElementFlavor> retractStreamingFlavors, Set<? extends org.opencastproject.mediapackage.Publication> publications, boolean checkAvailability) throws PublicationException, org.opencastproject.mediapackage.MediaPackageException Synchronously updates the given media package in the Oai-Pmh storage incrementally, i.e. without retracting the whole media package.- Parameters:
mediaPackage- The media package to publish the element forrepository- The OAI-PMH repositorydownloadElements- the download elements to publishstreamingElements- the streaming elements to publishretractDownloadFlavors- flavors to use to search for download elements to retract.retractStreamingFlavors- flavors to use to search for streaming elements to retract.publications- the publications to updatecheckAvailability- whether to check the distributed download artifacts are available at their URLs- Returns:
- The publication with the updated media package.
- Throws:
PublicationException- if the job could not be created.org.opencastproject.mediapackage.MediaPackageException- if distribution failed.
-
retract
org.opencastproject.job.api.Job retract(org.opencastproject.mediapackage.MediaPackage mediaPackage, String repository) throws PublicationException, org.opencastproject.util.NotFoundException Retract a media package from the publication channel.- Parameters:
mediaPackage- the media packagerepository- the OAI-PMH repository- Throws:
org.opencastproject.util.NotFoundException- if there was no mediapackage to retract from this channelPublicationException- if there was a problem retracting the mediapackage
-
updateMetadata
org.opencastproject.job.api.Job updateMetadata(org.opencastproject.mediapackage.MediaPackage mediaPackage, String repository, Set<String> flavors, Set<String> tags, boolean checkAvailability) throws PublicationException, org.opencastproject.mediapackage.MediaPackageException Update all media package elements that match the flavors and tags. Also update the media package in the given OAI-PMH repository.- Parameters:
mediaPackage- media package with updated elementsrepository- OAI-PMH repository where to update the media packageflavors- updated media package element flavorstags- updated media package element tagscheckAvailability- whether to check the distributed download artifacts are available at its URL- Returns:
- The job to update the media package
- Throws:
PublicationException- if there was a problem publishing the mediaorg.opencastproject.mediapackage.MediaPackageException- if there was a problem with the media package element
-