View Javadoc
1   /*
2    * Copyright 2012 The Netty Project
3    *
4    * The Netty Project licenses this file to you under the Apache License,
5    * version 2.0 (the "License"); you may not use this file except in compliance
6    * with the License. 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, WITHOUT
12   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
13   * License for the specific language governing permissions and limitations
14   * under the License.
15   */
16  package io.netty.handler.codec.http;
17  
18  
19  /**
20   * An HTTP request.
21   *
22   * <h3>Accessing Query Parameters and Cookie</h3>
23   * <p>
24   * Unlike the Servlet API, a query string is constructed and decomposed by
25   * {@link QueryStringEncoder} and {@link QueryStringDecoder}.  {@link Cookie}
26   * support is also provided separately via {@link ClientCookieDecoder}, {@link ServerCookieDecoder},
27   * {@link ClientCookieEncoder}, and {@link @ServerCookieEncoder}.
28   *
29   * @see HttpResponse
30   * @see ClientCookieEncoder
31   * @see ServerCookieEncoder
32   * @see ClientCookieDecoder
33   * @see ServerCookieDecoder
34   */
35  public interface HttpRequest extends HttpMessage {
36  
37      /**
38       * Returns the {@link HttpMethod} of this {@link HttpRequest}.
39       *
40       * @return The {@link HttpMethod} of this {@link HttpRequest}
41       */
42      HttpMethod method();
43  
44      /**
45       * Set the {@link HttpMethod} of this {@link HttpRequest}.
46       */
47      HttpRequest setMethod(HttpMethod method);
48  
49      /**
50       * Returns the requested URI (or alternatively, path)
51       *
52       * @return The URI being requested
53       */
54      String uri();
55  
56      /**
57       *  Set the requested URI (or alternatively, path)
58       */
59      HttpRequest setUri(String uri);
60  
61      @Override
62      HttpRequest setProtocolVersion(HttpVersion version);
63  }