ch.systemsx.cisd.common.api
Interface IRpcServiceFactory

All Known Implementing Classes:
DssServiceRpcFactory

public interface IRpcServiceFactory

A factory for creating proxies to RPC services on a data store server.

Because of the inherent potential variability in the DSS RPC, the interface has been made flexible to provide clients simultaneous access to several different communication interfaces.


Method Summary
<T extends IRpcService>
T
getService(RpcServiceInterfaceVersionDTO ifaceVersion, java.lang.Class<T> ifaceClazz, java.lang.String serverURL, boolean getServerCertificateFromServer)
          Get a proxy to the RPC service interface specified by ifaceVersion.
 java.util.Collection<RpcServiceInterfaceDTO> getSupportedInterfaces(java.lang.String serverURL, boolean shouldGetServerCertificateFromServer)
          Get the RPC service interfaces supported by the server.
 

Method Detail

getSupportedInterfaces

java.util.Collection<RpcServiceInterfaceDTO> getSupportedInterfaces(java.lang.String serverURL,
                                                                    boolean shouldGetServerCertificateFromServer)
                                                                    throws IncompatibleAPIVersionsException
Get the RPC service interfaces supported by the server.

Parameters:
serverURL - The URL of the data store server to query.
shouldGetServerCertificateFromServer - If the URL scheme is https and shouldGetServerCertificateFromServer is true, the factory will retrieve the SSL certificate from the server.
Throws:
IncompatibleAPIVersionsException

getService

<T extends IRpcService> T getService(RpcServiceInterfaceVersionDTO ifaceVersion,
                                     java.lang.Class<T> ifaceClazz,
                                     java.lang.String serverURL,
                                     boolean getServerCertificateFromServer)
                                 throws IncompatibleAPIVersionsException
Get a proxy to the RPC service interface specified by ifaceVersion.

Parameters:
ifaceVersion - The proxy interface to return
ifaceClazz - The class of the interface
serverURL - The url of the server that exports the service
getServerCertificateFromServer - True if the certificate should be retrieved from the server.
Throws:
IncompatibleAPIVersionsException