001/*
002 * CDDL HEADER START
003 *
004 * The contents of this file are subject to the terms of the
005 * Common Development and Distribution License, Version 1.0 only
006 * (the "License").  You may not use this file except in compliance
007 * with the License.
008 *
009 * You can obtain a copy of the license at legal-notices/CDDLv1_0.txt
010 * or http://forgerock.org/license/CDDLv1.0.html.
011 * See the License for the specific language governing permissions
012 * and limitations under the License.
013 *
014 * When distributing Covered Code, include this CDDL HEADER in each
015 * file and include the License file at legal-notices/CDDLv1_0.txt.
016 * If applicable, add the following below this CDDL HEADER, with the
017 * fields enclosed by brackets "[]" replaced with your own identifying
018 * information:
019 *      Portions Copyright [yyyy] [name of copyright owner]
020 *
021 * CDDL HEADER END
022 *
023 *
024 *      Copyright 2008 Sun Microsystems, Inc.
025 */
026package org.opends.server.admin.std.meta;
027
028
029
030import java.util.Collection;
031import org.forgerock.opendj.config.server.ConfigException;
032import org.opends.server.admin.client.AuthorizationException;
033import org.opends.server.admin.client.CommunicationException;
034import org.opends.server.admin.client.ConcurrentModificationException;
035import org.opends.server.admin.client.IllegalManagedObjectNameException;
036import org.opends.server.admin.client.ManagedObject;
037import org.opends.server.admin.client.ManagedObjectDecodingException;
038import org.opends.server.admin.client.MissingMandatoryPropertiesException;
039import org.opends.server.admin.client.OperationRejectedException;
040import org.opends.server.admin.DefinitionDecodingException;
041import org.opends.server.admin.InstantiableRelationDefinition;
042import org.opends.server.admin.ManagedObjectAlreadyExistsException;
043import org.opends.server.admin.ManagedObjectDefinition;
044import org.opends.server.admin.ManagedObjectNotFoundException;
045import org.opends.server.admin.PropertyException;
046import org.opends.server.admin.PropertyProvider;
047import org.opends.server.admin.server.ConfigurationAddListener;
048import org.opends.server.admin.server.ConfigurationDeleteListener;
049import org.opends.server.admin.server.ServerManagedObject;
050import org.opends.server.admin.SingletonRelationDefinition;
051import org.opends.server.admin.std.client.AccessControlHandlerCfgClient;
052import org.opends.server.admin.std.client.AccountStatusNotificationHandlerCfgClient;
053import org.opends.server.admin.std.client.AdministrationConnectorCfgClient;
054import org.opends.server.admin.std.client.AlertHandlerCfgClient;
055import org.opends.server.admin.std.client.AttributeSyntaxCfgClient;
056import org.opends.server.admin.std.client.AuthenticationPolicyCfgClient;
057import org.opends.server.admin.std.client.BackendCfgClient;
058import org.opends.server.admin.std.client.CertificateMapperCfgClient;
059import org.opends.server.admin.std.client.ConnectionHandlerCfgClient;
060import org.opends.server.admin.std.client.CryptoManagerCfgClient;
061import org.opends.server.admin.std.client.EntryCacheCfgClient;
062import org.opends.server.admin.std.client.ExtendedOperationHandlerCfgClient;
063import org.opends.server.admin.std.client.GlobalCfgClient;
064import org.opends.server.admin.std.client.GroupImplementationCfgClient;
065import org.opends.server.admin.std.client.IdentityMapperCfgClient;
066import org.opends.server.admin.std.client.KeyManagerProviderCfgClient;
067import org.opends.server.admin.std.client.LogPublisherCfgClient;
068import org.opends.server.admin.std.client.LogRetentionPolicyCfgClient;
069import org.opends.server.admin.std.client.LogRotationPolicyCfgClient;
070import org.opends.server.admin.std.client.MatchingRuleCfgClient;
071import org.opends.server.admin.std.client.MonitorProviderCfgClient;
072import org.opends.server.admin.std.client.PasswordGeneratorCfgClient;
073import org.opends.server.admin.std.client.PasswordStorageSchemeCfgClient;
074import org.opends.server.admin.std.client.PasswordValidatorCfgClient;
075import org.opends.server.admin.std.client.PluginRootCfgClient;
076import org.opends.server.admin.std.client.RootCfgClient;
077import org.opends.server.admin.std.client.RootDNCfgClient;
078import org.opends.server.admin.std.client.RootDSEBackendCfgClient;
079import org.opends.server.admin.std.client.SASLMechanismHandlerCfgClient;
080import org.opends.server.admin.std.client.SchemaProviderCfgClient;
081import org.opends.server.admin.std.client.SynchronizationProviderCfgClient;
082import org.opends.server.admin.std.client.TrustManagerProviderCfgClient;
083import org.opends.server.admin.std.client.VirtualAttributeCfgClient;
084import org.opends.server.admin.std.client.WorkQueueCfgClient;
085import org.opends.server.admin.std.server.AccessControlHandlerCfg;
086import org.opends.server.admin.std.server.AccountStatusNotificationHandlerCfg;
087import org.opends.server.admin.std.server.AdministrationConnectorCfg;
088import org.opends.server.admin.std.server.AlertHandlerCfg;
089import org.opends.server.admin.std.server.AttributeSyntaxCfg;
090import org.opends.server.admin.std.server.AuthenticationPolicyCfg;
091import org.opends.server.admin.std.server.BackendCfg;
092import org.opends.server.admin.std.server.CertificateMapperCfg;
093import org.opends.server.admin.std.server.ConnectionHandlerCfg;
094import org.opends.server.admin.std.server.CryptoManagerCfg;
095import org.opends.server.admin.std.server.EntryCacheCfg;
096import org.opends.server.admin.std.server.ExtendedOperationHandlerCfg;
097import org.opends.server.admin.std.server.GlobalCfg;
098import org.opends.server.admin.std.server.GroupImplementationCfg;
099import org.opends.server.admin.std.server.IdentityMapperCfg;
100import org.opends.server.admin.std.server.KeyManagerProviderCfg;
101import org.opends.server.admin.std.server.LogPublisherCfg;
102import org.opends.server.admin.std.server.LogRetentionPolicyCfg;
103import org.opends.server.admin.std.server.LogRotationPolicyCfg;
104import org.opends.server.admin.std.server.MatchingRuleCfg;
105import org.opends.server.admin.std.server.MonitorProviderCfg;
106import org.opends.server.admin.std.server.PasswordGeneratorCfg;
107import org.opends.server.admin.std.server.PasswordStorageSchemeCfg;
108import org.opends.server.admin.std.server.PasswordValidatorCfg;
109import org.opends.server.admin.std.server.PluginRootCfg;
110import org.opends.server.admin.std.server.RootCfg;
111import org.opends.server.admin.std.server.RootDNCfg;
112import org.opends.server.admin.std.server.RootDSEBackendCfg;
113import org.opends.server.admin.std.server.SASLMechanismHandlerCfg;
114import org.opends.server.admin.std.server.SchemaProviderCfg;
115import org.opends.server.admin.std.server.SynchronizationProviderCfg;
116import org.opends.server.admin.std.server.TrustManagerProviderCfg;
117import org.opends.server.admin.std.server.VirtualAttributeCfg;
118import org.opends.server.admin.std.server.WorkQueueCfg;
119import org.opends.server.admin.Tag;
120import org.opends.server.admin.TopCfgDefn;
121import org.opends.server.types.DN;
122
123
124
125/**
126 * An interface for querying the Root managed object definition meta
127 * information.
128 * <p>
129 * The root configuration provides an entry point to the rest of the
130 * OpenDJ configuration.
131 */
132public final class RootCfgDefn extends ManagedObjectDefinition<RootCfgClient, RootCfg> {
133
134  // The singleton configuration definition instance.
135  private static final RootCfgDefn INSTANCE = new RootCfgDefn();
136
137
138
139  // Define managed object tags.
140  static {
141    Tag.define("core-server");
142    Tag.define("database");
143    Tag.define("logging");
144    Tag.define("replication");
145    Tag.define("security");
146    Tag.define("user-management");
147  }
148
149
150
151  // The "access-control-handler" relation definition.
152  private static final SingletonRelationDefinition<AccessControlHandlerCfgClient, AccessControlHandlerCfg> RD_ACCESS_CONTROL_HANDLER;
153
154
155
156  // The "account-status-notification-handlers" relation definition.
157  private static final InstantiableRelationDefinition<AccountStatusNotificationHandlerCfgClient, AccountStatusNotificationHandlerCfg> RD_ACCOUNT_STATUS_NOTIFICATION_HANDLERS;
158
159
160
161  // The "administration-connector" relation definition.
162  private static final SingletonRelationDefinition<AdministrationConnectorCfgClient, AdministrationConnectorCfg> RD_ADMINISTRATION_CONNECTOR;
163
164
165
166  // The "alert-handlers" relation definition.
167  private static final InstantiableRelationDefinition<AlertHandlerCfgClient, AlertHandlerCfg> RD_ALERT_HANDLERS;
168
169
170
171  // The "attribute-syntaxes" relation definition.
172  private static final InstantiableRelationDefinition<AttributeSyntaxCfgClient, AttributeSyntaxCfg> RD_ATTRIBUTE_SYNTAXES;
173
174
175
176  // The "backends" relation definition.
177  private static final InstantiableRelationDefinition<BackendCfgClient, BackendCfg> RD_BACKENDS;
178
179
180
181  // The "certificate-mappers" relation definition.
182  private static final InstantiableRelationDefinition<CertificateMapperCfgClient, CertificateMapperCfg> RD_CERTIFICATE_MAPPERS;
183
184
185
186  // The "connection-handlers" relation definition.
187  private static final InstantiableRelationDefinition<ConnectionHandlerCfgClient, ConnectionHandlerCfg> RD_CONNECTION_HANDLERS;
188
189
190
191  // The "crypto-manager" relation definition.
192  private static final SingletonRelationDefinition<CryptoManagerCfgClient, CryptoManagerCfg> RD_CRYPTO_MANAGER;
193
194
195
196  // The "entry-caches" relation definition.
197  private static final InstantiableRelationDefinition<EntryCacheCfgClient, EntryCacheCfg> RD_ENTRY_CACHES;
198
199
200
201  // The "extended-operation-handlers" relation definition.
202  private static final InstantiableRelationDefinition<ExtendedOperationHandlerCfgClient, ExtendedOperationHandlerCfg> RD_EXTENDED_OPERATION_HANDLERS;
203
204
205
206  // The "global-configuration" relation definition.
207  private static final SingletonRelationDefinition<GlobalCfgClient, GlobalCfg> RD_GLOBAL_CONFIGURATION;
208
209
210
211  // The "group-implementations" relation definition.
212  private static final InstantiableRelationDefinition<GroupImplementationCfgClient, GroupImplementationCfg> RD_GROUP_IMPLEMENTATIONS;
213
214
215
216  // The "identity-mappers" relation definition.
217  private static final InstantiableRelationDefinition<IdentityMapperCfgClient, IdentityMapperCfg> RD_IDENTITY_MAPPERS;
218
219
220
221  // The "key-manager-providers" relation definition.
222  private static final InstantiableRelationDefinition<KeyManagerProviderCfgClient, KeyManagerProviderCfg> RD_KEY_MANAGER_PROVIDERS;
223
224
225
226  // The "log-publishers" relation definition.
227  private static final InstantiableRelationDefinition<LogPublisherCfgClient, LogPublisherCfg> RD_LOG_PUBLISHERS;
228
229
230
231  // The "log-retention-policies" relation definition.
232  private static final InstantiableRelationDefinition<LogRetentionPolicyCfgClient, LogRetentionPolicyCfg> RD_LOG_RETENTION_POLICIES;
233
234
235
236  // The "log-rotation-policies" relation definition.
237  private static final InstantiableRelationDefinition<LogRotationPolicyCfgClient, LogRotationPolicyCfg> RD_LOG_ROTATION_POLICIES;
238
239
240
241  // The "matching-rules" relation definition.
242  private static final InstantiableRelationDefinition<MatchingRuleCfgClient, MatchingRuleCfg> RD_MATCHING_RULES;
243
244
245
246  // The "monitor-providers" relation definition.
247  private static final InstantiableRelationDefinition<MonitorProviderCfgClient, MonitorProviderCfg> RD_MONITOR_PROVIDERS;
248
249
250
251  // The "password-generators" relation definition.
252  private static final InstantiableRelationDefinition<PasswordGeneratorCfgClient, PasswordGeneratorCfg> RD_PASSWORD_GENERATORS;
253
254
255
256  // The "password-policies" relation definition.
257  private static final InstantiableRelationDefinition<AuthenticationPolicyCfgClient, AuthenticationPolicyCfg> RD_PASSWORD_POLICIES;
258
259
260
261  // The "password-storage-schemes" relation definition.
262  private static final InstantiableRelationDefinition<PasswordStorageSchemeCfgClient, PasswordStorageSchemeCfg> RD_PASSWORD_STORAGE_SCHEMES;
263
264
265
266  // The "password-validators" relation definition.
267  private static final InstantiableRelationDefinition<PasswordValidatorCfgClient, PasswordValidatorCfg> RD_PASSWORD_VALIDATORS;
268
269
270
271  // The "plugin-root" relation definition.
272  private static final SingletonRelationDefinition<PluginRootCfgClient, PluginRootCfg> RD_PLUGIN_ROOT;
273
274
275
276  // The "root-dn" relation definition.
277  private static final SingletonRelationDefinition<RootDNCfgClient, RootDNCfg> RD_ROOT_DN;
278
279
280
281  // The "root-dse-backend" relation definition.
282  private static final SingletonRelationDefinition<RootDSEBackendCfgClient, RootDSEBackendCfg> RD_ROOT_DSE_BACKEND;
283
284
285
286  // The "sasl-mechanism-handlers" relation definition.
287  private static final InstantiableRelationDefinition<SASLMechanismHandlerCfgClient, SASLMechanismHandlerCfg> RD_SASL_MECHANISM_HANDLERS;
288
289
290
291  // The "schema-providers" relation definition.
292  private static final InstantiableRelationDefinition<SchemaProviderCfgClient, SchemaProviderCfg> RD_SCHEMA_PROVIDERS;
293
294
295
296  // The "synchronization-providers" relation definition.
297  private static final InstantiableRelationDefinition<SynchronizationProviderCfgClient, SynchronizationProviderCfg> RD_SYNCHRONIZATION_PROVIDERS;
298
299
300
301  // The "trust-manager-providers" relation definition.
302  private static final InstantiableRelationDefinition<TrustManagerProviderCfgClient, TrustManagerProviderCfg> RD_TRUST_MANAGER_PROVIDERS;
303
304
305
306  // The "virtual-attributes" relation definition.
307  private static final InstantiableRelationDefinition<VirtualAttributeCfgClient, VirtualAttributeCfg> RD_VIRTUAL_ATTRIBUTES;
308
309
310
311  // The "work-queue" relation definition.
312  private static final SingletonRelationDefinition<WorkQueueCfgClient, WorkQueueCfg> RD_WORK_QUEUE;
313
314
315
316  // Build the "access-control-handler" relation definition.
317  static {
318    SingletonRelationDefinition.Builder<AccessControlHandlerCfgClient, AccessControlHandlerCfg> builder =
319      new SingletonRelationDefinition.Builder<AccessControlHandlerCfgClient, AccessControlHandlerCfg>(INSTANCE, "access-control-handler", AccessControlHandlerCfgDefn.getInstance());
320    RD_ACCESS_CONTROL_HANDLER = builder.getInstance();
321    INSTANCE.registerRelationDefinition(RD_ACCESS_CONTROL_HANDLER);
322  }
323
324
325
326  // Build the "account-status-notification-handlers" relation definition.
327  static {
328    InstantiableRelationDefinition.Builder<AccountStatusNotificationHandlerCfgClient, AccountStatusNotificationHandlerCfg> builder =
329      new InstantiableRelationDefinition.Builder<AccountStatusNotificationHandlerCfgClient, AccountStatusNotificationHandlerCfg>(INSTANCE, "account-status-notification-handler", "account-status-notification-handlers", AccountStatusNotificationHandlerCfgDefn.getInstance());
330    RD_ACCOUNT_STATUS_NOTIFICATION_HANDLERS = builder.getInstance();
331    INSTANCE.registerRelationDefinition(RD_ACCOUNT_STATUS_NOTIFICATION_HANDLERS);
332  }
333
334
335
336  // Build the "administration-connector" relation definition.
337  static {
338    SingletonRelationDefinition.Builder<AdministrationConnectorCfgClient, AdministrationConnectorCfg> builder =
339      new SingletonRelationDefinition.Builder<AdministrationConnectorCfgClient, AdministrationConnectorCfg>(INSTANCE, "administration-connector", AdministrationConnectorCfgDefn.getInstance());
340    RD_ADMINISTRATION_CONNECTOR = builder.getInstance();
341    INSTANCE.registerRelationDefinition(RD_ADMINISTRATION_CONNECTOR);
342  }
343
344
345
346  // Build the "alert-handlers" relation definition.
347  static {
348    InstantiableRelationDefinition.Builder<AlertHandlerCfgClient, AlertHandlerCfg> builder =
349      new InstantiableRelationDefinition.Builder<AlertHandlerCfgClient, AlertHandlerCfg>(INSTANCE, "alert-handler", "alert-handlers", AlertHandlerCfgDefn.getInstance());
350    RD_ALERT_HANDLERS = builder.getInstance();
351    INSTANCE.registerRelationDefinition(RD_ALERT_HANDLERS);
352  }
353
354
355
356  // Build the "attribute-syntaxes" relation definition.
357  static {
358    InstantiableRelationDefinition.Builder<AttributeSyntaxCfgClient, AttributeSyntaxCfg> builder =
359      new InstantiableRelationDefinition.Builder<AttributeSyntaxCfgClient, AttributeSyntaxCfg>(INSTANCE, "attribute-syntax", "attribute-syntaxes", AttributeSyntaxCfgDefn.getInstance());
360    RD_ATTRIBUTE_SYNTAXES = builder.getInstance();
361    INSTANCE.registerRelationDefinition(RD_ATTRIBUTE_SYNTAXES);
362  }
363
364
365
366  // Build the "backends" relation definition.
367  static {
368    InstantiableRelationDefinition.Builder<BackendCfgClient, BackendCfg> builder =
369      new InstantiableRelationDefinition.Builder<BackendCfgClient, BackendCfg>(INSTANCE, "backend", "backends", BackendCfgDefn.getInstance());
370    builder.setNamingProperty(BackendCfgDefn.getInstance().getBackendIdPropertyDefinition());
371    RD_BACKENDS = builder.getInstance();
372    INSTANCE.registerRelationDefinition(RD_BACKENDS);
373  }
374
375
376
377  // Build the "certificate-mappers" relation definition.
378  static {
379    InstantiableRelationDefinition.Builder<CertificateMapperCfgClient, CertificateMapperCfg> builder =
380      new InstantiableRelationDefinition.Builder<CertificateMapperCfgClient, CertificateMapperCfg>(INSTANCE, "certificate-mapper", "certificate-mappers", CertificateMapperCfgDefn.getInstance());
381    RD_CERTIFICATE_MAPPERS = builder.getInstance();
382    INSTANCE.registerRelationDefinition(RD_CERTIFICATE_MAPPERS);
383  }
384
385
386
387  // Build the "connection-handlers" relation definition.
388  static {
389    InstantiableRelationDefinition.Builder<ConnectionHandlerCfgClient, ConnectionHandlerCfg> builder =
390      new InstantiableRelationDefinition.Builder<ConnectionHandlerCfgClient, ConnectionHandlerCfg>(INSTANCE, "connection-handler", "connection-handlers", ConnectionHandlerCfgDefn.getInstance());
391    RD_CONNECTION_HANDLERS = builder.getInstance();
392    INSTANCE.registerRelationDefinition(RD_CONNECTION_HANDLERS);
393  }
394
395
396
397  // Build the "crypto-manager" relation definition.
398  static {
399    SingletonRelationDefinition.Builder<CryptoManagerCfgClient, CryptoManagerCfg> builder =
400      new SingletonRelationDefinition.Builder<CryptoManagerCfgClient, CryptoManagerCfg>(INSTANCE, "crypto-manager", CryptoManagerCfgDefn.getInstance());
401    RD_CRYPTO_MANAGER = builder.getInstance();
402    INSTANCE.registerRelationDefinition(RD_CRYPTO_MANAGER);
403  }
404
405
406
407  // Build the "entry-caches" relation definition.
408  static {
409    InstantiableRelationDefinition.Builder<EntryCacheCfgClient, EntryCacheCfg> builder =
410      new InstantiableRelationDefinition.Builder<EntryCacheCfgClient, EntryCacheCfg>(INSTANCE, "entry-cache", "entry-caches", EntryCacheCfgDefn.getInstance());
411    RD_ENTRY_CACHES = builder.getInstance();
412    INSTANCE.registerRelationDefinition(RD_ENTRY_CACHES);
413  }
414
415
416
417  // Build the "extended-operation-handlers" relation definition.
418  static {
419    InstantiableRelationDefinition.Builder<ExtendedOperationHandlerCfgClient, ExtendedOperationHandlerCfg> builder =
420      new InstantiableRelationDefinition.Builder<ExtendedOperationHandlerCfgClient, ExtendedOperationHandlerCfg>(INSTANCE, "extended-operation-handler", "extended-operation-handlers", ExtendedOperationHandlerCfgDefn.getInstance());
421    RD_EXTENDED_OPERATION_HANDLERS = builder.getInstance();
422    INSTANCE.registerRelationDefinition(RD_EXTENDED_OPERATION_HANDLERS);
423  }
424
425
426
427  // Build the "global-configuration" relation definition.
428  static {
429    SingletonRelationDefinition.Builder<GlobalCfgClient, GlobalCfg> builder =
430      new SingletonRelationDefinition.Builder<GlobalCfgClient, GlobalCfg>(INSTANCE, "global-configuration", GlobalCfgDefn.getInstance());
431    RD_GLOBAL_CONFIGURATION = builder.getInstance();
432    INSTANCE.registerRelationDefinition(RD_GLOBAL_CONFIGURATION);
433  }
434
435
436
437  // Build the "group-implementations" relation definition.
438  static {
439    InstantiableRelationDefinition.Builder<GroupImplementationCfgClient, GroupImplementationCfg> builder =
440      new InstantiableRelationDefinition.Builder<GroupImplementationCfgClient, GroupImplementationCfg>(INSTANCE, "group-implementation", "group-implementations", GroupImplementationCfgDefn.getInstance());
441    RD_GROUP_IMPLEMENTATIONS = builder.getInstance();
442    INSTANCE.registerRelationDefinition(RD_GROUP_IMPLEMENTATIONS);
443  }
444
445
446
447  // Build the "identity-mappers" relation definition.
448  static {
449    InstantiableRelationDefinition.Builder<IdentityMapperCfgClient, IdentityMapperCfg> builder =
450      new InstantiableRelationDefinition.Builder<IdentityMapperCfgClient, IdentityMapperCfg>(INSTANCE, "identity-mapper", "identity-mappers", IdentityMapperCfgDefn.getInstance());
451    RD_IDENTITY_MAPPERS = builder.getInstance();
452    INSTANCE.registerRelationDefinition(RD_IDENTITY_MAPPERS);
453  }
454
455
456
457  // Build the "key-manager-providers" relation definition.
458  static {
459    InstantiableRelationDefinition.Builder<KeyManagerProviderCfgClient, KeyManagerProviderCfg> builder =
460      new InstantiableRelationDefinition.Builder<KeyManagerProviderCfgClient, KeyManagerProviderCfg>(INSTANCE, "key-manager-provider", "key-manager-providers", KeyManagerProviderCfgDefn.getInstance());
461    RD_KEY_MANAGER_PROVIDERS = builder.getInstance();
462    INSTANCE.registerRelationDefinition(RD_KEY_MANAGER_PROVIDERS);
463  }
464
465
466
467  // Build the "log-publishers" relation definition.
468  static {
469    InstantiableRelationDefinition.Builder<LogPublisherCfgClient, LogPublisherCfg> builder =
470      new InstantiableRelationDefinition.Builder<LogPublisherCfgClient, LogPublisherCfg>(INSTANCE, "log-publisher", "log-publishers", LogPublisherCfgDefn.getInstance());
471    RD_LOG_PUBLISHERS = builder.getInstance();
472    INSTANCE.registerRelationDefinition(RD_LOG_PUBLISHERS);
473  }
474
475
476
477  // Build the "log-retention-policies" relation definition.
478  static {
479    InstantiableRelationDefinition.Builder<LogRetentionPolicyCfgClient, LogRetentionPolicyCfg> builder =
480      new InstantiableRelationDefinition.Builder<LogRetentionPolicyCfgClient, LogRetentionPolicyCfg>(INSTANCE, "log-retention-policy", "log-retention-policies", LogRetentionPolicyCfgDefn.getInstance());
481    RD_LOG_RETENTION_POLICIES = builder.getInstance();
482    INSTANCE.registerRelationDefinition(RD_LOG_RETENTION_POLICIES);
483  }
484
485
486
487  // Build the "log-rotation-policies" relation definition.
488  static {
489    InstantiableRelationDefinition.Builder<LogRotationPolicyCfgClient, LogRotationPolicyCfg> builder =
490      new InstantiableRelationDefinition.Builder<LogRotationPolicyCfgClient, LogRotationPolicyCfg>(INSTANCE, "log-rotation-policy", "log-rotation-policies", LogRotationPolicyCfgDefn.getInstance());
491    RD_LOG_ROTATION_POLICIES = builder.getInstance();
492    INSTANCE.registerRelationDefinition(RD_LOG_ROTATION_POLICIES);
493  }
494
495
496
497  // Build the "matching-rules" relation definition.
498  static {
499    InstantiableRelationDefinition.Builder<MatchingRuleCfgClient, MatchingRuleCfg> builder =
500      new InstantiableRelationDefinition.Builder<MatchingRuleCfgClient, MatchingRuleCfg>(INSTANCE, "matching-rule", "matching-rules", MatchingRuleCfgDefn.getInstance());
501    RD_MATCHING_RULES = builder.getInstance();
502    INSTANCE.registerRelationDefinition(RD_MATCHING_RULES);
503  }
504
505
506
507  // Build the "monitor-providers" relation definition.
508  static {
509    InstantiableRelationDefinition.Builder<MonitorProviderCfgClient, MonitorProviderCfg> builder =
510      new InstantiableRelationDefinition.Builder<MonitorProviderCfgClient, MonitorProviderCfg>(INSTANCE, "monitor-provider", "monitor-providers", MonitorProviderCfgDefn.getInstance());
511    RD_MONITOR_PROVIDERS = builder.getInstance();
512    INSTANCE.registerRelationDefinition(RD_MONITOR_PROVIDERS);
513  }
514
515
516
517  // Build the "password-generators" relation definition.
518  static {
519    InstantiableRelationDefinition.Builder<PasswordGeneratorCfgClient, PasswordGeneratorCfg> builder =
520      new InstantiableRelationDefinition.Builder<PasswordGeneratorCfgClient, PasswordGeneratorCfg>(INSTANCE, "password-generator", "password-generators", PasswordGeneratorCfgDefn.getInstance());
521    RD_PASSWORD_GENERATORS = builder.getInstance();
522    INSTANCE.registerRelationDefinition(RD_PASSWORD_GENERATORS);
523  }
524
525
526
527  // Build the "password-policies" relation definition.
528  static {
529    InstantiableRelationDefinition.Builder<AuthenticationPolicyCfgClient, AuthenticationPolicyCfg> builder =
530      new InstantiableRelationDefinition.Builder<AuthenticationPolicyCfgClient, AuthenticationPolicyCfg>(INSTANCE, "password-policy", "password-policies", AuthenticationPolicyCfgDefn.getInstance());
531    RD_PASSWORD_POLICIES = builder.getInstance();
532    INSTANCE.registerRelationDefinition(RD_PASSWORD_POLICIES);
533  }
534
535
536
537  // Build the "password-storage-schemes" relation definition.
538  static {
539    InstantiableRelationDefinition.Builder<PasswordStorageSchemeCfgClient, PasswordStorageSchemeCfg> builder =
540      new InstantiableRelationDefinition.Builder<PasswordStorageSchemeCfgClient, PasswordStorageSchemeCfg>(INSTANCE, "password-storage-scheme", "password-storage-schemes", PasswordStorageSchemeCfgDefn.getInstance());
541    RD_PASSWORD_STORAGE_SCHEMES = builder.getInstance();
542    INSTANCE.registerRelationDefinition(RD_PASSWORD_STORAGE_SCHEMES);
543  }
544
545
546
547  // Build the "password-validators" relation definition.
548  static {
549    InstantiableRelationDefinition.Builder<PasswordValidatorCfgClient, PasswordValidatorCfg> builder =
550      new InstantiableRelationDefinition.Builder<PasswordValidatorCfgClient, PasswordValidatorCfg>(INSTANCE, "password-validator", "password-validators", PasswordValidatorCfgDefn.getInstance());
551    RD_PASSWORD_VALIDATORS = builder.getInstance();
552    INSTANCE.registerRelationDefinition(RD_PASSWORD_VALIDATORS);
553  }
554
555
556
557  // Build the "plugin-root" relation definition.
558  static {
559    SingletonRelationDefinition.Builder<PluginRootCfgClient, PluginRootCfg> builder =
560      new SingletonRelationDefinition.Builder<PluginRootCfgClient, PluginRootCfg>(INSTANCE, "plugin-root", PluginRootCfgDefn.getInstance());
561    RD_PLUGIN_ROOT = builder.getInstance();
562    INSTANCE.registerRelationDefinition(RD_PLUGIN_ROOT);
563  }
564
565
566
567  // Build the "root-dn" relation definition.
568  static {
569    SingletonRelationDefinition.Builder<RootDNCfgClient, RootDNCfg> builder =
570      new SingletonRelationDefinition.Builder<RootDNCfgClient, RootDNCfg>(INSTANCE, "root-dn", RootDNCfgDefn.getInstance());
571    RD_ROOT_DN = builder.getInstance();
572    INSTANCE.registerRelationDefinition(RD_ROOT_DN);
573  }
574
575
576
577  // Build the "root-dse-backend" relation definition.
578  static {
579    SingletonRelationDefinition.Builder<RootDSEBackendCfgClient, RootDSEBackendCfg> builder =
580      new SingletonRelationDefinition.Builder<RootDSEBackendCfgClient, RootDSEBackendCfg>(INSTANCE, "root-dse-backend", RootDSEBackendCfgDefn.getInstance());
581    RD_ROOT_DSE_BACKEND = builder.getInstance();
582    INSTANCE.registerRelationDefinition(RD_ROOT_DSE_BACKEND);
583  }
584
585
586
587  // Build the "sasl-mechanism-handlers" relation definition.
588  static {
589    InstantiableRelationDefinition.Builder<SASLMechanismHandlerCfgClient, SASLMechanismHandlerCfg> builder =
590      new InstantiableRelationDefinition.Builder<SASLMechanismHandlerCfgClient, SASLMechanismHandlerCfg>(INSTANCE, "sasl-mechanism-handler", "sasl-mechanism-handlers", SASLMechanismHandlerCfgDefn.getInstance());
591    RD_SASL_MECHANISM_HANDLERS = builder.getInstance();
592    INSTANCE.registerRelationDefinition(RD_SASL_MECHANISM_HANDLERS);
593  }
594
595
596
597  // Build the "schema-providers" relation definition.
598  static {
599    InstantiableRelationDefinition.Builder<SchemaProviderCfgClient, SchemaProviderCfg> builder =
600      new InstantiableRelationDefinition.Builder<SchemaProviderCfgClient, SchemaProviderCfg>(INSTANCE, "schema-provider", "schema-providers", SchemaProviderCfgDefn.getInstance());
601    RD_SCHEMA_PROVIDERS = builder.getInstance();
602    INSTANCE.registerRelationDefinition(RD_SCHEMA_PROVIDERS);
603  }
604
605
606
607  // Build the "synchronization-providers" relation definition.
608  static {
609    InstantiableRelationDefinition.Builder<SynchronizationProviderCfgClient, SynchronizationProviderCfg> builder =
610      new InstantiableRelationDefinition.Builder<SynchronizationProviderCfgClient, SynchronizationProviderCfg>(INSTANCE, "synchronization-provider", "synchronization-providers", SynchronizationProviderCfgDefn.getInstance());
611    RD_SYNCHRONIZATION_PROVIDERS = builder.getInstance();
612    INSTANCE.registerRelationDefinition(RD_SYNCHRONIZATION_PROVIDERS);
613  }
614
615
616
617  // Build the "trust-manager-providers" relation definition.
618  static {
619    InstantiableRelationDefinition.Builder<TrustManagerProviderCfgClient, TrustManagerProviderCfg> builder =
620      new InstantiableRelationDefinition.Builder<TrustManagerProviderCfgClient, TrustManagerProviderCfg>(INSTANCE, "trust-manager-provider", "trust-manager-providers", TrustManagerProviderCfgDefn.getInstance());
621    RD_TRUST_MANAGER_PROVIDERS = builder.getInstance();
622    INSTANCE.registerRelationDefinition(RD_TRUST_MANAGER_PROVIDERS);
623  }
624
625
626
627  // Build the "virtual-attributes" relation definition.
628  static {
629    InstantiableRelationDefinition.Builder<VirtualAttributeCfgClient, VirtualAttributeCfg> builder =
630      new InstantiableRelationDefinition.Builder<VirtualAttributeCfgClient, VirtualAttributeCfg>(INSTANCE, "virtual-attribute", "virtual-attributes", VirtualAttributeCfgDefn.getInstance());
631    RD_VIRTUAL_ATTRIBUTES = builder.getInstance();
632    INSTANCE.registerRelationDefinition(RD_VIRTUAL_ATTRIBUTES);
633  }
634
635
636
637  // Build the "work-queue" relation definition.
638  static {
639    SingletonRelationDefinition.Builder<WorkQueueCfgClient, WorkQueueCfg> builder =
640      new SingletonRelationDefinition.Builder<WorkQueueCfgClient, WorkQueueCfg>(INSTANCE, "work-queue", WorkQueueCfgDefn.getInstance());
641    RD_WORK_QUEUE = builder.getInstance();
642    INSTANCE.registerRelationDefinition(RD_WORK_QUEUE);
643  }
644
645
646
647  /**
648   * Get the Root configuration definition singleton.
649   *
650   * @return Returns the Root configuration definition singleton.
651   */
652  public static RootCfgDefn getInstance() {
653    return INSTANCE;
654  }
655
656
657
658  /**
659   * Private constructor.
660   */
661  private RootCfgDefn() {
662    super("", TopCfgDefn.getInstance());
663  }
664
665
666
667  /**
668   * {@inheritDoc}
669   */
670  public RootCfgClient createClientConfiguration(
671      ManagedObject<? extends RootCfgClient> impl) {
672    return new RootCfgClientImpl(impl);
673  }
674
675
676
677  /**
678   * {@inheritDoc}
679   */
680  public RootCfg createServerConfiguration(
681      ServerManagedObject<? extends RootCfg> impl) {
682    return new RootCfgServerImpl(impl);
683  }
684
685
686
687  /**
688   * {@inheritDoc}
689   */
690  public Class<RootCfg> getServerConfigurationClass() {
691    return RootCfg.class;
692  }
693
694
695
696  /**
697   * Get the "access-control-handler" relation definition.
698   *
699   * @return Returns the "access-control-handler" relation definition.
700   */
701  public SingletonRelationDefinition<AccessControlHandlerCfgClient,AccessControlHandlerCfg> getAccessControlHandlerRelationDefinition() {
702    return RD_ACCESS_CONTROL_HANDLER;
703  }
704
705
706
707  /**
708   * Get the "account-status-notification-handlers" relation definition.
709   *
710   * @return Returns the "account-status-notification-handlers" relation definition.
711   */
712  public InstantiableRelationDefinition<AccountStatusNotificationHandlerCfgClient,AccountStatusNotificationHandlerCfg> getAccountStatusNotificationHandlersRelationDefinition() {
713    return RD_ACCOUNT_STATUS_NOTIFICATION_HANDLERS;
714  }
715
716
717
718  /**
719   * Get the "administration-connector" relation definition.
720   *
721   * @return Returns the "administration-connector" relation definition.
722   */
723  public SingletonRelationDefinition<AdministrationConnectorCfgClient,AdministrationConnectorCfg> getAdministrationConnectorRelationDefinition() {
724    return RD_ADMINISTRATION_CONNECTOR;
725  }
726
727
728
729  /**
730   * Get the "alert-handlers" relation definition.
731   *
732   * @return Returns the "alert-handlers" relation definition.
733   */
734  public InstantiableRelationDefinition<AlertHandlerCfgClient,AlertHandlerCfg> getAlertHandlersRelationDefinition() {
735    return RD_ALERT_HANDLERS;
736  }
737
738
739
740  /**
741   * Get the "attribute-syntaxes" relation definition.
742   *
743   * @return Returns the "attribute-syntaxes" relation definition.
744   */
745  public InstantiableRelationDefinition<AttributeSyntaxCfgClient,AttributeSyntaxCfg> getAttributeSyntaxesRelationDefinition() {
746    return RD_ATTRIBUTE_SYNTAXES;
747  }
748
749
750
751  /**
752   * Get the "backends" relation definition.
753   *
754   * @return Returns the "backends" relation definition.
755   */
756  public InstantiableRelationDefinition<BackendCfgClient,BackendCfg> getBackendsRelationDefinition() {
757    return RD_BACKENDS;
758  }
759
760
761
762  /**
763   * Get the "certificate-mappers" relation definition.
764   *
765   * @return Returns the "certificate-mappers" relation definition.
766   */
767  public InstantiableRelationDefinition<CertificateMapperCfgClient,CertificateMapperCfg> getCertificateMappersRelationDefinition() {
768    return RD_CERTIFICATE_MAPPERS;
769  }
770
771
772
773  /**
774   * Get the "connection-handlers" relation definition.
775   *
776   * @return Returns the "connection-handlers" relation definition.
777   */
778  public InstantiableRelationDefinition<ConnectionHandlerCfgClient,ConnectionHandlerCfg> getConnectionHandlersRelationDefinition() {
779    return RD_CONNECTION_HANDLERS;
780  }
781
782
783
784  /**
785   * Get the "crypto-manager" relation definition.
786   *
787   * @return Returns the "crypto-manager" relation definition.
788   */
789  public SingletonRelationDefinition<CryptoManagerCfgClient,CryptoManagerCfg> getCryptoManagerRelationDefinition() {
790    return RD_CRYPTO_MANAGER;
791  }
792
793
794
795  /**
796   * Get the "entry-caches" relation definition.
797   *
798   * @return Returns the "entry-caches" relation definition.
799   */
800  public InstantiableRelationDefinition<EntryCacheCfgClient,EntryCacheCfg> getEntryCachesRelationDefinition() {
801    return RD_ENTRY_CACHES;
802  }
803
804
805
806  /**
807   * Get the "extended-operation-handlers" relation definition.
808   *
809   * @return Returns the "extended-operation-handlers" relation definition.
810   */
811  public InstantiableRelationDefinition<ExtendedOperationHandlerCfgClient,ExtendedOperationHandlerCfg> getExtendedOperationHandlersRelationDefinition() {
812    return RD_EXTENDED_OPERATION_HANDLERS;
813  }
814
815
816
817  /**
818   * Get the "global-configuration" relation definition.
819   *
820   * @return Returns the "global-configuration" relation definition.
821   */
822  public SingletonRelationDefinition<GlobalCfgClient,GlobalCfg> getGlobalConfigurationRelationDefinition() {
823    return RD_GLOBAL_CONFIGURATION;
824  }
825
826
827
828  /**
829   * Get the "group-implementations" relation definition.
830   *
831   * @return Returns the "group-implementations" relation definition.
832   */
833  public InstantiableRelationDefinition<GroupImplementationCfgClient,GroupImplementationCfg> getGroupImplementationsRelationDefinition() {
834    return RD_GROUP_IMPLEMENTATIONS;
835  }
836
837
838
839  /**
840   * Get the "identity-mappers" relation definition.
841   *
842   * @return Returns the "identity-mappers" relation definition.
843   */
844  public InstantiableRelationDefinition<IdentityMapperCfgClient,IdentityMapperCfg> getIdentityMappersRelationDefinition() {
845    return RD_IDENTITY_MAPPERS;
846  }
847
848
849
850  /**
851   * Get the "key-manager-providers" relation definition.
852   *
853   * @return Returns the "key-manager-providers" relation definition.
854   */
855  public InstantiableRelationDefinition<KeyManagerProviderCfgClient,KeyManagerProviderCfg> getKeyManagerProvidersRelationDefinition() {
856    return RD_KEY_MANAGER_PROVIDERS;
857  }
858
859
860
861  /**
862   * Get the "log-publishers" relation definition.
863   *
864   * @return Returns the "log-publishers" relation definition.
865   */
866  public InstantiableRelationDefinition<LogPublisherCfgClient,LogPublisherCfg> getLogPublishersRelationDefinition() {
867    return RD_LOG_PUBLISHERS;
868  }
869
870
871
872  /**
873   * Get the "log-retention-policies" relation definition.
874   *
875   * @return Returns the "log-retention-policies" relation definition.
876   */
877  public InstantiableRelationDefinition<LogRetentionPolicyCfgClient,LogRetentionPolicyCfg> getLogRetentionPoliciesRelationDefinition() {
878    return RD_LOG_RETENTION_POLICIES;
879  }
880
881
882
883  /**
884   * Get the "log-rotation-policies" relation definition.
885   *
886   * @return Returns the "log-rotation-policies" relation definition.
887   */
888  public InstantiableRelationDefinition<LogRotationPolicyCfgClient,LogRotationPolicyCfg> getLogRotationPoliciesRelationDefinition() {
889    return RD_LOG_ROTATION_POLICIES;
890  }
891
892
893
894  /**
895   * Get the "matching-rules" relation definition.
896   *
897   * @return Returns the "matching-rules" relation definition.
898   */
899  public InstantiableRelationDefinition<MatchingRuleCfgClient,MatchingRuleCfg> getMatchingRulesRelationDefinition() {
900    return RD_MATCHING_RULES;
901  }
902
903
904
905  /**
906   * Get the "monitor-providers" relation definition.
907   *
908   * @return Returns the "monitor-providers" relation definition.
909   */
910  public InstantiableRelationDefinition<MonitorProviderCfgClient,MonitorProviderCfg> getMonitorProvidersRelationDefinition() {
911    return RD_MONITOR_PROVIDERS;
912  }
913
914
915
916  /**
917   * Get the "password-generators" relation definition.
918   *
919   * @return Returns the "password-generators" relation definition.
920   */
921  public InstantiableRelationDefinition<PasswordGeneratorCfgClient,PasswordGeneratorCfg> getPasswordGeneratorsRelationDefinition() {
922    return RD_PASSWORD_GENERATORS;
923  }
924
925
926
927  /**
928   * Get the "password-policies" relation definition.
929   *
930   * @return Returns the "password-policies" relation definition.
931   */
932  public InstantiableRelationDefinition<AuthenticationPolicyCfgClient,AuthenticationPolicyCfg> getPasswordPoliciesRelationDefinition() {
933    return RD_PASSWORD_POLICIES;
934  }
935
936
937
938  /**
939   * Get the "password-storage-schemes" relation definition.
940   *
941   * @return Returns the "password-storage-schemes" relation definition.
942   */
943  public InstantiableRelationDefinition<PasswordStorageSchemeCfgClient,PasswordStorageSchemeCfg> getPasswordStorageSchemesRelationDefinition() {
944    return RD_PASSWORD_STORAGE_SCHEMES;
945  }
946
947
948
949  /**
950   * Get the "password-validators" relation definition.
951   *
952   * @return Returns the "password-validators" relation definition.
953   */
954  public InstantiableRelationDefinition<PasswordValidatorCfgClient,PasswordValidatorCfg> getPasswordValidatorsRelationDefinition() {
955    return RD_PASSWORD_VALIDATORS;
956  }
957
958
959
960  /**
961   * Get the "plugin-root" relation definition.
962   *
963   * @return Returns the "plugin-root" relation definition.
964   */
965  public SingletonRelationDefinition<PluginRootCfgClient,PluginRootCfg> getPluginRootRelationDefinition() {
966    return RD_PLUGIN_ROOT;
967  }
968
969
970
971  /**
972   * Get the "root-dn" relation definition.
973   *
974   * @return Returns the "root-dn" relation definition.
975   */
976  public SingletonRelationDefinition<RootDNCfgClient,RootDNCfg> getRootDNRelationDefinition() {
977    return RD_ROOT_DN;
978  }
979
980
981
982  /**
983   * Get the "root-dse-backend" relation definition.
984   *
985   * @return Returns the "root-dse-backend" relation definition.
986   */
987  public SingletonRelationDefinition<RootDSEBackendCfgClient,RootDSEBackendCfg> getRootDSEBackendRelationDefinition() {
988    return RD_ROOT_DSE_BACKEND;
989  }
990
991
992
993  /**
994   * Get the "sasl-mechanism-handlers" relation definition.
995   *
996   * @return Returns the "sasl-mechanism-handlers" relation definition.
997   */
998  public InstantiableRelationDefinition<SASLMechanismHandlerCfgClient,SASLMechanismHandlerCfg> getSASLMechanismHandlersRelationDefinition() {
999    return RD_SASL_MECHANISM_HANDLERS;
1000  }
1001
1002
1003
1004  /**
1005   * Get the "schema-providers" relation definition.
1006   *
1007   * @return Returns the "schema-providers" relation definition.
1008   */
1009  public InstantiableRelationDefinition<SchemaProviderCfgClient,SchemaProviderCfg> getSchemaProvidersRelationDefinition() {
1010    return RD_SCHEMA_PROVIDERS;
1011  }
1012
1013
1014
1015  /**
1016   * Get the "synchronization-providers" relation definition.
1017   *
1018   * @return Returns the "synchronization-providers" relation definition.
1019   */
1020  public InstantiableRelationDefinition<SynchronizationProviderCfgClient,SynchronizationProviderCfg> getSynchronizationProvidersRelationDefinition() {
1021    return RD_SYNCHRONIZATION_PROVIDERS;
1022  }
1023
1024
1025
1026  /**
1027   * Get the "trust-manager-providers" relation definition.
1028   *
1029   * @return Returns the "trust-manager-providers" relation definition.
1030   */
1031  public InstantiableRelationDefinition<TrustManagerProviderCfgClient,TrustManagerProviderCfg> getTrustManagerProvidersRelationDefinition() {
1032    return RD_TRUST_MANAGER_PROVIDERS;
1033  }
1034
1035
1036
1037  /**
1038   * Get the "virtual-attributes" relation definition.
1039   *
1040   * @return Returns the "virtual-attributes" relation definition.
1041   */
1042  public InstantiableRelationDefinition<VirtualAttributeCfgClient,VirtualAttributeCfg> getVirtualAttributesRelationDefinition() {
1043    return RD_VIRTUAL_ATTRIBUTES;
1044  }
1045
1046
1047
1048  /**
1049   * Get the "work-queue" relation definition.
1050   *
1051   * @return Returns the "work-queue" relation definition.
1052   */
1053  public SingletonRelationDefinition<WorkQueueCfgClient,WorkQueueCfg> getWorkQueueRelationDefinition() {
1054    return RD_WORK_QUEUE;
1055  }
1056
1057
1058
1059  /**
1060   * Managed object client implementation.
1061   */
1062  private static class RootCfgClientImpl implements
1063    RootCfgClient {
1064
1065    // Private implementation.
1066    private ManagedObject<? extends RootCfgClient> impl;
1067
1068
1069
1070    // Private constructor.
1071    private RootCfgClientImpl(
1072        ManagedObject<? extends RootCfgClient> impl) {
1073      this.impl = impl;
1074    }
1075
1076
1077
1078    /**
1079     * {@inheritDoc}
1080     */
1081    public AccessControlHandlerCfgClient getAccessControlHandler()
1082        throws DefinitionDecodingException, ManagedObjectDecodingException,
1083        ManagedObjectNotFoundException, ConcurrentModificationException,
1084        AuthorizationException, CommunicationException {
1085      return impl.getChild(INSTANCE.getAccessControlHandlerRelationDefinition()).getConfiguration();
1086    }
1087
1088
1089
1090    /**
1091     * {@inheritDoc}
1092     */
1093    public String[] listAccountStatusNotificationHandlers() throws ConcurrentModificationException,
1094        AuthorizationException, CommunicationException {
1095      return impl.listChildren(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition());
1096    }
1097
1098
1099
1100    /**
1101     * {@inheritDoc}
1102     */
1103    public AccountStatusNotificationHandlerCfgClient getAccountStatusNotificationHandler(String name)
1104        throws DefinitionDecodingException, ManagedObjectDecodingException,
1105        ManagedObjectNotFoundException, ConcurrentModificationException,
1106        AuthorizationException, CommunicationException {
1107      return impl.getChild(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition(), name).getConfiguration();
1108    }
1109
1110
1111
1112    /**
1113     * {@inheritDoc}
1114     */
1115    public <M extends AccountStatusNotificationHandlerCfgClient> M createAccountStatusNotificationHandler(
1116        ManagedObjectDefinition<M, ? extends AccountStatusNotificationHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1117      return impl.createChild(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition(), d, name, exceptions).getConfiguration();
1118    }
1119
1120
1121
1122    /**
1123     * {@inheritDoc}
1124     */
1125    public void removeAccountStatusNotificationHandler(String name)
1126        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1127        OperationRejectedException, AuthorizationException, CommunicationException {
1128      impl.removeChild(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition(), name);
1129    }
1130
1131
1132
1133    /**
1134     * {@inheritDoc}
1135     */
1136    public AdministrationConnectorCfgClient getAdministrationConnector()
1137        throws DefinitionDecodingException, ManagedObjectDecodingException,
1138        ManagedObjectNotFoundException, ConcurrentModificationException,
1139        AuthorizationException, CommunicationException {
1140      return impl.getChild(INSTANCE.getAdministrationConnectorRelationDefinition()).getConfiguration();
1141    }
1142
1143
1144
1145    /**
1146     * {@inheritDoc}
1147     */
1148    public String[] listAlertHandlers() throws ConcurrentModificationException,
1149        AuthorizationException, CommunicationException {
1150      return impl.listChildren(INSTANCE.getAlertHandlersRelationDefinition());
1151    }
1152
1153
1154
1155    /**
1156     * {@inheritDoc}
1157     */
1158    public AlertHandlerCfgClient getAlertHandler(String name)
1159        throws DefinitionDecodingException, ManagedObjectDecodingException,
1160        ManagedObjectNotFoundException, ConcurrentModificationException,
1161        AuthorizationException, CommunicationException {
1162      return impl.getChild(INSTANCE.getAlertHandlersRelationDefinition(), name).getConfiguration();
1163    }
1164
1165
1166
1167    /**
1168     * {@inheritDoc}
1169     */
1170    public <M extends AlertHandlerCfgClient> M createAlertHandler(
1171        ManagedObjectDefinition<M, ? extends AlertHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1172      return impl.createChild(INSTANCE.getAlertHandlersRelationDefinition(), d, name, exceptions).getConfiguration();
1173    }
1174
1175
1176
1177    /**
1178     * {@inheritDoc}
1179     */
1180    public void removeAlertHandler(String name)
1181        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1182        OperationRejectedException, AuthorizationException, CommunicationException {
1183      impl.removeChild(INSTANCE.getAlertHandlersRelationDefinition(), name);
1184    }
1185
1186
1187
1188    /**
1189     * {@inheritDoc}
1190     */
1191    public String[] listAttributeSyntaxes() throws ConcurrentModificationException,
1192        AuthorizationException, CommunicationException {
1193      return impl.listChildren(INSTANCE.getAttributeSyntaxesRelationDefinition());
1194    }
1195
1196
1197
1198    /**
1199     * {@inheritDoc}
1200     */
1201    public AttributeSyntaxCfgClient getAttributeSyntax(String name)
1202        throws DefinitionDecodingException, ManagedObjectDecodingException,
1203        ManagedObjectNotFoundException, ConcurrentModificationException,
1204        AuthorizationException, CommunicationException {
1205      return impl.getChild(INSTANCE.getAttributeSyntaxesRelationDefinition(), name).getConfiguration();
1206    }
1207
1208
1209
1210    /**
1211     * {@inheritDoc}
1212     */
1213    public <M extends AttributeSyntaxCfgClient> M createAttributeSyntax(
1214        ManagedObjectDefinition<M, ? extends AttributeSyntaxCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1215      return impl.createChild(INSTANCE.getAttributeSyntaxesRelationDefinition(), d, name, exceptions).getConfiguration();
1216    }
1217
1218
1219
1220    /**
1221     * {@inheritDoc}
1222     */
1223    public void removeAttributeSyntax(String name)
1224        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1225        OperationRejectedException, AuthorizationException, CommunicationException {
1226      impl.removeChild(INSTANCE.getAttributeSyntaxesRelationDefinition(), name);
1227    }
1228
1229
1230
1231    /**
1232     * {@inheritDoc}
1233     */
1234    public String[] listBackends() throws ConcurrentModificationException,
1235        AuthorizationException, CommunicationException {
1236      return impl.listChildren(INSTANCE.getBackendsRelationDefinition());
1237    }
1238
1239
1240
1241    /**
1242     * {@inheritDoc}
1243     */
1244    public BackendCfgClient getBackend(String name)
1245        throws DefinitionDecodingException, ManagedObjectDecodingException,
1246        ManagedObjectNotFoundException, ConcurrentModificationException,
1247        AuthorizationException, CommunicationException {
1248      return impl.getChild(INSTANCE.getBackendsRelationDefinition(), name).getConfiguration();
1249    }
1250
1251
1252
1253    /**
1254     * {@inheritDoc}
1255     */
1256    public <M extends BackendCfgClient> M createBackend(
1257        ManagedObjectDefinition<M, ? extends BackendCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1258      return impl.createChild(INSTANCE.getBackendsRelationDefinition(), d, name, exceptions).getConfiguration();
1259    }
1260
1261
1262
1263    /**
1264     * {@inheritDoc}
1265     */
1266    public void removeBackend(String name)
1267        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1268        OperationRejectedException, AuthorizationException, CommunicationException {
1269      impl.removeChild(INSTANCE.getBackendsRelationDefinition(), name);
1270    }
1271
1272
1273
1274    /**
1275     * {@inheritDoc}
1276     */
1277    public String[] listCertificateMappers() throws ConcurrentModificationException,
1278        AuthorizationException, CommunicationException {
1279      return impl.listChildren(INSTANCE.getCertificateMappersRelationDefinition());
1280    }
1281
1282
1283
1284    /**
1285     * {@inheritDoc}
1286     */
1287    public CertificateMapperCfgClient getCertificateMapper(String name)
1288        throws DefinitionDecodingException, ManagedObjectDecodingException,
1289        ManagedObjectNotFoundException, ConcurrentModificationException,
1290        AuthorizationException, CommunicationException {
1291      return impl.getChild(INSTANCE.getCertificateMappersRelationDefinition(), name).getConfiguration();
1292    }
1293
1294
1295
1296    /**
1297     * {@inheritDoc}
1298     */
1299    public <M extends CertificateMapperCfgClient> M createCertificateMapper(
1300        ManagedObjectDefinition<M, ? extends CertificateMapperCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1301      return impl.createChild(INSTANCE.getCertificateMappersRelationDefinition(), d, name, exceptions).getConfiguration();
1302    }
1303
1304
1305
1306    /**
1307     * {@inheritDoc}
1308     */
1309    public void removeCertificateMapper(String name)
1310        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1311        OperationRejectedException, AuthorizationException, CommunicationException {
1312      impl.removeChild(INSTANCE.getCertificateMappersRelationDefinition(), name);
1313    }
1314
1315
1316
1317    /**
1318     * {@inheritDoc}
1319     */
1320    public String[] listConnectionHandlers() throws ConcurrentModificationException,
1321        AuthorizationException, CommunicationException {
1322      return impl.listChildren(INSTANCE.getConnectionHandlersRelationDefinition());
1323    }
1324
1325
1326
1327    /**
1328     * {@inheritDoc}
1329     */
1330    public ConnectionHandlerCfgClient getConnectionHandler(String name)
1331        throws DefinitionDecodingException, ManagedObjectDecodingException,
1332        ManagedObjectNotFoundException, ConcurrentModificationException,
1333        AuthorizationException, CommunicationException {
1334      return impl.getChild(INSTANCE.getConnectionHandlersRelationDefinition(), name).getConfiguration();
1335    }
1336
1337
1338
1339    /**
1340     * {@inheritDoc}
1341     */
1342    public <M extends ConnectionHandlerCfgClient> M createConnectionHandler(
1343        ManagedObjectDefinition<M, ? extends ConnectionHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1344      return impl.createChild(INSTANCE.getConnectionHandlersRelationDefinition(), d, name, exceptions).getConfiguration();
1345    }
1346
1347
1348
1349    /**
1350     * {@inheritDoc}
1351     */
1352    public void removeConnectionHandler(String name)
1353        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1354        OperationRejectedException, AuthorizationException, CommunicationException {
1355      impl.removeChild(INSTANCE.getConnectionHandlersRelationDefinition(), name);
1356    }
1357
1358
1359
1360    /**
1361     * {@inheritDoc}
1362     */
1363    public CryptoManagerCfgClient getCryptoManager()
1364        throws DefinitionDecodingException, ManagedObjectDecodingException,
1365        ManagedObjectNotFoundException, ConcurrentModificationException,
1366        AuthorizationException, CommunicationException {
1367      return impl.getChild(INSTANCE.getCryptoManagerRelationDefinition()).getConfiguration();
1368    }
1369
1370
1371
1372    /**
1373     * {@inheritDoc}
1374     */
1375    public String[] listEntryCaches() throws ConcurrentModificationException,
1376        AuthorizationException, CommunicationException {
1377      return impl.listChildren(INSTANCE.getEntryCachesRelationDefinition());
1378    }
1379
1380
1381
1382    /**
1383     * {@inheritDoc}
1384     */
1385    public EntryCacheCfgClient getEntryCache(String name)
1386        throws DefinitionDecodingException, ManagedObjectDecodingException,
1387        ManagedObjectNotFoundException, ConcurrentModificationException,
1388        AuthorizationException, CommunicationException {
1389      return impl.getChild(INSTANCE.getEntryCachesRelationDefinition(), name).getConfiguration();
1390    }
1391
1392
1393
1394    /**
1395     * {@inheritDoc}
1396     */
1397    public <M extends EntryCacheCfgClient> M createEntryCache(
1398        ManagedObjectDefinition<M, ? extends EntryCacheCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1399      return impl.createChild(INSTANCE.getEntryCachesRelationDefinition(), d, name, exceptions).getConfiguration();
1400    }
1401
1402
1403
1404    /**
1405     * {@inheritDoc}
1406     */
1407    public void removeEntryCache(String name)
1408        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1409        OperationRejectedException, AuthorizationException, CommunicationException {
1410      impl.removeChild(INSTANCE.getEntryCachesRelationDefinition(), name);
1411    }
1412
1413
1414
1415    /**
1416     * {@inheritDoc}
1417     */
1418    public String[] listExtendedOperationHandlers() throws ConcurrentModificationException,
1419        AuthorizationException, CommunicationException {
1420      return impl.listChildren(INSTANCE.getExtendedOperationHandlersRelationDefinition());
1421    }
1422
1423
1424
1425    /**
1426     * {@inheritDoc}
1427     */
1428    public ExtendedOperationHandlerCfgClient getExtendedOperationHandler(String name)
1429        throws DefinitionDecodingException, ManagedObjectDecodingException,
1430        ManagedObjectNotFoundException, ConcurrentModificationException,
1431        AuthorizationException, CommunicationException {
1432      return impl.getChild(INSTANCE.getExtendedOperationHandlersRelationDefinition(), name).getConfiguration();
1433    }
1434
1435
1436
1437    /**
1438     * {@inheritDoc}
1439     */
1440    public <M extends ExtendedOperationHandlerCfgClient> M createExtendedOperationHandler(
1441        ManagedObjectDefinition<M, ? extends ExtendedOperationHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1442      return impl.createChild(INSTANCE.getExtendedOperationHandlersRelationDefinition(), d, name, exceptions).getConfiguration();
1443    }
1444
1445
1446
1447    /**
1448     * {@inheritDoc}
1449     */
1450    public void removeExtendedOperationHandler(String name)
1451        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1452        OperationRejectedException, AuthorizationException, CommunicationException {
1453      impl.removeChild(INSTANCE.getExtendedOperationHandlersRelationDefinition(), name);
1454    }
1455
1456
1457
1458    /**
1459     * {@inheritDoc}
1460     */
1461    public GlobalCfgClient getGlobalConfiguration()
1462        throws DefinitionDecodingException, ManagedObjectDecodingException,
1463        ManagedObjectNotFoundException, ConcurrentModificationException,
1464        AuthorizationException, CommunicationException {
1465      return impl.getChild(INSTANCE.getGlobalConfigurationRelationDefinition()).getConfiguration();
1466    }
1467
1468
1469
1470    /**
1471     * {@inheritDoc}
1472     */
1473    public String[] listGroupImplementations() throws ConcurrentModificationException,
1474        AuthorizationException, CommunicationException {
1475      return impl.listChildren(INSTANCE.getGroupImplementationsRelationDefinition());
1476    }
1477
1478
1479
1480    /**
1481     * {@inheritDoc}
1482     */
1483    public GroupImplementationCfgClient getGroupImplementation(String name)
1484        throws DefinitionDecodingException, ManagedObjectDecodingException,
1485        ManagedObjectNotFoundException, ConcurrentModificationException,
1486        AuthorizationException, CommunicationException {
1487      return impl.getChild(INSTANCE.getGroupImplementationsRelationDefinition(), name).getConfiguration();
1488    }
1489
1490
1491
1492    /**
1493     * {@inheritDoc}
1494     */
1495    public <M extends GroupImplementationCfgClient> M createGroupImplementation(
1496        ManagedObjectDefinition<M, ? extends GroupImplementationCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1497      return impl.createChild(INSTANCE.getGroupImplementationsRelationDefinition(), d, name, exceptions).getConfiguration();
1498    }
1499
1500
1501
1502    /**
1503     * {@inheritDoc}
1504     */
1505    public void removeGroupImplementation(String name)
1506        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1507        OperationRejectedException, AuthorizationException, CommunicationException {
1508      impl.removeChild(INSTANCE.getGroupImplementationsRelationDefinition(), name);
1509    }
1510
1511
1512
1513    /**
1514     * {@inheritDoc}
1515     */
1516    public String[] listIdentityMappers() throws ConcurrentModificationException,
1517        AuthorizationException, CommunicationException {
1518      return impl.listChildren(INSTANCE.getIdentityMappersRelationDefinition());
1519    }
1520
1521
1522
1523    /**
1524     * {@inheritDoc}
1525     */
1526    public IdentityMapperCfgClient getIdentityMapper(String name)
1527        throws DefinitionDecodingException, ManagedObjectDecodingException,
1528        ManagedObjectNotFoundException, ConcurrentModificationException,
1529        AuthorizationException, CommunicationException {
1530      return impl.getChild(INSTANCE.getIdentityMappersRelationDefinition(), name).getConfiguration();
1531    }
1532
1533
1534
1535    /**
1536     * {@inheritDoc}
1537     */
1538    public <M extends IdentityMapperCfgClient> M createIdentityMapper(
1539        ManagedObjectDefinition<M, ? extends IdentityMapperCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1540      return impl.createChild(INSTANCE.getIdentityMappersRelationDefinition(), d, name, exceptions).getConfiguration();
1541    }
1542
1543
1544
1545    /**
1546     * {@inheritDoc}
1547     */
1548    public void removeIdentityMapper(String name)
1549        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1550        OperationRejectedException, AuthorizationException, CommunicationException {
1551      impl.removeChild(INSTANCE.getIdentityMappersRelationDefinition(), name);
1552    }
1553
1554
1555
1556    /**
1557     * {@inheritDoc}
1558     */
1559    public String[] listKeyManagerProviders() throws ConcurrentModificationException,
1560        AuthorizationException, CommunicationException {
1561      return impl.listChildren(INSTANCE.getKeyManagerProvidersRelationDefinition());
1562    }
1563
1564
1565
1566    /**
1567     * {@inheritDoc}
1568     */
1569    public KeyManagerProviderCfgClient getKeyManagerProvider(String name)
1570        throws DefinitionDecodingException, ManagedObjectDecodingException,
1571        ManagedObjectNotFoundException, ConcurrentModificationException,
1572        AuthorizationException, CommunicationException {
1573      return impl.getChild(INSTANCE.getKeyManagerProvidersRelationDefinition(), name).getConfiguration();
1574    }
1575
1576
1577
1578    /**
1579     * {@inheritDoc}
1580     */
1581    public <M extends KeyManagerProviderCfgClient> M createKeyManagerProvider(
1582        ManagedObjectDefinition<M, ? extends KeyManagerProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1583      return impl.createChild(INSTANCE.getKeyManagerProvidersRelationDefinition(), d, name, exceptions).getConfiguration();
1584    }
1585
1586
1587
1588    /**
1589     * {@inheritDoc}
1590     */
1591    public void removeKeyManagerProvider(String name)
1592        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1593        OperationRejectedException, AuthorizationException, CommunicationException {
1594      impl.removeChild(INSTANCE.getKeyManagerProvidersRelationDefinition(), name);
1595    }
1596
1597
1598
1599    /**
1600     * {@inheritDoc}
1601     */
1602    public String[] listLogPublishers() throws ConcurrentModificationException,
1603        AuthorizationException, CommunicationException {
1604      return impl.listChildren(INSTANCE.getLogPublishersRelationDefinition());
1605    }
1606
1607
1608
1609    /**
1610     * {@inheritDoc}
1611     */
1612    public LogPublisherCfgClient getLogPublisher(String name)
1613        throws DefinitionDecodingException, ManagedObjectDecodingException,
1614        ManagedObjectNotFoundException, ConcurrentModificationException,
1615        AuthorizationException, CommunicationException {
1616      return impl.getChild(INSTANCE.getLogPublishersRelationDefinition(), name).getConfiguration();
1617    }
1618
1619
1620
1621    /**
1622     * {@inheritDoc}
1623     */
1624    public <M extends LogPublisherCfgClient> M createLogPublisher(
1625        ManagedObjectDefinition<M, ? extends LogPublisherCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1626      return impl.createChild(INSTANCE.getLogPublishersRelationDefinition(), d, name, exceptions).getConfiguration();
1627    }
1628
1629
1630
1631    /**
1632     * {@inheritDoc}
1633     */
1634    public void removeLogPublisher(String name)
1635        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1636        OperationRejectedException, AuthorizationException, CommunicationException {
1637      impl.removeChild(INSTANCE.getLogPublishersRelationDefinition(), name);
1638    }
1639
1640
1641
1642    /**
1643     * {@inheritDoc}
1644     */
1645    public String[] listLogRetentionPolicies() throws ConcurrentModificationException,
1646        AuthorizationException, CommunicationException {
1647      return impl.listChildren(INSTANCE.getLogRetentionPoliciesRelationDefinition());
1648    }
1649
1650
1651
1652    /**
1653     * {@inheritDoc}
1654     */
1655    public LogRetentionPolicyCfgClient getLogRetentionPolicy(String name)
1656        throws DefinitionDecodingException, ManagedObjectDecodingException,
1657        ManagedObjectNotFoundException, ConcurrentModificationException,
1658        AuthorizationException, CommunicationException {
1659      return impl.getChild(INSTANCE.getLogRetentionPoliciesRelationDefinition(), name).getConfiguration();
1660    }
1661
1662
1663
1664    /**
1665     * {@inheritDoc}
1666     */
1667    public <M extends LogRetentionPolicyCfgClient> M createLogRetentionPolicy(
1668        ManagedObjectDefinition<M, ? extends LogRetentionPolicyCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1669      return impl.createChild(INSTANCE.getLogRetentionPoliciesRelationDefinition(), d, name, exceptions).getConfiguration();
1670    }
1671
1672
1673
1674    /**
1675     * {@inheritDoc}
1676     */
1677    public void removeLogRetentionPolicy(String name)
1678        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1679        OperationRejectedException, AuthorizationException, CommunicationException {
1680      impl.removeChild(INSTANCE.getLogRetentionPoliciesRelationDefinition(), name);
1681    }
1682
1683
1684
1685    /**
1686     * {@inheritDoc}
1687     */
1688    public String[] listLogRotationPolicies() throws ConcurrentModificationException,
1689        AuthorizationException, CommunicationException {
1690      return impl.listChildren(INSTANCE.getLogRotationPoliciesRelationDefinition());
1691    }
1692
1693
1694
1695    /**
1696     * {@inheritDoc}
1697     */
1698    public LogRotationPolicyCfgClient getLogRotationPolicy(String name)
1699        throws DefinitionDecodingException, ManagedObjectDecodingException,
1700        ManagedObjectNotFoundException, ConcurrentModificationException,
1701        AuthorizationException, CommunicationException {
1702      return impl.getChild(INSTANCE.getLogRotationPoliciesRelationDefinition(), name).getConfiguration();
1703    }
1704
1705
1706
1707    /**
1708     * {@inheritDoc}
1709     */
1710    public <M extends LogRotationPolicyCfgClient> M createLogRotationPolicy(
1711        ManagedObjectDefinition<M, ? extends LogRotationPolicyCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1712      return impl.createChild(INSTANCE.getLogRotationPoliciesRelationDefinition(), d, name, exceptions).getConfiguration();
1713    }
1714
1715
1716
1717    /**
1718     * {@inheritDoc}
1719     */
1720    public void removeLogRotationPolicy(String name)
1721        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1722        OperationRejectedException, AuthorizationException, CommunicationException {
1723      impl.removeChild(INSTANCE.getLogRotationPoliciesRelationDefinition(), name);
1724    }
1725
1726
1727
1728    /**
1729     * {@inheritDoc}
1730     */
1731    public String[] listMatchingRules() throws ConcurrentModificationException,
1732        AuthorizationException, CommunicationException {
1733      return impl.listChildren(INSTANCE.getMatchingRulesRelationDefinition());
1734    }
1735
1736
1737
1738    /**
1739     * {@inheritDoc}
1740     */
1741    public MatchingRuleCfgClient getMatchingRule(String name)
1742        throws DefinitionDecodingException, ManagedObjectDecodingException,
1743        ManagedObjectNotFoundException, ConcurrentModificationException,
1744        AuthorizationException, CommunicationException {
1745      return impl.getChild(INSTANCE.getMatchingRulesRelationDefinition(), name).getConfiguration();
1746    }
1747
1748
1749
1750    /**
1751     * {@inheritDoc}
1752     */
1753    public <M extends MatchingRuleCfgClient> M createMatchingRule(
1754        ManagedObjectDefinition<M, ? extends MatchingRuleCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1755      return impl.createChild(INSTANCE.getMatchingRulesRelationDefinition(), d, name, exceptions).getConfiguration();
1756    }
1757
1758
1759
1760    /**
1761     * {@inheritDoc}
1762     */
1763    public void removeMatchingRule(String name)
1764        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1765        OperationRejectedException, AuthorizationException, CommunicationException {
1766      impl.removeChild(INSTANCE.getMatchingRulesRelationDefinition(), name);
1767    }
1768
1769
1770
1771    /**
1772     * {@inheritDoc}
1773     */
1774    public String[] listMonitorProviders() throws ConcurrentModificationException,
1775        AuthorizationException, CommunicationException {
1776      return impl.listChildren(INSTANCE.getMonitorProvidersRelationDefinition());
1777    }
1778
1779
1780
1781    /**
1782     * {@inheritDoc}
1783     */
1784    public MonitorProviderCfgClient getMonitorProvider(String name)
1785        throws DefinitionDecodingException, ManagedObjectDecodingException,
1786        ManagedObjectNotFoundException, ConcurrentModificationException,
1787        AuthorizationException, CommunicationException {
1788      return impl.getChild(INSTANCE.getMonitorProvidersRelationDefinition(), name).getConfiguration();
1789    }
1790
1791
1792
1793    /**
1794     * {@inheritDoc}
1795     */
1796    public <M extends MonitorProviderCfgClient> M createMonitorProvider(
1797        ManagedObjectDefinition<M, ? extends MonitorProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1798      return impl.createChild(INSTANCE.getMonitorProvidersRelationDefinition(), d, name, exceptions).getConfiguration();
1799    }
1800
1801
1802
1803    /**
1804     * {@inheritDoc}
1805     */
1806    public void removeMonitorProvider(String name)
1807        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1808        OperationRejectedException, AuthorizationException, CommunicationException {
1809      impl.removeChild(INSTANCE.getMonitorProvidersRelationDefinition(), name);
1810    }
1811
1812
1813
1814    /**
1815     * {@inheritDoc}
1816     */
1817    public String[] listPasswordGenerators() throws ConcurrentModificationException,
1818        AuthorizationException, CommunicationException {
1819      return impl.listChildren(INSTANCE.getPasswordGeneratorsRelationDefinition());
1820    }
1821
1822
1823
1824    /**
1825     * {@inheritDoc}
1826     */
1827    public PasswordGeneratorCfgClient getPasswordGenerator(String name)
1828        throws DefinitionDecodingException, ManagedObjectDecodingException,
1829        ManagedObjectNotFoundException, ConcurrentModificationException,
1830        AuthorizationException, CommunicationException {
1831      return impl.getChild(INSTANCE.getPasswordGeneratorsRelationDefinition(), name).getConfiguration();
1832    }
1833
1834
1835
1836    /**
1837     * {@inheritDoc}
1838     */
1839    public <M extends PasswordGeneratorCfgClient> M createPasswordGenerator(
1840        ManagedObjectDefinition<M, ? extends PasswordGeneratorCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1841      return impl.createChild(INSTANCE.getPasswordGeneratorsRelationDefinition(), d, name, exceptions).getConfiguration();
1842    }
1843
1844
1845
1846    /**
1847     * {@inheritDoc}
1848     */
1849    public void removePasswordGenerator(String name)
1850        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1851        OperationRejectedException, AuthorizationException, CommunicationException {
1852      impl.removeChild(INSTANCE.getPasswordGeneratorsRelationDefinition(), name);
1853    }
1854
1855
1856
1857    /**
1858     * {@inheritDoc}
1859     */
1860    public String[] listPasswordPolicies() throws ConcurrentModificationException,
1861        AuthorizationException, CommunicationException {
1862      return impl.listChildren(INSTANCE.getPasswordPoliciesRelationDefinition());
1863    }
1864
1865
1866
1867    /**
1868     * {@inheritDoc}
1869     */
1870    public AuthenticationPolicyCfgClient getPasswordPolicy(String name)
1871        throws DefinitionDecodingException, ManagedObjectDecodingException,
1872        ManagedObjectNotFoundException, ConcurrentModificationException,
1873        AuthorizationException, CommunicationException {
1874      return impl.getChild(INSTANCE.getPasswordPoliciesRelationDefinition(), name).getConfiguration();
1875    }
1876
1877
1878
1879    /**
1880     * {@inheritDoc}
1881     */
1882    public <M extends AuthenticationPolicyCfgClient> M createPasswordPolicy(
1883        ManagedObjectDefinition<M, ? extends AuthenticationPolicyCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1884      return impl.createChild(INSTANCE.getPasswordPoliciesRelationDefinition(), d, name, exceptions).getConfiguration();
1885    }
1886
1887
1888
1889    /**
1890     * {@inheritDoc}
1891     */
1892    public void removePasswordPolicy(String name)
1893        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1894        OperationRejectedException, AuthorizationException, CommunicationException {
1895      impl.removeChild(INSTANCE.getPasswordPoliciesRelationDefinition(), name);
1896    }
1897
1898
1899
1900    /**
1901     * {@inheritDoc}
1902     */
1903    public String[] listPasswordStorageSchemes() throws ConcurrentModificationException,
1904        AuthorizationException, CommunicationException {
1905      return impl.listChildren(INSTANCE.getPasswordStorageSchemesRelationDefinition());
1906    }
1907
1908
1909
1910    /**
1911     * {@inheritDoc}
1912     */
1913    public PasswordStorageSchemeCfgClient getPasswordStorageScheme(String name)
1914        throws DefinitionDecodingException, ManagedObjectDecodingException,
1915        ManagedObjectNotFoundException, ConcurrentModificationException,
1916        AuthorizationException, CommunicationException {
1917      return impl.getChild(INSTANCE.getPasswordStorageSchemesRelationDefinition(), name).getConfiguration();
1918    }
1919
1920
1921
1922    /**
1923     * {@inheritDoc}
1924     */
1925    public <M extends PasswordStorageSchemeCfgClient> M createPasswordStorageScheme(
1926        ManagedObjectDefinition<M, ? extends PasswordStorageSchemeCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1927      return impl.createChild(INSTANCE.getPasswordStorageSchemesRelationDefinition(), d, name, exceptions).getConfiguration();
1928    }
1929
1930
1931
1932    /**
1933     * {@inheritDoc}
1934     */
1935    public void removePasswordStorageScheme(String name)
1936        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1937        OperationRejectedException, AuthorizationException, CommunicationException {
1938      impl.removeChild(INSTANCE.getPasswordStorageSchemesRelationDefinition(), name);
1939    }
1940
1941
1942
1943    /**
1944     * {@inheritDoc}
1945     */
1946    public String[] listPasswordValidators() throws ConcurrentModificationException,
1947        AuthorizationException, CommunicationException {
1948      return impl.listChildren(INSTANCE.getPasswordValidatorsRelationDefinition());
1949    }
1950
1951
1952
1953    /**
1954     * {@inheritDoc}
1955     */
1956    public PasswordValidatorCfgClient getPasswordValidator(String name)
1957        throws DefinitionDecodingException, ManagedObjectDecodingException,
1958        ManagedObjectNotFoundException, ConcurrentModificationException,
1959        AuthorizationException, CommunicationException {
1960      return impl.getChild(INSTANCE.getPasswordValidatorsRelationDefinition(), name).getConfiguration();
1961    }
1962
1963
1964
1965    /**
1966     * {@inheritDoc}
1967     */
1968    public <M extends PasswordValidatorCfgClient> M createPasswordValidator(
1969        ManagedObjectDefinition<M, ? extends PasswordValidatorCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
1970      return impl.createChild(INSTANCE.getPasswordValidatorsRelationDefinition(), d, name, exceptions).getConfiguration();
1971    }
1972
1973
1974
1975    /**
1976     * {@inheritDoc}
1977     */
1978    public void removePasswordValidator(String name)
1979        throws ManagedObjectNotFoundException, ConcurrentModificationException,
1980        OperationRejectedException, AuthorizationException, CommunicationException {
1981      impl.removeChild(INSTANCE.getPasswordValidatorsRelationDefinition(), name);
1982    }
1983
1984
1985
1986    /**
1987     * {@inheritDoc}
1988     */
1989    public PluginRootCfgClient getPluginRoot()
1990        throws DefinitionDecodingException, ManagedObjectDecodingException,
1991        ManagedObjectNotFoundException, ConcurrentModificationException,
1992        AuthorizationException, CommunicationException {
1993      return impl.getChild(INSTANCE.getPluginRootRelationDefinition()).getConfiguration();
1994    }
1995
1996
1997
1998    /**
1999     * {@inheritDoc}
2000     */
2001    public RootDNCfgClient getRootDN()
2002        throws DefinitionDecodingException, ManagedObjectDecodingException,
2003        ManagedObjectNotFoundException, ConcurrentModificationException,
2004        AuthorizationException, CommunicationException {
2005      return impl.getChild(INSTANCE.getRootDNRelationDefinition()).getConfiguration();
2006    }
2007
2008
2009
2010    /**
2011     * {@inheritDoc}
2012     */
2013    public RootDSEBackendCfgClient getRootDSEBackend()
2014        throws DefinitionDecodingException, ManagedObjectDecodingException,
2015        ManagedObjectNotFoundException, ConcurrentModificationException,
2016        AuthorizationException, CommunicationException {
2017      return impl.getChild(INSTANCE.getRootDSEBackendRelationDefinition()).getConfiguration();
2018    }
2019
2020
2021
2022    /**
2023     * {@inheritDoc}
2024     */
2025    public String[] listSASLMechanismHandlers() throws ConcurrentModificationException,
2026        AuthorizationException, CommunicationException {
2027      return impl.listChildren(INSTANCE.getSASLMechanismHandlersRelationDefinition());
2028    }
2029
2030
2031
2032    /**
2033     * {@inheritDoc}
2034     */
2035    public SASLMechanismHandlerCfgClient getSASLMechanismHandler(String name)
2036        throws DefinitionDecodingException, ManagedObjectDecodingException,
2037        ManagedObjectNotFoundException, ConcurrentModificationException,
2038        AuthorizationException, CommunicationException {
2039      return impl.getChild(INSTANCE.getSASLMechanismHandlersRelationDefinition(), name).getConfiguration();
2040    }
2041
2042
2043
2044    /**
2045     * {@inheritDoc}
2046     */
2047    public <M extends SASLMechanismHandlerCfgClient> M createSASLMechanismHandler(
2048        ManagedObjectDefinition<M, ? extends SASLMechanismHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
2049      return impl.createChild(INSTANCE.getSASLMechanismHandlersRelationDefinition(), d, name, exceptions).getConfiguration();
2050    }
2051
2052
2053
2054    /**
2055     * {@inheritDoc}
2056     */
2057    public void removeSASLMechanismHandler(String name)
2058        throws ManagedObjectNotFoundException, ConcurrentModificationException,
2059        OperationRejectedException, AuthorizationException, CommunicationException {
2060      impl.removeChild(INSTANCE.getSASLMechanismHandlersRelationDefinition(), name);
2061    }
2062
2063
2064
2065    /**
2066     * {@inheritDoc}
2067     */
2068    public String[] listSchemaProviders() throws ConcurrentModificationException,
2069        AuthorizationException, CommunicationException {
2070      return impl.listChildren(INSTANCE.getSchemaProvidersRelationDefinition());
2071    }
2072
2073
2074
2075    /**
2076     * {@inheritDoc}
2077     */
2078    public SchemaProviderCfgClient getSchemaProvider(String name)
2079        throws DefinitionDecodingException, ManagedObjectDecodingException,
2080        ManagedObjectNotFoundException, ConcurrentModificationException,
2081        AuthorizationException, CommunicationException {
2082      return impl.getChild(INSTANCE.getSchemaProvidersRelationDefinition(), name).getConfiguration();
2083    }
2084
2085
2086
2087    /**
2088     * {@inheritDoc}
2089     */
2090    public <M extends SchemaProviderCfgClient> M createSchemaProvider(
2091        ManagedObjectDefinition<M, ? extends SchemaProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
2092      return impl.createChild(INSTANCE.getSchemaProvidersRelationDefinition(), d, name, exceptions).getConfiguration();
2093    }
2094
2095
2096
2097    /**
2098     * {@inheritDoc}
2099     */
2100    public void removeSchemaProvider(String name)
2101        throws ManagedObjectNotFoundException, ConcurrentModificationException,
2102        OperationRejectedException, AuthorizationException, CommunicationException {
2103      impl.removeChild(INSTANCE.getSchemaProvidersRelationDefinition(), name);
2104    }
2105
2106
2107
2108    /**
2109     * {@inheritDoc}
2110     */
2111    public String[] listSynchronizationProviders() throws ConcurrentModificationException,
2112        AuthorizationException, CommunicationException {
2113      return impl.listChildren(INSTANCE.getSynchronizationProvidersRelationDefinition());
2114    }
2115
2116
2117
2118    /**
2119     * {@inheritDoc}
2120     */
2121    public SynchronizationProviderCfgClient getSynchronizationProvider(String name)
2122        throws DefinitionDecodingException, ManagedObjectDecodingException,
2123        ManagedObjectNotFoundException, ConcurrentModificationException,
2124        AuthorizationException, CommunicationException {
2125      return impl.getChild(INSTANCE.getSynchronizationProvidersRelationDefinition(), name).getConfiguration();
2126    }
2127
2128
2129
2130    /**
2131     * {@inheritDoc}
2132     */
2133    public <M extends SynchronizationProviderCfgClient> M createSynchronizationProvider(
2134        ManagedObjectDefinition<M, ? extends SynchronizationProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
2135      return impl.createChild(INSTANCE.getSynchronizationProvidersRelationDefinition(), d, name, exceptions).getConfiguration();
2136    }
2137
2138
2139
2140    /**
2141     * {@inheritDoc}
2142     */
2143    public void removeSynchronizationProvider(String name)
2144        throws ManagedObjectNotFoundException, ConcurrentModificationException,
2145        OperationRejectedException, AuthorizationException, CommunicationException {
2146      impl.removeChild(INSTANCE.getSynchronizationProvidersRelationDefinition(), name);
2147    }
2148
2149
2150
2151    /**
2152     * {@inheritDoc}
2153     */
2154    public String[] listTrustManagerProviders() throws ConcurrentModificationException,
2155        AuthorizationException, CommunicationException {
2156      return impl.listChildren(INSTANCE.getTrustManagerProvidersRelationDefinition());
2157    }
2158
2159
2160
2161    /**
2162     * {@inheritDoc}
2163     */
2164    public TrustManagerProviderCfgClient getTrustManagerProvider(String name)
2165        throws DefinitionDecodingException, ManagedObjectDecodingException,
2166        ManagedObjectNotFoundException, ConcurrentModificationException,
2167        AuthorizationException, CommunicationException {
2168      return impl.getChild(INSTANCE.getTrustManagerProvidersRelationDefinition(), name).getConfiguration();
2169    }
2170
2171
2172
2173    /**
2174     * {@inheritDoc}
2175     */
2176    public <M extends TrustManagerProviderCfgClient> M createTrustManagerProvider(
2177        ManagedObjectDefinition<M, ? extends TrustManagerProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
2178      return impl.createChild(INSTANCE.getTrustManagerProvidersRelationDefinition(), d, name, exceptions).getConfiguration();
2179    }
2180
2181
2182
2183    /**
2184     * {@inheritDoc}
2185     */
2186    public void removeTrustManagerProvider(String name)
2187        throws ManagedObjectNotFoundException, ConcurrentModificationException,
2188        OperationRejectedException, AuthorizationException, CommunicationException {
2189      impl.removeChild(INSTANCE.getTrustManagerProvidersRelationDefinition(), name);
2190    }
2191
2192
2193
2194    /**
2195     * {@inheritDoc}
2196     */
2197    public String[] listVirtualAttributes() throws ConcurrentModificationException,
2198        AuthorizationException, CommunicationException {
2199      return impl.listChildren(INSTANCE.getVirtualAttributesRelationDefinition());
2200    }
2201
2202
2203
2204    /**
2205     * {@inheritDoc}
2206     */
2207    public VirtualAttributeCfgClient getVirtualAttribute(String name)
2208        throws DefinitionDecodingException, ManagedObjectDecodingException,
2209        ManagedObjectNotFoundException, ConcurrentModificationException,
2210        AuthorizationException, CommunicationException {
2211      return impl.getChild(INSTANCE.getVirtualAttributesRelationDefinition(), name).getConfiguration();
2212    }
2213
2214
2215
2216    /**
2217     * {@inheritDoc}
2218     */
2219    public <M extends VirtualAttributeCfgClient> M createVirtualAttribute(
2220        ManagedObjectDefinition<M, ? extends VirtualAttributeCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException {
2221      return impl.createChild(INSTANCE.getVirtualAttributesRelationDefinition(), d, name, exceptions).getConfiguration();
2222    }
2223
2224
2225
2226    /**
2227     * {@inheritDoc}
2228     */
2229    public void removeVirtualAttribute(String name)
2230        throws ManagedObjectNotFoundException, ConcurrentModificationException,
2231        OperationRejectedException, AuthorizationException, CommunicationException {
2232      impl.removeChild(INSTANCE.getVirtualAttributesRelationDefinition(), name);
2233    }
2234
2235
2236
2237    /**
2238     * {@inheritDoc}
2239     */
2240    public WorkQueueCfgClient getWorkQueue()
2241        throws DefinitionDecodingException, ManagedObjectDecodingException,
2242        ManagedObjectNotFoundException, ConcurrentModificationException,
2243        AuthorizationException, CommunicationException {
2244      return impl.getChild(INSTANCE.getWorkQueueRelationDefinition()).getConfiguration();
2245    }
2246
2247
2248
2249    /**
2250     * {@inheritDoc}
2251     */
2252    public ManagedObjectDefinition<? extends RootCfgClient, ? extends RootCfg> definition() {
2253      return INSTANCE;
2254    }
2255
2256
2257
2258    /**
2259     * {@inheritDoc}
2260     */
2261    public PropertyProvider properties() {
2262      return impl;
2263    }
2264
2265
2266
2267    /**
2268     * {@inheritDoc}
2269     */
2270    public void commit() throws ManagedObjectAlreadyExistsException,
2271        MissingMandatoryPropertiesException, ConcurrentModificationException,
2272        OperationRejectedException, AuthorizationException,
2273        CommunicationException {
2274      impl.commit();
2275    }
2276
2277
2278
2279    /** {@inheritDoc} */
2280    public String toString() {
2281      return impl.toString();
2282    }
2283  }
2284
2285
2286
2287  /**
2288   * Managed object server implementation.
2289   */
2290  private static class RootCfgServerImpl implements
2291    RootCfg {
2292
2293    // Private implementation.
2294    private ServerManagedObject<? extends RootCfg> impl;
2295
2296
2297
2298    // Private constructor.
2299    private RootCfgServerImpl(ServerManagedObject<? extends RootCfg> impl) {
2300      this.impl = impl;
2301    }
2302
2303
2304
2305    /**
2306     * {@inheritDoc}
2307     */
2308    public AccessControlHandlerCfg getAccessControlHandler() throws ConfigException {
2309      return impl.getChild(INSTANCE.getAccessControlHandlerRelationDefinition()).getConfiguration();
2310    }
2311
2312
2313
2314    /**
2315     * {@inheritDoc}
2316     */
2317    public String[] listAccountStatusNotificationHandlers() {
2318      return impl.listChildren(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition());
2319    }
2320
2321
2322
2323    /**
2324     * {@inheritDoc}
2325     */
2326    public AccountStatusNotificationHandlerCfg getAccountStatusNotificationHandler(String name) throws ConfigException {
2327      return impl.getChild(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition(), name).getConfiguration();
2328    }
2329
2330
2331
2332    /**
2333     * {@inheritDoc}
2334     */
2335    public void addAccountStatusNotificationHandlerAddListener(
2336        ConfigurationAddListener<AccountStatusNotificationHandlerCfg> listener) throws ConfigException {
2337      impl.registerAddListener(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition(), listener);
2338    }
2339
2340
2341
2342    /**
2343     * {@inheritDoc}
2344     */
2345    public void removeAccountStatusNotificationHandlerAddListener(
2346        ConfigurationAddListener<AccountStatusNotificationHandlerCfg> listener) {
2347      impl.deregisterAddListener(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition(), listener);
2348    }
2349
2350
2351
2352    /**
2353     * {@inheritDoc}
2354     */
2355    public void addAccountStatusNotificationHandlerDeleteListener(
2356        ConfigurationDeleteListener<AccountStatusNotificationHandlerCfg> listener) throws ConfigException {
2357      impl.registerDeleteListener(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition(), listener);
2358    }
2359
2360
2361
2362    /**
2363     * {@inheritDoc}
2364     */
2365    public void removeAccountStatusNotificationHandlerDeleteListener(
2366        ConfigurationDeleteListener<AccountStatusNotificationHandlerCfg> listener) {
2367      impl.deregisterDeleteListener(INSTANCE.getAccountStatusNotificationHandlersRelationDefinition(), listener);
2368    }
2369
2370
2371
2372    /**
2373     * {@inheritDoc}
2374     */
2375    public AdministrationConnectorCfg getAdministrationConnector() throws ConfigException {
2376      return impl.getChild(INSTANCE.getAdministrationConnectorRelationDefinition()).getConfiguration();
2377    }
2378
2379
2380
2381    /**
2382     * {@inheritDoc}
2383     */
2384    public String[] listAlertHandlers() {
2385      return impl.listChildren(INSTANCE.getAlertHandlersRelationDefinition());
2386    }
2387
2388
2389
2390    /**
2391     * {@inheritDoc}
2392     */
2393    public AlertHandlerCfg getAlertHandler(String name) throws ConfigException {
2394      return impl.getChild(INSTANCE.getAlertHandlersRelationDefinition(), name).getConfiguration();
2395    }
2396
2397
2398
2399    /**
2400     * {@inheritDoc}
2401     */
2402    public void addAlertHandlerAddListener(
2403        ConfigurationAddListener<AlertHandlerCfg> listener) throws ConfigException {
2404      impl.registerAddListener(INSTANCE.getAlertHandlersRelationDefinition(), listener);
2405    }
2406
2407
2408
2409    /**
2410     * {@inheritDoc}
2411     */
2412    public void removeAlertHandlerAddListener(
2413        ConfigurationAddListener<AlertHandlerCfg> listener) {
2414      impl.deregisterAddListener(INSTANCE.getAlertHandlersRelationDefinition(), listener);
2415    }
2416
2417
2418
2419    /**
2420     * {@inheritDoc}
2421     */
2422    public void addAlertHandlerDeleteListener(
2423        ConfigurationDeleteListener<AlertHandlerCfg> listener) throws ConfigException {
2424      impl.registerDeleteListener(INSTANCE.getAlertHandlersRelationDefinition(), listener);
2425    }
2426
2427
2428
2429    /**
2430     * {@inheritDoc}
2431     */
2432    public void removeAlertHandlerDeleteListener(
2433        ConfigurationDeleteListener<AlertHandlerCfg> listener) {
2434      impl.deregisterDeleteListener(INSTANCE.getAlertHandlersRelationDefinition(), listener);
2435    }
2436
2437
2438
2439    /**
2440     * {@inheritDoc}
2441     */
2442    public String[] listAttributeSyntaxes() {
2443      return impl.listChildren(INSTANCE.getAttributeSyntaxesRelationDefinition());
2444    }
2445
2446
2447
2448    /**
2449     * {@inheritDoc}
2450     */
2451    public AttributeSyntaxCfg getAttributeSyntax(String name) throws ConfigException {
2452      return impl.getChild(INSTANCE.getAttributeSyntaxesRelationDefinition(), name).getConfiguration();
2453    }
2454
2455
2456
2457    /**
2458     * {@inheritDoc}
2459     */
2460    public void addAttributeSyntaxAddListener(
2461        ConfigurationAddListener<AttributeSyntaxCfg> listener) throws ConfigException {
2462      impl.registerAddListener(INSTANCE.getAttributeSyntaxesRelationDefinition(), listener);
2463    }
2464
2465
2466
2467    /**
2468     * {@inheritDoc}
2469     */
2470    public void removeAttributeSyntaxAddListener(
2471        ConfigurationAddListener<AttributeSyntaxCfg> listener) {
2472      impl.deregisterAddListener(INSTANCE.getAttributeSyntaxesRelationDefinition(), listener);
2473    }
2474
2475
2476
2477    /**
2478     * {@inheritDoc}
2479     */
2480    public void addAttributeSyntaxDeleteListener(
2481        ConfigurationDeleteListener<AttributeSyntaxCfg> listener) throws ConfigException {
2482      impl.registerDeleteListener(INSTANCE.getAttributeSyntaxesRelationDefinition(), listener);
2483    }
2484
2485
2486
2487    /**
2488     * {@inheritDoc}
2489     */
2490    public void removeAttributeSyntaxDeleteListener(
2491        ConfigurationDeleteListener<AttributeSyntaxCfg> listener) {
2492      impl.deregisterDeleteListener(INSTANCE.getAttributeSyntaxesRelationDefinition(), listener);
2493    }
2494
2495
2496
2497    /**
2498     * {@inheritDoc}
2499     */
2500    public String[] listBackends() {
2501      return impl.listChildren(INSTANCE.getBackendsRelationDefinition());
2502    }
2503
2504
2505
2506    /**
2507     * {@inheritDoc}
2508     */
2509    public BackendCfg getBackend(String name) throws ConfigException {
2510      return impl.getChild(INSTANCE.getBackendsRelationDefinition(), name).getConfiguration();
2511    }
2512
2513
2514
2515    /**
2516     * {@inheritDoc}
2517     */
2518    public void addBackendAddListener(
2519        ConfigurationAddListener<BackendCfg> listener) throws ConfigException {
2520      impl.registerAddListener(INSTANCE.getBackendsRelationDefinition(), listener);
2521    }
2522
2523
2524
2525    /**
2526     * {@inheritDoc}
2527     */
2528    public void removeBackendAddListener(
2529        ConfigurationAddListener<BackendCfg> listener) {
2530      impl.deregisterAddListener(INSTANCE.getBackendsRelationDefinition(), listener);
2531    }
2532
2533
2534
2535    /**
2536     * {@inheritDoc}
2537     */
2538    public void addBackendDeleteListener(
2539        ConfigurationDeleteListener<BackendCfg> listener) throws ConfigException {
2540      impl.registerDeleteListener(INSTANCE.getBackendsRelationDefinition(), listener);
2541    }
2542
2543
2544
2545    /**
2546     * {@inheritDoc}
2547     */
2548    public void removeBackendDeleteListener(
2549        ConfigurationDeleteListener<BackendCfg> listener) {
2550      impl.deregisterDeleteListener(INSTANCE.getBackendsRelationDefinition(), listener);
2551    }
2552
2553
2554
2555    /**
2556     * {@inheritDoc}
2557     */
2558    public String[] listCertificateMappers() {
2559      return impl.listChildren(INSTANCE.getCertificateMappersRelationDefinition());
2560    }
2561
2562
2563
2564    /**
2565     * {@inheritDoc}
2566     */
2567    public CertificateMapperCfg getCertificateMapper(String name) throws ConfigException {
2568      return impl.getChild(INSTANCE.getCertificateMappersRelationDefinition(), name).getConfiguration();
2569    }
2570
2571
2572
2573    /**
2574     * {@inheritDoc}
2575     */
2576    public void addCertificateMapperAddListener(
2577        ConfigurationAddListener<CertificateMapperCfg> listener) throws ConfigException {
2578      impl.registerAddListener(INSTANCE.getCertificateMappersRelationDefinition(), listener);
2579    }
2580
2581
2582
2583    /**
2584     * {@inheritDoc}
2585     */
2586    public void removeCertificateMapperAddListener(
2587        ConfigurationAddListener<CertificateMapperCfg> listener) {
2588      impl.deregisterAddListener(INSTANCE.getCertificateMappersRelationDefinition(), listener);
2589    }
2590
2591
2592
2593    /**
2594     * {@inheritDoc}
2595     */
2596    public void addCertificateMapperDeleteListener(
2597        ConfigurationDeleteListener<CertificateMapperCfg> listener) throws ConfigException {
2598      impl.registerDeleteListener(INSTANCE.getCertificateMappersRelationDefinition(), listener);
2599    }
2600
2601
2602
2603    /**
2604     * {@inheritDoc}
2605     */
2606    public void removeCertificateMapperDeleteListener(
2607        ConfigurationDeleteListener<CertificateMapperCfg> listener) {
2608      impl.deregisterDeleteListener(INSTANCE.getCertificateMappersRelationDefinition(), listener);
2609    }
2610
2611
2612
2613    /**
2614     * {@inheritDoc}
2615     */
2616    public String[] listConnectionHandlers() {
2617      return impl.listChildren(INSTANCE.getConnectionHandlersRelationDefinition());
2618    }
2619
2620
2621
2622    /**
2623     * {@inheritDoc}
2624     */
2625    public ConnectionHandlerCfg getConnectionHandler(String name) throws ConfigException {
2626      return impl.getChild(INSTANCE.getConnectionHandlersRelationDefinition(), name).getConfiguration();
2627    }
2628
2629
2630
2631    /**
2632     * {@inheritDoc}
2633     */
2634    public void addConnectionHandlerAddListener(
2635        ConfigurationAddListener<ConnectionHandlerCfg> listener) throws ConfigException {
2636      impl.registerAddListener(INSTANCE.getConnectionHandlersRelationDefinition(), listener);
2637    }
2638
2639
2640
2641    /**
2642     * {@inheritDoc}
2643     */
2644    public void removeConnectionHandlerAddListener(
2645        ConfigurationAddListener<ConnectionHandlerCfg> listener) {
2646      impl.deregisterAddListener(INSTANCE.getConnectionHandlersRelationDefinition(), listener);
2647    }
2648
2649
2650
2651    /**
2652     * {@inheritDoc}
2653     */
2654    public void addConnectionHandlerDeleteListener(
2655        ConfigurationDeleteListener<ConnectionHandlerCfg> listener) throws ConfigException {
2656      impl.registerDeleteListener(INSTANCE.getConnectionHandlersRelationDefinition(), listener);
2657    }
2658
2659
2660
2661    /**
2662     * {@inheritDoc}
2663     */
2664    public void removeConnectionHandlerDeleteListener(
2665        ConfigurationDeleteListener<ConnectionHandlerCfg> listener) {
2666      impl.deregisterDeleteListener(INSTANCE.getConnectionHandlersRelationDefinition(), listener);
2667    }
2668
2669
2670
2671    /**
2672     * {@inheritDoc}
2673     */
2674    public CryptoManagerCfg getCryptoManager() throws ConfigException {
2675      return impl.getChild(INSTANCE.getCryptoManagerRelationDefinition()).getConfiguration();
2676    }
2677
2678
2679
2680    /**
2681     * {@inheritDoc}
2682     */
2683    public String[] listEntryCaches() {
2684      return impl.listChildren(INSTANCE.getEntryCachesRelationDefinition());
2685    }
2686
2687
2688
2689    /**
2690     * {@inheritDoc}
2691     */
2692    public EntryCacheCfg getEntryCache(String name) throws ConfigException {
2693      return impl.getChild(INSTANCE.getEntryCachesRelationDefinition(), name).getConfiguration();
2694    }
2695
2696
2697
2698    /**
2699     * {@inheritDoc}
2700     */
2701    public void addEntryCacheAddListener(
2702        ConfigurationAddListener<EntryCacheCfg> listener) throws ConfigException {
2703      impl.registerAddListener(INSTANCE.getEntryCachesRelationDefinition(), listener);
2704    }
2705
2706
2707
2708    /**
2709     * {@inheritDoc}
2710     */
2711    public void removeEntryCacheAddListener(
2712        ConfigurationAddListener<EntryCacheCfg> listener) {
2713      impl.deregisterAddListener(INSTANCE.getEntryCachesRelationDefinition(), listener);
2714    }
2715
2716
2717
2718    /**
2719     * {@inheritDoc}
2720     */
2721    public void addEntryCacheDeleteListener(
2722        ConfigurationDeleteListener<EntryCacheCfg> listener) throws ConfigException {
2723      impl.registerDeleteListener(INSTANCE.getEntryCachesRelationDefinition(), listener);
2724    }
2725
2726
2727
2728    /**
2729     * {@inheritDoc}
2730     */
2731    public void removeEntryCacheDeleteListener(
2732        ConfigurationDeleteListener<EntryCacheCfg> listener) {
2733      impl.deregisterDeleteListener(INSTANCE.getEntryCachesRelationDefinition(), listener);
2734    }
2735
2736
2737
2738    /**
2739     * {@inheritDoc}
2740     */
2741    public String[] listExtendedOperationHandlers() {
2742      return impl.listChildren(INSTANCE.getExtendedOperationHandlersRelationDefinition());
2743    }
2744
2745
2746
2747    /**
2748     * {@inheritDoc}
2749     */
2750    public ExtendedOperationHandlerCfg getExtendedOperationHandler(String name) throws ConfigException {
2751      return impl.getChild(INSTANCE.getExtendedOperationHandlersRelationDefinition(), name).getConfiguration();
2752    }
2753
2754
2755
2756    /**
2757     * {@inheritDoc}
2758     */
2759    public void addExtendedOperationHandlerAddListener(
2760        ConfigurationAddListener<ExtendedOperationHandlerCfg> listener) throws ConfigException {
2761      impl.registerAddListener(INSTANCE.getExtendedOperationHandlersRelationDefinition(), listener);
2762    }
2763
2764
2765
2766    /**
2767     * {@inheritDoc}
2768     */
2769    public void removeExtendedOperationHandlerAddListener(
2770        ConfigurationAddListener<ExtendedOperationHandlerCfg> listener) {
2771      impl.deregisterAddListener(INSTANCE.getExtendedOperationHandlersRelationDefinition(), listener);
2772    }
2773
2774
2775
2776    /**
2777     * {@inheritDoc}
2778     */
2779    public void addExtendedOperationHandlerDeleteListener(
2780        ConfigurationDeleteListener<ExtendedOperationHandlerCfg> listener) throws ConfigException {
2781      impl.registerDeleteListener(INSTANCE.getExtendedOperationHandlersRelationDefinition(), listener);
2782    }
2783
2784
2785
2786    /**
2787     * {@inheritDoc}
2788     */
2789    public void removeExtendedOperationHandlerDeleteListener(
2790        ConfigurationDeleteListener<ExtendedOperationHandlerCfg> listener) {
2791      impl.deregisterDeleteListener(INSTANCE.getExtendedOperationHandlersRelationDefinition(), listener);
2792    }
2793
2794
2795
2796    /**
2797     * {@inheritDoc}
2798     */
2799    public GlobalCfg getGlobalConfiguration() throws ConfigException {
2800      return impl.getChild(INSTANCE.getGlobalConfigurationRelationDefinition()).getConfiguration();
2801    }
2802
2803
2804
2805    /**
2806     * {@inheritDoc}
2807     */
2808    public String[] listGroupImplementations() {
2809      return impl.listChildren(INSTANCE.getGroupImplementationsRelationDefinition());
2810    }
2811
2812
2813
2814    /**
2815     * {@inheritDoc}
2816     */
2817    public GroupImplementationCfg getGroupImplementation(String name) throws ConfigException {
2818      return impl.getChild(INSTANCE.getGroupImplementationsRelationDefinition(), name).getConfiguration();
2819    }
2820
2821
2822
2823    /**
2824     * {@inheritDoc}
2825     */
2826    public void addGroupImplementationAddListener(
2827        ConfigurationAddListener<GroupImplementationCfg> listener) throws ConfigException {
2828      impl.registerAddListener(INSTANCE.getGroupImplementationsRelationDefinition(), listener);
2829    }
2830
2831
2832
2833    /**
2834     * {@inheritDoc}
2835     */
2836    public void removeGroupImplementationAddListener(
2837        ConfigurationAddListener<GroupImplementationCfg> listener) {
2838      impl.deregisterAddListener(INSTANCE.getGroupImplementationsRelationDefinition(), listener);
2839    }
2840
2841
2842
2843    /**
2844     * {@inheritDoc}
2845     */
2846    public void addGroupImplementationDeleteListener(
2847        ConfigurationDeleteListener<GroupImplementationCfg> listener) throws ConfigException {
2848      impl.registerDeleteListener(INSTANCE.getGroupImplementationsRelationDefinition(), listener);
2849    }
2850
2851
2852
2853    /**
2854     * {@inheritDoc}
2855     */
2856    public void removeGroupImplementationDeleteListener(
2857        ConfigurationDeleteListener<GroupImplementationCfg> listener) {
2858      impl.deregisterDeleteListener(INSTANCE.getGroupImplementationsRelationDefinition(), listener);
2859    }
2860
2861
2862
2863    /**
2864     * {@inheritDoc}
2865     */
2866    public String[] listIdentityMappers() {
2867      return impl.listChildren(INSTANCE.getIdentityMappersRelationDefinition());
2868    }
2869
2870
2871
2872    /**
2873     * {@inheritDoc}
2874     */
2875    public IdentityMapperCfg getIdentityMapper(String name) throws ConfigException {
2876      return impl.getChild(INSTANCE.getIdentityMappersRelationDefinition(), name).getConfiguration();
2877    }
2878
2879
2880
2881    /**
2882     * {@inheritDoc}
2883     */
2884    public void addIdentityMapperAddListener(
2885        ConfigurationAddListener<IdentityMapperCfg> listener) throws ConfigException {
2886      impl.registerAddListener(INSTANCE.getIdentityMappersRelationDefinition(), listener);
2887    }
2888
2889
2890
2891    /**
2892     * {@inheritDoc}
2893     */
2894    public void removeIdentityMapperAddListener(
2895        ConfigurationAddListener<IdentityMapperCfg> listener) {
2896      impl.deregisterAddListener(INSTANCE.getIdentityMappersRelationDefinition(), listener);
2897    }
2898
2899
2900
2901    /**
2902     * {@inheritDoc}
2903     */
2904    public void addIdentityMapperDeleteListener(
2905        ConfigurationDeleteListener<IdentityMapperCfg> listener) throws ConfigException {
2906      impl.registerDeleteListener(INSTANCE.getIdentityMappersRelationDefinition(), listener);
2907    }
2908
2909
2910
2911    /**
2912     * {@inheritDoc}
2913     */
2914    public void removeIdentityMapperDeleteListener(
2915        ConfigurationDeleteListener<IdentityMapperCfg> listener) {
2916      impl.deregisterDeleteListener(INSTANCE.getIdentityMappersRelationDefinition(), listener);
2917    }
2918
2919
2920
2921    /**
2922     * {@inheritDoc}
2923     */
2924    public String[] listKeyManagerProviders() {
2925      return impl.listChildren(INSTANCE.getKeyManagerProvidersRelationDefinition());
2926    }
2927
2928
2929
2930    /**
2931     * {@inheritDoc}
2932     */
2933    public KeyManagerProviderCfg getKeyManagerProvider(String name) throws ConfigException {
2934      return impl.getChild(INSTANCE.getKeyManagerProvidersRelationDefinition(), name).getConfiguration();
2935    }
2936
2937
2938
2939    /**
2940     * {@inheritDoc}
2941     */
2942    public void addKeyManagerProviderAddListener(
2943        ConfigurationAddListener<KeyManagerProviderCfg> listener) throws ConfigException {
2944      impl.registerAddListener(INSTANCE.getKeyManagerProvidersRelationDefinition(), listener);
2945    }
2946
2947
2948
2949    /**
2950     * {@inheritDoc}
2951     */
2952    public void removeKeyManagerProviderAddListener(
2953        ConfigurationAddListener<KeyManagerProviderCfg> listener) {
2954      impl.deregisterAddListener(INSTANCE.getKeyManagerProvidersRelationDefinition(), listener);
2955    }
2956
2957
2958
2959    /**
2960     * {@inheritDoc}
2961     */
2962    public void addKeyManagerProviderDeleteListener(
2963        ConfigurationDeleteListener<KeyManagerProviderCfg> listener) throws ConfigException {
2964      impl.registerDeleteListener(INSTANCE.getKeyManagerProvidersRelationDefinition(), listener);
2965    }
2966
2967
2968
2969    /**
2970     * {@inheritDoc}
2971     */
2972    public void removeKeyManagerProviderDeleteListener(
2973        ConfigurationDeleteListener<KeyManagerProviderCfg> listener) {
2974      impl.deregisterDeleteListener(INSTANCE.getKeyManagerProvidersRelationDefinition(), listener);
2975    }
2976
2977
2978
2979    /**
2980     * {@inheritDoc}
2981     */
2982    public String[] listLogPublishers() {
2983      return impl.listChildren(INSTANCE.getLogPublishersRelationDefinition());
2984    }
2985
2986
2987
2988    /**
2989     * {@inheritDoc}
2990     */
2991    public LogPublisherCfg getLogPublisher(String name) throws ConfigException {
2992      return impl.getChild(INSTANCE.getLogPublishersRelationDefinition(), name).getConfiguration();
2993    }
2994
2995
2996
2997    /**
2998     * {@inheritDoc}
2999     */
3000    public void addLogPublisherAddListener(
3001        ConfigurationAddListener<LogPublisherCfg> listener) throws ConfigException {
3002      impl.registerAddListener(INSTANCE.getLogPublishersRelationDefinition(), listener);
3003    }
3004
3005
3006
3007    /**
3008     * {@inheritDoc}
3009     */
3010    public void removeLogPublisherAddListener(
3011        ConfigurationAddListener<LogPublisherCfg> listener) {
3012      impl.deregisterAddListener(INSTANCE.getLogPublishersRelationDefinition(), listener);
3013    }
3014
3015
3016
3017    /**
3018     * {@inheritDoc}
3019     */
3020    public void addLogPublisherDeleteListener(
3021        ConfigurationDeleteListener<LogPublisherCfg> listener) throws ConfigException {
3022      impl.registerDeleteListener(INSTANCE.getLogPublishersRelationDefinition(), listener);
3023    }
3024
3025
3026
3027    /**
3028     * {@inheritDoc}
3029     */
3030    public void removeLogPublisherDeleteListener(
3031        ConfigurationDeleteListener<LogPublisherCfg> listener) {
3032      impl.deregisterDeleteListener(INSTANCE.getLogPublishersRelationDefinition(), listener);
3033    }
3034
3035
3036
3037    /**
3038     * {@inheritDoc}
3039     */
3040    public String[] listLogRetentionPolicies() {
3041      return impl.listChildren(INSTANCE.getLogRetentionPoliciesRelationDefinition());
3042    }
3043
3044
3045
3046    /**
3047     * {@inheritDoc}
3048     */
3049    public LogRetentionPolicyCfg getLogRetentionPolicy(String name) throws ConfigException {
3050      return impl.getChild(INSTANCE.getLogRetentionPoliciesRelationDefinition(), name).getConfiguration();
3051    }
3052
3053
3054
3055    /**
3056     * {@inheritDoc}
3057     */
3058    public void addLogRetentionPolicyAddListener(
3059        ConfigurationAddListener<LogRetentionPolicyCfg> listener) throws ConfigException {
3060      impl.registerAddListener(INSTANCE.getLogRetentionPoliciesRelationDefinition(), listener);
3061    }
3062
3063
3064
3065    /**
3066     * {@inheritDoc}
3067     */
3068    public void removeLogRetentionPolicyAddListener(
3069        ConfigurationAddListener<LogRetentionPolicyCfg> listener) {
3070      impl.deregisterAddListener(INSTANCE.getLogRetentionPoliciesRelationDefinition(), listener);
3071    }
3072
3073
3074
3075    /**
3076     * {@inheritDoc}
3077     */
3078    public void addLogRetentionPolicyDeleteListener(
3079        ConfigurationDeleteListener<LogRetentionPolicyCfg> listener) throws ConfigException {
3080      impl.registerDeleteListener(INSTANCE.getLogRetentionPoliciesRelationDefinition(), listener);
3081    }
3082
3083
3084
3085    /**
3086     * {@inheritDoc}
3087     */
3088    public void removeLogRetentionPolicyDeleteListener(
3089        ConfigurationDeleteListener<LogRetentionPolicyCfg> listener) {
3090      impl.deregisterDeleteListener(INSTANCE.getLogRetentionPoliciesRelationDefinition(), listener);
3091    }
3092
3093
3094
3095    /**
3096     * {@inheritDoc}
3097     */
3098    public String[] listLogRotationPolicies() {
3099      return impl.listChildren(INSTANCE.getLogRotationPoliciesRelationDefinition());
3100    }
3101
3102
3103
3104    /**
3105     * {@inheritDoc}
3106     */
3107    public LogRotationPolicyCfg getLogRotationPolicy(String name) throws ConfigException {
3108      return impl.getChild(INSTANCE.getLogRotationPoliciesRelationDefinition(), name).getConfiguration();
3109    }
3110
3111
3112
3113    /**
3114     * {@inheritDoc}
3115     */
3116    public void addLogRotationPolicyAddListener(
3117        ConfigurationAddListener<LogRotationPolicyCfg> listener) throws ConfigException {
3118      impl.registerAddListener(INSTANCE.getLogRotationPoliciesRelationDefinition(), listener);
3119    }
3120
3121
3122
3123    /**
3124     * {@inheritDoc}
3125     */
3126    public void removeLogRotationPolicyAddListener(
3127        ConfigurationAddListener<LogRotationPolicyCfg> listener) {
3128      impl.deregisterAddListener(INSTANCE.getLogRotationPoliciesRelationDefinition(), listener);
3129    }
3130
3131
3132
3133    /**
3134     * {@inheritDoc}
3135     */
3136    public void addLogRotationPolicyDeleteListener(
3137        ConfigurationDeleteListener<LogRotationPolicyCfg> listener) throws ConfigException {
3138      impl.registerDeleteListener(INSTANCE.getLogRotationPoliciesRelationDefinition(), listener);
3139    }
3140
3141
3142
3143    /**
3144     * {@inheritDoc}
3145     */
3146    public void removeLogRotationPolicyDeleteListener(
3147        ConfigurationDeleteListener<LogRotationPolicyCfg> listener) {
3148      impl.deregisterDeleteListener(INSTANCE.getLogRotationPoliciesRelationDefinition(), listener);
3149    }
3150
3151
3152
3153    /**
3154     * {@inheritDoc}
3155     */
3156    public String[] listMatchingRules() {
3157      return impl.listChildren(INSTANCE.getMatchingRulesRelationDefinition());
3158    }
3159
3160
3161
3162    /**
3163     * {@inheritDoc}
3164     */
3165    public MatchingRuleCfg getMatchingRule(String name) throws ConfigException {
3166      return impl.getChild(INSTANCE.getMatchingRulesRelationDefinition(), name).getConfiguration();
3167    }
3168
3169
3170
3171    /**
3172     * {@inheritDoc}
3173     */
3174    public void addMatchingRuleAddListener(
3175        ConfigurationAddListener<MatchingRuleCfg> listener) throws ConfigException {
3176      impl.registerAddListener(INSTANCE.getMatchingRulesRelationDefinition(), listener);
3177    }
3178
3179
3180
3181    /**
3182     * {@inheritDoc}
3183     */
3184    public void removeMatchingRuleAddListener(
3185        ConfigurationAddListener<MatchingRuleCfg> listener) {
3186      impl.deregisterAddListener(INSTANCE.getMatchingRulesRelationDefinition(), listener);
3187    }
3188
3189
3190
3191    /**
3192     * {@inheritDoc}
3193     */
3194    public void addMatchingRuleDeleteListener(
3195        ConfigurationDeleteListener<MatchingRuleCfg> listener) throws ConfigException {
3196      impl.registerDeleteListener(INSTANCE.getMatchingRulesRelationDefinition(), listener);
3197    }
3198
3199
3200
3201    /**
3202     * {@inheritDoc}
3203     */
3204    public void removeMatchingRuleDeleteListener(
3205        ConfigurationDeleteListener<MatchingRuleCfg> listener) {
3206      impl.deregisterDeleteListener(INSTANCE.getMatchingRulesRelationDefinition(), listener);
3207    }
3208
3209
3210
3211    /**
3212     * {@inheritDoc}
3213     */
3214    public String[] listMonitorProviders() {
3215      return impl.listChildren(INSTANCE.getMonitorProvidersRelationDefinition());
3216    }
3217
3218
3219
3220    /**
3221     * {@inheritDoc}
3222     */
3223    public MonitorProviderCfg getMonitorProvider(String name) throws ConfigException {
3224      return impl.getChild(INSTANCE.getMonitorProvidersRelationDefinition(), name).getConfiguration();
3225    }
3226
3227
3228
3229    /**
3230     * {@inheritDoc}
3231     */
3232    public void addMonitorProviderAddListener(
3233        ConfigurationAddListener<MonitorProviderCfg> listener) throws ConfigException {
3234      impl.registerAddListener(INSTANCE.getMonitorProvidersRelationDefinition(), listener);
3235    }
3236
3237
3238
3239    /**
3240     * {@inheritDoc}
3241     */
3242    public void removeMonitorProviderAddListener(
3243        ConfigurationAddListener<MonitorProviderCfg> listener) {
3244      impl.deregisterAddListener(INSTANCE.getMonitorProvidersRelationDefinition(), listener);
3245    }
3246
3247
3248
3249    /**
3250     * {@inheritDoc}
3251     */
3252    public void addMonitorProviderDeleteListener(
3253        ConfigurationDeleteListener<MonitorProviderCfg> listener) throws ConfigException {
3254      impl.registerDeleteListener(INSTANCE.getMonitorProvidersRelationDefinition(), listener);
3255    }
3256
3257
3258
3259    /**
3260     * {@inheritDoc}
3261     */
3262    public void removeMonitorProviderDeleteListener(
3263        ConfigurationDeleteListener<MonitorProviderCfg> listener) {
3264      impl.deregisterDeleteListener(INSTANCE.getMonitorProvidersRelationDefinition(), listener);
3265    }
3266
3267
3268
3269    /**
3270     * {@inheritDoc}
3271     */
3272    public String[] listPasswordGenerators() {
3273      return impl.listChildren(INSTANCE.getPasswordGeneratorsRelationDefinition());
3274    }
3275
3276
3277
3278    /**
3279     * {@inheritDoc}
3280     */
3281    public PasswordGeneratorCfg getPasswordGenerator(String name) throws ConfigException {
3282      return impl.getChild(INSTANCE.getPasswordGeneratorsRelationDefinition(), name).getConfiguration();
3283    }
3284
3285
3286
3287    /**
3288     * {@inheritDoc}
3289     */
3290    public void addPasswordGeneratorAddListener(
3291        ConfigurationAddListener<PasswordGeneratorCfg> listener) throws ConfigException {
3292      impl.registerAddListener(INSTANCE.getPasswordGeneratorsRelationDefinition(), listener);
3293    }
3294
3295
3296
3297    /**
3298     * {@inheritDoc}
3299     */
3300    public void removePasswordGeneratorAddListener(
3301        ConfigurationAddListener<PasswordGeneratorCfg> listener) {
3302      impl.deregisterAddListener(INSTANCE.getPasswordGeneratorsRelationDefinition(), listener);
3303    }
3304
3305
3306
3307    /**
3308     * {@inheritDoc}
3309     */
3310    public void addPasswordGeneratorDeleteListener(
3311        ConfigurationDeleteListener<PasswordGeneratorCfg> listener) throws ConfigException {
3312      impl.registerDeleteListener(INSTANCE.getPasswordGeneratorsRelationDefinition(), listener);
3313    }
3314
3315
3316
3317    /**
3318     * {@inheritDoc}
3319     */
3320    public void removePasswordGeneratorDeleteListener(
3321        ConfigurationDeleteListener<PasswordGeneratorCfg> listener) {
3322      impl.deregisterDeleteListener(INSTANCE.getPasswordGeneratorsRelationDefinition(), listener);
3323    }
3324
3325
3326
3327    /**
3328     * {@inheritDoc}
3329     */
3330    public String[] listPasswordPolicies() {
3331      return impl.listChildren(INSTANCE.getPasswordPoliciesRelationDefinition());
3332    }
3333
3334
3335
3336    /**
3337     * {@inheritDoc}
3338     */
3339    public AuthenticationPolicyCfg getPasswordPolicy(String name) throws ConfigException {
3340      return impl.getChild(INSTANCE.getPasswordPoliciesRelationDefinition(), name).getConfiguration();
3341    }
3342
3343
3344
3345    /**
3346     * {@inheritDoc}
3347     */
3348    public void addPasswordPolicyAddListener(
3349        ConfigurationAddListener<AuthenticationPolicyCfg> listener) throws ConfigException {
3350      impl.registerAddListener(INSTANCE.getPasswordPoliciesRelationDefinition(), listener);
3351    }
3352
3353
3354
3355    /**
3356     * {@inheritDoc}
3357     */
3358    public void removePasswordPolicyAddListener(
3359        ConfigurationAddListener<AuthenticationPolicyCfg> listener) {
3360      impl.deregisterAddListener(INSTANCE.getPasswordPoliciesRelationDefinition(), listener);
3361    }
3362
3363
3364
3365    /**
3366     * {@inheritDoc}
3367     */
3368    public void addPasswordPolicyDeleteListener(
3369        ConfigurationDeleteListener<AuthenticationPolicyCfg> listener) throws ConfigException {
3370      impl.registerDeleteListener(INSTANCE.getPasswordPoliciesRelationDefinition(), listener);
3371    }
3372
3373
3374
3375    /**
3376     * {@inheritDoc}
3377     */
3378    public void removePasswordPolicyDeleteListener(
3379        ConfigurationDeleteListener<AuthenticationPolicyCfg> listener) {
3380      impl.deregisterDeleteListener(INSTANCE.getPasswordPoliciesRelationDefinition(), listener);
3381    }
3382
3383
3384
3385    /**
3386     * {@inheritDoc}
3387     */
3388    public String[] listPasswordStorageSchemes() {
3389      return impl.listChildren(INSTANCE.getPasswordStorageSchemesRelationDefinition());
3390    }
3391
3392
3393
3394    /**
3395     * {@inheritDoc}
3396     */
3397    public PasswordStorageSchemeCfg getPasswordStorageScheme(String name) throws ConfigException {
3398      return impl.getChild(INSTANCE.getPasswordStorageSchemesRelationDefinition(), name).getConfiguration();
3399    }
3400
3401
3402
3403    /**
3404     * {@inheritDoc}
3405     */
3406    public void addPasswordStorageSchemeAddListener(
3407        ConfigurationAddListener<PasswordStorageSchemeCfg> listener) throws ConfigException {
3408      impl.registerAddListener(INSTANCE.getPasswordStorageSchemesRelationDefinition(), listener);
3409    }
3410
3411
3412
3413    /**
3414     * {@inheritDoc}
3415     */
3416    public void removePasswordStorageSchemeAddListener(
3417        ConfigurationAddListener<PasswordStorageSchemeCfg> listener) {
3418      impl.deregisterAddListener(INSTANCE.getPasswordStorageSchemesRelationDefinition(), listener);
3419    }
3420
3421
3422
3423    /**
3424     * {@inheritDoc}
3425     */
3426    public void addPasswordStorageSchemeDeleteListener(
3427        ConfigurationDeleteListener<PasswordStorageSchemeCfg> listener) throws ConfigException {
3428      impl.registerDeleteListener(INSTANCE.getPasswordStorageSchemesRelationDefinition(), listener);
3429    }
3430
3431
3432
3433    /**
3434     * {@inheritDoc}
3435     */
3436    public void removePasswordStorageSchemeDeleteListener(
3437        ConfigurationDeleteListener<PasswordStorageSchemeCfg> listener) {
3438      impl.deregisterDeleteListener(INSTANCE.getPasswordStorageSchemesRelationDefinition(), listener);
3439    }
3440
3441
3442
3443    /**
3444     * {@inheritDoc}
3445     */
3446    public String[] listPasswordValidators() {
3447      return impl.listChildren(INSTANCE.getPasswordValidatorsRelationDefinition());
3448    }
3449
3450
3451
3452    /**
3453     * {@inheritDoc}
3454     */
3455    public PasswordValidatorCfg getPasswordValidator(String name) throws ConfigException {
3456      return impl.getChild(INSTANCE.getPasswordValidatorsRelationDefinition(), name).getConfiguration();
3457    }
3458
3459
3460
3461    /**
3462     * {@inheritDoc}
3463     */
3464    public void addPasswordValidatorAddListener(
3465        ConfigurationAddListener<PasswordValidatorCfg> listener) throws ConfigException {
3466      impl.registerAddListener(INSTANCE.getPasswordValidatorsRelationDefinition(), listener);
3467    }
3468
3469
3470
3471    /**
3472     * {@inheritDoc}
3473     */
3474    public void removePasswordValidatorAddListener(
3475        ConfigurationAddListener<PasswordValidatorCfg> listener) {
3476      impl.deregisterAddListener(INSTANCE.getPasswordValidatorsRelationDefinition(), listener);
3477    }
3478
3479
3480
3481    /**
3482     * {@inheritDoc}
3483     */
3484    public void addPasswordValidatorDeleteListener(
3485        ConfigurationDeleteListener<PasswordValidatorCfg> listener) throws ConfigException {
3486      impl.registerDeleteListener(INSTANCE.getPasswordValidatorsRelationDefinition(), listener);
3487    }
3488
3489
3490
3491    /**
3492     * {@inheritDoc}
3493     */
3494    public void removePasswordValidatorDeleteListener(
3495        ConfigurationDeleteListener<PasswordValidatorCfg> listener) {
3496      impl.deregisterDeleteListener(INSTANCE.getPasswordValidatorsRelationDefinition(), listener);
3497    }
3498
3499
3500
3501    /**
3502     * {@inheritDoc}
3503     */
3504    public PluginRootCfg getPluginRoot() throws ConfigException {
3505      return impl.getChild(INSTANCE.getPluginRootRelationDefinition()).getConfiguration();
3506    }
3507
3508
3509
3510    /**
3511     * {@inheritDoc}
3512     */
3513    public RootDNCfg getRootDN() throws ConfigException {
3514      return impl.getChild(INSTANCE.getRootDNRelationDefinition()).getConfiguration();
3515    }
3516
3517
3518
3519    /**
3520     * {@inheritDoc}
3521     */
3522    public RootDSEBackendCfg getRootDSEBackend() throws ConfigException {
3523      return impl.getChild(INSTANCE.getRootDSEBackendRelationDefinition()).getConfiguration();
3524    }
3525
3526
3527
3528    /**
3529     * {@inheritDoc}
3530     */
3531    public String[] listSASLMechanismHandlers() {
3532      return impl.listChildren(INSTANCE.getSASLMechanismHandlersRelationDefinition());
3533    }
3534
3535
3536
3537    /**
3538     * {@inheritDoc}
3539     */
3540    public SASLMechanismHandlerCfg getSASLMechanismHandler(String name) throws ConfigException {
3541      return impl.getChild(INSTANCE.getSASLMechanismHandlersRelationDefinition(), name).getConfiguration();
3542    }
3543
3544
3545
3546    /**
3547     * {@inheritDoc}
3548     */
3549    public void addSASLMechanismHandlerAddListener(
3550        ConfigurationAddListener<SASLMechanismHandlerCfg> listener) throws ConfigException {
3551      impl.registerAddListener(INSTANCE.getSASLMechanismHandlersRelationDefinition(), listener);
3552    }
3553
3554
3555
3556    /**
3557     * {@inheritDoc}
3558     */
3559    public void removeSASLMechanismHandlerAddListener(
3560        ConfigurationAddListener<SASLMechanismHandlerCfg> listener) {
3561      impl.deregisterAddListener(INSTANCE.getSASLMechanismHandlersRelationDefinition(), listener);
3562    }
3563
3564
3565
3566    /**
3567     * {@inheritDoc}
3568     */
3569    public void addSASLMechanismHandlerDeleteListener(
3570        ConfigurationDeleteListener<SASLMechanismHandlerCfg> listener) throws ConfigException {
3571      impl.registerDeleteListener(INSTANCE.getSASLMechanismHandlersRelationDefinition(), listener);
3572    }
3573
3574
3575
3576    /**
3577     * {@inheritDoc}
3578     */
3579    public void removeSASLMechanismHandlerDeleteListener(
3580        ConfigurationDeleteListener<SASLMechanismHandlerCfg> listener) {
3581      impl.deregisterDeleteListener(INSTANCE.getSASLMechanismHandlersRelationDefinition(), listener);
3582    }
3583
3584
3585
3586    /**
3587     * {@inheritDoc}
3588     */
3589    public String[] listSchemaProviders() {
3590      return impl.listChildren(INSTANCE.getSchemaProvidersRelationDefinition());
3591    }
3592
3593
3594
3595    /**
3596     * {@inheritDoc}
3597     */
3598    public SchemaProviderCfg getSchemaProvider(String name) throws ConfigException {
3599      return impl.getChild(INSTANCE.getSchemaProvidersRelationDefinition(), name).getConfiguration();
3600    }
3601
3602
3603
3604    /**
3605     * {@inheritDoc}
3606     */
3607    public void addSchemaProviderAddListener(
3608        ConfigurationAddListener<SchemaProviderCfg> listener) throws ConfigException {
3609      impl.registerAddListener(INSTANCE.getSchemaProvidersRelationDefinition(), listener);
3610    }
3611
3612
3613
3614    /**
3615     * {@inheritDoc}
3616     */
3617    public void removeSchemaProviderAddListener(
3618        ConfigurationAddListener<SchemaProviderCfg> listener) {
3619      impl.deregisterAddListener(INSTANCE.getSchemaProvidersRelationDefinition(), listener);
3620    }
3621
3622
3623
3624    /**
3625     * {@inheritDoc}
3626     */
3627    public void addSchemaProviderDeleteListener(
3628        ConfigurationDeleteListener<SchemaProviderCfg> listener) throws ConfigException {
3629      impl.registerDeleteListener(INSTANCE.getSchemaProvidersRelationDefinition(), listener);
3630    }
3631
3632
3633
3634    /**
3635     * {@inheritDoc}
3636     */
3637    public void removeSchemaProviderDeleteListener(
3638        ConfigurationDeleteListener<SchemaProviderCfg> listener) {
3639      impl.deregisterDeleteListener(INSTANCE.getSchemaProvidersRelationDefinition(), listener);
3640    }
3641
3642
3643
3644    /**
3645     * {@inheritDoc}
3646     */
3647    public String[] listSynchronizationProviders() {
3648      return impl.listChildren(INSTANCE.getSynchronizationProvidersRelationDefinition());
3649    }
3650
3651
3652
3653    /**
3654     * {@inheritDoc}
3655     */
3656    public SynchronizationProviderCfg getSynchronizationProvider(String name) throws ConfigException {
3657      return impl.getChild(INSTANCE.getSynchronizationProvidersRelationDefinition(), name).getConfiguration();
3658    }
3659
3660
3661
3662    /**
3663     * {@inheritDoc}
3664     */
3665    public void addSynchronizationProviderAddListener(
3666        ConfigurationAddListener<SynchronizationProviderCfg> listener) throws ConfigException {
3667      impl.registerAddListener(INSTANCE.getSynchronizationProvidersRelationDefinition(), listener);
3668    }
3669
3670
3671
3672    /**
3673     * {@inheritDoc}
3674     */
3675    public void removeSynchronizationProviderAddListener(
3676        ConfigurationAddListener<SynchronizationProviderCfg> listener) {
3677      impl.deregisterAddListener(INSTANCE.getSynchronizationProvidersRelationDefinition(), listener);
3678    }
3679
3680
3681
3682    /**
3683     * {@inheritDoc}
3684     */
3685    public void addSynchronizationProviderDeleteListener(
3686        ConfigurationDeleteListener<SynchronizationProviderCfg> listener) throws ConfigException {
3687      impl.registerDeleteListener(INSTANCE.getSynchronizationProvidersRelationDefinition(), listener);
3688    }
3689
3690
3691
3692    /**
3693     * {@inheritDoc}
3694     */
3695    public void removeSynchronizationProviderDeleteListener(
3696        ConfigurationDeleteListener<SynchronizationProviderCfg> listener) {
3697      impl.deregisterDeleteListener(INSTANCE.getSynchronizationProvidersRelationDefinition(), listener);
3698    }
3699
3700
3701
3702    /**
3703     * {@inheritDoc}
3704     */
3705    public String[] listTrustManagerProviders() {
3706      return impl.listChildren(INSTANCE.getTrustManagerProvidersRelationDefinition());
3707    }
3708
3709
3710
3711    /**
3712     * {@inheritDoc}
3713     */
3714    public TrustManagerProviderCfg getTrustManagerProvider(String name) throws ConfigException {
3715      return impl.getChild(INSTANCE.getTrustManagerProvidersRelationDefinition(), name).getConfiguration();
3716    }
3717
3718
3719
3720    /**
3721     * {@inheritDoc}
3722     */
3723    public void addTrustManagerProviderAddListener(
3724        ConfigurationAddListener<TrustManagerProviderCfg> listener) throws ConfigException {
3725      impl.registerAddListener(INSTANCE.getTrustManagerProvidersRelationDefinition(), listener);
3726    }
3727
3728
3729
3730    /**
3731     * {@inheritDoc}
3732     */
3733    public void removeTrustManagerProviderAddListener(
3734        ConfigurationAddListener<TrustManagerProviderCfg> listener) {
3735      impl.deregisterAddListener(INSTANCE.getTrustManagerProvidersRelationDefinition(), listener);
3736    }
3737
3738
3739
3740    /**
3741     * {@inheritDoc}
3742     */
3743    public void addTrustManagerProviderDeleteListener(
3744        ConfigurationDeleteListener<TrustManagerProviderCfg> listener) throws ConfigException {
3745      impl.registerDeleteListener(INSTANCE.getTrustManagerProvidersRelationDefinition(), listener);
3746    }
3747
3748
3749
3750    /**
3751     * {@inheritDoc}
3752     */
3753    public void removeTrustManagerProviderDeleteListener(
3754        ConfigurationDeleteListener<TrustManagerProviderCfg> listener) {
3755      impl.deregisterDeleteListener(INSTANCE.getTrustManagerProvidersRelationDefinition(), listener);
3756    }
3757
3758
3759
3760    /**
3761     * {@inheritDoc}
3762     */
3763    public String[] listVirtualAttributes() {
3764      return impl.listChildren(INSTANCE.getVirtualAttributesRelationDefinition());
3765    }
3766
3767
3768
3769    /**
3770     * {@inheritDoc}
3771     */
3772    public VirtualAttributeCfg getVirtualAttribute(String name) throws ConfigException {
3773      return impl.getChild(INSTANCE.getVirtualAttributesRelationDefinition(), name).getConfiguration();
3774    }
3775
3776
3777
3778    /**
3779     * {@inheritDoc}
3780     */
3781    public void addVirtualAttributeAddListener(
3782        ConfigurationAddListener<VirtualAttributeCfg> listener) throws ConfigException {
3783      impl.registerAddListener(INSTANCE.getVirtualAttributesRelationDefinition(), listener);
3784    }
3785
3786
3787
3788    /**
3789     * {@inheritDoc}
3790     */
3791    public void removeVirtualAttributeAddListener(
3792        ConfigurationAddListener<VirtualAttributeCfg> listener) {
3793      impl.deregisterAddListener(INSTANCE.getVirtualAttributesRelationDefinition(), listener);
3794    }
3795
3796
3797
3798    /**
3799     * {@inheritDoc}
3800     */
3801    public void addVirtualAttributeDeleteListener(
3802        ConfigurationDeleteListener<VirtualAttributeCfg> listener) throws ConfigException {
3803      impl.registerDeleteListener(INSTANCE.getVirtualAttributesRelationDefinition(), listener);
3804    }
3805
3806
3807
3808    /**
3809     * {@inheritDoc}
3810     */
3811    public void removeVirtualAttributeDeleteListener(
3812        ConfigurationDeleteListener<VirtualAttributeCfg> listener) {
3813      impl.deregisterDeleteListener(INSTANCE.getVirtualAttributesRelationDefinition(), listener);
3814    }
3815
3816
3817
3818    /**
3819     * {@inheritDoc}
3820     */
3821    public WorkQueueCfg getWorkQueue() throws ConfigException {
3822      return impl.getChild(INSTANCE.getWorkQueueRelationDefinition()).getConfiguration();
3823    }
3824
3825
3826
3827    /**
3828     * {@inheritDoc}
3829     */
3830    public Class<? extends RootCfg> configurationClass() {
3831      return RootCfg.class;
3832    }
3833
3834
3835
3836    /**
3837     * {@inheritDoc}
3838     */
3839    public DN dn() {
3840      return impl.getDN();
3841    }
3842
3843
3844
3845    /** {@inheritDoc} */
3846    public String toString() {
3847      return impl.toString();
3848    }
3849  }
3850}