Class ExtractionPluginClient

java.lang.Object
org.hansken.plugin.extraction.runtime.grpc.client.ExtractionPluginClient
All Implemented Interfaces:
AutoCloseable, BaseExtractionPlugin, RemoteExtractionPlugin

public class ExtractionPluginClient extends Object implements RemoteExtractionPlugin, AutoCloseable
Client to connect to a running Extraction Plugin (server).

This client acts as a proxy between the clean API and an extraction plugin implementation that is served by a remote gRPC server.

Author:
Netherlands Forensic Institute
  • Constructor Details

    • ExtractionPluginClient

      public ExtractionPluginClient(String host, int port)
      Constructor for the Extraction Plugin client.

      During construction of this client object no actual connection is created, so if the server is not available on the provided host and port, no exception is thrown. Instead, an exception will be thrown each time a new info or process-method is invoked. In case the client has to fail early it should invoke pluginInfo() directly after constructing the client.

      There is no retry policy configured, for this, use ExtractionPluginClient(String, int, RetryPolicy).

      Parameters:
      host - Host where the extraction plugin server is running
      port - Port where the extraction plugin server is running on
    • ExtractionPluginClient

      public ExtractionPluginClient(String host, int port, RetryPolicy retryPolicy)
      Parameters:
      host - host where the extraction plugin server is running
      port - port where the extraction plugin server is running
      retryPolicy - the retry configuration policy to use, or null if no policy should be used
    • ExtractionPluginClient

      public ExtractionPluginClient(String target)
      Same as ExtractionPluginClient(String, int), but with a target string instead.
      Parameters:
      target - endpoint where the extraction plugin server is running
    • ExtractionPluginClient

      public ExtractionPluginClient(String target, RetryPolicy retryPolicy)
      Same as ExtractionPluginClient(String, RetryPolicy), but with a target string instead.
      Parameters:
      target - endpoint where the extraction plugin server is running
      retryPolicy - the retry configuration policy to use, or null if no policy should be used
    • ExtractionPluginClient

      public ExtractionPluginClient(String target, RetryPolicy retryPolicy, String pluginId)
      Same as ExtractionPluginClient(String, RetryPolicy), but with a pluginId parameter for routing.
      Parameters:
      target - endpoint where the extraction plugin server is running
      retryPolicy - the retry configuration policy to use, or null if no policy should be used
      pluginId - the id of the plugin, which is set in the header, for routing purposes
  • Method Details