corba/src/share/classes/com/sun/corba/se/impl/transport/SocketOrChannelConnectionImpl.java
equal
deleted
inserted
replaced
809 } catch (IOException e) { |
809 } catch (IOException e) { |
810 if (orb.transportDebugFlag) { |
810 if (orb.transportDebugFlag) { |
811 dprint(".close: " + this, e); |
811 dprint(".close: " + this, e); |
812 } |
812 } |
813 } |
813 } |
|
814 closeConnectionResources(); |
814 } finally { |
815 } finally { |
815 if (orb.transportDebugFlag) { |
816 if (orb.transportDebugFlag) { |
816 dprint(".close<-: " + this); |
817 dprint(".close<-: " + this); |
817 } |
818 } |
818 } |
819 } |
819 } |
820 } |
|
821 |
|
822 public void closeConnectionResources() { |
|
823 if (orb.transportDebugFlag) { |
|
824 dprint(".closeConnectionResources->: " + this); |
|
825 } |
|
826 Selector selector = orb.getTransportManager().getSelector(0); |
|
827 selector.unregisterForEvent(this); |
|
828 try { |
|
829 if (socketChannel != null) |
|
830 socketChannel.close() ; |
|
831 if (socket != null && !socket.isClosed()) |
|
832 socket.close() ; |
|
833 } catch (IOException e) { |
|
834 if (orb.transportDebugFlag) { |
|
835 dprint( ".closeConnectionResources: " + this, e ) ; |
|
836 } |
|
837 } |
|
838 if (orb.transportDebugFlag) { |
|
839 dprint(".closeConnectionResources<-: " + this); |
|
840 } |
|
841 } |
|
842 |
820 |
843 |
821 public Acceptor getAcceptor() |
844 public Acceptor getAcceptor() |
822 { |
845 { |
823 return acceptor; |
846 return acceptor; |
824 } |
847 } |