1 //======================================================================== 2 //Copyright 2006-2008 Mort Bay Consulting Pty. Ltd. 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 //http://www.apache.org/licenses/LICENSE-2.0 8 //Unless required by applicable law or agreed to in writing, software 9 //distributed under the License is distributed on an "AS IS" BASIS, 10 //WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11 //See the License for the specific language governing permissions and 12 //limitations under the License. 13 //======================================================================== 14 15 package org.mortbay.jetty.client; 16 17 18 import java.io.IOException; 19 20 import org.mortbay.io.Buffer; 21 22 /** 23 * 24 * @author jesse 25 * 26 */ 27 public interface HttpEventListener 28 { 29 30 // TODO review the methods here, we can probably trim these down on what to expose 31 32 public void onRequestCommitted() throws IOException; 33 34 35 public void onRequestComplete() throws IOException; 36 37 38 public void onResponseStatus(Buffer version, int status, Buffer reason) throws IOException; 39 40 41 public void onResponseHeader(Buffer name, Buffer value) throws IOException; 42 43 44 public void onResponseHeaderComplete() throws IOException; 45 46 47 public void onResponseContent(Buffer content) throws IOException; 48 49 50 public void onResponseComplete() throws IOException; 51 52 53 public void onConnectionFailed(Throwable ex); 54 55 56 public void onException(Throwable ex); 57 58 59 public void onExpire(); 60 61 public void onRetry(); 62 63 64 }