* roottypes.cs: Rename from tree.cs.
[mono.git] / mcs / class / Novell.Directory.Ldap / Novell.Directory.Ldap.Extensions / NamingContextConstants.cs
1 /******************************************************************************
2 * The MIT License
3 * Copyright (c) 2003 Novell Inc.  www.novell.com
4
5 * Permission is hereby granted, free of charge, to any person obtaining  a copy
6 * of this software and associated documentation files (the Software), to deal
7 * in the Software without restriction, including  without limitation the rights
8 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 
9 * copies of the Software, and to  permit persons to whom the Software is 
10 * furnished to do so, subject to the following conditions:
11
12 * The above copyright notice and this permission notice shall be included in 
13 * all copies or substantial portions of the Software.
14
15 * THE SOFTWARE IS PROVIDED AS IS, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 * SOFTWARE.
22 *******************************************************************************/
23 //
24 // Novell.Directory.Ldap.Extensions.NamingContextConstants.cs
25 //
26 // Author:
27 //   Sunil Kumar (Sunilk@novell.com)
28 //
29 // (C) 2003 Novell, Inc (http://www.novell.com)
30 //
31
32 using System;
33
34 namespace Novell.Directory.Ldap.Extensions
35 {
36         
37         /*
38         * public class NamingContextConstants
39         */
40         
41         /// <summary> Contains a collection of constants used by the Novell Ldap extensions.</summary>
42         public class NamingContextConstants
43         {
44                 
45                 /// <summary> A constant for the createNamingContextRequest OID.</summary>
46                 public const System.String CREATE_NAMING_CONTEXT_REQ = "2.16.840.1.113719.1.27.100.3";
47                 
48                 /// <summary> A constant for the createNamingContextResponse OID.</summary>
49                 public const System.String CREATE_NAMING_CONTEXT_RES = "2.16.840.1.113719.1.27.100.4";
50                 
51                 /// <summary> A constant for the mergeNamingContextRequest OID.</summary>
52                 public const System.String MERGE_NAMING_CONTEXT_REQ = "2.16.840.1.113719.1.27.100.5";
53                 
54                 /// <summary> A constant for the mergeNamingContextResponse OID.</summary>
55                 public const System.String MERGE_NAMING_CONTEXT_RES = "2.16.840.1.113719.1.27.100.6";
56                 
57                 /// <summary> A constant for the addReplicaRequest OID.</summary>
58                 public const System.String ADD_REPLICA_REQ = "2.16.840.1.113719.1.27.100.7";
59                 
60                 /// <summary> A constant for the addReplicaResponse OID.</summary>
61                 public const System.String ADD_REPLICA_RES = "2.16.840.1.113719.1.27.100.8";
62                 
63                 /// <summary> A constant for the refreshServerRequest OID.</summary>
64                 public const System.String REFRESH_SERVER_REQ = "2.16.840.1.113719.1.27.100.9";
65                 
66                 /// <summary> A constant for the refreshServerResponse OID.</summary>
67                 public const System.String REFRESH_SERVER_RES = "2.16.840.1.113719.1.27.100.10";
68                 
69                 /// <summary> A constant for the removeReplicaRequest OID.</summary>
70                 public const System.String DELETE_REPLICA_REQ = "2.16.840.1.113719.1.27.100.11";
71                 
72                 /// <summary> A constant for the removeReplicaResponse OID.</summary>
73                 public const System.String DELETE_REPLICA_RES = "2.16.840.1.113719.1.27.100.12";
74                 
75                 /// <summary> A constant for the namingContextEntryCountRequest OID.</summary>
76                 public const System.String NAMING_CONTEXT_COUNT_REQ = "2.16.840.1.113719.1.27.100.13";
77                 
78                 /// <summary> A constant for the namingContextEntryCountResponse OID.</summary>
79                 public const System.String NAMING_CONTEXT_COUNT_RES = "2.16.840.1.113719.1.27.100.14";
80                 
81                 /// <summary> A constant for the changeReplicaTypeRequest OID.</summary>
82                 public const System.String CHANGE_REPLICA_TYPE_REQ = "2.16.840.1.113719.1.27.100.15";
83                 
84                 /// <summary> A constant for the changeReplicaTypeResponse OID.</summary>
85                 public const System.String CHANGE_REPLICA_TYPE_RES = "2.16.840.1.113719.1.27.100.16";
86                 
87                 /// <summary> A constant for the getReplicaInfoRequest OID.</summary>
88                 public const System.String GET_REPLICA_INFO_REQ = "2.16.840.1.113719.1.27.100.17";
89                 
90                 /// <summary> A constant for the getReplicaInfoResponse OID.</summary>
91                 public const System.String GET_REPLICA_INFO_RES = "2.16.840.1.113719.1.27.100.18";
92                 
93                 /// <summary> A constant for the listReplicaRequest OID.</summary>
94                 public const System.String LIST_REPLICAS_REQ = "2.16.840.1.113719.1.27.100.19";
95                 
96                 /// <summary> A constant for the listReplicaResponse OID.</summary>
97                 public const System.String LIST_REPLICAS_RES = "2.16.840.1.113719.1.27.100.20";
98                 
99                 /// <summary> A constant for the receiveAllUpdatesRequest OID.</summary>
100                 public const System.String RECEIVE_ALL_UPDATES_REQ = "2.16.840.1.113719.1.27.100.21";
101                 
102                 /// <summary> A constant for the receiveAllUpdatesResponse OID.</summary>
103                 public const System.String RECEIVE_ALL_UPDATES_RES = "2.16.840.1.113719.1.27.100.22";
104                 
105                 /// <summary> A constant for the sendAllUpdatesRequest OID.</summary>
106                 public const System.String SEND_ALL_UPDATES_REQ = "2.16.840.1.113719.1.27.100.23";
107                 
108                 /// <summary> A constant for the sendAllUpdatesResponse OID.</summary>
109                 public const System.String SEND_ALL_UPDATES_RES = "2.16.840.1.113719.1.27.100.24";
110                 
111                 /// <summary> A constant for the requestNamingContextSyncRequest OID.</summary>
112                 public const System.String NAMING_CONTEXT_SYNC_REQ = "2.16.840.1.113719.1.27.100.25";
113                 
114                 /// <summary> A constant for the requestNamingContextSyncResponse OID.</summary>
115                 public const System.String NAMING_CONTEXT_SYNC_RES = "2.16.840.1.113719.1.27.100.26";
116                 
117                 /// <summary> A constant for the requestSchemaSyncRequest OID.</summary>
118                 public const System.String SCHEMA_SYNC_REQ = "2.16.840.1.113719.1.27.100.27";
119                 
120                 /// <summary> A constant for the requestSchemaSyncResponse OID.</summary>
121                 public const System.String SCHEMA_SYNC_RES = "2.16.840.1.113719.1.27.100.28";
122                 
123                 /// <summary> A constant for the abortNamingContextOperationRequest OID.</summary>
124                 public const System.String ABORT_NAMING_CONTEXT_OP_REQ = "2.16.840.1.113719.1.27.100.29";
125                 
126                 /// <summary> A constant for the abortNamingContextOperationResponse OID.</summary>
127                 public const System.String ABORT_NAMING_CONTEXT_OP_RES = "2.16.840.1.113719.1.27.100.30";
128                 
129                 /// <summary> A constant for the getContextIdentityNameRequest OID.</summary>
130                 public const System.String GET_IDENTITY_NAME_REQ = "2.16.840.1.113719.1.27.100.31";
131                 
132                 /// <summary> A constant for the getContextIdentityNameResponse OID.</summary>
133                 public const System.String GET_IDENTITY_NAME_RES = "2.16.840.1.113719.1.27.100.32";
134                 
135                 /// <summary> A constant for the getEffectivePrivilegesRequest OID.</summary>
136                 public const System.String GET_EFFECTIVE_PRIVILEGES_REQ = "2.16.840.1.113719.1.27.100.33";
137                 
138                 /// <summary> A constant for the getEffectivePrivilegesResponse OID.</summary>
139                 public const System.String GET_EFFECTIVE_PRIVILEGES_RES = "2.16.840.1.113719.1.27.100.34";
140                 
141                 /// <summary> A constant for the setReplicationFilterRequest OID.</summary>
142                 public const System.String SET_REPLICATION_FILTER_REQ = "2.16.840.1.113719.1.27.100.35";
143                 
144                 /// <summary> A constant for the setReplicationFilterResponse OID.</summary>
145                 public const System.String SET_REPLICATION_FILTER_RES = "2.16.840.1.113719.1.27.100.36";
146                 
147                 /// <summary> A constant for the getReplicationFilterRequest OID.</summary>
148                 public const System.String GET_REPLICATION_FILTER_REQ = "2.16.840.1.113719.1.27.100.37";
149                 
150                 /// <summary> A constant for the getReplicationFilterResponse OID.</summary>
151                 public const System.String GET_REPLICATION_FILTER_RES = "2.16.840.1.113719.1.27.100.38";
152                 
153                 /// <summary> A constant for the createOrphanNamingContextRequest OID.</summary>
154                 public const System.String CREATE_ORPHAN_NAMING_CONTEXT_REQ = "2.16.840.1.113719.1.27.100.39";
155                 
156                 /// <summary> A constant for the createOrphanNamingContextResponse OID.</summary>
157                 public const System.String CREATE_ORPHAN_NAMING_CONTEXT_RES = "2.16.840.1.113719.1.27.100.40";
158                 
159                 /// <summary> A constant for the removeOrphanNamingContextRequest OID.</summary>
160                 public const System.String REMOVE_ORPHAN_NAMING_CONTEXT_REQ = "2.16.840.1.113719.1.27.100.41";
161                 
162                 /// <summary> A constant for the removeOrphanNamingContextResponse OID.</summary>
163                 public const System.String REMOVE_ORPHAN_NAMING_CONTEXT_RES = "2.16.840.1.113719.1.27.100.42";
164                 
165                 /// <summary> A constant for the triggerBackLinkerRequest OID.</summary>
166                 public const System.String TRIGGER_BKLINKER_REQ = "2.16.840.1.113719.1.27.100.43";
167                 
168                 /// <summary> A constant for the triggerBackLinkerResponse OID.</summary>
169                 public const System.String TRIGGER_BKLINKER_RES = "2.16.840.1.113719.1.27.100.44";
170                 
171                 /// <summary> A constant for the triggerJanitorRequest OID.</summary>
172                 public const System.String TRIGGER_JANITOR_REQ = "2.16.840.1.113719.1.27.100.47";
173                 
174                 /// <summary> A constant for the triggerJanitorResponse OID.</summary>
175                 public const System.String TRIGGER_JANITOR_RES = "2.16.840.1.113719.1.27.100.48";
176                 
177                 /// <summary> A constant for the triggerLimberRequest OID.</summary>
178                 public const System.String TRIGGER_LIMBER_REQ = "2.16.840.1.113719.1.27.100.49";
179                 
180                 /// <summary> A constant for the triggerLimberResponse OID.</summary>
181                 public const System.String TRIGGER_LIMBER_RES = "2.16.840.1.113719.1.27.100.50";
182                 
183                 /// <summary> A constant for the triggerSkulkerRequest OID.</summary>
184                 public const System.String TRIGGER_SKULKER_REQ = "2.16.840.1.113719.1.27.100.51";
185                 
186                 /// <summary> A constant for the triggerSkulkerResponse OID.</summary>
187                 public const System.String TRIGGER_SKULKER_RES = "2.16.840.1.113719.1.27.100.52";
188                 
189                 /// <summary> A constant for the triggerSchemaSyncRequest OID.</summary>
190                 public const System.String TRIGGER_SCHEMA_SYNC_REQ = "2.16.840.1.113719.1.27.100.53";
191                 
192                 /// <summary> A constant for the triggerSchemaSyncResponse OID.</summary>
193                 public const System.String TRIGGER_SCHEMA_SYNC_RES = "2.16.840.1.113719.1.27.100.54";
194                 
195                 /// <summary> A constant for the triggerPartitionPurgeRequest OID.</summary>
196                 public const System.String TRIGGER_PART_PURGE_REQ = "2.16.840.1.113719.1.27.100.55";
197                 
198                 /// <summary> A constant for the triggerPartitionPurgeResponse OID.</summary>
199                 public const System.String TRIGGER_PART_PURGE_RES = "2.16.840.1.113719.1.27.100.56";
200                 
201                 
202                 /// <summary> A constant that specifies that all servers in a replica ring must be
203                 /// running for a naming context operation to proceed.
204                 /// </summary>
205                 public const int Ldap_ENSURE_SERVERS_UP = 1;
206                 
207                 
208                 /// <summary> Identifies this replica as the master replica of the naming context.
209                 /// 
210                 /// On this type of replica, entries can be modified, and naming context
211                 /// operations can be performed.
212                 /// </summary>
213                 public const int Ldap_RT_MASTER = 0;
214                 
215                 /// <summary> Identifies this replica as a secondary replica of the naming context.
216                 /// 
217                 /// On this type of replica, read and write operations can be performed,
218                 /// and entries can be modified.
219                 /// </summary>
220                 public const int Ldap_RT_SECONDARY = 1;
221                 
222                 /// <summary> Identifies this replica as a read-only replica of the naming context.
223                 /// 
224                 /// Only Novell eDirectory synchronization processes can modifie
225                 /// entries on this replica.
226                 /// </summary>
227                 public const int Ldap_RT_READONLY = 2;
228                 
229                 /// <summary> Identifies this replica as a subordinate reference replica of the
230                 /// naming context.
231                 /// 
232                 /// Novell eDirectory automatically adds these replicas to a server
233                 /// when the server does not contain replicas of all child naming contexts.
234                 /// Only eDirectory can modify information on these types of replicas. 
235                 /// </summary>
236                 public const int Ldap_RT_SUBREF = 3;
237                 
238                 /// <summary> Identifies this replica as a read/write replica of the naming context,
239                 /// but the replica contains sparse data.
240                 /// 
241                 /// The replica has been configured to contain only specified object types
242                 /// and attributes. On this type of replica, only the attributes and objects
243                 /// contained in the sparse data can be modified.
244                 /// </summary>
245                 public const int Ldap_RT_SPARSE_WRITE = 4;
246                 
247                 /// <summary> Identifies this replica as a read-only replica of the naming context,
248                 /// but the replica contains sparse data.
249                 /// 
250                 /// The replica has been configured to contain only specified object types
251                 /// and attributes. On this type of replica, only Novell eDirectory
252                 /// synchronization processes can modify the sparse data.
253                 /// </summary>
254                 public const int Ldap_RT_SPARSE_READ = 5;
255                 
256                 //Replica States
257                 
258                 /// <summary> Indicates that the replica is fully functioning and capable of responding
259                 /// to requests.
260                 /// </summary>
261                 public const int Ldap_RS_ON = 0;
262                 
263                 /// <summary> Indicates that a new replica has been added but has not received a full
264                 /// download of information from the replica ring.
265                 /// </summary>
266                 public const int Ldap_RS_NEW_REPLICA = 1;
267                 
268                 /// <summary> Indicates that the replica is being deleted and that the request has
269                 /// been received.
270                 /// </summary>
271                 public const int Ldap_RS_DYING_REPLICA = 2;
272                 
273                 /// <summary> Indicates that the replica is locked. The move operation uses this state
274                 /// to lock the parent naming context of the child naming context that is moving.
275                 /// </summary>
276                 public const int Ldap_RS_LOCKED = 3;
277                 
278                 /// <summary> Indicates that a new replica has finished receiving its download from the
279                 /// master replica and is now receiving synchronization updates from other
280                 /// replicas.
281                 /// </summary>
282                 public const int Ldap_RS_TRANSITION_ON = 6;
283                 
284                 
285                 /// <summary> Indicates that the dying replica needs to synchronize with another replica
286                 /// before being converted either to an external reference, if a root replica,
287                 /// or to a subordinate reference, if a non-root replica.
288                 /// </summary>
289                 public const int Ldap_RS_DEAD_REPLICA = 7;
290                 
291                 /// <summary> Indicates that the subordinate references of the new replica are being
292                 /// added.
293                 /// </summary>
294                 public const int Ldap_RS_BEGIN_ADD = 8;
295                 
296                 /// <summary> Indicates that a naming context is receiving a new master replica.
297                 /// 
298                 /// The replica that will be the new master replica is set to this state.
299                 /// </summary>
300                 public const int Ldap_RS_MASTER_START = 11;
301                 
302                 /// <summary> Indicates that a naming context has a new master replica.
303                 /// 
304                 /// When the new master is set to this state, Novell eDirectory knows
305                 /// that the replica is now the master and changes its replica type to
306                 /// master and the old master to read/write.
307                 /// </summary>
308                 public const int Ldap_RS_MASTER_DONE = 12;
309                 
310                 /// <summary> Indicates that the naming context is going to split into two naming contexts.
311                 /// 
312                 /// In this state, other replicas of the naming context are informed of the
313                 /// pending split.
314                 /// </summary>
315                 public const int Ldap_RS_SS_0 = 48; // Replica splitting 0
316                 
317                 /// <summary> Indicates that that the split naming context operation has started.
318                 /// 
319                 /// When the split is finished, the state will change to RS_ON.
320                 /// </summary>
321                 public const int Ldap_RS_SS_1 = 49; // Replica splitting 1
322                 
323                 /// <summary> Indicates that that two naming contexts are in the process of joining
324                 /// into one naming context.
325                 /// 
326                 /// In this state, the replicas that are affected are informed of the join
327                 /// operation. The master replica of the parent and child naming contexts are
328                 /// first set to this state and then all the replicas of the parent and child.
329                 /// New replicas are added where needed.
330                 /// </summary>
331                 public const int Ldap_RS_JS_0 = 64; // Replica joining 0
332                 
333                 /// <summary> Indicates that that two naming contexts are in the process of joining
334                 /// into one naming context.
335                 /// 
336                 /// This state indicates that the join operation is waiting for the new
337                 /// replicas to synchronize and move to the RS_ON state.
338                 /// </summary>
339                 public const int Ldap_RS_JS_1 = 65; // Replica joining 1
340                 
341                 /// <summary> Indicates that that two naming contexts are in the process of joining
342                 /// into one naming context.
343                 /// 
344                 /// This state indicates that all the new replicas are in the RS_ON state
345                 /// and that the rest of the work can be completed.
346                 /// </summary>
347                 public const int Ldap_RS_JS_2 = 66; // Replica joining 2
348                 
349                 
350                 // Values for flags used in the replica info class structure
351                 
352                 /// <summary> Indicates that the replica is involved with a partition operation,
353                 /// for example, merging a tree or moving a subtree.
354                 /// </summary>
355                 public const int Ldap_DS_FLAG_BUSY = 0x0001;
356                 
357                 /// <summary> Indicates that this naming context is on the DNS federation boundary.
358                 /// This flag is only set on DNS trees.
359                 /// </summary>
360                 public const int Ldap_DS_FLAG_BOUNDARY = 0x0002;
361                 
362                 
363                 public NamingContextConstants()
364                 {
365                 }
366         }
367 }