View Javadoc

1   //
2   //  ========================================================================
3   //  Copyright (c) 1995-2016 Mort Bay Consulting Pty. Ltd.
4   //  ------------------------------------------------------------------------
5   //  All rights reserved. This program and the accompanying materials
6   //  are made available under the terms of the Eclipse Public License v1.0
7   //  and Apache License v2.0 which accompanies this distribution.
8   //
9   //      The Eclipse Public License is available at
10  //      http://www.eclipse.org/legal/epl-v10.html
11  //
12  //      The Apache License v2.0 is available at
13  //      http://www.opensource.org/licenses/apache2.0.php
14  //
15  //  You may elect to redistribute this code under either of these licenses.
16  //  ========================================================================
17  //
18  
19  
20  package org.eclipse.jetty.http;
21  
22  
23  /* ------------------------------------------------------------ */
24  /** Interface to pre-encode HttpFields.  Used by {@link PreEncodedHttpField}
25   */
26  public interface HttpFieldPreEncoder
27  {
28      /* ------------------------------------------------------------ */
29      /** The major version this encoder is for.  Both HTTP/1.0 and HTTP/1.1
30       * use the same field encoding, so the {@link HttpVersion#HTTP_1_0} should
31       * be return for all HTTP/1.x encodings.
32       * @return The major version this encoder is for.
33       */
34      HttpVersion getHttpVersion();
35      byte[] getEncodedField(HttpHeader header, String headerString, String value);
36  }