Package org.dspace.app.mediafilter
Class MediaFilterServiceImpl
java.lang.Object
org.dspace.app.mediafilter.MediaFilterServiceImpl
- All Implemented Interfaces:
MediaFilterService,InitializingBean
MediaFilterManager is the class that invokes the media/format filters over the
repository's content. A few command line flags affect the operation of the
MFM: -v verbose outputs all extracted text to STDOUT; -f force forces all
bitstreams to be processed, even if they have been before; -n noindex does not
recreate index after processing bitstreams; -i [identifier] limits processing
scope to a community, collection or item; and -m [max] limits processing to a
maximum number of items.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected AuthorizeServiceprotected BitstreamFormatServiceprotected BitstreamServiceprotected BundleServiceprotected CollectionServiceprotected CommunityServiceprotected ConfigurationServiceprotected Itemprotected List<FormatFilter>protected LocalDateprotected GroupServiceprotected DSpaceRunnableHandlerprotected booleanprotected booleanprotected booleanprotected ItemServiceprotected intprotected intFields inherited from interface org.dspace.app.mediafilter.service.MediaFilterService
FILTER_PLUGIN_SEPARATOR -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidvoidapplyFiltersAllItems(Context context) voidapplyFiltersCollection(Context context, Collection collection) voidapplyFiltersCommunity(Context context, Community community) voidapplyFiltersItem(Context c, Item item) booleanfilterBitstream(Context context, Item myItem, Bitstream myBitstream) Attempt to filter a bitstream.booleanfilterItem(Context context, Item myItem) Iterate through the item's bitstreams in the ORIGINAL bundle, applying filters if possible.Return the item that is currently being processed/filtered by the MediaFilterManager.booleaninSkipList(String identifier) Check whether or not to skip processing the given identifier.booleanprocessBitstream(Context context, Item item, Bitstream source, FormatFilter formatFilter) A utility class that calls the virtual methods from the current MediaFilter class.voidsetFilterClasses(List<FormatFilter> filterClasses) voidsetFilterFormats(Map<String, List<String>> filterFormats) voidsetForce(boolean isForce) voidsetFromDate(LocalDate fromDate) voidsetLogHandler(DSpaceRunnableHandler handler) Set the log handler used in the DSpace scripts and processes frameworkvoidsetMax2Process(int max2Process) voidsetQuiet(boolean isQuiet) voidsetSkipList(List<String> skipList) voidsetVerbose(boolean isVerbose) voidupdatePoliciesOfDerivativeBitstreams(Context context, Item item, Bitstream source) update resource polices of derivative bitstreams related to source bitstream.
-
Field Details
-
authorizeService
-
bitstreamFormatService
-
bitstreamService
-
bundleService
-
collectionService
-
communityService
-
groupService
-
itemService
-
configurationService
-
handler
-
max2Process
protected int max2Process -
processed
protected int processed -
currentItem
-
filterClasses
-
filterFormats
-
skipList
-
publicFiltersClasses
-
isVerbose
protected boolean isVerbose -
isQuiet
protected boolean isQuiet -
isForce
protected boolean isForce -
fromDate
-
-
Constructor Details
-
MediaFilterServiceImpl
protected MediaFilterServiceImpl()
-
-
Method Details
-
afterPropertiesSet
- Specified by:
afterPropertiesSetin interfaceInitializingBean- Throws:
Exception
-
applyFiltersAllItems
- Specified by:
applyFiltersAllItemsin interfaceMediaFilterService- Throws:
Exception
-
applyFiltersCommunity
- Specified by:
applyFiltersCommunityin interfaceMediaFilterService- Throws:
Exception
-
applyFiltersCollection
- Specified by:
applyFiltersCollectionin interfaceMediaFilterService- Throws:
Exception
-
applyFiltersItem
- Specified by:
applyFiltersItemin interfaceMediaFilterService- Throws:
Exception
-
filterItem
Description copied from interface:MediaFilterServiceIterate through the item's bitstreams in the ORIGINAL bundle, applying filters if possible.- Specified by:
filterItemin interfaceMediaFilterService- Parameters:
context- contextmyItem- item- Returns:
- true if any bitstreams processed, false if none
- Throws:
Exception- if error
-
filterBitstream
public boolean filterBitstream(Context context, Item myItem, Bitstream myBitstream) throws Exception Description copied from interface:MediaFilterServiceAttempt to filter a bitstream. An exception will be thrown if the media filter class cannot be instantiated. Exceptions from filtering will be logged to STDOUT and swallowed.- Specified by:
filterBitstreamin interfaceMediaFilterService- Parameters:
context- contextmyItem- itemmyBitstream- bitstream- Returns:
- true if bitstream processed, false if no applicable filter or already processed
- Throws:
Exception- if error
-
processBitstream
public boolean processBitstream(Context context, Item item, Bitstream source, FormatFilter formatFilter) throws Exception Description copied from interface:MediaFilterServiceA utility class that calls the virtual methods from the current MediaFilter class. It scans the bitstreams in an item, and decides if a bitstream has already been filtered, and if not or if overWrite is set, invokes the filter.- Specified by:
processBitstreamin interfaceMediaFilterService- Parameters:
context- contextitem- item containing bitstream to processsource- source bitstream to processformatFilter- FormatFilter to perform filtering- Returns:
- true if new rendition is created, false if rendition already exists and overWrite is not set
- Throws:
Exception- if error occurs
-
updatePoliciesOfDerivativeBitstreams
public void updatePoliciesOfDerivativeBitstreams(Context context, Item item, Bitstream source) throws SQLException, AuthorizeException Description copied from interface:MediaFilterServiceupdate resource polices of derivative bitstreams related to source bitstream. set derivative bitstreams to be publicly accessible or replace derivative bitstreams policies using the same in the source bitstream.- Specified by:
updatePoliciesOfDerivativeBitstreamsin interfaceMediaFilterService- Parameters:
context- contextitem- item containing bitstreamssource- source bitstream- Throws:
SQLException- If something goes wrong in the databaseAuthorizeException- if authorization error
-
getCurrentItem
Description copied from interface:MediaFilterServiceReturn the item that is currently being processed/filtered by the MediaFilterManager.This allows FormatFilters to retrieve the Item object in case they need access to item-level information for their format transformations/conversions.
- Specified by:
getCurrentItemin interfaceMediaFilterService- Returns:
- current Item being processed by MediaFilterManager
-
inSkipList
Description copied from interface:MediaFilterServiceCheck whether or not to skip processing the given identifier.- Specified by:
inSkipListin interfaceMediaFilterService- Parameters:
identifier- identifier (handle) of a community, collection or item- Returns:
- true if this community, collection or item should be skipped during processing. Otherwise, return false.
-
setVerbose
public void setVerbose(boolean isVerbose) - Specified by:
setVerbosein interfaceMediaFilterService
-
setQuiet
public void setQuiet(boolean isQuiet) - Specified by:
setQuietin interfaceMediaFilterService
-
setForce
public void setForce(boolean isForce) - Specified by:
setForcein interfaceMediaFilterService
-
setMax2Process
public void setMax2Process(int max2Process) - Specified by:
setMax2Processin interfaceMediaFilterService
-
setFilterClasses
- Specified by:
setFilterClassesin interfaceMediaFilterService
-
setSkipList
- Specified by:
setSkipListin interfaceMediaFilterService
-
setFilterFormats
- Specified by:
setFilterFormatsin interfaceMediaFilterService
-
setLogHandler
Description copied from interface:MediaFilterServiceSet the log handler used in the DSpace scripts and processes framework- Specified by:
setLogHandlerin interfaceMediaFilterService
-
setFromDate
- Specified by:
setFromDatein interfaceMediaFilterService
-