/** * Called to indicate that this Delegate will no longer be used by * the client. The Delegate unregisters itself from the underlying * GIOPConnection. If there are no other Delegates using that * connection, it will be closed and disposed of altogether. */ @Override public void release( org.omg.CORBA.Object self ) { synchronized ( bind_sync ) { if (!bound) { return; } if ( connections[currentConnection.ordinal ()] != null ) { conn_mg.releaseConnection( connections[currentConnection.ordinal ()] ); connections[currentConnection.ordinal ()] = null; } bound = false; // Call using string rather than this to prevent data race // warning. orb._release( getParsedIOR().getIORString() ); if ( logger.isDebugEnabled() ) { logger.debug("Delegate released!"); } } }
private void disconnect(ClientConnection connectionInUse) { if (connectionInUse == null) { return; } if (!disconnectAfterNonRecoverableSystemException) { return; } synchronized(bind_sync) { if (connections[currentConnection.ordinal ()] == null) { return; } if (connections[currentConnection.ordinal ()] != connectionInUse) { return; } logger.debug("release the connection"); conn_mg.releaseConnection( connections[currentConnection.ordinal ()] ); connections[currentConnection.ordinal ()] = null; bound = false; } }
this, (isPiorForwarded () ? getBaseIOR() : null), connections[currentConnection.ordinal ()] ); if ( connections[currentConnection.ordinal ()] != null ) orb.notifyTransportListeners (connections[currentConnection.ordinal ()].getGIOPConnection()); else if (ros.getConnection() == connections[currentConnection.ordinal ()]) connectionToUse = connections[currentConnection.ordinal ()]; connectionToUse.incClients();
if ( connections[currentConnection.ordinal ()] != null && connections[currentConnection.ordinal ()].isClosed()) connections[currentConnection.ordinal ()], connections[currentConnection.ordinal ()].getId(), operation, responseExpected, if (!connections[currentConnection.ordinal ()].isTCSNegotiated()) connections[currentConnection.ordinal ()].setCodeSet(ior); out.setCodeSets( connections[currentConnection.ordinal ()].getTCS(), connections[currentConnection.ordinal ()].getTCSW() ); out.updateMutatorConnection (connections[currentConnection.ordinal ()].getGIOPConnection());
connections[TransportType.MIOP.ordinal ()] = conn_mg.getConnection(profile); profile = ((MIOPProfile)profile).getGroupIIOPProfile(); connections[TransportType.IIOP.ordinal ()] = conn_mg.getConnection(profile); new LocateRequestOutputStream( orb, ior.get_object_key(), connections[currentConnection.ordinal ()].getId(), ior.getEffectiveProfile().version().minor ); receiver.configure (configuration); connections[currentConnection.ordinal ()].sendRequest( lros, receiver, lros.getRequestId(),
if (connections[TransportType.IIOP.ordinal ()] != null) conn_mg.releaseConnection( connections[TransportType.IIOP.ordinal ()] ); connections[TransportType.IIOP.ordinal ()] = null; if ( connections[TransportType.MIOP.ordinal ()] != null ) conn_mg.releaseConnection( connections[TransportType.MIOP.ordinal ()] ); connections[TransportType.MIOP.ordinal ()] = null;
@Override public org.omg.CORBA.Request create_request( org.omg.CORBA.Object self, org.omg.CORBA.Context ctx, String operation, org.omg.CORBA.NVList args, org.omg.CORBA.NamedValue result, org.omg.CORBA.ExceptionList exceptions, org.omg.CORBA.ContextList contexts ) { checkORB(); bind(); return new org.jacorb.orb.dii.Request( self, orb, connections[currentConnection.ordinal ()], getParsedIOR().get_object_key(), operation, args, ctx, result, exceptions, contexts); }
@Override public org.omg.CORBA.Request create_request( org.omg.CORBA.Object self, org.omg.CORBA.Context ctx, String operation, org.omg.CORBA.NVList args, org.omg.CORBA.NamedValue result ) { checkORB(); bind(); return new org.jacorb.orb.dii.Request( self, orb, connections[currentConnection.ordinal ()], getParsedIOR().get_object_key(), operation, args, ctx, result ); }
@Override public org.omg.CORBA.Request request( org.omg.CORBA.Object self, String operation ) { orb.perform_work(); synchronized ( bind_sync ) { bind(); return new org.jacorb.orb.dii.Request( self, orb, connections[currentConnection.ordinal ()], getParsedIOR().get_object_key(), operation ); } }
ClientConnection getConnection() { synchronized ( bind_sync ) { bind(); return connections[currentConnection.ordinal ()]; } }