Interface CommunicationService<I1,O1,I2,O2>

Type Parameters:
I1 - The type of the skeleton communication pipe input.
O1 - The type of the expected skeleton communication pipe output.
I2 - The type of the stub communication pipe input.
O2 - The type of the expected stub communication pipe output.
All Superinterfaces:
ADEPT2Service, ConfigurableService
All Known Subinterfaces:
MappingCommService<I1,O1,I2,O2>

public interface CommunicationService<I1,O1,I2,O2> extends ConfigurableService
This communication service provides all the technically necessary to do both remote calls to remote services or remote callback objects and to publish remote services itself. The communication service represents a single type of communication, for example SOAP over HTTP or the InvocationMessage over TCP/IP (specially developed for ADEPT2).
  • Method Details

    • getADEPT2ServiceExport

      ADEPT2ServiceExport getADEPT2ServiceExport()
      Returns the module responsible for exporting (i. e. publishing) ADEPT2 services.
      Returns:
      The ADEPT2ServiceExport
    • getADEPT2CallbackExport

      ADEPT2CallbackExport getADEPT2CallbackExport()
      Returns the submodule responsible for exporting callback objects.
      Returns:
      The ADEPT2CallbackExport.
    • getADEPT2ServiceStubFactory

      ADEPT2StubFactory<ADEPT2Service> getADEPT2ServiceStubFactory()
      Returns the factory responsible for creating stubs for remote calls to remote services.
      Returns:
      The ADEPT2StubFactory responsible for creating stubs for remote calls to ADEPT2 services.
    • getADEPT2CallbackStubFactory

      ADEPT2StubFactory<Object> getADEPT2CallbackStubFactory()
      Returns the factory responsible for creating stubs for remote calls to callback objects.
      Returns:
      The ADEPT2StubFactory responsible for creating stubs for remote calls to callback objects.
    • getSkeletonCommunicationStack

      CommunicationStack<I1,O1> getSkeletonCommunicationStack()
      Returns the communication stack to be used by skeletons to handle client requests.
      Returns:
      The communication pipe ready for handling client requests.
    • getStubCommunicationStack

      CommunicationStack<I2,O2> getStubCommunicationStack()
      Returns the communication stack to be used by stubs to send requests to remote services.
      Returns:
      The communication pipe ready for sending client requests.
    • getInvocationTarget

      InvocationTarget getInvocationTarget()
      Gets the invocation target of this communication service. This allows for late binding, that is they defer resolving the URI until it is required and thus allow for changing the server transparently.
      Returns:
      The interface providing the invocation target of this communication service.
    • getADEPT2RemoteObjectIdentifierFactory

      ADEPT2RemoteObjectIdentifierFactory getADEPT2RemoteObjectIdentifierFactory()
      Returns the factory to create remote object identifier valid for the type of communication this communication service represents.
      Returns:
      The ADEPT2RemoteObjectIdentifierFactory
    • getListeningAddress

      InetAddress getListeningAddress()
      Gets the IP-address this communication service is listening for requests. This IP-address is checked against the licence.
      Returns:
      The IP-address this communication service is listening for requests which is checked against the licence.
    • getVersion

      String getVersion()
      Get the version string to check the compatibility with other versions of the communication service.
      Returns:
      The version string to check the compatibility with other versions of the communication service.
    • isPlatformActive

      boolean isPlatformActive()
      Gets whether the underlying platform is currently active, that is, completely started. Otherwise it is being (re-)started or shutdown. This allows for more specific exception handling within the communication since the communication service may already or still receive requests before all platform services have been exported or after they have been unregistered.
      Returns:
      Whether the underlying platform is currently active, that is, the corresponding services have been exported and are available.