Package io.undertow.annotationprocessor
Class AbstractParserGenerator
- java.lang.Object
-
- io.undertow.annotationprocessor.AbstractParserGenerator
-
- Direct Known Subclasses:
RequestParserGenerator,ResponseParserGenerator
public abstract class AbstractParserGenerator extends Object
- Author:
- Stuart Douglas
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceAbstractParserGenerator.CustomStateMachineA class that separates out the different behaviour of the three state machines (VERB, VERSION and HEADER)
-
Field Summary
Fields Modifier and Type Field Description static StringBAD_REQUEST_EXCEPTIONprotected static intBYTE_BUFFER_VARstatic StringCLASS_NAME_SUFFIXprotected StringconstructorDescriptorprotected static intCURRENT_STATE_VARstatic StringHANDLE_AFTER_VERSIONstatic StringHANDLE_HEADERstatic StringHANDLE_HEADER_VALUEstatic StringHANDLE_HTTP_VERBstatic StringHANDLE_HTTP_VERSIONstatic StringHANDLE_PATHprotected static intHTTP_RESULTstatic StringHTTP_STRING_CLASSstatic StringHTTP_STRING_DESCRIPTORstatic intNO_STATEprotected static intPARSE_STATE_VARprotected StringparseStateClassstatic intPREFIX_MATCHprotected StringresultClassprotected static intSTATE_CURRENT_BYTES_VARprotected static intSTATE_CURRENT_VARprotected static intSTATE_POS_VARprotected static intSTATE_STRING_BUILDER_VAR
-
Constructor Summary
Constructors Constructor Description AbstractParserGenerator(String parseStateClass, String resultClass, String constructorDescriptor, String existingClassName)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidcreateStateMachine(String[] originalItems, String className, org.jboss.classfilewriter.ClassFile file, org.jboss.classfilewriter.ClassMethod sctor, AtomicInteger fieldCounter, String methodName, AbstractParserGenerator.CustomStateMachine stateMachine, boolean expectNewline)protected abstract voidcreateStateMachines(String[] httpVerbs, String[] httpVersions, String[] standardHeaders, String className, org.jboss.classfilewriter.ClassFile file, org.jboss.classfilewriter.ClassMethod sctor, AtomicInteger fieldCounter)byte[]createTokenizer(String[] httpVerbs, String[] httpVersions, String[] standardHeaders)
-
-
-
Field Detail
-
BAD_REQUEST_EXCEPTION
public static final String BAD_REQUEST_EXCEPTION
- See Also:
- Constant Field Values
-
parseStateClass
protected final String parseStateClass
-
resultClass
protected String resultClass
-
constructorDescriptor
protected final String constructorDescriptor
-
HTTP_STRING_CLASS
public static final String HTTP_STRING_CLASS
- See Also:
- Constant Field Values
-
HTTP_STRING_DESCRIPTOR
public static final String HTTP_STRING_DESCRIPTOR
-
NO_STATE
public static final int NO_STATE
- See Also:
- Constant Field Values
-
PREFIX_MATCH
public static final int PREFIX_MATCH
- See Also:
- Constant Field Values
-
BYTE_BUFFER_VAR
protected static final int BYTE_BUFFER_VAR
- See Also:
- Constant Field Values
-
PARSE_STATE_VAR
protected static final int PARSE_STATE_VAR
- See Also:
- Constant Field Values
-
HTTP_RESULT
protected static final int HTTP_RESULT
- See Also:
- Constant Field Values
-
CURRENT_STATE_VAR
protected static final int CURRENT_STATE_VAR
- See Also:
- Constant Field Values
-
STATE_POS_VAR
protected static final int STATE_POS_VAR
- See Also:
- Constant Field Values
-
STATE_CURRENT_VAR
protected static final int STATE_CURRENT_VAR
- See Also:
- Constant Field Values
-
STATE_STRING_BUILDER_VAR
protected static final int STATE_STRING_BUILDER_VAR
- See Also:
- Constant Field Values
-
STATE_CURRENT_BYTES_VAR
protected static final int STATE_CURRENT_BYTES_VAR
- See Also:
- Constant Field Values
-
HANDLE_HTTP_VERB
public static final String HANDLE_HTTP_VERB
- See Also:
- Constant Field Values
-
HANDLE_PATH
public static final String HANDLE_PATH
- See Also:
- Constant Field Values
-
HANDLE_HTTP_VERSION
public static final String HANDLE_HTTP_VERSION
- See Also:
- Constant Field Values
-
HANDLE_AFTER_VERSION
public static final String HANDLE_AFTER_VERSION
- See Also:
- Constant Field Values
-
HANDLE_HEADER
public static final String HANDLE_HEADER
- See Also:
- Constant Field Values
-
HANDLE_HEADER_VALUE
public static final String HANDLE_HEADER_VALUE
- See Also:
- Constant Field Values
-
CLASS_NAME_SUFFIX
public static final String CLASS_NAME_SUFFIX
- See Also:
- Constant Field Values
-
-
Method Detail
-
createTokenizer
public byte[] createTokenizer(String[] httpVerbs, String[] httpVersions, String[] standardHeaders)
-
createStateMachines
protected abstract void createStateMachines(String[] httpVerbs, String[] httpVersions, String[] standardHeaders, String className, org.jboss.classfilewriter.ClassFile file, org.jboss.classfilewriter.ClassMethod sctor, AtomicInteger fieldCounter)
-
createStateMachine
protected void createStateMachine(String[] originalItems, String className, org.jboss.classfilewriter.ClassFile file, org.jboss.classfilewriter.ClassMethod sctor, AtomicInteger fieldCounter, String methodName, AbstractParserGenerator.CustomStateMachine stateMachine, boolean expectNewline)
-
-