001/*
002 *  Licensed to the Apache Software Foundation (ASF) under one
003 *  or more contributor license agreements.  See the NOTICE file
004 *  distributed with this work for additional information
005 *  regarding copyright ownership.  The ASF licenses this file
006 *  to you under the Apache License, Version 2.0 (the
007 *  "License"); you may not use this file except in compliance
008 *  with the License.  You may obtain a copy of the License at
009 *  
010 *    http://www.apache.org/licenses/LICENSE-2.0
011 *  
012 *  Unless required by applicable law or agreed to in writing,
013 *  software distributed under the License is distributed on an
014 *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
015 *  KIND, either express or implied.  See the License for the
016 *  specific language governing permissions and limitations
017 *  under the License. 
018 *  
019 */
020package org.apache.directory.api.dsmlv2;
021
022
023/**
024 * This class store the Dsml grammar's constants. It is also used for debugging
025 * purpose.
026 *
027 * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a>
028 */
029public enum Dsmlv2StatesEnum
030{
031    /** The initial state of every grammar */
032    INIT_GRAMMAR_STATE,
033
034    /** The ending state for every grammars */
035    GRAMMAR_END,
036
037    //====================================================
038    //  <batchRequest> ... </batchRequest>
039    //====================================================
040    /** The &lt;batchRequest&gt; tag */
041    BATCHREQUEST_START_TAG,
042
043    BATCHREQUEST_LOOP,
044
045    /** The &lt;/batchRequest&gt; tag */
046    BATCHREQUEST_END_TAG,
047
048    //====================================================
049    //  <abandonRequest> ... </abandonRequest>
050    //====================================================
051    /** The &lt;abandonRequest&gt; tag */
052    ABANDON_REQUEST_START_TAG,
053
054    /** The &lt;control&gt; tag */
055    ABANDON_REQUEST_CONTROL_START_TAG,
056
057    /** The &lt;/control&gt; tag */
058    ABANDON_REQUEST_CONTROL_END_TAG,
059
060    /** The &lt;controlValue&gt; tag */
061    ABANDON_REQUEST_CONTROLVALUE_START_TAG,
062
063    /** The &lt;/controlValue&gt; tag */
064    ABANDON_REQUEST_CONTROLVALUE_END_TAG,
065
066    //====================================================
067    //  <addRequest> ... </addRequest>
068    //====================================================
069    /** The &lt;addRequest&gt; tag */
070    ADD_REQUEST_START_TAG,
071
072    /** The &lt;control&gt; tag */
073    ADD_REQUEST_CONTROL_START_TAG,
074
075    /** The &lt;/control&gt; tag */
076    ADD_REQUEST_CONTROL_END_TAG,
077
078    /** The &lt;controlValue&gt; tag */
079    ADD_REQUEST_CONTROLVALUE_START_TAG,
080
081    /** The &lt;/controlValue&gt; tag */
082    ADD_REQUEST_CONTROLVALUE_END_TAG,
083
084    /** The &lt;attr&gt; tag */
085    ADD_REQUEST_ATTR_START_TAG,
086
087    /** The &lt;/attr&gt; tag */
088    ADD_REQUEST_ATTR_END_TAG,
089
090    /** The &lt;value&gt; tag */
091    ADD_REQUEST_VALUE_START_TAG,
092
093    /** The &lt;/value&gt; tag */
094    ADD_REQUEST_VALUE_END_TAG,
095
096    //====================================================
097    //  <authRequest> ... </authRequest>
098    //====================================================
099    /** The &lt;authRequest&gt; tag */
100    AUTH_REQUEST_START_TAG,
101
102    /** The &lt;control&gt; tag */
103    AUTH_REQUEST_CONTROL_START_TAG,
104
105    /** The &lt;/control&gt; tag */
106    AUTH_REQUEST_CONTROL_END_TAG,
107
108    /** The &lt;controlValue&gt; tag */
109    AUTH_REQUEST_CONTROLVALUE_START_TAG,
110
111    /** The &lt;/controlValue&gt; tag */
112    AUTH_REQUEST_CONTROLVALUE_END_TAG,
113
114    //====================================================
115    //  <compareRequest> ... </compareRequest>
116    //====================================================
117    /** The &lt;compareRequest&gt; tag */
118    COMPARE_REQUEST_START_TAG,
119
120    /** The &lt;control&gt; tag */
121    COMPARE_REQUEST_CONTROL_START_TAG,
122
123    /** The &lt;/control&gt; tag */
124    COMPARE_REQUEST_CONTROL_END_TAG,
125
126    /** The &lt;controlValue&gt; tag */
127    COMPARE_REQUEST_CONTROLVALUE_START_TAG,
128
129    /** The &lt;/controlValue&gt; tag */
130    COMPARE_REQUEST_CONTROLVALUE_END_TAG,
131
132    /** The &lt;assertion&gt; tag */
133    COMPARE_REQUEST_ASSERTION_START_TAG,
134
135    /** The &lt;/assertion&gt; tag */
136    COMPARE_REQUEST_ASSERTION_END_TAG,
137
138    /** The &lt;value&gt; tag */
139    COMPARE_REQUEST_VALUE_START_TAG,
140
141    /** The &lt;/value&gt; tag */
142    COMPARE_REQUEST_VALUE_END_TAG,
143
144    //====================================================
145    //  <delRequest> ... </delRequest>
146    //====================================================
147    /** The &lt;delRequest&gt; tag */
148    DEL_REQUEST_START_TAG,
149
150    /** The &lt;control&gt; tag */
151    DEL_REQUEST_CONTROL_START_TAG,
152
153    /** The &lt;/control&gt; tag */
154    DEL_REQUEST_CONTROL_END_TAG,
155
156    /** The &lt;controlValue&gt; tag */
157    DEL_REQUEST_CONTROLVALUE_START_TAG,
158
159    /** The &lt;/controlValue&gt; tag */
160    DEL_REQUEST_CONTROLVALUE_END_TAG,
161
162    //====================================================
163    //  <extendedRequest> ... </extendedRequest>
164    //====================================================
165    /** The &lt;extendedRequest&gt; tag */
166    EXTENDED_REQUEST_START_TAG,
167
168    /** The &lt;control&gt; tag */
169    EXTENDED_REQUEST_CONTROL_START_TAG,
170
171    /** The &lt;/control&gt; tag */
172    EXTENDED_REQUEST_CONTROL_END_TAG,
173
174    /** The &lt;controlValue&gt; tag */
175    EXTENDED_REQUEST_CONTROLVALUE_START_TAG,
176
177    /** The &lt;/controlValue&gt; tag */
178    EXTENDED_REQUEST_CONTROLVALUE_END_TAG,
179
180    /** The &lt;requestName&gt; tag */
181    EXTENDED_REQUEST_REQUESTNAME_START_TAG,
182
183    /** The &lt;/requestName&gt; tag */
184    EXTENDED_REQUEST_REQUESTNAME_END_TAG,
185
186    /** The &lt;requestValue&gt; tag */
187    EXTENDED_REQUEST_REQUESTVALUE_START_TAG,
188
189    /** The &lt;/requestValue&gt; tag */
190    EXTENDED_REQUEST_REQUESTVALUE_END_TAG,
191
192    //====================================================
193    //  <modDNRequest> ... </modDNRequest>
194    //====================================================
195    /** The &lt;modDNRequest&gt; tag */
196    MODIFY_DN_REQUEST_START_TAG,
197
198    /** The &lt;control&gt; tag */
199    MODIFY_DN_REQUEST_CONTROL_START_TAG,
200
201    /** The &lt;/control&gt; tag */
202    MODIFY_DN_REQUEST_CONTROL_END_TAG,
203
204    /** The &lt;controlValue&gt; tag */
205    MODIFY_DN_REQUEST_CONTROLVALUE_START_TAG,
206
207    /** The &lt;/controlValue&gt; tag */
208    MODIFY_DN_REQUEST_CONTROLVALUE_END_TAG,
209
210    //====================================================
211    //  <modifyRequest> ... </modifyRequest>
212    //====================================================
213    /** The &lt;modifyRequest&gt; tag */
214    MODIFY_REQUEST_START_TAG,
215
216    /** The &lt;control&gt; tag */
217    MODIFY_REQUEST_CONTROL_START_TAG,
218
219    /** The &lt;/control&gt; tag */
220    MODIFY_REQUEST_CONTROL_END_TAG,
221
222    /** The &lt;controlValue&gt; tag */
223    MODIFY_REQUEST_CONTROLVALUE_START_TAG,
224
225    /** The &lt;/controlValue&gt; tag */
226    MODIFY_REQUEST_CONTROLVALUE_END_TAG,
227
228    /** The &lt;modification&gt; tag */
229    MODIFY_REQUEST_MODIFICATION_START_TAG,
230
231    /** The &lt;/modification&gt; tag */
232    MODIFY_REQUEST_MODIFICATION_END_TAG,
233
234    /** The &lt;value&gt; tag */
235    MODIFY_REQUEST_VALUE_START_TAG,
236
237    /** The &lt;/value&gt; tag */
238    MODIFY_REQUEST_VALUE_END_TAG,
239
240    //====================================================
241    //  <searchRequest> ... </searchRequest>
242    //====================================================
243    /** The &lt;searchRequest&gt; tag */
244    SEARCH_REQUEST_START_TAG,
245
246    /** The &lt;control&gt; tag */
247    SEARCH_REQUEST_CONTROL_START_TAG,
248
249    /** The &lt;/control&gt; tag */
250    SEARCH_REQUEST_CONTROL_END_TAG,
251
252    /** The &lt;controlValue&gt; tag */
253    SEARCH_REQUEST_CONTROLVALUE_START_TAG,
254
255    /** The &lt;/controlValue&gt; tag */
256    SEARCH_REQUEST_CONTROLVALUE_END_TAG,
257
258    /** The &lt;filter&gt; tag */
259    SEARCH_REQUEST_FILTER_START_TAG,
260
261    /** The &lt;/filter&gt; tag */
262    SEARCH_REQUEST_FILTER_END_TAG,
263
264    /** The &lt;attributes&gt; tag */
265    SEARCH_REQUEST_ATTRIBUTES_START_TAG,
266
267    /** The &lt;/attributes&gt; tag */
268    SEARCH_REQUEST_ATTRIBUTES_END_TAG,
269
270    /** The &lt;attribute&gt; tag */
271    SEARCH_REQUEST_ATTRIBUTE_START_TAG,
272
273    /** The &lt;/attribute&gt; tag */
274    SEARCH_REQUEST_ATTRIBUTE_END_TAG,
275
276    /** The &lt;equalityMatch&gt; tag */
277    SEARCH_REQUEST_EQUALITYMATCH_START_TAG,
278
279    /** The &lt;subStrings&gt; tag */
280    SEARCH_REQUEST_SUBSTRINGS_START_TAG,
281
282    /** The &lt;/subStrings&gt; tag */
283    SEARCH_REQUEST_SUBSTRINGS_END_TAG,
284
285    /** The &lt;greaterOrEqual&gt; tag */
286    SEARCH_REQUEST_GREATEROREQUAL_START_TAG,
287
288    /** The &lt;lessOrEqual&gt; tag */
289    SEARCH_REQUEST_LESSOREQUAL_START_TAG,
290
291    /** The &lt;present&gt; tag */
292    SEARCH_REQUEST_PRESENT_START_TAG,
293
294    /** The &lt;approxMatch&gt; tag */
295    SEARCH_REQUEST_APPROXMATCH_START_TAG,
296
297    /** The &lt;extensibleMatch&gt; tag */
298    SEARCH_REQUEST_EXTENSIBLEMATCH_START_TAG,
299
300    /** The &lt;value&gt; tag */
301    SEARCH_REQUEST_EXTENSIBLEMATCH_VALUE_START_TAG,
302
303    /** The &lt;/value&gt; tag */
304    SEARCH_REQUEST_EXTENSIBLEMATCH_VALUE_END_TAG,
305
306    /** The &lt;initial&gt; tag */
307    SEARCH_REQUEST_INITIAL_START_TAG,
308
309    /** The &lt;/initial&gt; tag */
310    SEARCH_REQUEST_INITIAL_END_TAG,
311
312    /** The &lt;any&gt; tag */
313    SEARCH_REQUEST_ANY_START_TAG,
314
315    /** The &lt;/any&gt; tag */
316    SEARCH_REQUEST_ANY_END_TAG,
317
318    /** The &lt;final&gt; tag */
319    SEARCH_REQUEST_FINAL_START_TAG,
320
321    /** The &lt;/final&gt; tag */
322    SEARCH_REQUEST_FINAL_END_TAG,
323
324    /** The &lt;value&gt; tag */
325    SEARCH_REQUEST_VALUE_START_TAG,
326
327    /** The &lt;/value&gt; tag */
328    SEARCH_REQUEST_VALUE_END_TAG,
329
330    /** The Filter Loop state */
331    SEARCH_REQUEST_FILTER_LOOP,
332
333    //****************
334    // DSML Response 
335    //****************
336
337    /** The Batch Response Loop state */
338    BATCH_RESPONSE_LOOP,
339
340    /** The Error Response Loop state */
341    ERROR_RESPONSE,
342
343    /** The Message Start state */
344    MESSAGE_START,
345
346    /** The Message End state */
347    MESSAGE_END,
348
349    /** The Detail Start state */
350    DETAIL_START,
351
352    /** The Detail End state */
353    DETAIL_END,
354
355    /** The Extended Response state */
356    EXTENDED_RESPONSE,
357
358    /** The Extended Response Control Start state */
359    EXTENDED_RESPONSE_CONTROL_START,
360
361    /** The Extended Response Control End state */
362    EXTENDED_RESPONSE_CONTROL_END,
363
364    /** The Extended Response Control Value Start state */
365    EXTENDED_RESPONSE_CONTROL_VALUE_START,
366
367    /** The Extended Response Control Value End state */
368    EXTENDED_RESPONSE_CONTROL_VALUE_END,
369
370    /** The Extended Response Result Code Start state */
371    EXTENDED_RESPONSE_RESULT_CODE_START,
372
373    /** The Extended Response Result Code End state */
374    EXTENDED_RESPONSE_RESULT_CODE_END,
375
376    /** The Extended Response Error Message Start state */
377    EXTENDED_RESPONSE_ERROR_MESSAGE_START,
378
379    /** The Extended Response Error Message End state */
380    EXTENDED_RESPONSE_ERROR_MESSAGE_END,
381
382    /** The Extended Response Referral Start state */
383    EXTENDED_RESPONSE_REFERRAL_START,
384
385    /** The Extended Response Referral End state */
386    EXTENDED_RESPONSE_REFERRAL_END,
387
388    /** The Response Name Start state */
389    RESPONSE_NAME_START,
390
391    /** The Response Name End state */
392    RESPONSE_NAME_END,
393
394    /** The Response Start state */
395    RESPONSE_START,
396
397    /** The Response End state */
398    RESPONSE_END,
399
400    /** The LDAP Result state */
401    LDAP_RESULT,
402
403    /** The LDAP Result Control Start state */
404    LDAP_RESULT_CONTROL_START,
405
406    /** The LDAP Result Control End state */
407    LDAP_RESULT_CONTROL_END,
408
409    /** The LDAP Result Control Value Start state */
410    LDAP_RESULT_CONTROL_VALUE_START,
411
412    /** The LDAP Result Control Value End state */
413    LDAP_RESULT_CONTROL_VALUE_END,
414
415    /** The LDAP Result Result Code Start state */
416    LDAP_RESULT_RESULT_CODE_START,
417
418    /** The LDAP Result Result Code End state */
419    LDAP_RESULT_RESULT_CODE_END,
420
421    /** The LDAP Result Error Message Start state */
422    LDAP_RESULT_ERROR_MESSAGE_START,
423
424    /** The LDAP Result Error Message End state */
425    LDAP_RESULT_ERROR_MESSAGE_END,
426
427    /** The LDAP Result Referral Start state */
428    LDAP_RESULT_REFERRAL_START,
429
430    /** The LDAP Result Referral End state */
431    LDAP_RESULT_REFERRAL_END,
432
433    /** The LDAP Result End state */
434    LDAP_RESULT_END,
435
436    /** The Search Response state */
437    SEARCH_RESPONSE,
438
439    /** The Search Result Entry state */
440    SEARCH_RESULT_ENTRY,
441
442    /** The Search Result Entry Control Start state */
443    SEARCH_RESULT_ENTRY_CONTROL_START,
444
445    /** The Search Result Entry Control End state */
446    SEARCH_RESULT_ENTRY_CONTROL_END,
447
448    /** The Search Result Entry Control Value Start state */
449    SEARCH_RESULT_ENTRY_CONTROL_VALUE_START,
450
451    /** The Search Result Entry Control Value End state */
452    SEARCH_RESULT_ENTRY_CONTROL_VALUE_END,
453
454    /** The Search Result Entry Attr Start state */
455    SEARCH_RESULT_ENTRY_ATTR_START,
456
457    /** The Search Result Entry Attr End state */
458    SEARCH_RESULT_ENTRY_ATTR_END,
459
460    /** The Search Result Entry Value Start state */
461    SEARCH_RESULT_ENTRY_VALUE_START,
462
463    /** The Search Result Entry Value End state */
464    SEARCH_RESULT_ENTRY_VALUE_END,
465
466    /** The Search Result Entry Loop state */
467    SEARCH_RESULT_ENTRY_LOOP,
468
469    /** The Search Result Reference state */
470    SEARCH_RESULT_REFERENCE,
471
472    /** The Search Result Reference Control Start state */
473    SEARCH_RESULT_REFERENCE_CONTROL_START,
474
475    /** The Search Result Reference Control End state */
476    SEARCH_RESULT_REFERENCE_CONTROL_END,
477
478    /** The Search Result Reference Control Value Start state */
479    SEARCH_RESULT_REFERENCE_CONTROL_VALUE_START,
480
481    /** The Search Result Reference Control Value End state */
482    SEARCH_RESULT_REFERENCE_CONTROL_VALUE_END,
483
484    /** The Search Result Reference Ref Start state */
485    SEARCH_RESULT_REFERENCE_REF_START,
486
487    /** The Search Result Reference Ref End state */
488    SEARCH_RESULT_REFERENCE_REF_END,
489
490    /** The Search Result Reference Loop state */
491    SEARCH_RESULT_REFERENCE_LOOP,
492
493    /** The soap envelop start state */
494    SOAP_ENVELOPE_START_TAG,
495
496    /** The soap envelop end state */
497    SOAP_ENVELOPE_END_TAG,
498
499    /** The soap header start state */
500    SOAP_HEADER_START_TAG,
501
502    /** The soap header end state */
503    SOAP_HEADER_END_TAG,
504
505    /** The soap body start state */
506    SOAP_BODY_START_TAG,
507
508    /** The soap body end state */
509    SOAP_BODY_END_TAG,
510
511    /** The Search Result Done End state */
512    SEARCH_RESULT_DONE_END
513}