1 /* 2 * Licensed to the Apache Software Foundation (ASF) under one 3 * or more contributor license agreements. See the NOTICE file 4 * distributed with this work for additional information 5 * regarding copyright ownership. The ASF licenses this file 6 * to you under the Apache License, Version 2.0 (the 7 * "License"); you may not use this file except in compliance 8 * with the License. You may obtain a copy of the License at 9 * 10 * http://www.apache.org/licenses/LICENSE-2.0 11 * 12 * Unless required by applicable law or agreed to in writing, 13 * software distributed under the License is distributed on an 14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 15 * KIND, either express or implied. See the License for the 16 * specific language governing permissions and limitations 17 * under the License. 18 * 19 */ 20 package org.apache.directory.api.ldap.extras.controls.syncrepl_impl; 21 22 23 import org.apache.directory.api.asn1.ber.grammar.States; 24 25 26 /** 27 * This class store the SyncInfoValueControl's grammar constants. It is also used for 28 * debugging purposes. 29 * 30 * @author <a href="mailto:dev@directory.apache.org">Apache Directory Project</a> 31 */ 32 public enum SyncInfoValueStatesEnum implements States 33 { 34 // ~ Static fields/initializers 35 // ----------------------------------------------------------------- 36 37 /** The END_STATE */ 38 END_STATE, 39 40 // ========================================================================= 41 // SyncRequestValue control grammar states 42 // ========================================================================= 43 /** Initial state */ 44 START_STATE, 45 46 /** NewCookie state */ 47 NEW_COOKIE_STATE, 48 49 /** RefreshDelete state */ 50 REFRESH_DELETE_STATE, 51 52 /** RefreshDelete cookie state */ 53 REFRESH_DELETE_COOKIE_STATE, 54 55 /** RefreshDelete refreshDone state */ 56 REFRESH_DELETE_REFRESH_DONE_STATE, 57 58 /** RefreshPresent state */ 59 REFRESH_PRESENT_STATE, 60 61 /** RefreshPresent cookie state */ 62 REFRESH_PRESENT_COOKIE_STATE, 63 64 /** RefreshPresent refreshDone state */ 65 REFRESH_PRESENT_REFRESH_DONE_STATE, 66 67 /** SyncIdSet state */ 68 SYNC_ID_SET_STATE, 69 70 /** SyncIdSet cookie state */ 71 SYNC_ID_SET_COOKIE_STATE, 72 73 /** SyncIdSet refreshDone state */ 74 SYNC_ID_SET_REFRESH_DELETES_STATE, 75 76 /** SyncIdSet SET OF UUIDs state */ 77 SYNC_ID_SET_SET_OF_UUIDS_STATE, 78 79 /** SyncIdSet UUID state */ 80 SYNC_ID_SET_UUID_STATE, 81 82 /** terminal state */ 83 LAST_SYNC_INFO_VALUE_STATE; 84 85 /** 86 * Get the grammar name 87 * 88 * @return The grammar name 89 */ 90 public String getGrammarName() 91 { 92 return "SYNC_INFO_VALUE_GRAMMAR"; 93 } 94 95 96 /** 97 * Get the string representing the state 98 * 99 * @param state The state number 100 * @return The String representing the state 101 */ 102 public String getState( int state ) 103 { 104 return ( state == END_STATE.ordinal() ) ? "SYNC_INFO_VALUE_END_STATE" : this.name(); 105 } 106 107 108 /** 109 * {@inheritDoc} 110 */ 111 @Override 112 public boolean isEndState() 113 { 114 return this == END_STATE; 115 } 116 117 118 /** 119 * {@inheritDoc} 120 */ 121 @Override 122 public SyncInfoValueStatesEnum getStartState() 123 { 124 return START_STATE; 125 } 126 }