Mercurial Hosting > luan
view src/org/eclipse/jetty/http/HttpHeaderValues.java @ 1020:6be43ef1eb96
HttpHeaderValues uses StringCache
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Mon, 31 Oct 2016 22:24:41 -0600 |
parents | 74b9daf2826c |
children | 3718afd99988 |
line wrap: on
line source
// // ======================================================================== // Copyright (c) 1995-2014 Mort Bay Consulting Pty. Ltd. // ------------------------------------------------------------------------ // All rights reserved. This program and the accompanying materials // are made available under the terms of the Eclipse Public License v1.0 // and Apache License v2.0 which accompanies this distribution. // // The Eclipse Public License is available at // http://www.eclipse.org/legal/epl-v10.html // // The Apache License v2.0 is available at // http://www.opensource.org/licenses/apache2.0.php // // You may elect to redistribute this code under either of these licenses. // ======================================================================== // package org.eclipse.jetty.http; import org.eclipse.jetty.io.StringCache; /** * Cached HTTP Header values. * The resource "/org/eclipse/jetty/useragents" is checked for a list of common user agents, so that repeated * creation of strings for these agents can be avoided. * * */ public final class HttpHeaderValues { public final static String CLOSE="close", CHUNKED="chunked", GZIP="gzip", IDENTITY="identity", KEEP_ALIVE="keep-alive", CONTINUE="100-continue", PROCESSING="102-processing", TE="TE", BYTES="bytes", NO_CACHE="no-cache", UPGRADE="Upgrade"; public final static int CLOSE_ORDINAL=1, CHUNKED_ORDINAL=2, GZIP_ORDINAL=3, IDENTITY_ORDINAL=4, KEEP_ALIVE_ORDINAL=5, CONTINUE_ORDINAL=6, PROCESSING_ORDINAL=7, TE_ORDINAL=8, BYTES_ORDINAL=9, NO_CACHE_ORDINAL=10, UPGRADE_ORDINAL=11; public final static StringCache CACHE = new StringCache(); public final static byte[] CLOSE_BYTES=CACHE.add(CLOSE,CLOSE_ORDINAL), CHUNKED_BYTES=CACHE.add(CHUNKED,CHUNKED_ORDINAL), GZIP_BYTES=CACHE.add(GZIP,GZIP_ORDINAL), IDENTITY_BYTES=CACHE.add(IDENTITY,IDENTITY_ORDINAL), KEEP_ALIVE_BYTES=CACHE.add(KEEP_ALIVE,KEEP_ALIVE_ORDINAL), CONTINUE_BYTES=CACHE.add(CONTINUE, CONTINUE_ORDINAL), PROCESSING_BYTES=CACHE.add(PROCESSING, PROCESSING_ORDINAL), TE_BYTES=CACHE.add(TE,TE_ORDINAL), BYTES_BYTES=CACHE.add(BYTES,BYTES_ORDINAL), NO_CACHE_BYTES=CACHE.add(NO_CACHE,NO_CACHE_ORDINAL), UPGRADE_BYTES=CACHE.add(UPGRADE,UPGRADE_ORDINAL); public static boolean hasKnownValues(int httpHeaderOrdinal) { switch(httpHeaderOrdinal) { case HttpHeaders.CONNECTION_ORDINAL: case HttpHeaders.TRANSFER_ENCODING_ORDINAL: case HttpHeaders.CONTENT_ENCODING_ORDINAL: return true; } return false; } }