Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
   *  Licensed to the Apache Software Foundation (ASF) under one or more
   *  contributor license agreements.  See the NOTICE file distributed with
   *  this work for additional information regarding copyright ownership.
   *  The ASF licenses this file to You under the Apache License, Version 2.0
   *  (the "License"); you may not use this file except in compliance with
   *  the License.  You may obtain a copy of the License at
  *  Unless required by applicable law or agreed to in writing, software
  *  distributed under the License is distributed on an "AS IS" BASIS,
  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  *  See the License for the specific language governing permissions and
  *  limitations under the License.
 package org.apache.coyote.memory;
Abstract the protocol implementation, including threading, etc. Processor is single threaded and specific to stream-based protocols, will not fit Jk protocols like JNI.

Remy Maucherat
 public class MemoryProtocolHandler
     implements ProtocolHandler {
     // ------------------------------------------------------------- Properties

Pass config info.
     public void setAttribute(String nameObject value) {
     public Object getAttribute(String name) {
         return null;
     public Iterator getAttributeNames() { return null ; }
Associated adapter.
     protected Adapter adapter = null;

The adapter, used to call the connector.
     public void setAdapter(Adapter adapter) {
         this. = adapter;
     public Adapter getAdapter() {
         return ();
     public boolean hasIoEvents() {
         return false;
     public RequestGroupInfo getRequestGroupInfo() {
         return null;
     // ------------------------------------------------ ProtocolHandler Methods

Init the protocol.
     public void init()
         throws Exception {

Start the protocol.
     public void start()
         throws Exception {
    public void pause() 
        throws Exception {
    public void resume() 
        throws Exception {
    public void destroy()
        throws Exception {
    // --------------------------------------------------------- Public Methods

Process specified request.
    public void process(Request requestByteChunk input,
                        Response responseByteChunk output)
        throws Exception {
        InputBuffer inputBuffer = new ByteChunkInputBuffer(input);
        OutputBuffer outputBuffer = new ByteChunkOutputBuffer(output);
    // --------------------------------------------- ByteChunkInputBuffer Class
    protected class ByteChunkInputBuffer
        implements InputBuffer {
        protected ByteChunk input = null;
        public ByteChunkInputBuffer(ByteChunk input) {
            this. = input;
        public int doRead(ByteChunk chunkRequest request
            throws IOException {
            return .substract(chunk);
    // -------------------------------------------- ByteChunkOuptutBuffer Class
    protected class ByteChunkOutputBuffer
        implements OutputBuffer {
        protected ByteChunk output = null;
        public ByteChunkOutputBuffer(ByteChunk output) {
            this. = output;
        public int doWrite(ByteChunk chunkResponse response
            throws IOException {
            return chunk.getLength();
New to GrepCode? Check out our FAQ X