The Adapter Shell constructs two buffers, one used during input and one used during output, and passes them to the processBuffer() function. The data is retrieved from the transport into a buffer, the adapter plug-in is called for processing, and the processing output is put to the transport. The result of the processing should provide an indication of whether looping should continue.