public class HeaderFramework
extends java.util.TreeMap<java.lang.String,java.lang.String>
implements java.util.Map<java.lang.String,java.lang.String>
Modifier and Type | Class and Description |
---|---|
static class |
HeaderFramework.Entry
Implementation of Map.Entry.
|
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ACCEPT |
static java.lang.String |
ACCEPT_CHARSET |
static java.lang.String |
ACCEPT_ENCODING |
static java.lang.String |
ACCEPT_LANGUAGE |
static java.lang.String |
ACCEPT_RANGES |
static java.lang.String |
CACHE_CONTROL |
private static java.util.Calendar |
CAL_GMT |
static java.lang.String |
CONNECTION_PROP_ARGS |
static java.lang.String |
CONNECTION_PROP_CLIENT_REQUEST_HEADER |
static java.lang.String |
CONNECTION_PROP_CLIENTIP |
static java.lang.String |
CONNECTION_PROP_EXT |
static java.lang.String |
CONNECTION_PROP_HOST |
static java.lang.String |
CONNECTION_PROP_HTTP_VER |
static java.lang.String |
CONNECTION_PROP_METHOD |
static java.lang.String |
CONNECTION_PROP_PATH |
static java.lang.String |
CONNECTION_PROP_PERSISTENT |
static java.lang.String |
CONNECTION_PROP_PROTOCOL |
static java.lang.String |
CONNECTION_PROP_PROXY_RESPOND_CODE |
static java.lang.String |
CONNECTION_PROP_PROXY_RESPOND_HEADER |
static java.lang.String |
CONNECTION_PROP_PROXY_RESPOND_SIZE |
static java.lang.String |
CONNECTION_PROP_PROXY_RESPOND_STATUS |
static java.lang.String |
CONNECTION_PROP_REQUEST_END |
static java.lang.String |
CONNECTION_PROP_REQUEST_START |
static java.lang.String |
CONNECTION_PROP_URL |
static java.lang.String |
CONNECTION_PROP_USER |
static java.lang.String |
CONTENT_ENCODING |
static java.lang.String |
CONTENT_ENCODING_GZIP |
static java.lang.String |
CONTENT_LENGTH |
static java.lang.String |
CONTENT_LOCATION |
static java.lang.String |
CONTENT_MD5 |
static java.lang.String |
CONTENT_RANGE |
static java.lang.String |
CONTENT_TYPE |
static java.lang.String |
CORS_ALLOW_ORIGIN |
static java.lang.String |
DATE |
static java.lang.String |
ETAG |
static java.lang.String |
EXPIRES |
static java.text.SimpleDateFormat |
FORMAT_ANSIC |
static java.text.SimpleDateFormat |
FORMAT_GSAFS |
static java.text.SimpleDateFormat |
FORMAT_RFC1036 |
static java.text.SimpleDateFormat |
FORMAT_RFC1123 |
private static java.text.SimpleDateFormat[] |
FORMATS_HTTP
RFC 2616 requires that HTTP clients are able to parse all 3 different
formats.
|
private java.util.Vector<HeaderFramework.Entry> |
headerProps
Holds header properties
|
static java.lang.String |
HOST |
static java.lang.String |
HTTP_VERSION_0_9 |
static java.lang.String |
HTTP_VERSION_1_0 |
static java.lang.String |
HTTP_VERSION_1_1 |
static java.util.Map<java.lang.String,java.lang.String> |
http1_0 |
static java.util.Map<java.lang.String,java.lang.String> |
http1_1 |
static java.lang.String |
LAST_MODIFIED |
private static long |
lastRFC1123long |
private static java.lang.String |
lastRFC1123string |
static java.lang.String |
LOCATION |
static java.lang.String |
METHOD_CONNECT |
static java.lang.String |
METHOD_GET |
static java.lang.String |
METHOD_HEAD |
static java.lang.String |
METHOD_POST |
private static java.lang.String |
PATTERN_ANSIC |
private static java.lang.String |
PATTERN_GSAFS |
private static java.lang.String |
PATTERN_RFC1036 |
private static java.lang.String |
PATTERN_RFC1123
Date formatter/parser for standard compliant HTTP header dates (RFC 1123)
|
static java.lang.String |
PRAGMA |
static java.lang.String |
RANGE |
static java.lang.String |
RESPONSE_TIME_MILLIS |
private java.util.Map<java.lang.String,java.lang.String> |
reverseMappingCache |
private static long |
serialVersionUID |
static java.lang.String |
SERVER |
static java.lang.String |
SET_COOKIE |
static java.lang.String |
SET_COOKIE2 |
static java.lang.String |
STATUS_CODE |
static java.lang.String |
TRANSFER_ENCODING |
private static java.util.TimeZone |
TZ_GMT |
static java.lang.String |
USER_AGENT |
static java.lang.String |
VIA |
static java.lang.String |
X_FORWARDED_FOR |
static java.lang.String |
X_ROBOTS |
static java.lang.String |
X_ROBOTS_TAG |
static java.lang.String |
X_YACY_INDEX_CONTROL |
static java.lang.String |
X_YACY_KEEP_ALIVE_REQUEST_COUNT |
static java.lang.String |
X_YACY_MEDIA_KEYWORDS |
static java.lang.String |
X_YACY_MEDIA_TITLE |
static java.lang.String |
X_YACY_ORIGINAL_REQUEST_LINE |
Constructor and Description |
---|
HeaderFramework() |
HeaderFramework(java.util.Map<java.lang.String,java.lang.String> reverseMappingCache) |
HeaderFramework(java.util.Map<java.lang.String,java.lang.String> reverseMappingCache,
java.util.Map<java.lang.String,java.lang.String> othermap) |
Modifier and Type | Method and Description |
---|---|
java.lang.String |
add(java.lang.String key,
java.lang.String value) |
void |
addHeader(java.lang.String key,
java.lang.String value) |
static java.lang.String |
formatGSAFS(java.util.Date date) |
static java.lang.String |
formatRFC1123(java.util.Date date) |
java.lang.String |
get(java.lang.String key,
java.lang.String dflt) |
java.util.Vector<HeaderFramework.Entry> |
getAdditionalHeaderProperties() |
java.lang.String |
getCharacterEncoding() |
int |
getContentLength() |
long |
getContentLengthLong() |
java.lang.String |
getContentType()
Get header field content-type (unmodified)
which may include additional parameter (RFC 2616)
see also mime()
|
java.lang.String |
getHeaderCookies() |
java.lang.Object[] |
getMultiple(java.lang.String key) |
static DigestURL |
getRequestURL(java.util.HashMap<java.lang.String,java.lang.Object> conProp)
Generate a url from Header properties
|
java.lang.String |
getSingle(java.lang.String key,
int count) |
protected java.util.Date |
headerDate(java.lang.String kind) |
int |
keyCount(java.lang.String key) |
java.lang.String |
mime()
Get mime type from header field content-type
stripps any parameter (denoted by ';' see RFC 2616)
|
static java.util.Date |
parseGSAFS(java.lang.String datestring) |
static java.util.Date |
parseHTTPDate(java.lang.String s)
Parse a HTTP string representation of a date into a Date instance.
|
java.lang.String |
put(java.lang.String key,
java.lang.String value) |
void |
readHttpHeader(java.io.BufferedReader reader)
Reading http headers from a reader class and building up a httpHeader object
|
void |
setAdditionalHeaderProperties(java.util.Vector<HeaderFramework.Entry> mycookies) |
void |
setCookie(java.lang.String name,
java.lang.String value)
Sets Cookie on the client machine.
|
void |
setCookie(java.lang.String name,
java.lang.String value,
java.lang.String expires)
Sets Cookie on the client machine.
|
void |
setCookie(java.lang.String name,
java.lang.String value,
java.lang.String expires,
java.lang.String path)
Sets Cookie on the client machine.
|
void |
setCookie(java.lang.String name,
java.lang.String value,
java.lang.String expires,
java.lang.String path,
java.lang.String domain)
Sets Cookie on the client machine.
|
void |
setCookie(java.lang.String name,
java.lang.String value,
java.lang.String expires,
java.lang.String path,
java.lang.String domain,
boolean secure)
Sets Cookie on the client machine.
|
void |
store(java.io.File f) |
static boolean |
supportChunkedEncoding(java.util.Properties conProp) |
java.lang.StringBuilder |
toHeaderString(java.lang.String httpVersion,
int httpStatusCode,
java.lang.String httpStatusText) |
void |
toHeaderString(java.lang.String httpVersion,
int httpStatusCode,
java.lang.String httpStatusText,
java.lang.StringBuilder theHeader) |
java.lang.String |
toString() |
ceilingEntry, ceilingKey, clear, clone, comparator, containsKey, containsValue, descendingKeySet, descendingMap, entrySet, firstEntry, firstKey, floorEntry, floorKey, get, headMap, headMap, higherEntry, higherKey, keySet, lastEntry, lastKey, lowerEntry, lowerKey, navigableKeySet, pollFirstEntry, pollLastEntry, putAll, remove, size, subMap, subMap, tailMap, tailMap, values
private static final long serialVersionUID
public static final java.lang.String HTTP_VERSION_0_9
public static final java.lang.String HTTP_VERSION_1_0
public static final java.lang.String HTTP_VERSION_1_1
public static final java.lang.String HOST
public static final java.lang.String USER_AGENT
public static final java.lang.String ACCEPT
public static final java.lang.String ACCEPT_LANGUAGE
public static final java.lang.String ACCEPT_ENCODING
public static final java.lang.String ACCEPT_CHARSET
public static final java.lang.String CONTENT_LENGTH
public static final java.lang.String CONTENT_TYPE
public static final java.lang.String CONTENT_MD5
public static final java.lang.String CONTENT_LOCATION
public static final java.lang.String CONTENT_ENCODING
public static final java.lang.String TRANSFER_ENCODING
public static final java.lang.String PRAGMA
public static final java.lang.String CACHE_CONTROL
public static final java.lang.String DATE
public static final java.lang.String LAST_MODIFIED
public static final java.lang.String SERVER
public static final java.lang.String ACCEPT_RANGES
public static final java.lang.String CONTENT_RANGE
public static final java.lang.String RANGE
public static final java.lang.String LOCATION
public static final java.lang.String ETAG
public static final java.lang.String VIA
public static final java.lang.String X_FORWARDED_FOR
public static final java.lang.String X_ROBOTS_TAG
public static final java.lang.String X_ROBOTS
public static final java.lang.String X_YACY_INDEX_CONTROL
public static final java.lang.String X_YACY_KEEP_ALIVE_REQUEST_COUNT
public static final java.lang.String X_YACY_ORIGINAL_REQUEST_LINE
public static final java.lang.String X_YACY_MEDIA_TITLE
public static final java.lang.String X_YACY_MEDIA_KEYWORDS
public static final java.lang.String SET_COOKIE
public static final java.lang.String SET_COOKIE2
public static final java.lang.String EXPIRES
public static final java.lang.String CORS_ALLOW_ORIGIN
public static final java.lang.String RESPONSE_TIME_MILLIS
public static final java.lang.String CONTENT_ENCODING_GZIP
public static final java.lang.String METHOD_GET
public static final java.lang.String METHOD_HEAD
public static final java.lang.String METHOD_POST
public static final java.lang.String METHOD_CONNECT
public static final java.lang.String STATUS_CODE
public static final java.util.Map<java.lang.String,java.lang.String> http1_0
public static final java.util.Map<java.lang.String,java.lang.String> http1_1
public static final java.lang.String CONNECTION_PROP_HTTP_VER
public static final java.lang.String CONNECTION_PROP_PROTOCOL
public static final java.lang.String CONNECTION_PROP_HOST
public static final java.lang.String CONNECTION_PROP_USER
public static final java.lang.String CONNECTION_PROP_METHOD
public static final java.lang.String CONNECTION_PROP_PATH
public static final java.lang.String CONNECTION_PROP_EXT
public static final java.lang.String CONNECTION_PROP_URL
public static final java.lang.String CONNECTION_PROP_ARGS
public static final java.lang.String CONNECTION_PROP_CLIENTIP
public static final java.lang.String CONNECTION_PROP_PERSISTENT
public static final java.lang.String CONNECTION_PROP_REQUEST_START
public static final java.lang.String CONNECTION_PROP_REQUEST_END
public static final java.lang.String CONNECTION_PROP_CLIENT_REQUEST_HEADER
public static final java.lang.String CONNECTION_PROP_PROXY_RESPOND_CODE
public static final java.lang.String CONNECTION_PROP_PROXY_RESPOND_STATUS
public static final java.lang.String CONNECTION_PROP_PROXY_RESPOND_HEADER
public static final java.lang.String CONNECTION_PROP_PROXY_RESPOND_SIZE
private final java.util.Map<java.lang.String,java.lang.String> reverseMappingCache
private static final java.lang.String PATTERN_RFC1123
private static final java.lang.String PATTERN_RFC1036
private static final java.lang.String PATTERN_ANSIC
private static final java.lang.String PATTERN_GSAFS
public static final java.text.SimpleDateFormat FORMAT_RFC1123
public static final java.text.SimpleDateFormat FORMAT_RFC1036
public static final java.text.SimpleDateFormat FORMAT_ANSIC
public static final java.text.SimpleDateFormat FORMAT_GSAFS
private static final java.util.TimeZone TZ_GMT
private static final java.util.Calendar CAL_GMT
private static final java.text.SimpleDateFormat[] FORMATS_HTTP
private static long lastRFC1123long
private static java.lang.String lastRFC1123string
private java.util.Vector<HeaderFramework.Entry> headerProps
public HeaderFramework()
public HeaderFramework(java.util.Map<java.lang.String,java.lang.String> reverseMappingCache)
public HeaderFramework(java.util.Map<java.lang.String,java.lang.String> reverseMappingCache, java.util.Map<java.lang.String,java.lang.String> othermap)
public static final java.lang.String formatRFC1123(java.util.Date date)
public static final java.lang.String formatGSAFS(java.util.Date date)
public static final java.util.Date parseGSAFS(java.lang.String datestring)
public static java.util.Date parseHTTPDate(java.lang.String s)
s
- The date String to parse.null
otherwise.public java.lang.String put(java.lang.String key, java.lang.String value)
put
in interface java.util.Map<java.lang.String,java.lang.String>
put
in class java.util.TreeMap<java.lang.String,java.lang.String>
public java.lang.String add(java.lang.String key, java.lang.String value)
public int keyCount(java.lang.String key)
public java.lang.String get(java.lang.String key, java.lang.String dflt)
public java.lang.String getSingle(java.lang.String key, int count)
public java.lang.Object[] getMultiple(java.lang.String key)
public void store(java.io.File f) throws java.io.IOException
java.io.IOException
public java.lang.String toString()
toString
in class java.util.AbstractMap<java.lang.String,java.lang.String>
public java.lang.String mime()
public java.lang.String getCharacterEncoding()
public int getContentLength()
public long getContentLengthLong()
public java.lang.String getContentType()
org.apache.commons.fileupload.RequestContext#getContentType()
protected java.util.Date headerDate(java.lang.String kind)
public static boolean supportChunkedEncoding(java.util.Properties conProp)
public java.lang.StringBuilder toHeaderString(java.lang.String httpVersion, int httpStatusCode, java.lang.String httpStatusText)
public void toHeaderString(java.lang.String httpVersion, int httpStatusCode, java.lang.String httpStatusText, java.lang.StringBuilder theHeader)
public static DigestURL getRequestURL(java.util.HashMap<java.lang.String,java.lang.Object> conProp) throws java.net.MalformedURLException
conProp
- containing host, path, query and protocol (defaults to http if missing)java.net.MalformedURLException
public void readHttpHeader(java.io.BufferedReader reader) throws java.io.IOException
reader
- the BufferedReader
that is used to read the http header linesjava.io.IOException
public void setCookie(java.lang.String name, java.lang.String value, java.lang.String expires, java.lang.String path, java.lang.String domain, boolean secure)
name
- Cookie namevalue
- Cookie valueexpires
- when should this cookie be autmatically deleted. If null - cookie will stay foreverpath
- Path the cookie belongs to. Default - "/". Can be null.domain
- Domain this cookie belongs to. Default - domain name. Can be null.secure
- If true cookie will be send only over safe connection such as httpsdocumentation: docs.sun.com
public void setCookie(java.lang.String name, java.lang.String value, java.lang.String expires, java.lang.String path, java.lang.String domain)
name
- Cookie namevalue
- Cookie valueexpires
- when should this cookie be automatically deleted. If null - cookie will stay foreverpath
- Path the cookie belongs to. Default - "/". Can be null.domain
- Domain this cookie belongs to. Default - domain name. Can be null.
Note: this cookie will be sent over each connection independent if it is safe connection or not.documentation: docs.sun.com
public void setCookie(java.lang.String name, java.lang.String value, java.lang.String expires, java.lang.String path)
name
- Cookie namevalue
- Cookie valueexpires
- when should this cookie be automatically deleted. If null - cookie will stay foreverpath
- Path the cookie belongs to. Default - "/". Can be null.
Note: this cookie will be sent over each connection independent if it is safe connection or not.documentation: docs.sun.com
public void setCookie(java.lang.String name, java.lang.String value, java.lang.String expires)
name
- Cookie namevalue
- Cookie valueexpires
- when should this cookie be automatically deleted. If null - cookie will stay forever
Note: this cookie will be sent over each connection independent if it is safe connection or not.documentation: docs.sun.com
public void setCookie(java.lang.String name, java.lang.String value)
name
- Cookie namevalue
- Cookie value
Note: this cookie will be sent over each connection independent if it is safe connection or not. This cookie never expiresdocumentation: docs.sun.com
public java.lang.String getHeaderCookies()
public void addHeader(java.lang.String key, java.lang.String value)
public java.util.Vector<HeaderFramework.Entry> getAdditionalHeaderProperties()
public void setAdditionalHeaderProperties(java.util.Vector<HeaderFramework.Entry> mycookies)