Class ClientRequestDispatcherImpl

java.lang.Object
com.sun.corba.ee.impl.protocol.ClientRequestDispatcherImpl
All Implemented Interfaces:
ClientRequestDispatcher
Direct Known Subclasses:
NoConnectionCacheImpl.NCCClientRequestDispatcherImpl, SharedCDRClientRequestDispatcherImpl

public class ClientRequestDispatcherImpl extends Object implements ClientRequestDispatcher
ClientDelegate is the RMI client-side subcontract or representation It implements RMI delegate as well as our internal ClientRequestDispatcher interface.
  • Field Details

  • Constructor Details

    • ClientRequestDispatcherImpl

      public ClientRequestDispatcherImpl()
  • Method Details

    • usingCachedConnection

      @InfoMethod private void usingCachedConnection(Connection conn)
    • usingCreatedConnection

      @InfoMethod private void usingCreatedConnection(Connection conn)
    • connectionCached

      @InfoMethod private void connectionCached(Connection conn)
    • connectionRegistered

      @InfoMethod private void connectionRegistered(Connection conn)
    • createdMessageMediator

      @InfoMethod private void createdMessageMediator(MessageMediator med)
    • createOutputObject

      @InfoMethod private void createOutputObject(CDROutputObject out)
    • generalMessage

      @InfoMethod private void generalMessage(String msg)
    • remarshalWithHasNextTrue

      @InfoMethod private void remarshalWithHasNextTrue(ContactInfo info)
    • enter_totalRequest

      @InfoMethod(tpName="totalRequest", tpType=ENTER) private void enter_totalRequest()
    • exit_totalRequest

      @InfoMethod(tpName="totalRequest", tpType=EXIT) private void exit_totalRequest()
    • enter_connectionSetup

      @InfoMethod(tpName="connectionSetup", tpType=ENTER) private void enter_connectionSetup()
    • exit_connectionSetup

      @InfoMethod(tpName="connectionSetup", tpType=EXIT) private void exit_connectionSetup()
    • enter_clientDecoding

      @InfoMethod(tpName="clientDecoding", tpType=ENTER) private void enter_clientDecoding()
    • exit_clientDecoding

      @InfoMethod(tpName="clientDecoding", tpType=EXIT) private void exit_clientDecoding()
    • enter_clientEncoding

      @InfoMethod(tpName="clientEncoding", tpType=ENTER) private void enter_clientEncoding()
    • exit_clientEncoding

      @InfoMethod(tpName="clientEncoding", tpType=EXIT) private void exit_clientEncoding()
    • enter_clientTransportAndWait

      @InfoMethod(tpName="clientTransportAndWait", tpType=ENTER) private void enter_clientTransportAndWait()
    • exit_clientTransportAndWait

      @InfoMethod(tpName="clientTransportAndWait", tpType=EXIT) private void exit_clientTransportAndWait()
    • enter_processResponse

      @InfoMethod(tpName="processResponse", tpType=ENTER) private void enter_processResponse()
    • exit_processResponse

      @InfoMethod(tpName="processResponse", tpType=EXIT) private void exit_processResponse()
    • enter_requestAddServiceContexts

      @InfoMethod(tpName="requestAddServiceContexts", tpType=ENTER) private void enter_requestAddServiceContexts()
    • exit_requestAddServiceContexts

      @InfoMethod(tpName="requestAddServiceContexts", tpType=EXIT) private void exit_requestAddServiceContexts()
    • beginRequest

      public CDROutputObject beginRequest(Object self, String opName, boolean isOneWay, ContactInfo contactInfo)
      Description copied from interface: ClientRequestDispatcher
      At the beginning of a request the presentation block uses this to obtain an OutputObject to set data to be sent on a message.
      Specified by:
      beginRequest in interface ClientRequestDispatcher
      Parameters:
      self - -
      opName - - the remote method name
      isOneWay - - true if the message is asynchronous
      contactInfo - - the CorbaContactInfo which which created/chose this ClientRequestDispatcher
      Returns:
      OutputObject
    • operationAndId

      @InfoMethod private void operationAndId(String op, int rid)
    • marshalingComplete

      public CDRInputObject marshalingComplete(Object self, CDROutputObject outputObject) throws ApplicationException, RemarshalException
      Description copied from interface: ClientRequestDispatcher
      After the presentation block has set data on the CDROutputObject it signals the PEPt runtime to send the encoded data by calling this method.
      Specified by:
      marshalingComplete in interface ClientRequestDispatcher
      Parameters:
      self - -
      outputObject - object to mark as complete
      Returns:
      CDRInputObject if the message is synchronous.
      Throws:
      ApplicationException - if the remote side raises an exception declared in the remote interface.
      RemarshalException - RemarshalException if the PEPt runtime would like the presentation block to start over.
    • retryMessage

      @InfoMethod private void retryMessage(String msg)
    • reportException

      @InfoMethod private void reportException(Throwable exc)
    • reportException

      @InfoMethod private void reportException(String msg, Throwable exc)
    • marshalingComplete1

      public CDRInputObject marshalingComplete1(ORB orb, MessageMediator messageMediator) throws ApplicationException, RemarshalException
      Throws:
      ApplicationException
      RemarshalException
    • receivedUserException

      @InfoMethod private void receivedUserException(String repoid)
    • receivedUserExceptionDII

      @InfoMethod private void receivedUserExceptionDII(Throwable exc, Throwable newExc)
    • receivedUserExceptionNotDII

      @InfoMethod private void receivedUserExceptionNotDII(Throwable exc, Throwable newExc)
    • processResponse

      protected CDRInputObject processResponse(ORB orb, MessageMediator messageMediator, CDRInputObject inputObject) throws ApplicationException, RemarshalException
      Throws:
      ApplicationException
      RemarshalException
    • continueOrThrowSystemOrRemarshal

      protected void continueOrThrowSystemOrRemarshal(MessageMediator messageMediator, Exception exception) throws SystemException, RemarshalException
      Throws:
      SystemException
      RemarshalException
    • getContactInfoListIterator

      protected ContactInfoListIterator getContactInfoListIterator(ORB orb)
    • registerWaiter

      protected void registerWaiter(MessageMediator messageMediator)
    • unregisterWaiter

      protected void unregisterWaiter(ORB orb)
    • addServiceContexts

      protected void addServiceContexts(MessageMediator messageMediator)
    • consumeServiceContexts

      protected void consumeServiceContexts(ORB orb, MessageMediator messageMediator)
    • getExceptionDetailMessage

      protected void getExceptionDetailMessage(MessageMediator messageMediator, ORBUtilSystemException wrapper)
    • endRequest

      public void endRequest(ORB orb, Object self, CDRInputObject inputObject)
      Description copied from interface: ClientRequestDispatcher
      After the presentation block completes a request it signals the PEPt runtime by calling this method. This method may release resources. In some cases it may cause control or error messages to be sent.
      Specified by:
      endRequest in interface ClientRequestDispatcher
      Parameters:
      orb - ORB used
      self - unused
      inputObject - unused
    • performCodeSetNegotiation

      protected void performCodeSetNegotiation(MessageMediator messageMediator)
    • addCodeSetServiceContext

      protected void addCodeSetServiceContext(Connection conn, ServiceContexts ctxs, GIOPVersion giopVersion)
    • peekUserExceptionId

      protected String peekUserExceptionId(CDRInputObject inputObject)