Interface MediaFilterService

  • All Known Implementing Classes:
    MediaFilterServiceImpl

    public interface MediaFilterService
    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.
    • Method Detail

      • filterItem

        boolean filterItem​(Context context,
                           Item myItem)
                    throws Exception
        Iterate through the item's bitstreams in the ORIGINAL bundle, applying filters if possible.
        Parameters:
        context - context
        myItem - item
        Returns:
        true if any bitstreams processed, false if none
        Throws:
        Exception - if error
      • filterBitstream

        boolean filterBitstream​(Context c,
                                Item myItem,
                                Bitstream myBitstream)
                         throws Exception
        Attempt 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.
        Parameters:
        c - context
        myItem - item
        myBitstream - bitstream
        Returns:
        true if bitstream processed, false if no applicable filter or already processed
        Throws:
        Exception - if error
      • processBitstream

        boolean processBitstream​(Context context,
                                 Item item,
                                 Bitstream source,
                                 FormatFilter formatFilter)
                          throws Exception
        A 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.
        Parameters:
        context - context
        item - item containing bitstream to process
        source - source bitstream to process
        formatFilter - 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
      • getCurrentItem

        Item getCurrentItem()
        Return 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.

        Returns:
        current Item being processed by MediaFilterManager
      • inSkipList

        boolean inSkipList​(String identifier)
        Check whether or not to skip processing the given identifier.
        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

        void setVerbose​(boolean isVerbose)
      • setQuiet

        void setQuiet​(boolean isQuiet)
      • setForce

        void setForce​(boolean isForce)
      • setMax2Process

        void setMax2Process​(int max2Process)
      • setSkipList

        void setSkipList​(List<String> skipList)