protected boolean handleOutgoingEvent(ChannelEvent event) throws Exception
	{
		if( !(event instanceof ChannelStateEvent) )
			return false;

		ChannelStateEvent stateEvent = (ChannelStateEvent) event;

		switch(stateEvent.getState())
		{
			case CLOSE:
				close0();
				break;

			case CONNECT:
				if( stateEvent.getValue() instanceof SocketAddress )
					connect0((SocketAddress) stateEvent.getValue());
				break;

			case DISCONNECT:
				disconnect();
				break;

			case BIND:
				if( stateEvent.getValue() instanceof SocketAddress )
					bind0((SocketAddress) stateEvent.getValue());
				break;

			case UNBIND:
				unbind0();
				break;
		}

		event.getFuture().onSuccess();
		return true;
	}