// final [2] LDAPSTRING }
//
// Store substring final type
super.transitions[LdapStatesEnum.SUBSTRINGS_STATE.ordinal()][LdapConstants.SUBSTRINGS_FILTER_FINAL_TAG] = new GrammarTransition(
LdapStatesEnum.SUBSTRINGS_STATE, LdapStatesEnum.FINAL_STATE, LdapConstants.SUBSTRINGS_FILTER_FINAL_TAG,
new StoreFinalAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to any
// --------------------------------------------------------------------------------------------
// SubstringFilter ::= SEQUENCE {
// ...
// substrings SEQUENCE OF CHOICE {
// ...
// any [1] LDAPSTRING,
// ...
//
// Store substring any type
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.SUBSTRINGS_FILTER_ANY_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.ANY_STATE, LdapConstants.SUBSTRINGS_FILTER_ANY_TAG,
new StoreAnyAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to final
// --------------------------------------------------------------------------------------------
// SubstringFilter ::= SEQUENCE {
// ...
// substrings SEQUENCE OF CHOICE {
// ...
// final [2] LDAPSTRING }
//
// Store substring final type
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.SUBSTRINGS_FILTER_FINAL_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.FINAL_STATE, LdapConstants.SUBSTRINGS_FILTER_FINAL_TAG,
new StoreFinalAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to Attribute Description List
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// attributes AttributeDescriptionList }
//
// AttributeDescriptionList ::= SEQUENCE OF
// AttributeDescription
//
// Init attribute description list
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][UniversalTag.SEQUENCE.getValue()] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.ATTRIBUTE_DESCRIPTION_LIST_STATE, UniversalTag.SEQUENCE.getValue(),
new InitAttributeDescListAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to AND filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// and [0] SET OF Filter,
// ...
//
// Init AND filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.AND_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.AND_STATE, LdapConstants.AND_FILTER_TAG,
new InitAndFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to OR filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// ...
// or [1] SET OF Filter,
// ...
//
// Init OR filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.OR_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.OR_STATE, LdapConstants.OR_FILTER_TAG,
new InitOrFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to NOT filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// ...
// not [2] SET OF Filter,
// ...
//
// Init NOT filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.NOT_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.NOT_STATE, LdapConstants.NOT_FILTER_TAG,
new InitNotFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to Equality Match filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// ...
// equalityMatch [3] AttributeValueAssertion,
// ...
//
// Init NOT filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.EQUALITY_MATCH_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.EQUALITY_MATCH_STATE, LdapConstants.EQUALITY_MATCH_FILTER_TAG,
new InitEqualityMatchFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to Substrings filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// ...
// substrings [4] SubstringFilter,
// ...
//
// Init Substrings filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.SUBSTRINGS_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.SUBSTRING_FILTER_STATE, LdapConstants.SUBSTRINGS_FILTER_TAG,
new InitSubstringsFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to GreaterOrEqual filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// ...
// greaterOrEqual [5] AttributeValueAssertion,
// ...
//
// Init Greater Or Equal filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.GREATER_OR_EQUAL_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.GREATER_OR_EQUAL_STATE,
LdapConstants.GREATER_OR_EQUAL_FILTER_TAG, new InitGreaterOrEqualFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to LessOrEqual filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// ...
// LessOrEqual [6] AttributeValueAssertion,
// ...
//
// Init Less Or Equal filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.LESS_OR_EQUAL_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.LESS_OR_EQUAL_STATE, LdapConstants.LESS_OR_EQUAL_FILTER_TAG,
new InitLessOrEqualFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to Present filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// ...
// present [7] AttributeDescription,
// ...
//
// Init present filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.PRESENT_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.PRESENT_STATE, LdapConstants.PRESENT_FILTER_TAG,
new InitPresentFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to Approx Match filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// ...
// approxMatch [8] AttributeValueAssertion,
// ...
//
// Init Approx Match filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.APPROX_MATCH_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.APPROX_MATCH_STATE, LdapConstants.APPROX_MATCH_FILTER_TAG,
new InitApproxMatchFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from initial to Extensible Match filter
// --------------------------------------------------------------------------------------------
// SearchRequest ::= [APPLICATION 3] SEQUENCE {
// ...
// filter Filter,
// ...
//
// Filter ::= CHOICE {
// ...
// extensibleMatch [9] MatchingRuleAssertion,
// ...
//
// Init Assertion Value Filter filter
super.transitions[LdapStatesEnum.INITIAL_STATE.ordinal()][LdapConstants.EXTENSIBLE_MATCH_FILTER_TAG] = new GrammarTransition(
LdapStatesEnum.INITIAL_STATE, LdapStatesEnum.EXTENSIBLE_MATCH_STATE,
LdapConstants.EXTENSIBLE_MATCH_FILTER_TAG, new InitExtensibleMatchFilterAction() );
// --------------------------------------------------------------------------------------------
// Transition from any to final
// --------------------------------------------------------------------------------------------
// SubstringFilter ::= SEQUENCE {
// ...
// substrings SEQUENCE OF CHOICE {
// ...
// final [2] LDAPSTRING }
//
// Store substring final type
super.transitions[LdapStatesEnum.ANY_STATE.ordinal()][LdapConstants.SUBSTRINGS_FILTER_FINAL_TAG] = new GrammarTransition(
LdapStatesEnum.ANY_STATE, LdapStatesEnum.FINAL_STATE, LdapConstants.SUBSTRINGS_FILTER_FINAL_TAG,
new StoreFinalAction() );
// --------------------------------------------------------------------------------------------
// Transition from any to any
// --------------------------------------------------------------------------------------------
// SubstringFilter ::= SEQUENCE {