Class ContentTransformerRegistry


  • @AlfrescoPublicApi
    public class ContentTransformerRegistry
    extends java.lang.Object
    Holds and provides the most appropriate content transformer for a particular source and target mimetype transformation request.

    The transformers themselves are used to determine the applicability of a particular transformation.

    The actual selection of a transformer is done by the injected TransformerSelector.

    Author:
    Derek Hulley
    See Also:
    ContentTransformer
    • Constructor Detail

      • ContentTransformerRegistry

        public ContentTransformerRegistry​(TransformerSelector transformerSelector)
        Parameters:
        transformerSelector - Transformer selector
    • Method Detail

      • addTransformer

        public void addTransformer​(ContentTransformer transformer)
        Registers an individual transformer that can be queried to check for applicability.
        Parameters:
        transformer - a content transformer
      • addComponentTransformer

        public void addComponentTransformer​(ContentTransformer transformer)
        Records a transformer that can NOT be queried for applicability, but may be included as a component of complex transformers.
        Parameters:
        transformer - a content transformer
      • removeTransformer

        public void removeTransformer​(ContentTransformer transformer)
        Removes a dynamically created transformer.
        Parameters:
        transformer - to be removed.
      • getTransformers

        public java.util.List<ContentTransformer> getTransformers()
        Returns:
        a list of transformers that may be queried to check for applicability.
      • getAllTransformers

        public java.util.List<ContentTransformer> getAllTransformers()
        Returns:
        a list of all transformers, including those that only exist as a component of another transformer.
      • getTransformer

        public ContentTransformer getTransformer​(java.lang.String transformerName)
        Returns a transformer identified by name.
        Throws:
        java.lang.IllegalArgumentException - if transformerName is not found.
      • getTransformer

        public ContentTransformer getTransformer​(java.lang.String sourceMimetype,
                                                 java.lang.String targetMimetype,
                                                 TransformationOptions options)
        Deprecated.
        use overloaded version with sourceSize parameter.
      • getTransformer

        public ContentTransformer getTransformer​(java.lang.String sourceMimetype,
                                                 long sourceSize,
                                                 java.lang.String targetMimetype,
                                                 TransformationOptions options)
        Gets the best transformer possible. This is a combination of the most reliable and the most performant transformer.
      • getActiveTransformers

        public java.util.List<ContentTransformer> getActiveTransformers​(java.lang.String sourceMimetype,
                                                                        long sourceSize,
                                                                        java.lang.String targetMimetype,
                                                                        TransformationOptions options)
        Since:
        3.5