public synchronized void addHttpContent ( HttpContent httpContent ) { contentObservable . notifyAddListener ( httpContent ) ; if ( messageFuture != null ) { if ( ioException != null ) { blockingEntityCollector . addHttpContent ( new DefaultLastHttpContent ( ) ) ; messageFuture . notifyMessageListener ( blockingEntityCollector . getHttpContent ( ) ) ; removeMessageFuture ( ) ; throw new RuntimeException ( this . getIoException ( ) ) ; } contentObservable . notifyGetListener ( httpContent ) ; blockingEntityCollector . addHttpContent ( httpContent ) ; if ( messageFuture . isMessageListenerSet ( ) ) { messageFuture . notifyMessageListener ( blockingEntityCollector . getHttpContent ( ) ) ; } // We remove the feature as the message has reached it life time. If there is a need // for using the same message again, we need to set the future again and restart // the life-cycle. if ( httpContent instanceof LastHttpContent ) { removeMessageFuture ( ) ; } } else { if ( ioException != null ) { blockingEntityCollector . addHttpContent ( new DefaultLastHttpContent ( ) ) ; throw new RuntimeException ( this . getIoException ( ) ) ; } else { blockingEntityCollector . addHttpContent ( httpContent ) ; } } }
Add http content to HttpCarbonMessage .