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 }