Docjar: A Java Source and Docuemnt Enginecom.*    java.*    javax.*    org.*    all    new    plug-in

Quick Search    Search Deep

Source code: org/apache/ajp/tomcat4/Ajp13InputStream.java


1   /*
2    *  Copyright 1999-2004 The Apache Software Foundation
3    *
4    *  Licensed under the Apache License, Version 2.0 (the "License");
5    *  you may not use this file except in compliance with the License.
6    *  You may obtain a copy of the License at
7    *
8    *      http://www.apache.org/licenses/LICENSE-2.0
9    *
10   *  Unless required by applicable law or agreed to in writing, software
11   *  distributed under the License is distributed on an "AS IS" BASIS,
12   *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13   *  See the License for the specific language governing permissions and
14   *  limitations under the License.
15   */
16  
17  package org.apache.ajp.tomcat4;
18  
19  import java.io.IOException;
20  
21  import javax.servlet.ServletInputStream;
22  
23  import org.apache.ajp.Ajp13;
24  
25  public class Ajp13InputStream extends ServletInputStream {
26  
27      private Ajp13 ajp13;
28  
29      Ajp13InputStream(Ajp13 ajp13) {
30          this.ajp13 = ajp13;
31      }
32  
33      public int available() throws IOException {
34          return ajp13.available();
35      }
36  
37      public void close() throws IOException {
38      }
39  
40      public void mark(int readLimit) {
41      }
42  
43      public boolean markSupported() {
44          return false;
45      }
46  
47      public void reset() throws IOException {
48          throw new IOException("reset() not supported");
49      }
50  
51      public int read() throws IOException {
52          return ajp13.doRead();
53      }
54  
55      public int read(byte[] b, int off, int len) throws IOException {
56          return ajp13.doRead(b, off, len);
57      }
58  
59      public long skip(long n) throws IOException {
60          if (n > Integer.MAX_VALUE) {
61              throw new IOException("can't skip than many:  " + n);
62          }
63          byte[] b = new byte[(int)n];
64          return ajp13.doRead(b, 0, b.length);
65      }
66  }