Inheritance diagram for HttpTokens:
Public Member Functions | |
this (char seperator, bool inclusive=false) | |
this (HttpTokens source) | |
void | parse (IBuffer input) |
void | parse (char[] content) |
void | reset () |
bool | isParsed () |
void | setParsed (bool parsed) |
char[] | get (char[] name) |
int | getInt (char[] name) |
long | getDate (char[] name) |
int | opApply (int(*dg)(inout HttpToken)) |
void | write (IWriter writer) |
private bool | split (Token t, inout HttpToken element) |
FilteredTokens | createFilter (char[] match) |
char[] | toOutputString () |
Static Public Member Functions | |
this () | |
Protected Member Functions | |
void | setOutputBuffer (IBuffer output) |
IBuffer | getOutputBuffer () |
void | add (char[] name, void(*dg)(IBuffer)) |
void | add (char[] name, char[] value) |
void | addInt (char[] name, int value) |
void | addDate (char[] name, long value) |
Protected Attributes | |
TokenStack | stack |
Private Attributes | |
IBuffer | input |
IBuffer | output |
bool | parsed |
bool | inclusive |
char | seperator |
char[1] | sepString |
Static Private Attributes | |
char[] | emptyString |
All tokens are mapped directly onto a buffer, so there is no memory allocation or copying involved.
Note that this class does not support deleting tokens. Supporting such operations require a different approach, such as mapping the tokens into a temporary buffer, and then setting token content in the stack to be null when it is deleted. This could be implemented as a wrapper upon the subclasses of HttpToken.
Definition at line 78 of file HttpTokens.d.
|
Setup an empty character array for later assignment. Reimplemented in HttpHeaders, HttpHeaders, HttpParams, and HttpParams. Definition at line 96 of file HttpTokens.d. References emptyString. |
|
Construct a set of tokens based upon the given delimeter, and an indication of whether said delimeter should be considered part of the left side (effectively the name). The latter is useful with headers, since the seperating ':' character should really be considered part of the name for purposes of subsequent token matching. Definition at line 113 of file HttpTokens.d. References inclusive, seperator, sepString, and TokenStack. |
|
Clone a source set of HttpTokens Definition at line 133 of file HttpTokens.d. References TokenStack::clone(), inclusive, seperator, and sepString. |
|
Read all tokens. Everything is mapped rather than being allocated & copied Reimplemented in HttpHeaders, and HttpParams. Referenced by parse(). |
|
Parse an input string. Definition at line 159 of file HttpTokens.d. References parse(), and IBuffer::setValidContent(). |
|
Reset this set of tokens. Definition at line 171 of file HttpTokens.d. References IBuffer::clear(), and TokenStack::reset(). Referenced by HttpRequest::reset(), and HttpClient::reset(). |
|
Have tokens been parsed yet? Definition at line 187 of file HttpTokens.d. Referenced by HttpRequest::getInputParameters(). |
|
Indicate whether tokens have been parsed or not. Definition at line 198 of file HttpTokens.d. Referenced by HttpParams::parse(), and HttpHeaders::parse(). |
|
Return the value of the provided header, or null if the header does not exist Definition at line 210 of file HttpTokens.d. References TokenStack::findToken(), split(), and HttpToken::value. Referenced by AdminServlet::addLogger(), getDate(), getInt(), AdminServlet::service(), and AdminServlet::setLoggerLevel(). |
|
Return the integer value of the provided header, or -1 if the header does not exist Definition at line 230 of file HttpTokens.d. References get(). Referenced by AdminServlet::addLogger(). |
|
Return the date value of the provided header, or -1 if the header does not exist Definition at line 246 of file HttpTokens.d. References get(). |
|
Iterate over the set of tokens Definition at line 261 of file HttpTokens.d. References split(). |
|
Output the token list to the provided writer Reimplemented from IWritable. Definition at line 282 of file HttpTokens.d. References IWriter::cr(), and IWriter::put(). |
|
split basic token into an HttpToken Definition at line 298 of file HttpTokens.d. References emptyString, inclusive, seperator, and Token::toString(). Referenced by get(), HttpTokens::FilteredTokens::opApply(), and opApply(). |
|
Create a filter for iterating over the tokens matching a particular name. Definition at line 329 of file HttpTokens.d. |
|
Set the output buffer for adding tokens to. This is used by the various MutableXXXX classes. Definition at line 398 of file HttpTokens.d. |
|
Return the buffer used for output. Reimplemented in HttpMutableHeaders. Definition at line 409 of file HttpTokens.d. |
|
Return a char[] representing the output. An empty array is returned if output was not configured. Definition at line 421 of file HttpTokens.d. References IBuffer::toString(). |
|
Add a token with the given name. The content is provided via the specified delegate. We stuff this name & content into the output buffer, and map a new Token onto the appropriate buffer slice. Definition at line 439 of file HttpTokens.d. References IBuffer::append(), IBuffer::getLimit(), inclusive, TokenStack::push(), sepString, and IBuffer::toString(). |
|
Add a simple name/value pair to the output Reimplemented in HttpMutableParams. Definition at line 465 of file HttpTokens.d. References add(), and IBuffer::append(). |
|
Add a name/integer pair to the output Reimplemented in HttpMutableParams. Definition at line 481 of file HttpTokens.d. References add(). |
|
Add a name/date(long) pair to the output Reimplemented in HttpMutableParams. Definition at line 495 of file HttpTokens.d. |
|
Definition at line 80 of file HttpTokens.d. Referenced by HttpTokens::FilteredTokens::opApply(). |
|
Definition at line 82 of file HttpTokens.d. |
|
Definition at line 82 of file HttpTokens.d. |
|
Definition at line 84 of file HttpTokens.d. |
|
Definition at line 85 of file HttpTokens.d. |
|
Definition at line 86 of file HttpTokens.d. |
|
Definition at line 87 of file HttpTokens.d. |
|
Definition at line 88 of file HttpTokens.d. |