mil.dod.th.ose.remote/src/mil/dod/th/ose/remote/AbstractSocketChannel.java
public void subDeactivate() throws InterruptedException
    {
        m_ListenerInstance.dispose();
        
        final int ThreadWaitMs = 1000;
        m_ListenerThread.join(ThreadWaitMs);
        assert !m_ListenerThread.isAlive();
        
        cleanupMessageSender();
        
        try
        {
            m_Socket.getOutputStream().close();
        }
        catch (final IOException e)
        {
            m_Logging.warning("Failed to close socket output stream (%s)", m_Socket.getRemoteSocketAddress());
        }

        try
        {
            m_Socket.close();
        }
        catch (final IOException e)
        {
            m_Logging.debug("Unable to close socket (%s), already closed? %b", m_Socket.getRemoteSocketAddress(), 
                    m_Socket.isClosed());
        }
        finally
        {
            m_WakeLock.delete();
        }
    }
/**
     * Deactivate the channel by closing underlying socket. 
     * 
     * @throws InterruptedException
     *      if interrupted while waiting for thread to stop 
     */
Deactivate the channel by closing underlying socket.

@throws InterruptedException
if interrupted while waiting for thread to stop
Deactivate the channel by closing underlying socket . @throws InterruptedException if interrupted while waiting for thread to stop
public void subDeactivate() throws InterruptedException
    {
        m_ListenerInstance.dispose();
        final int ThreadWaitMs = 1000;
        m_ListenerThread.join(ThreadWaitMs);
        assert !m_ListenerThread.isAlive();
        cleanupMessageSender();
        try
        {
            m_Socket.getOutputStream().close();
        }
        catch (final IOException e)
        {
            m_Logging.warning("Failed to close socket output stream (%s)", m_Socket.getRemoteSocketAddress());
        }
        try
        {
            m_Socket.close();
        }
        catch (final IOException e)
        {
            m_Logging.debug("Unable to close socket (%s), already closed? %b", m_Socket.getRemoteSocketAddress(), 
                    m_Socket.isClosed());
        }
        finally
        {
            m_WakeLock.delete();
        }
    }
public void subDeactivate ( ) throws InterruptedException { m_ListenerInstance . dispose ( ) ; final int ThreadWaitMs = 1000 ; m_ListenerThread . join ( ThreadWaitMs ) ; assert ! m_ListenerThread . isAlive ( ) ; cleanupMessageSender ( ) ; try { m_Socket . getOutputStream ( ) . close ( ) ; } catch ( final IOException e ) { m_Logging . warning ( "Failed to close socket output stream (%s)" , m_Socket . getRemoteSocketAddress ( ) ) ; } try { m_Socket . close ( ) ; } catch ( final IOException e ) { m_Logging . debug ( "Unable to close socket (%s), already closed? %b" , m_Socket . getRemoteSocketAddress ( ) , m_Socket . isClosed ( ) ) ; } finally { m_WakeLock . delete ( ) ; } }
Deactivate the channel by closing underlying socket.
Deactivate the channel by closing underlying socket .