Class CPEFactory


  • public class CPEFactory
    extends java.lang.Object
    Component responsible for generating objects representing cpe descriptor configuration. Provides various ways to instantiate object model representing cpe configuration. In the simplest form it ingests an xml file (cpe descriptor), parses it and creates an object for every element in the xml file.

    Using objects representing configuration, this component creates CollectionReader CasInitializer, Analysis Engines, and Cas Consumers.

    In addition to creating object, this component provides read/write access to the object model allowing for dynamic or programmatic modifications. It facilitates plugging in existing CollectionReaders and CasProcessors.

    • Field Detail

      • casProcessorConfigMap

        public java.util.HashMap casProcessorConfigMap
    • Constructor Detail

      • CPEFactory

        public CPEFactory​(ResourceManager aResourceManager)
        Create a new CPEFactory on which we will later call parse(String) to parse a CPE descriptor.
    • Method Detail

      • parse

        public void parse​(java.lang.String aDescriptor)
                   throws java.lang.InstantiationException
        Creates an object representation for configuration in a given cpe descriptor file.
        Parameters:
        aDescriptor - - path to the descriptor
        Throws:
        java.lang.InstantiationException - -
      • parse

        public void parse​(java.io.InputStream aDescriptorStream)
                   throws java.lang.InstantiationException
        Creates an object representation for configuration in a given stream
        Parameters:
        aDescriptorStream - - stream containing cpe description
        Throws:
        java.lang.InstantiationException - -
      • parse

        public void parse()
        Creates an object representation from default cpe descriptor.
        Throws:
        UIMARuntimeException - wraps Exception
      • isDefinitionInstanceOf

        public boolean isDefinitionInstanceOf​(java.lang.Class aResourceClass,
                                              ResourceSpecifier resourceSpecifier,
                                              java.lang.String aDescriptor)
                                       throws ResourceConfigurationException
        Check if a class has appropriate type
        Parameters:
        aResourceClass - - class to check
        resourceSpecifier - - specifier containing expected type
        aDescriptor - - descriptor name
        Returns:
        true - if class matches type
        Throws:
        ResourceConfigurationException - -
      • produceCasDataConsumer

        public CasProcessor produceCasDataConsumer​(java.lang.Class aResourceClass,
                                                   ResourceSpecifier aSpecifier,
                                                   java.util.Map aAdditionalParams)
                                            throws ResourceInitializationException
        Instantiates CasData Consumer from a given class.
        Parameters:
        aResourceClass - - CasDataConsumer class
        aSpecifier - - specifier
        aAdditionalParams - - parameters used to initialize CasDataConsumer
        Returns:
        - instance of CasProcessor
        Throws:
        ResourceInitializationException - -
      • getSpecifier

        public ResourceSpecifier getSpecifier​(java.net.URL aDescriptorUrl)
                                       throws java.lang.Exception
        Instantiates a ResourceSpecifier from a given URL.
        Parameters:
        aDescriptorUrl - - URL of descriptor
        Returns:
        - ResourceSpecifier
        Throws:
        java.lang.Exception - -
      • getCPEConfig

        public CpeConfiguration getCPEConfig()
                                      throws java.lang.InstantiationException
        Returns an object containing global CPE configuration including:
        • Number of documents to process
        • Checkpoint configuration
        • id of the document begin processing
        Returns:
        Global CPE Configuration
        Throws:
        java.lang.InstantiationException
      • isDefault

        public boolean isDefault()
        Returns:
        true if the configuration is the default
      • getCpeDescriptor

        public CpeDescription getCpeDescriptor()
        Returns Cpe Descriptor
        Returns:
        the Cpe Descriptor
      • addCollectionReader

        public void addCollectionReader​(BaseCollectionReader collectionReader)
        Parameters:
        collectionReader - - collection reader to use by the CPM
      • getResourceManager

        public ResourceManager getResourceManager()
        Gets the ResourceManager that all components of this CPE should share.
        Returns:
        the resource manager