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