Class AssetManagerImpl

java.lang.Object
org.opencastproject.elasticsearch.index.rebuild.AbstractIndexProducer
org.opencastproject.assetmanager.impl.AssetManagerImpl
All Implemented Interfaces:
org.opencastproject.assetmanager.api.AssetManager, AbstractADeleteQuery.DeleteEpisodeHandler, org.opencastproject.elasticsearch.index.rebuild.IndexProducer

public class AssetManagerImpl extends org.opencastproject.elasticsearch.index.rebuild.AbstractIndexProducer implements org.opencastproject.assetmanager.api.AssetManager, AbstractADeleteQuery.DeleteEpisodeHandler
The Asset Manager implementation.
  • Field Details

  • Constructor Details

    • AssetManagerImpl

      public AssetManagerImpl()
  • Method Details

    • activate

      public void activate(org.osgi.service.component.ComponentContext cc)
      OSGi callback.
    • setEntityManagerFactory

      public void setEntityManagerFactory(javax.persistence.EntityManagerFactory emf)
      OSGi dependencies
    • setDBSessionFactory

      public void setDBSessionFactory(org.opencastproject.db.DBSessionFactory dbSessionFactory)
    • setSecurityService

      public void setSecurityService(org.opencastproject.security.api.SecurityService securityService)
    • setAuthorizationService

      public void setAuthorizationService(org.opencastproject.security.api.AuthorizationService authorizationService)
    • setOrgDir

      public void setOrgDir(org.opencastproject.security.api.OrganizationDirectoryService orgDir)
    • setWorkspace

      public void setWorkspace(org.opencastproject.workspace.api.Workspace workspace)
    • setAssetStore

      public void setAssetStore(org.opencastproject.assetmanager.api.storage.AssetStore assetStore)
    • addEventHandler

      public void addEventHandler(org.opencastproject.message.broker.api.update.AssetManagerUpdateHandler handler)
    • removeEventHandler

      public void removeEventHandler(org.opencastproject.message.broker.api.update.AssetManagerUpdateHandler handler)
    • addRemoteAssetStore

      public void addRemoteAssetStore(org.opencastproject.assetmanager.api.storage.RemoteAssetStore assetStore)
    • removeRemoteAssetStore

      public void removeRemoteAssetStore(org.opencastproject.assetmanager.api.storage.RemoteAssetStore store)
    • setHttpAssetProvider

      public void setHttpAssetProvider(HttpAssetProvider httpAssetProvider)
    • setAclServiceFactory

      public void setAclServiceFactory(org.opencastproject.authorization.xacml.manager.api.AclServiceFactory aclServiceFactory)
    • setIndex

      public void setIndex(org.opencastproject.elasticsearch.index.ElasticsearchIndex index)
    • addCatalogUIAdapter

      public void addCatalogUIAdapter(org.opencastproject.metadata.dublincore.EventCatalogUIAdapter catalogUIAdapter)
    • removeCatalogUIAdapter

      public void removeCatalogUIAdapter(org.opencastproject.metadata.dublincore.EventCatalogUIAdapter catalogUIAdapter)
    • getMediaPackage

      public Optional<org.opencastproject.mediapackage.MediaPackage> getMediaPackage(String mediaPackageId)
      AssetManager implementation
      Specified by:
      getMediaPackage in interface org.opencastproject.assetmanager.api.AssetManager
    • getAsset

      public Optional<org.opencastproject.assetmanager.api.Asset> getAsset(org.opencastproject.assetmanager.api.Version version, String mpId, String mpElementId)
      Specified by:
      getAsset in interface org.opencastproject.assetmanager.api.AssetManager
    • getAssetStore

      public Optional<org.opencastproject.assetmanager.api.storage.AssetStore> getAssetStore(String storeId)
      Specified by:
      getAssetStore in interface org.opencastproject.assetmanager.api.AssetManager
    • getLocalAssetStore

      public org.opencastproject.assetmanager.api.storage.AssetStore getLocalAssetStore()
      Specified by:
      getLocalAssetStore in interface org.opencastproject.assetmanager.api.AssetManager
    • getRemoteAssetStores

      public List<org.opencastproject.assetmanager.api.storage.AssetStore> getRemoteAssetStores()
      Specified by:
      getRemoteAssetStores in interface org.opencastproject.assetmanager.api.AssetManager
    • snapshotExists

      public boolean snapshotExists(String mediaPackageId)
      Snapshots
      Specified by:
      snapshotExists in interface org.opencastproject.assetmanager.api.AssetManager
    • snapshotExists

      public boolean snapshotExists(String mediaPackageId, String organization)
      Specified by:
      snapshotExists in interface org.opencastproject.assetmanager.api.AssetManager
    • takeSnapshot

      public org.opencastproject.assetmanager.api.Snapshot takeSnapshot(org.opencastproject.mediapackage.MediaPackage mp)
      Specified by:
      takeSnapshot in interface org.opencastproject.assetmanager.api.AssetManager
    • takeSnapshot

      public org.opencastproject.assetmanager.api.Snapshot takeSnapshot(String owner, org.opencastproject.mediapackage.MediaPackage mp)
      Specified by:
      takeSnapshot in interface org.opencastproject.assetmanager.api.AssetManager
    • triggerIndexUpdate

      public void triggerIndexUpdate(String mediaPackageId) throws org.opencastproject.util.NotFoundException, org.opencastproject.security.api.UnauthorizedException
      Specified by:
      triggerIndexUpdate in interface org.opencastproject.assetmanager.api.AssetManager
      Throws:
      org.opencastproject.util.NotFoundException
      org.opencastproject.security.api.UnauthorizedException
    • getSnapshotsById

      public org.opencastproject.assetmanager.api.query.RichAResult getSnapshotsById(String mpId)
      Specified by:
      getSnapshotsById in interface org.opencastproject.assetmanager.api.AssetManager
    • getSnapshotsByIdOrderedByVersion

      public org.opencastproject.assetmanager.api.query.RichAResult getSnapshotsByIdOrderedByVersion(String mpId, boolean asc)
      Specified by:
      getSnapshotsByIdOrderedByVersion in interface org.opencastproject.assetmanager.api.AssetManager
    • getSnapshotsByIdAndVersion

      public org.opencastproject.assetmanager.api.query.RichAResult getSnapshotsByIdAndVersion(String mpId, org.opencastproject.assetmanager.api.Version version)
      Specified by:
      getSnapshotsByIdAndVersion in interface org.opencastproject.assetmanager.api.AssetManager
    • getSnapshotsByDate

      public org.opencastproject.assetmanager.api.query.RichAResult getSnapshotsByDate(Date start, Date end)
      Specified by:
      getSnapshotsByDate in interface org.opencastproject.assetmanager.api.AssetManager
    • getSnapshotsByDateOrderedById

      public org.opencastproject.assetmanager.api.query.RichAResult getSnapshotsByDateOrderedById(Date start, Date end)
      Specified by:
      getSnapshotsByDateOrderedById in interface org.opencastproject.assetmanager.api.AssetManager
    • getSnapshotsByIdAndDate

      public org.opencastproject.assetmanager.api.query.RichAResult getSnapshotsByIdAndDate(String mpId, Date start, Date end)
      Specified by:
      getSnapshotsByIdAndDate in interface org.opencastproject.assetmanager.api.AssetManager
    • getSnapshotsByIdAndDateOrderedByVersion

      public org.opencastproject.assetmanager.api.query.RichAResult getSnapshotsByIdAndDateOrderedByVersion(String mpId, Date start, Date end, boolean asc)
      Specified by:
      getSnapshotsByIdAndDateOrderedByVersion in interface org.opencastproject.assetmanager.api.AssetManager
    • moveSnapshotsById

      public void moveSnapshotsById(String mpId, String targetStore) throws org.opencastproject.util.NotFoundException
      Specified by:
      moveSnapshotsById in interface org.opencastproject.assetmanager.api.AssetManager
      Throws:
      org.opencastproject.util.NotFoundException
    • moveSnapshotsByIdAndVersion

      public void moveSnapshotsByIdAndVersion(String mpId, org.opencastproject.assetmanager.api.Version version, String targetStore) throws org.opencastproject.util.NotFoundException
      Specified by:
      moveSnapshotsByIdAndVersion in interface org.opencastproject.assetmanager.api.AssetManager
      Throws:
      org.opencastproject.util.NotFoundException
    • moveSnapshotsByDate

      public void moveSnapshotsByDate(Date start, Date end, String targetStore) throws org.opencastproject.util.NotFoundException
      Specified by:
      moveSnapshotsByDate in interface org.opencastproject.assetmanager.api.AssetManager
      Throws:
      org.opencastproject.util.NotFoundException
    • moveSnapshotsByIdAndDate

      public void moveSnapshotsByIdAndDate(String mpId, Date start, Date end, String targetStore) throws org.opencastproject.util.NotFoundException
      Specified by:
      moveSnapshotsByIdAndDate in interface org.opencastproject.assetmanager.api.AssetManager
      Throws:
      org.opencastproject.util.NotFoundException
    • moveSnapshotToStore

      public void moveSnapshotToStore(org.opencastproject.assetmanager.api.Version version, String mpId, String storeId) throws org.opencastproject.util.NotFoundException
      Specified by:
      moveSnapshotToStore in interface org.opencastproject.assetmanager.api.AssetManager
      Throws:
      org.opencastproject.util.NotFoundException
    • getSnapshotStorageLocation

      public Optional<String> getSnapshotStorageLocation(org.opencastproject.assetmanager.api.Version version, String mpId)
    • getSnapshotStorageLocation

      public Optional<String> getSnapshotStorageLocation(org.opencastproject.assetmanager.api.Snapshot snap)
    • setProperty

      public boolean setProperty(org.opencastproject.assetmanager.api.Property property)
      Properties
      Specified by:
      setProperty in interface org.opencastproject.assetmanager.api.AssetManager
    • selectProperties

      public List<org.opencastproject.assetmanager.api.Property> selectProperties(String mediaPackageId, String namespace)
      Specified by:
      selectProperties in interface org.opencastproject.assetmanager.api.AssetManager
    • deleteProperties

      public int deleteProperties(String mediaPackageId)
      Specified by:
      deleteProperties in interface org.opencastproject.assetmanager.api.AssetManager
    • deleteProperties

      public int deleteProperties(String mediaPackageId, String namespace)
      Specified by:
      deleteProperties in interface org.opencastproject.assetmanager.api.AssetManager
    • createQuery

      public org.opencastproject.assetmanager.api.query.AQueryBuilder createQuery()
      Misc.
      Specified by:
      createQuery in interface org.opencastproject.assetmanager.api.AssetManager
    • toVersion

      public Optional<org.opencastproject.assetmanager.api.Version> toVersion(String version)
      Specified by:
      toVersion in interface org.opencastproject.assetmanager.api.AssetManager
    • countEvents

      public long countEvents(String organization)
      Specified by:
      countEvents in interface org.opencastproject.assetmanager.api.AssetManager
    • handleDeletedEpisode

      public void handleDeletedEpisode(String mpId)
      Specified by:
      handleDeletedEpisode in interface AbstractADeleteQuery.DeleteEpisodeHandler
    • getService

      public org.opencastproject.elasticsearch.index.rebuild.IndexRebuildService.Service getService()
      AbstractIndexProducer Implementation
      Specified by:
      getService in interface org.opencastproject.elasticsearch.index.rebuild.IndexProducer
    • getSupportedDataTypes

      public org.opencastproject.elasticsearch.index.rebuild.IndexRebuildService.DataType[] getSupportedDataTypes()
      Specified by:
      getSupportedDataTypes in interface org.opencastproject.elasticsearch.index.rebuild.IndexProducer
    • repopulate

      public void repopulate(org.opencastproject.elasticsearch.index.rebuild.IndexRebuildService.DataType dataType) throws org.opencastproject.elasticsearch.index.rebuild.IndexRebuildException
      Specified by:
      repopulate in interface org.opencastproject.elasticsearch.index.rebuild.IndexProducer
      Throws:
      org.opencastproject.elasticsearch.index.rebuild.IndexRebuildException
    • setAvailability

      public void setAvailability(org.opencastproject.assetmanager.api.Version version, String mpId, org.opencastproject.assetmanager.api.Availability availability)
      Used for testing
    • setDatabase

      public void setDatabase(Database database)
    • getDatabase

      public Database getDatabase()
    • getHttpAssetProvider

      public HttpAssetProvider getHttpAssetProvider()
    • getFileNameFromUrn

      public static Optional<String> getFileNameFromUrn(org.opencastproject.mediapackage.MediaPackageElement mpe)
      Extract the file name from a media package elements URN.
      Returns:
      the file name or none if it could not be determined
    • rewriteUris

      public static org.opencastproject.assetmanager.api.Snapshot rewriteUris(org.opencastproject.assetmanager.api.Snapshot snapshot, com.entwinemedia.fn.Fn<org.opencastproject.mediapackage.MediaPackageElement,URI> uriCreator)
      Rewrite URIs of all asset elements of a snapshot's media package. This method does not mutate anything.
    • fireEventHandlers

      public void fireEventHandlers(org.opencastproject.message.broker.api.assetmanager.AssetManagerItem item)