Class VinciBinaryAnalysisEngineService_impl

  • All Implemented Interfaces:
    TransportableFactory, VinciServable

    public class VinciBinaryAnalysisEngineService_impl
    extends VinciServableAdapter
    Main class for a Vinci Analysis Engine service that uses the binary CAS serialization, rather than XCAS. This class can also be used to deploy CAS Consumers as Vinci Services. The main method takes one argument - the path to the service deployment descriptor.
    • Field Detail

      • mCasPool

        private CasPool mCasPool
        The m cas pool.
      • descriptor

        private Descriptor descriptor
        The descriptor.
      • debug

        private boolean debug
        The debug.
      • serviceInstanceId

        private int serviceInstanceId
        The service instance id.
    • Constructor Detail

      • VinciBinaryAnalysisEngineService_impl

        public VinciBinaryAnalysisEngineService_impl​(java.lang.String serviceConfigPath,
                                                     boolean debug,
                                                     java.lang.String instanceId)
                                              throws java.lang.Exception
        Instantiate Analysis Engine from a given descriptor - possibly in debug mode.
        Parameters:
        serviceConfigPath - descriptor location
        debug - the debug
        instanceId - the instance id
        Throws:
        java.lang.Exception - the exception
      • VinciBinaryAnalysisEngineService_impl

        public VinciBinaryAnalysisEngineService_impl​(java.lang.String serviceConfigPath,
                                                     boolean debug)
                                              throws java.lang.Exception
        Instantiate Analysis Engine from a given descriptor - possibly in debug mode.
        Parameters:
        serviceConfigPath - descriptor location
        debug - the debug
        Throws:
        java.lang.Exception - the exception
      • VinciBinaryAnalysisEngineService_impl

        public VinciBinaryAnalysisEngineService_impl​(java.lang.String serviceConfigPath)
                                              throws java.lang.Exception
        Instantiate Analysis Engine from a given descriptor.
        Parameters:
        serviceConfigPath - descriptor location
        Throws:
        java.lang.Exception - the exception
    • Method Detail

      • getMetaData

        private Frame getMetaData()
                           throws java.lang.Exception
        Extracts AE metadata.
        Returns:
        Frame containing extracted meta data
        Throws:
        java.lang.Exception - the exception
      • getDescriptor

        public Descriptor getDescriptor()
        Gets the descriptor.
        Returns:
        the descriptor
      • analyze

        private Transportable analyze​(AFrame aRequestFrame)
                               throws ServiceException
        Analyzes a given document by a CasObjectProcessor. When completed this method returns a VinciFrame containing XCAS translated into a set of Vinci subFrames. Each subframe containing one annotation with all its attributes.
        Parameters:
        aRequestFrame - request frame
        Returns:
        VinciFrame containing XCAS translated into a set of Vinci subframes.
        Throws:
        ServiceException - the service exception
      • eval

        public Transportable eval​(Transportable doc)
                           throws ServiceException
        Main method called by the Vinci Service Layer. All requests coming in from clients go through this method. Each request comes in as a VinciFrame and is expected to contain a valid VINCI:COMMAND. Currently, two such operations are supported: 1) Annotate - triggers document analysis 2) GetData - triggers return of the AE meta data ( descriptor)
        Specified by:
        eval in interface VinciServable
        Specified by:
        eval in class VinciServableAdapter
        Parameters:
        doc - Transportable - a VinciFrame containing client request
        Returns:
        Transportable - a VinciFrame containg result of performing the service
        Throws:
        ServiceException - the service exception
      • start

        protected void start()
        Starts this service and associates a ShutdownHook to handle gracefull shutdown.
      • stop

        public void stop()
        Terminate this service.
      • main

        public static void main​(java.lang.String[] args)
        The main method.
        Parameters:
        args - the arguments
      • redirectLoggerOutput

        private static void redirectLoggerOutput​(java.io.OutputStream out)
        Redirects all logger output for this JVM to the given output stream.
        Parameters:
        out - the out