Class VinciBinaryAnalysisEngineService_impl

java.lang.Object
org.apache.vinci.transport.VinciServableAdapter
org.apache.uima.adapter.vinci.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 Details

    • _server

      private VinciServer _server
      The server.
    • mAE

      private AnalysisEngine mAE
      The m AE.
    • 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 Details

    • VinciBinaryAnalysisEngineService_impl

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

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

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

    • getMetaData

      private Frame getMetaData() throws Exception
      Extracts AE metadata.
      Returns:
      Frame containing extracted meta data
      Throws:
      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(String[] args)
      The main method.
      Parameters:
      args - the arguments
    • redirectLoggerOutput

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

      public Transportable makeTransportable()
      Make transportable.
      Specified by:
      makeTransportable in interface TransportableFactory
      Overrides:
      makeTransportable in class VinciServableAdapter
      Returns:
      the transportable
      See Also: