PipelineFactory
Date: 2016-04-28

org.apache.xmlgraphics.image.loader.pipeline

## Class PipelineFactory

- java.lang.Object
- - org.apache.xmlgraphics.image.loader.pipeline.PipelineFactory

-     public class PipelineFactory
      extends java.lang.Object

  Factory class for image processing pipelines.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected static org.apache.commons.logging.Log` | `log` logger

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `PipelineFactory(ImageManager manager)` Main constructor.

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `ImageProviderPipeline[]` | `determineCandidatePipelines(Image sourceImage, ImageFlavor[] flavors)` Finds and returns an array of `ImageProviderPipeline` instances which can handle the convert the given `Image` and return one of the given `ImageFlavor`s.
    `ImageProviderPipeline[]` | `determineCandidatePipelines(ImageInfo imageInfo, ImageFlavor targetFlavor)` Determines all possible pipelines for the given image that can produce the requested target flavor.
    `ImageProviderPipeline[]` | `determineCandidatePipelines(ImageInfo imageInfo, ImageFlavor[] flavors)` Finds and returns an array of `ImageProviderPipeline` instances which can handle the given MIME type and return one of the given `ImageFlavor`s.
    `ImageProviderPipeline` | `newImageConverterPipeline(Image originalImage, ImageFlavor targetFlavor)` Creates and returns an `ImageProviderPipeline` that allows to load an image of the given MIME type and present it in the requested image flavor.
    `ImageProviderPipeline` | `newImageConverterPipeline(ImageInfo imageInfo, ImageFlavor targetFlavor)` Creates and returns an `ImageProviderPipeline` that allows to load an image of the given MIME type and present it in the requested image flavor.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### log

          protected static final org.apache.commons.logging.Log log

      logger

  - ### Constructor Detail

    - #### PipelineFactory

          public PipelineFactory(ImageManager manager)

      Main constructor.
      Parameters:
        `manager` - the ImageManager instance

  - ### Method Detail

    - #### newImageConverterPipeline

          public ImageProviderPipeline newImageConverterPipeline(Image originalImage,
                                                        ImageFlavor targetFlavor)

      Creates and returns an `ImageProviderPipeline` that allows to load an image of the given MIME type and present it in the requested image flavor.
      Parameters:
        `originalImage` - the original image that serves as the origin point of the conversion
        `targetFlavor` - the requested image flavor
      Returns:
        an `ImageProviderPipeline` or null if no suitable pipeline could be assembled

    - #### newImageConverterPipeline

          public ImageProviderPipeline newImageConverterPipeline(ImageInfo imageInfo,
                                                        ImageFlavor targetFlavor)

      Creates and returns an `ImageProviderPipeline` that allows to load an image of the given MIME type and present it in the requested image flavor.
      Parameters:
        `imageInfo` - the image info object of the original image
        `targetFlavor` - the requested image flavor
      Returns:
        an `ImageProviderPipeline` or null if no suitable pipeline could be assembled

    - #### determineCandidatePipelines

          public ImageProviderPipeline[] determineCandidatePipelines(ImageInfo imageInfo,
                                                            ImageFlavor targetFlavor)

      Determines all possible pipelines for the given image that can produce the requested target flavor.
      Parameters:
        `imageInfo` - the image information
        `targetFlavor` - the target flavor
      Returns:
        the candidate pipelines

    - #### determineCandidatePipelines

          public ImageProviderPipeline[] determineCandidatePipelines(ImageInfo imageInfo,
                                                            ImageFlavor[] flavors)

      Finds and returns an array of `ImageProviderPipeline` instances which can handle the given MIME type and return one of the given `ImageFlavor`s.
      Parameters:
        `imageInfo` - the image info object
        `flavors` - the possible target flavors
      Returns:
        an array of pipelines

    - #### determineCandidatePipelines

          public ImageProviderPipeline[] determineCandidatePipelines(Image sourceImage,
                                                            ImageFlavor[] flavors)

      Finds and returns an array of `ImageProviderPipeline` instances which can handle the convert the given `Image` and return one of the given `ImageFlavor`s.
      Parameters:
        `sourceImage` - the image to be converted
        `flavors` - the possible target flavors
      Returns:
        an array of pipelines