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