InnerRPCClient

This module hosts the logic for executing an RPC call.

class DIRAC.Core.DISET.private.InnerRPCClient.InnerRPCClient(serviceName, **kwargs)

Bases: DIRAC.Core.DISET.private.BaseClient.BaseClient

This class instruments the BaseClient to perform RPC calls. At every RPC call, this class:

  • connects

  • proposes the action

  • sends the method parameters

  • retrieve the result

  • disconnect

KW_DELEGATED_DN = 'delegatedDN'
KW_DELEGATED_GROUP = 'delegatedGroup'
KW_EXTRA_CREDENTIALS = 'extraCredentials'
KW_IGNORE_GATEWAYS = 'ignoreGateways'
KW_KEEP_ALIVE_LAPSE = 'keepAliveLapse'
KW_PROXY_CHAIN = 'proxyChain'
KW_PROXY_LOCATION = 'proxyLocation'
KW_PROXY_STRING = 'proxyString'
KW_SETUP = 'setup'
KW_SKIP_CA_CHECK = 'skipCACheck'
KW_TIMEOUT = 'timeout'
KW_USE_CERTIFICATES = 'useCertificates'
KW_VO = 'VO'
VAL_EXTRA_CREDENTIALS_HOST = 'hosts'
__init__(serviceName, **kwargs)

Constructor

Parameters
  • serviceName – URL of the service (proper uri or just System/Component)

  • useCertificates – If set to True, use the server certificate

  • extraCredentials

  • timeout – Timeout of the call (default 600 s)

  • setup – Specify the Setup

  • VO – Specify the VO

  • delegatedDN – Not clear what it can be used for.

  • delegatedGroup – Not clear what it can be used for.

  • ignoreGateways – Ignore the DIRAC Gatways settings

  • proxyLocation – Specify the location of the proxy

  • proxyString – Specify the proxy string

  • proxyChain – Specify the proxy chain

  • skipCACheck – Do not check the CA

  • keepAliveLapse – Duration for keepAliveLapse (heartbeat like)

executeRPC(functionName, args)

Perform the RPC call, connect before and disconnect after.

Parameters
  • functionName – name of the function

  • args – arguments to the function

Returns

in case of success, the return of the server call. In any case we add the connection stub to it.

getDestinationService()

Return service destination

Returns

str

getServiceName()

Return service name

Returns

str