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.client; 017 018 019 020import java.util.Collection; 021import org.opends.server.admin.client.AuthorizationException; 022import org.opends.server.admin.client.CommunicationException; 023import org.opends.server.admin.client.ConcurrentModificationException; 024import org.opends.server.admin.client.IllegalManagedObjectNameException; 025import org.opends.server.admin.client.ManagedObjectDecodingException; 026import org.opends.server.admin.client.OperationRejectedException; 027import org.opends.server.admin.ConfigurationClient; 028import org.opends.server.admin.DefinitionDecodingException; 029import org.opends.server.admin.ManagedObjectDefinition; 030import org.opends.server.admin.ManagedObjectNotFoundException; 031import org.opends.server.admin.PropertyException; 032import org.opends.server.admin.std.server.AccountStatusNotificationHandlerCfg; 033import org.opends.server.admin.std.server.AlertHandlerCfg; 034import org.opends.server.admin.std.server.AttributeSyntaxCfg; 035import org.opends.server.admin.std.server.AuthenticationPolicyCfg; 036import org.opends.server.admin.std.server.BackendCfg; 037import org.opends.server.admin.std.server.CertificateMapperCfg; 038import org.opends.server.admin.std.server.ConnectionHandlerCfg; 039import org.opends.server.admin.std.server.EntryCacheCfg; 040import org.opends.server.admin.std.server.ExtendedOperationHandlerCfg; 041import org.opends.server.admin.std.server.GroupImplementationCfg; 042import org.opends.server.admin.std.server.IdentityMapperCfg; 043import org.opends.server.admin.std.server.KeyManagerProviderCfg; 044import org.opends.server.admin.std.server.LogPublisherCfg; 045import org.opends.server.admin.std.server.LogRetentionPolicyCfg; 046import org.opends.server.admin.std.server.LogRotationPolicyCfg; 047import org.opends.server.admin.std.server.MatchingRuleCfg; 048import org.opends.server.admin.std.server.MonitorProviderCfg; 049import org.opends.server.admin.std.server.PasswordGeneratorCfg; 050import org.opends.server.admin.std.server.PasswordStorageSchemeCfg; 051import org.opends.server.admin.std.server.PasswordValidatorCfg; 052import org.opends.server.admin.std.server.RootCfg; 053import org.opends.server.admin.std.server.SASLMechanismHandlerCfg; 054import org.opends.server.admin.std.server.SchemaProviderCfg; 055import org.opends.server.admin.std.server.SynchronizationProviderCfg; 056import org.opends.server.admin.std.server.TrustManagerProviderCfg; 057import org.opends.server.admin.std.server.VirtualAttributeCfg; 058 059 060 061/** 062 * A client-side interface for reading and modifying Root settings. 063 * <p> 064 * The root configuration provides an entry point to the rest of the 065 * OpenDJ configuration. 066 */ 067public interface RootCfgClient extends ConfigurationClient { 068 069 /** 070 * Get the configuration definition associated with this Root. 071 * 072 * @return Returns the configuration definition associated with this Root. 073 */ 074 ManagedObjectDefinition<? extends RootCfgClient, ? extends RootCfg> definition(); 075 076 077 078 /** 079 * Gets the Access Control Handler. 080 * 081 * @return Returns the Access Control Handler. 082 * @throws DefinitionDecodingException 083 * If the Access Control Handler was found but its type 084 * could not be determined. 085 * @throws ManagedObjectDecodingException 086 * If the Access Control Handler was found but one or more 087 * of its properties could not be decoded. 088 * @throws ManagedObjectNotFoundException 089 * If the Access Control Handler could not be found on the 090 * server. 091 * @throws ConcurrentModificationException 092 * If this Root has been removed from the server by 093 * another client. 094 * @throws AuthorizationException 095 * If the server refuses to retrieve the Access Control 096 * Handler because the client does not have the correct 097 * privileges. 098 * @throws CommunicationException 099 * If the client cannot contact the server due to an 100 * underlying communication problem. 101 */ 102 AccessControlHandlerCfgClient getAccessControlHandler() 103 throws DefinitionDecodingException, ManagedObjectDecodingException, 104 ManagedObjectNotFoundException, ConcurrentModificationException, 105 AuthorizationException, CommunicationException; 106 107 108 109 /** 110 * Lists the Account Status Notification Handlers. 111 * 112 * @return Returns an array containing the names of the Account 113 * Status Notification Handlers. 114 * @throws ConcurrentModificationException 115 * If this Root has been removed from the server by 116 * another client. 117 * @throws AuthorizationException 118 * If the server refuses to list the Account Status 119 * Notification Handlers because the client does not have 120 * the correct privileges. 121 * @throws CommunicationException 122 * If the client cannot contact the server due to an 123 * underlying communication problem. 124 */ 125 String[] listAccountStatusNotificationHandlers() throws ConcurrentModificationException, 126 AuthorizationException, CommunicationException; 127 128 129 130 /** 131 * Gets the named Account Status Notification Handler. 132 * 133 * @param name 134 * The name of the Account Status Notification Handler to 135 * retrieve. 136 * @return Returns the named Account Status Notification Handler. 137 * @throws DefinitionDecodingException 138 * If the named Account Status Notification Handler was 139 * found but its type could not be determined. 140 * @throws ManagedObjectDecodingException 141 * If the named Account Status Notification Handler was 142 * found but one or more of its properties could not be 143 * decoded. 144 * @throws ManagedObjectNotFoundException 145 * If the named Account Status Notification Handler was 146 * not found on the server. 147 * @throws ConcurrentModificationException 148 * If this Root has been removed from the server by 149 * another client. 150 * @throws AuthorizationException 151 * If the server refuses to retrieve the named Account 152 * Status Notification Handler because the client does not 153 * have the correct privileges. 154 * @throws CommunicationException 155 * If the client cannot contact the server due to an 156 * underlying communication problem. 157 */ 158 AccountStatusNotificationHandlerCfgClient getAccountStatusNotificationHandler(String name) 159 throws DefinitionDecodingException, ManagedObjectDecodingException, 160 ManagedObjectNotFoundException, ConcurrentModificationException, 161 AuthorizationException, CommunicationException; 162 163 164 165 /** 166 * Creates a new Account Status Notification Handler. The new 167 * Account Status Notification Handler will initially not contain any 168 * property values (including mandatory properties). Once the Account 169 * Status Notification Handler has been configured it can be added to 170 * the server using the {@link #commit()} method. 171 * 172 * @param <C> 173 * The type of the Account Status Notification Handler 174 * being created. 175 * @param d 176 * The definition of the Account Status Notification 177 * Handler to be created. 178 * @param name 179 * The name of the new Account Status Notification Handler. 180 * @param exceptions 181 * An optional collection in which to place any {@link 182 * PropertyException}s that occurred whilst attempting to 183 * determine the default values of the Account Status 184 * Notification Handler. This argument can be 185 * <code>null<code>. 186 * @return Returns a new Account Status Notification Handler 187 * configuration instance. 188 * @throws IllegalManagedObjectNameException 189 * If the name of the new Account Status Notification 190 * Handler is invalid. 191 */ 192 <C extends AccountStatusNotificationHandlerCfgClient> C createAccountStatusNotificationHandler( 193 ManagedObjectDefinition<C, ? extends AccountStatusNotificationHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 194 195 196 197 /** 198 * Removes the named Account Status Notification Handler. 199 * 200 * @param name 201 * The name of the Account Status Notification Handler to 202 * remove. 203 * @throws ManagedObjectNotFoundException 204 * If the Account Status Notification Handler does not 205 * exist. 206 * @throws OperationRejectedException 207 * If the server refuses to remove the Account Status 208 * Notification Handler due to some server-side constraint 209 * which cannot be satisfied (for example, if it is 210 * referenced by another managed object). 211 * @throws ConcurrentModificationException 212 * If this Root has been removed from the server by 213 * another client. 214 * @throws AuthorizationException 215 * If the server refuses to remove the Account Status 216 * Notification Handler because the client does not have 217 * the correct privileges. 218 * @throws CommunicationException 219 * If the client cannot contact the server due to an 220 * underlying communication problem. 221 */ 222 void removeAccountStatusNotificationHandler(String name) 223 throws ManagedObjectNotFoundException, OperationRejectedException, 224 ConcurrentModificationException, AuthorizationException, 225 CommunicationException; 226 227 228 229 /** 230 * Gets the Administration Connector. 231 * 232 * @return Returns the Administration Connector. 233 * @throws DefinitionDecodingException 234 * If the Administration Connector was found but its type 235 * could not be determined. 236 * @throws ManagedObjectDecodingException 237 * If the Administration Connector was found but one or 238 * more of its properties could not be decoded. 239 * @throws ManagedObjectNotFoundException 240 * If the Administration Connector could not be found on 241 * the server. 242 * @throws ConcurrentModificationException 243 * If this Root has been removed from the server by 244 * another client. 245 * @throws AuthorizationException 246 * If the server refuses to retrieve the Administration 247 * Connector because the client does not have the correct 248 * privileges. 249 * @throws CommunicationException 250 * If the client cannot contact the server due to an 251 * underlying communication problem. 252 */ 253 AdministrationConnectorCfgClient getAdministrationConnector() 254 throws DefinitionDecodingException, ManagedObjectDecodingException, 255 ManagedObjectNotFoundException, ConcurrentModificationException, 256 AuthorizationException, CommunicationException; 257 258 259 260 /** 261 * Lists the Alert Handlers. 262 * 263 * @return Returns an array containing the names of the Alert 264 * Handlers. 265 * @throws ConcurrentModificationException 266 * If this Root has been removed from the server by 267 * another client. 268 * @throws AuthorizationException 269 * If the server refuses to list the Alert Handlers 270 * because the client does not have the correct privileges. 271 * @throws CommunicationException 272 * If the client cannot contact the server due to an 273 * underlying communication problem. 274 */ 275 String[] listAlertHandlers() throws ConcurrentModificationException, 276 AuthorizationException, CommunicationException; 277 278 279 280 /** 281 * Gets the named Alert Handler. 282 * 283 * @param name 284 * The name of the Alert Handler to retrieve. 285 * @return Returns the named Alert Handler. 286 * @throws DefinitionDecodingException 287 * If the named Alert Handler was found but its type could 288 * not be determined. 289 * @throws ManagedObjectDecodingException 290 * If the named Alert Handler was found but one or more of 291 * its properties could not be decoded. 292 * @throws ManagedObjectNotFoundException 293 * If the named Alert Handler was not found on the server. 294 * @throws ConcurrentModificationException 295 * If this Root has been removed from the server by 296 * another client. 297 * @throws AuthorizationException 298 * If the server refuses to retrieve the named Alert 299 * Handler because the client does not have the correct 300 * privileges. 301 * @throws CommunicationException 302 * If the client cannot contact the server due to an 303 * underlying communication problem. 304 */ 305 AlertHandlerCfgClient getAlertHandler(String name) 306 throws DefinitionDecodingException, ManagedObjectDecodingException, 307 ManagedObjectNotFoundException, ConcurrentModificationException, 308 AuthorizationException, CommunicationException; 309 310 311 312 /** 313 * Creates a new Alert Handler. The new Alert Handler will initially 314 * not contain any property values (including mandatory properties). 315 * Once the Alert Handler has been configured it can be added to the 316 * server using the {@link #commit()} method. 317 * 318 * @param <C> 319 * The type of the Alert Handler being created. 320 * @param d 321 * The definition of the Alert Handler to be created. 322 * @param name 323 * The name of the new Alert Handler. 324 * @param exceptions 325 * An optional collection in which to place any {@link 326 * PropertyException}s that occurred whilst attempting to 327 * determine the default values of the Alert Handler. This 328 * argument can be <code>null<code>. 329 * @return Returns a new Alert Handler configuration instance. 330 * @throws IllegalManagedObjectNameException 331 * If the name of the new Alert Handler is invalid. 332 */ 333 <C extends AlertHandlerCfgClient> C createAlertHandler( 334 ManagedObjectDefinition<C, ? extends AlertHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 335 336 337 338 /** 339 * Removes the named Alert Handler. 340 * 341 * @param name 342 * The name of the Alert Handler to remove. 343 * @throws ManagedObjectNotFoundException 344 * If the Alert Handler does not exist. 345 * @throws OperationRejectedException 346 * If the server refuses to remove the Alert Handler due 347 * to some server-side constraint which cannot be satisfied 348 * (for example, if it is referenced by another managed 349 * object). 350 * @throws ConcurrentModificationException 351 * If this Root has been removed from the server by 352 * another client. 353 * @throws AuthorizationException 354 * If the server refuses to remove the Alert Handler 355 * because the client does not have the correct privileges. 356 * @throws CommunicationException 357 * If the client cannot contact the server due to an 358 * underlying communication problem. 359 */ 360 void removeAlertHandler(String name) 361 throws ManagedObjectNotFoundException, OperationRejectedException, 362 ConcurrentModificationException, AuthorizationException, 363 CommunicationException; 364 365 366 367 /** 368 * Lists the Attribute Syntaxes. 369 * 370 * @return Returns an array containing the names of the Attribute 371 * Syntaxes. 372 * @throws ConcurrentModificationException 373 * If this Root has been removed from the server by 374 * another client. 375 * @throws AuthorizationException 376 * If the server refuses to list the Attribute Syntaxes 377 * because the client does not have the correct privileges. 378 * @throws CommunicationException 379 * If the client cannot contact the server due to an 380 * underlying communication problem. 381 */ 382 String[] listAttributeSyntaxes() throws ConcurrentModificationException, 383 AuthorizationException, CommunicationException; 384 385 386 387 /** 388 * Gets the named Attribute Syntax. 389 * 390 * @param name 391 * The name of the Attribute Syntax to retrieve. 392 * @return Returns the named Attribute Syntax. 393 * @throws DefinitionDecodingException 394 * If the named Attribute Syntax was found but its type 395 * could not be determined. 396 * @throws ManagedObjectDecodingException 397 * If the named Attribute Syntax was found but one or more 398 * of its properties could not be decoded. 399 * @throws ManagedObjectNotFoundException 400 * If the named Attribute Syntax was not found on the 401 * server. 402 * @throws ConcurrentModificationException 403 * If this Root has been removed from the server by 404 * another client. 405 * @throws AuthorizationException 406 * If the server refuses to retrieve the named Attribute 407 * Syntax because the client does not have the correct 408 * privileges. 409 * @throws CommunicationException 410 * If the client cannot contact the server due to an 411 * underlying communication problem. 412 */ 413 AttributeSyntaxCfgClient getAttributeSyntax(String name) 414 throws DefinitionDecodingException, ManagedObjectDecodingException, 415 ManagedObjectNotFoundException, ConcurrentModificationException, 416 AuthorizationException, CommunicationException; 417 418 419 420 /** 421 * Creates a new Attribute Syntax. The new Attribute Syntax will 422 * initially not contain any property values (including mandatory 423 * properties). Once the Attribute Syntax has been configured it can 424 * be added to the server using the {@link #commit()} method. 425 * 426 * @param <C> 427 * The type of the Attribute Syntax being created. 428 * @param d 429 * The definition of the Attribute Syntax to be created. 430 * @param name 431 * The name of the new Attribute Syntax. 432 * @param exceptions 433 * An optional collection in which to place any {@link 434 * PropertyException}s that occurred whilst attempting to 435 * determine the default values of the Attribute Syntax. 436 * This argument can be <code>null<code>. 437 * @return Returns a new Attribute Syntax configuration instance. 438 * @throws IllegalManagedObjectNameException 439 * If the name of the new Attribute Syntax is invalid. 440 */ 441 <C extends AttributeSyntaxCfgClient> C createAttributeSyntax( 442 ManagedObjectDefinition<C, ? extends AttributeSyntaxCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 443 444 445 446 /** 447 * Removes the named Attribute Syntax. 448 * 449 * @param name 450 * The name of the Attribute Syntax to remove. 451 * @throws ManagedObjectNotFoundException 452 * If the Attribute Syntax does not exist. 453 * @throws OperationRejectedException 454 * If the server refuses to remove the Attribute Syntax 455 * due to some server-side constraint which cannot be 456 * satisfied (for example, if it is referenced by another 457 * managed object). 458 * @throws ConcurrentModificationException 459 * If this Root has been removed from the server by 460 * another client. 461 * @throws AuthorizationException 462 * If the server refuses to remove the Attribute Syntax 463 * because the client does not have the correct privileges. 464 * @throws CommunicationException 465 * If the client cannot contact the server due to an 466 * underlying communication problem. 467 */ 468 void removeAttributeSyntax(String name) 469 throws ManagedObjectNotFoundException, OperationRejectedException, 470 ConcurrentModificationException, AuthorizationException, 471 CommunicationException; 472 473 474 475 /** 476 * Lists the Backends. 477 * 478 * @return Returns an array containing the names of the Backends. 479 * @throws ConcurrentModificationException 480 * If this Root has been removed from the server by 481 * another client. 482 * @throws AuthorizationException 483 * If the server refuses to list the Backends because the 484 * client does not have the correct privileges. 485 * @throws CommunicationException 486 * If the client cannot contact the server due to an 487 * underlying communication problem. 488 */ 489 String[] listBackends() throws ConcurrentModificationException, 490 AuthorizationException, CommunicationException; 491 492 493 494 /** 495 * Gets the named Backend. 496 * 497 * @param name 498 * The name of the Backend to retrieve. 499 * @return Returns the named Backend. 500 * @throws DefinitionDecodingException 501 * If the named Backend was found but its type could not 502 * be determined. 503 * @throws ManagedObjectDecodingException 504 * If the named Backend was found but one or more of its 505 * properties could not be decoded. 506 * @throws ManagedObjectNotFoundException 507 * If the named Backend was not found on the server. 508 * @throws ConcurrentModificationException 509 * If this Root has been removed from the server by 510 * another client. 511 * @throws AuthorizationException 512 * If the server refuses to retrieve the named Backend 513 * because the client does not have the correct privileges. 514 * @throws CommunicationException 515 * If the client cannot contact the server due to an 516 * underlying communication problem. 517 */ 518 BackendCfgClient getBackend(String name) 519 throws DefinitionDecodingException, ManagedObjectDecodingException, 520 ManagedObjectNotFoundException, ConcurrentModificationException, 521 AuthorizationException, CommunicationException; 522 523 524 525 /** 526 * Creates a new Backend. The new Backend will initially not contain 527 * any property values (including mandatory properties). Once the 528 * Backend has been configured it can be added to the server using 529 * the {@link #commit()} method. 530 * 531 * @param <C> 532 * The type of the Backend being created. 533 * @param d 534 * The definition of the Backend to be created. 535 * @param name 536 * The name of the new Backend. 537 * @param exceptions 538 * An optional collection in which to place any {@link 539 * PropertyException}s that occurred whilst attempting to 540 * determine the default values of the Backend. This 541 * argument can be <code>null<code>. 542 * @return Returns a new Backend configuration instance. 543 * @throws IllegalManagedObjectNameException 544 * If the name of the new Backend is invalid. 545 */ 546 <C extends BackendCfgClient> C createBackend( 547 ManagedObjectDefinition<C, ? extends BackendCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 548 549 550 551 /** 552 * Removes the named Backend. 553 * 554 * @param name 555 * The name of the Backend to remove. 556 * @throws ManagedObjectNotFoundException 557 * If the Backend does not exist. 558 * @throws OperationRejectedException 559 * If the server refuses to remove the Backend due to some 560 * server-side constraint which cannot be satisfied (for 561 * example, if it is referenced by another managed object). 562 * @throws ConcurrentModificationException 563 * If this Root has been removed from the server by 564 * another client. 565 * @throws AuthorizationException 566 * If the server refuses to remove the Backend because the 567 * client does not have the correct privileges. 568 * @throws CommunicationException 569 * If the client cannot contact the server due to an 570 * underlying communication problem. 571 */ 572 void removeBackend(String name) 573 throws ManagedObjectNotFoundException, OperationRejectedException, 574 ConcurrentModificationException, AuthorizationException, 575 CommunicationException; 576 577 578 579 /** 580 * Lists the Certificate Mappers. 581 * 582 * @return Returns an array containing the names of the Certificate 583 * Mappers. 584 * @throws ConcurrentModificationException 585 * If this Root has been removed from the server by 586 * another client. 587 * @throws AuthorizationException 588 * If the server refuses to list the Certificate Mappers 589 * because the client does not have the correct privileges. 590 * @throws CommunicationException 591 * If the client cannot contact the server due to an 592 * underlying communication problem. 593 */ 594 String[] listCertificateMappers() throws ConcurrentModificationException, 595 AuthorizationException, CommunicationException; 596 597 598 599 /** 600 * Gets the named Certificate Mapper. 601 * 602 * @param name 603 * The name of the Certificate Mapper to retrieve. 604 * @return Returns the named Certificate Mapper. 605 * @throws DefinitionDecodingException 606 * If the named Certificate Mapper was found but its type 607 * could not be determined. 608 * @throws ManagedObjectDecodingException 609 * If the named Certificate Mapper was found but one or 610 * more of its properties could not be decoded. 611 * @throws ManagedObjectNotFoundException 612 * If the named Certificate Mapper was not found on the 613 * server. 614 * @throws ConcurrentModificationException 615 * If this Root has been removed from the server by 616 * another client. 617 * @throws AuthorizationException 618 * If the server refuses to retrieve the named Certificate 619 * Mapper because the client does not have the correct 620 * privileges. 621 * @throws CommunicationException 622 * If the client cannot contact the server due to an 623 * underlying communication problem. 624 */ 625 CertificateMapperCfgClient getCertificateMapper(String name) 626 throws DefinitionDecodingException, ManagedObjectDecodingException, 627 ManagedObjectNotFoundException, ConcurrentModificationException, 628 AuthorizationException, CommunicationException; 629 630 631 632 /** 633 * Creates a new Certificate Mapper. The new Certificate Mapper will 634 * initially not contain any property values (including mandatory 635 * properties). Once the Certificate Mapper has been configured it 636 * can be added to the server using the {@link #commit()} method. 637 * 638 * @param <C> 639 * The type of the Certificate Mapper being created. 640 * @param d 641 * The definition of the Certificate Mapper to be created. 642 * @param name 643 * The name of the new Certificate Mapper. 644 * @param exceptions 645 * An optional collection in which to place any {@link 646 * PropertyException}s that occurred whilst attempting to 647 * determine the default values of the Certificate Mapper. 648 * This argument can be <code>null<code>. 649 * @return Returns a new Certificate Mapper configuration instance. 650 * @throws IllegalManagedObjectNameException 651 * If the name of the new Certificate Mapper is invalid. 652 */ 653 <C extends CertificateMapperCfgClient> C createCertificateMapper( 654 ManagedObjectDefinition<C, ? extends CertificateMapperCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 655 656 657 658 /** 659 * Removes the named Certificate Mapper. 660 * 661 * @param name 662 * The name of the Certificate Mapper to remove. 663 * @throws ManagedObjectNotFoundException 664 * If the Certificate Mapper does not exist. 665 * @throws OperationRejectedException 666 * If the server refuses to remove the Certificate Mapper 667 * due to some server-side constraint which cannot be 668 * satisfied (for example, if it is referenced by another 669 * managed object). 670 * @throws ConcurrentModificationException 671 * If this Root has been removed from the server by 672 * another client. 673 * @throws AuthorizationException 674 * If the server refuses to remove the Certificate Mapper 675 * because the client does not have the correct privileges. 676 * @throws CommunicationException 677 * If the client cannot contact the server due to an 678 * underlying communication problem. 679 */ 680 void removeCertificateMapper(String name) 681 throws ManagedObjectNotFoundException, OperationRejectedException, 682 ConcurrentModificationException, AuthorizationException, 683 CommunicationException; 684 685 686 687 /** 688 * Lists the Connection Handlers. 689 * 690 * @return Returns an array containing the names of the Connection 691 * Handlers. 692 * @throws ConcurrentModificationException 693 * If this Root has been removed from the server by 694 * another client. 695 * @throws AuthorizationException 696 * If the server refuses to list the Connection Handlers 697 * because the client does not have the correct privileges. 698 * @throws CommunicationException 699 * If the client cannot contact the server due to an 700 * underlying communication problem. 701 */ 702 String[] listConnectionHandlers() throws ConcurrentModificationException, 703 AuthorizationException, CommunicationException; 704 705 706 707 /** 708 * Gets the named Connection Handler. 709 * 710 * @param name 711 * The name of the Connection Handler to retrieve. 712 * @return Returns the named Connection Handler. 713 * @throws DefinitionDecodingException 714 * If the named Connection Handler was found but its type 715 * could not be determined. 716 * @throws ManagedObjectDecodingException 717 * If the named Connection Handler was found but one or 718 * more of its properties could not be decoded. 719 * @throws ManagedObjectNotFoundException 720 * If the named Connection Handler was not found on the 721 * server. 722 * @throws ConcurrentModificationException 723 * If this Root has been removed from the server by 724 * another client. 725 * @throws AuthorizationException 726 * If the server refuses to retrieve the named Connection 727 * Handler because the client does not have the correct 728 * privileges. 729 * @throws CommunicationException 730 * If the client cannot contact the server due to an 731 * underlying communication problem. 732 */ 733 ConnectionHandlerCfgClient getConnectionHandler(String name) 734 throws DefinitionDecodingException, ManagedObjectDecodingException, 735 ManagedObjectNotFoundException, ConcurrentModificationException, 736 AuthorizationException, CommunicationException; 737 738 739 740 /** 741 * Creates a new Connection Handler. The new Connection Handler will 742 * initially not contain any property values (including mandatory 743 * properties). Once the Connection Handler has been configured it 744 * can be added to the server using the {@link #commit()} method. 745 * 746 * @param <C> 747 * The type of the Connection Handler being created. 748 * @param d 749 * The definition of the Connection Handler to be created. 750 * @param name 751 * The name of the new Connection Handler. 752 * @param exceptions 753 * An optional collection in which to place any {@link 754 * PropertyException}s that occurred whilst attempting to 755 * determine the default values of the Connection Handler. 756 * This argument can be <code>null<code>. 757 * @return Returns a new Connection Handler configuration instance. 758 * @throws IllegalManagedObjectNameException 759 * If the name of the new Connection Handler is invalid. 760 */ 761 <C extends ConnectionHandlerCfgClient> C createConnectionHandler( 762 ManagedObjectDefinition<C, ? extends ConnectionHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 763 764 765 766 /** 767 * Removes the named Connection Handler. 768 * 769 * @param name 770 * The name of the Connection Handler to remove. 771 * @throws ManagedObjectNotFoundException 772 * If the Connection Handler does not exist. 773 * @throws OperationRejectedException 774 * If the server refuses to remove the Connection Handler 775 * due to some server-side constraint which cannot be 776 * satisfied (for example, if it is referenced by another 777 * managed object). 778 * @throws ConcurrentModificationException 779 * If this Root has been removed from the server by 780 * another client. 781 * @throws AuthorizationException 782 * If the server refuses to remove the Connection Handler 783 * because the client does not have the correct privileges. 784 * @throws CommunicationException 785 * If the client cannot contact the server due to an 786 * underlying communication problem. 787 */ 788 void removeConnectionHandler(String name) 789 throws ManagedObjectNotFoundException, OperationRejectedException, 790 ConcurrentModificationException, AuthorizationException, 791 CommunicationException; 792 793 794 795 /** 796 * Gets the Crypto Manager. 797 * 798 * @return Returns the Crypto Manager. 799 * @throws DefinitionDecodingException 800 * If the Crypto Manager was found but its type could not 801 * be determined. 802 * @throws ManagedObjectDecodingException 803 * If the Crypto Manager was found but one or more of its 804 * properties could not be decoded. 805 * @throws ManagedObjectNotFoundException 806 * If the Crypto Manager could not be found on the server. 807 * @throws ConcurrentModificationException 808 * If this Root has been removed from the server by 809 * another client. 810 * @throws AuthorizationException 811 * If the server refuses to retrieve the Crypto Manager 812 * because the client does not have the correct privileges. 813 * @throws CommunicationException 814 * If the client cannot contact the server due to an 815 * underlying communication problem. 816 */ 817 CryptoManagerCfgClient getCryptoManager() 818 throws DefinitionDecodingException, ManagedObjectDecodingException, 819 ManagedObjectNotFoundException, ConcurrentModificationException, 820 AuthorizationException, CommunicationException; 821 822 823 824 /** 825 * Lists the Entry Caches. 826 * 827 * @return Returns an array containing the names of the Entry 828 * Caches. 829 * @throws ConcurrentModificationException 830 * If this Root has been removed from the server by 831 * another client. 832 * @throws AuthorizationException 833 * If the server refuses to list the Entry Caches because 834 * the client does not have the correct privileges. 835 * @throws CommunicationException 836 * If the client cannot contact the server due to an 837 * underlying communication problem. 838 */ 839 String[] listEntryCaches() throws ConcurrentModificationException, 840 AuthorizationException, CommunicationException; 841 842 843 844 /** 845 * Gets the named Entry Cache. 846 * 847 * @param name 848 * The name of the Entry Cache to retrieve. 849 * @return Returns the named Entry Cache. 850 * @throws DefinitionDecodingException 851 * If the named Entry Cache was found but its type could 852 * not be determined. 853 * @throws ManagedObjectDecodingException 854 * If the named Entry Cache was found but one or more of 855 * its properties could not be decoded. 856 * @throws ManagedObjectNotFoundException 857 * If the named Entry Cache was not found on the server. 858 * @throws ConcurrentModificationException 859 * If this Root has been removed from the server by 860 * another client. 861 * @throws AuthorizationException 862 * If the server refuses to retrieve the named Entry Cache 863 * because the client does not have the correct privileges. 864 * @throws CommunicationException 865 * If the client cannot contact the server due to an 866 * underlying communication problem. 867 */ 868 EntryCacheCfgClient getEntryCache(String name) 869 throws DefinitionDecodingException, ManagedObjectDecodingException, 870 ManagedObjectNotFoundException, ConcurrentModificationException, 871 AuthorizationException, CommunicationException; 872 873 874 875 /** 876 * Creates a new Entry Cache. The new Entry Cache will initially not 877 * contain any property values (including mandatory properties). Once 878 * the Entry Cache has been configured it can be added to the server 879 * using the {@link #commit()} method. 880 * 881 * @param <C> 882 * The type of the Entry Cache being created. 883 * @param d 884 * The definition of the Entry Cache to be created. 885 * @param name 886 * The name of the new Entry Cache. 887 * @param exceptions 888 * An optional collection in which to place any {@link 889 * PropertyException}s that occurred whilst attempting to 890 * determine the default values of the Entry Cache. This 891 * argument can be <code>null<code>. 892 * @return Returns a new Entry Cache configuration instance. 893 * @throws IllegalManagedObjectNameException 894 * If the name of the new Entry Cache is invalid. 895 */ 896 <C extends EntryCacheCfgClient> C createEntryCache( 897 ManagedObjectDefinition<C, ? extends EntryCacheCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 898 899 900 901 /** 902 * Removes the named Entry Cache. 903 * 904 * @param name 905 * The name of the Entry Cache to remove. 906 * @throws ManagedObjectNotFoundException 907 * If the Entry Cache does not exist. 908 * @throws OperationRejectedException 909 * If the server refuses to remove the Entry Cache due to 910 * some server-side constraint which cannot be satisfied 911 * (for example, if it is referenced by another managed 912 * object). 913 * @throws ConcurrentModificationException 914 * If this Root has been removed from the server by 915 * another client. 916 * @throws AuthorizationException 917 * If the server refuses to remove the Entry Cache because 918 * the client does not have the correct privileges. 919 * @throws CommunicationException 920 * If the client cannot contact the server due to an 921 * underlying communication problem. 922 */ 923 void removeEntryCache(String name) 924 throws ManagedObjectNotFoundException, OperationRejectedException, 925 ConcurrentModificationException, AuthorizationException, 926 CommunicationException; 927 928 929 930 /** 931 * Lists the Extended Operation Handlers. 932 * 933 * @return Returns an array containing the names of the Extended 934 * Operation Handlers. 935 * @throws ConcurrentModificationException 936 * If this Root has been removed from the server by 937 * another client. 938 * @throws AuthorizationException 939 * If the server refuses to list the Extended Operation 940 * Handlers because the client does not have the correct 941 * privileges. 942 * @throws CommunicationException 943 * If the client cannot contact the server due to an 944 * underlying communication problem. 945 */ 946 String[] listExtendedOperationHandlers() throws ConcurrentModificationException, 947 AuthorizationException, CommunicationException; 948 949 950 951 /** 952 * Gets the named Extended Operation Handler. 953 * 954 * @param name 955 * The name of the Extended Operation Handler to retrieve. 956 * @return Returns the named Extended Operation Handler. 957 * @throws DefinitionDecodingException 958 * If the named Extended Operation Handler was found but 959 * its type could not be determined. 960 * @throws ManagedObjectDecodingException 961 * If the named Extended Operation Handler was found but 962 * one or more of its properties could not be decoded. 963 * @throws ManagedObjectNotFoundException 964 * If the named Extended Operation Handler was not found 965 * on the server. 966 * @throws ConcurrentModificationException 967 * If this Root has been removed from the server by 968 * another client. 969 * @throws AuthorizationException 970 * If the server refuses to retrieve the named Extended 971 * Operation Handler because the client does not have the 972 * correct privileges. 973 * @throws CommunicationException 974 * If the client cannot contact the server due to an 975 * underlying communication problem. 976 */ 977 ExtendedOperationHandlerCfgClient getExtendedOperationHandler(String name) 978 throws DefinitionDecodingException, ManagedObjectDecodingException, 979 ManagedObjectNotFoundException, ConcurrentModificationException, 980 AuthorizationException, CommunicationException; 981 982 983 984 /** 985 * Creates a new Extended Operation Handler. The new Extended 986 * Operation Handler will initially not contain any property values 987 * (including mandatory properties). Once the Extended Operation 988 * Handler has been configured it can be added to the server using 989 * the {@link #commit()} method. 990 * 991 * @param <C> 992 * The type of the Extended Operation Handler being 993 * created. 994 * @param d 995 * The definition of the Extended Operation Handler to be 996 * created. 997 * @param name 998 * The name of the new Extended Operation Handler. 999 * @param exceptions 1000 * An optional collection in which to place any {@link 1001 * PropertyException}s that occurred whilst attempting to 1002 * determine the default values of the Extended Operation 1003 * Handler. This argument can be <code>null<code>. 1004 * @return Returns a new Extended Operation Handler configuration 1005 * instance. 1006 * @throws IllegalManagedObjectNameException 1007 * If the name of the new Extended Operation Handler is 1008 * invalid. 1009 */ 1010 <C extends ExtendedOperationHandlerCfgClient> C createExtendedOperationHandler( 1011 ManagedObjectDefinition<C, ? extends ExtendedOperationHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 1012 1013 1014 1015 /** 1016 * Removes the named Extended Operation Handler. 1017 * 1018 * @param name 1019 * The name of the Extended Operation Handler to remove. 1020 * @throws ManagedObjectNotFoundException 1021 * If the Extended Operation Handler does not exist. 1022 * @throws OperationRejectedException 1023 * If the server refuses to remove the Extended Operation 1024 * Handler due to some server-side constraint which cannot 1025 * be satisfied (for example, if it is referenced by 1026 * another managed object). 1027 * @throws ConcurrentModificationException 1028 * If this Root has been removed from the server by 1029 * another client. 1030 * @throws AuthorizationException 1031 * If the server refuses to remove the Extended Operation 1032 * Handler because the client does not have the correct 1033 * privileges. 1034 * @throws CommunicationException 1035 * If the client cannot contact the server due to an 1036 * underlying communication problem. 1037 */ 1038 void removeExtendedOperationHandler(String name) 1039 throws ManagedObjectNotFoundException, OperationRejectedException, 1040 ConcurrentModificationException, AuthorizationException, 1041 CommunicationException; 1042 1043 1044 1045 /** 1046 * Gets the Global Configuration. 1047 * 1048 * @return Returns the Global Configuration. 1049 * @throws DefinitionDecodingException 1050 * If the Global Configuration was found but its type 1051 * could not be determined. 1052 * @throws ManagedObjectDecodingException 1053 * If the Global Configuration was found but one or more 1054 * of its properties could not be decoded. 1055 * @throws ManagedObjectNotFoundException 1056 * If the Global Configuration could not be found on the 1057 * server. 1058 * @throws ConcurrentModificationException 1059 * If this Root has been removed from the server by 1060 * another client. 1061 * @throws AuthorizationException 1062 * If the server refuses to retrieve the Global 1063 * Configuration because the client does not have the 1064 * correct privileges. 1065 * @throws CommunicationException 1066 * If the client cannot contact the server due to an 1067 * underlying communication problem. 1068 */ 1069 GlobalCfgClient getGlobalConfiguration() 1070 throws DefinitionDecodingException, ManagedObjectDecodingException, 1071 ManagedObjectNotFoundException, ConcurrentModificationException, 1072 AuthorizationException, CommunicationException; 1073 1074 1075 1076 /** 1077 * Lists the Group Implementations. 1078 * 1079 * @return Returns an array containing the names of the Group 1080 * Implementations. 1081 * @throws ConcurrentModificationException 1082 * If this Root has been removed from the server by 1083 * another client. 1084 * @throws AuthorizationException 1085 * If the server refuses to list the Group Implementations 1086 * because the client does not have the correct privileges. 1087 * @throws CommunicationException 1088 * If the client cannot contact the server due to an 1089 * underlying communication problem. 1090 */ 1091 String[] listGroupImplementations() throws ConcurrentModificationException, 1092 AuthorizationException, CommunicationException; 1093 1094 1095 1096 /** 1097 * Gets the named Group Implementation. 1098 * 1099 * @param name 1100 * The name of the Group Implementation to retrieve. 1101 * @return Returns the named Group Implementation. 1102 * @throws DefinitionDecodingException 1103 * If the named Group Implementation was found but its 1104 * type could not be determined. 1105 * @throws ManagedObjectDecodingException 1106 * If the named Group Implementation was found but one or 1107 * more of its properties could not be decoded. 1108 * @throws ManagedObjectNotFoundException 1109 * If the named Group Implementation was not found on the 1110 * server. 1111 * @throws ConcurrentModificationException 1112 * If this Root has been removed from the server by 1113 * another client. 1114 * @throws AuthorizationException 1115 * If the server refuses to retrieve the named Group 1116 * Implementation because the client does not have the 1117 * correct privileges. 1118 * @throws CommunicationException 1119 * If the client cannot contact the server due to an 1120 * underlying communication problem. 1121 */ 1122 GroupImplementationCfgClient getGroupImplementation(String name) 1123 throws DefinitionDecodingException, ManagedObjectDecodingException, 1124 ManagedObjectNotFoundException, ConcurrentModificationException, 1125 AuthorizationException, CommunicationException; 1126 1127 1128 1129 /** 1130 * Creates a new Group Implementation. The new Group Implementation 1131 * will initially not contain any property values (including 1132 * mandatory properties). Once the Group Implementation has been 1133 * configured it can be added to the server using the {@link 1134 * #commit()} method. 1135 * 1136 * @param <C> 1137 * The type of the Group Implementation being created. 1138 * @param d 1139 * The definition of the Group Implementation to be 1140 * created. 1141 * @param name 1142 * The name of the new Group Implementation. 1143 * @param exceptions 1144 * An optional collection in which to place any {@link 1145 * PropertyException}s that occurred whilst attempting to 1146 * determine the default values of the Group Implementation. 1147 * This argument can be <code>null<code>. 1148 * @return Returns a new Group Implementation configuration 1149 * instance. 1150 * @throws IllegalManagedObjectNameException 1151 * If the name of the new Group Implementation is invalid. 1152 */ 1153 <C extends GroupImplementationCfgClient> C createGroupImplementation( 1154 ManagedObjectDefinition<C, ? extends GroupImplementationCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 1155 1156 1157 1158 /** 1159 * Removes the named Group Implementation. 1160 * 1161 * @param name 1162 * The name of the Group Implementation to remove. 1163 * @throws ManagedObjectNotFoundException 1164 * If the Group Implementation does not exist. 1165 * @throws OperationRejectedException 1166 * If the server refuses to remove the Group 1167 * Implementation due to some server-side constraint which 1168 * cannot be satisfied (for example, if it is referenced by 1169 * another managed object). 1170 * @throws ConcurrentModificationException 1171 * If this Root has been removed from the server by 1172 * another client. 1173 * @throws AuthorizationException 1174 * If the server refuses to remove the Group 1175 * Implementation because the client does not have the 1176 * correct privileges. 1177 * @throws CommunicationException 1178 * If the client cannot contact the server due to an 1179 * underlying communication problem. 1180 */ 1181 void removeGroupImplementation(String name) 1182 throws ManagedObjectNotFoundException, OperationRejectedException, 1183 ConcurrentModificationException, AuthorizationException, 1184 CommunicationException; 1185 1186 1187 1188 /** 1189 * Lists the Identity Mappers. 1190 * 1191 * @return Returns an array containing the names of the Identity 1192 * Mappers. 1193 * @throws ConcurrentModificationException 1194 * If this Root has been removed from the server by 1195 * another client. 1196 * @throws AuthorizationException 1197 * If the server refuses to list the Identity Mappers 1198 * because the client does not have the correct privileges. 1199 * @throws CommunicationException 1200 * If the client cannot contact the server due to an 1201 * underlying communication problem. 1202 */ 1203 String[] listIdentityMappers() throws ConcurrentModificationException, 1204 AuthorizationException, CommunicationException; 1205 1206 1207 1208 /** 1209 * Gets the named Identity Mapper. 1210 * 1211 * @param name 1212 * The name of the Identity Mapper to retrieve. 1213 * @return Returns the named Identity Mapper. 1214 * @throws DefinitionDecodingException 1215 * If the named Identity Mapper was found but its type 1216 * could not be determined. 1217 * @throws ManagedObjectDecodingException 1218 * If the named Identity Mapper was found but one or more 1219 * of its properties could not be decoded. 1220 * @throws ManagedObjectNotFoundException 1221 * If the named Identity Mapper was not found on the 1222 * server. 1223 * @throws ConcurrentModificationException 1224 * If this Root has been removed from the server by 1225 * another client. 1226 * @throws AuthorizationException 1227 * If the server refuses to retrieve the named Identity 1228 * Mapper because the client does not have the correct 1229 * privileges. 1230 * @throws CommunicationException 1231 * If the client cannot contact the server due to an 1232 * underlying communication problem. 1233 */ 1234 IdentityMapperCfgClient getIdentityMapper(String name) 1235 throws DefinitionDecodingException, ManagedObjectDecodingException, 1236 ManagedObjectNotFoundException, ConcurrentModificationException, 1237 AuthorizationException, CommunicationException; 1238 1239 1240 1241 /** 1242 * Creates a new Identity Mapper. The new Identity Mapper will 1243 * initially not contain any property values (including mandatory 1244 * properties). Once the Identity Mapper has been configured it can 1245 * be added to the server using the {@link #commit()} method. 1246 * 1247 * @param <C> 1248 * The type of the Identity Mapper being created. 1249 * @param d 1250 * The definition of the Identity Mapper to be created. 1251 * @param name 1252 * The name of the new Identity Mapper. 1253 * @param exceptions 1254 * An optional collection in which to place any {@link 1255 * PropertyException}s that occurred whilst attempting to 1256 * determine the default values of the Identity Mapper. This 1257 * argument can be <code>null<code>. 1258 * @return Returns a new Identity Mapper configuration instance. 1259 * @throws IllegalManagedObjectNameException 1260 * If the name of the new Identity Mapper is invalid. 1261 */ 1262 <C extends IdentityMapperCfgClient> C createIdentityMapper( 1263 ManagedObjectDefinition<C, ? extends IdentityMapperCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 1264 1265 1266 1267 /** 1268 * Removes the named Identity Mapper. 1269 * 1270 * @param name 1271 * The name of the Identity Mapper to remove. 1272 * @throws ManagedObjectNotFoundException 1273 * If the Identity Mapper does not exist. 1274 * @throws OperationRejectedException 1275 * If the server refuses to remove the Identity Mapper due 1276 * to some server-side constraint which cannot be satisfied 1277 * (for example, if it is referenced by another managed 1278 * object). 1279 * @throws ConcurrentModificationException 1280 * If this Root has been removed from the server by 1281 * another client. 1282 * @throws AuthorizationException 1283 * If the server refuses to remove the Identity Mapper 1284 * because the client does not have the correct privileges. 1285 * @throws CommunicationException 1286 * If the client cannot contact the server due to an 1287 * underlying communication problem. 1288 */ 1289 void removeIdentityMapper(String name) 1290 throws ManagedObjectNotFoundException, OperationRejectedException, 1291 ConcurrentModificationException, AuthorizationException, 1292 CommunicationException; 1293 1294 1295 1296 /** 1297 * Lists the Key Manager Providers. 1298 * 1299 * @return Returns an array containing the names of the Key Manager 1300 * Providers. 1301 * @throws ConcurrentModificationException 1302 * If this Root has been removed from the server by 1303 * another client. 1304 * @throws AuthorizationException 1305 * If the server refuses to list the Key Manager Providers 1306 * because the client does not have the correct privileges. 1307 * @throws CommunicationException 1308 * If the client cannot contact the server due to an 1309 * underlying communication problem. 1310 */ 1311 String[] listKeyManagerProviders() throws ConcurrentModificationException, 1312 AuthorizationException, CommunicationException; 1313 1314 1315 1316 /** 1317 * Gets the named Key Manager Provider. 1318 * 1319 * @param name 1320 * The name of the Key Manager Provider to retrieve. 1321 * @return Returns the named Key Manager Provider. 1322 * @throws DefinitionDecodingException 1323 * If the named Key Manager Provider was found but its 1324 * type could not be determined. 1325 * @throws ManagedObjectDecodingException 1326 * If the named Key Manager Provider was found but one or 1327 * more of its properties could not be decoded. 1328 * @throws ManagedObjectNotFoundException 1329 * If the named Key Manager Provider was not found on the 1330 * server. 1331 * @throws ConcurrentModificationException 1332 * If this Root has been removed from the server by 1333 * another client. 1334 * @throws AuthorizationException 1335 * If the server refuses to retrieve the named Key Manager 1336 * Provider because the client does not have the correct 1337 * privileges. 1338 * @throws CommunicationException 1339 * If the client cannot contact the server due to an 1340 * underlying communication problem. 1341 */ 1342 KeyManagerProviderCfgClient getKeyManagerProvider(String name) 1343 throws DefinitionDecodingException, ManagedObjectDecodingException, 1344 ManagedObjectNotFoundException, ConcurrentModificationException, 1345 AuthorizationException, CommunicationException; 1346 1347 1348 1349 /** 1350 * Creates a new Key Manager Provider. The new Key Manager Provider 1351 * will initially not contain any property values (including 1352 * mandatory properties). Once the Key Manager Provider has been 1353 * configured it can be added to the server using the {@link 1354 * #commit()} method. 1355 * 1356 * @param <C> 1357 * The type of the Key Manager Provider being created. 1358 * @param d 1359 * The definition of the Key Manager Provider to be 1360 * created. 1361 * @param name 1362 * The name of the new Key Manager Provider. 1363 * @param exceptions 1364 * An optional collection in which to place any {@link 1365 * PropertyException}s that occurred whilst attempting to 1366 * determine the default values of the Key Manager Provider. 1367 * This argument can be <code>null<code>. 1368 * @return Returns a new Key Manager Provider configuration 1369 * instance. 1370 * @throws IllegalManagedObjectNameException 1371 * If the name of the new Key Manager Provider is invalid. 1372 */ 1373 <C extends KeyManagerProviderCfgClient> C createKeyManagerProvider( 1374 ManagedObjectDefinition<C, ? extends KeyManagerProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 1375 1376 1377 1378 /** 1379 * Removes the named Key Manager Provider. 1380 * 1381 * @param name 1382 * The name of the Key Manager Provider to remove. 1383 * @throws ManagedObjectNotFoundException 1384 * If the Key Manager Provider does not exist. 1385 * @throws OperationRejectedException 1386 * If the server refuses to remove the Key Manager 1387 * Provider due to some server-side constraint which cannot 1388 * be satisfied (for example, if it is referenced by 1389 * another managed object). 1390 * @throws ConcurrentModificationException 1391 * If this Root has been removed from the server by 1392 * another client. 1393 * @throws AuthorizationException 1394 * If the server refuses to remove the Key Manager 1395 * Provider because the client does not have the correct 1396 * privileges. 1397 * @throws CommunicationException 1398 * If the client cannot contact the server due to an 1399 * underlying communication problem. 1400 */ 1401 void removeKeyManagerProvider(String name) 1402 throws ManagedObjectNotFoundException, OperationRejectedException, 1403 ConcurrentModificationException, AuthorizationException, 1404 CommunicationException; 1405 1406 1407 1408 /** 1409 * Lists the Log Publishers. 1410 * 1411 * @return Returns an array containing the names of the Log 1412 * Publishers. 1413 * @throws ConcurrentModificationException 1414 * If this Root has been removed from the server by 1415 * another client. 1416 * @throws AuthorizationException 1417 * If the server refuses to list the Log Publishers 1418 * because the client does not have the correct privileges. 1419 * @throws CommunicationException 1420 * If the client cannot contact the server due to an 1421 * underlying communication problem. 1422 */ 1423 String[] listLogPublishers() throws ConcurrentModificationException, 1424 AuthorizationException, CommunicationException; 1425 1426 1427 1428 /** 1429 * Gets the named Log Publisher. 1430 * 1431 * @param name 1432 * The name of the Log Publisher to retrieve. 1433 * @return Returns the named Log Publisher. 1434 * @throws DefinitionDecodingException 1435 * If the named Log Publisher was found but its type could 1436 * not be determined. 1437 * @throws ManagedObjectDecodingException 1438 * If the named Log Publisher was found but one or more of 1439 * its properties could not be decoded. 1440 * @throws ManagedObjectNotFoundException 1441 * If the named Log Publisher was not found on the server. 1442 * @throws ConcurrentModificationException 1443 * If this Root has been removed from the server by 1444 * another client. 1445 * @throws AuthorizationException 1446 * If the server refuses to retrieve the named Log 1447 * Publisher because the client does not have the correct 1448 * privileges. 1449 * @throws CommunicationException 1450 * If the client cannot contact the server due to an 1451 * underlying communication problem. 1452 */ 1453 LogPublisherCfgClient getLogPublisher(String name) 1454 throws DefinitionDecodingException, ManagedObjectDecodingException, 1455 ManagedObjectNotFoundException, ConcurrentModificationException, 1456 AuthorizationException, CommunicationException; 1457 1458 1459 1460 /** 1461 * Creates a new Log Publisher. The new Log Publisher will initially 1462 * not contain any property values (including mandatory properties). 1463 * Once the Log Publisher has been configured it can be added to the 1464 * server using the {@link #commit()} method. 1465 * 1466 * @param <C> 1467 * The type of the Log Publisher being created. 1468 * @param d 1469 * The definition of the Log Publisher to be created. 1470 * @param name 1471 * The name of the new Log Publisher. 1472 * @param exceptions 1473 * An optional collection in which to place any {@link 1474 * PropertyException}s that occurred whilst attempting to 1475 * determine the default values of the Log Publisher. This 1476 * argument can be <code>null<code>. 1477 * @return Returns a new Log Publisher configuration instance. 1478 * @throws IllegalManagedObjectNameException 1479 * If the name of the new Log Publisher is invalid. 1480 */ 1481 <C extends LogPublisherCfgClient> C createLogPublisher( 1482 ManagedObjectDefinition<C, ? extends LogPublisherCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 1483 1484 1485 1486 /** 1487 * Removes the named Log Publisher. 1488 * 1489 * @param name 1490 * The name of the Log Publisher to remove. 1491 * @throws ManagedObjectNotFoundException 1492 * If the Log Publisher does not exist. 1493 * @throws OperationRejectedException 1494 * If the server refuses to remove the Log Publisher due 1495 * to some server-side constraint which cannot be satisfied 1496 * (for example, if it is referenced by another managed 1497 * object). 1498 * @throws ConcurrentModificationException 1499 * If this Root has been removed from the server by 1500 * another client. 1501 * @throws AuthorizationException 1502 * If the server refuses to remove the Log Publisher 1503 * because the client does not have the correct privileges. 1504 * @throws CommunicationException 1505 * If the client cannot contact the server due to an 1506 * underlying communication problem. 1507 */ 1508 void removeLogPublisher(String name) 1509 throws ManagedObjectNotFoundException, OperationRejectedException, 1510 ConcurrentModificationException, AuthorizationException, 1511 CommunicationException; 1512 1513 1514 1515 /** 1516 * Lists the Log Retention Policies. 1517 * 1518 * @return Returns an array containing the names of the Log 1519 * Retention Policies. 1520 * @throws ConcurrentModificationException 1521 * If this Root has been removed from the server by 1522 * another client. 1523 * @throws AuthorizationException 1524 * If the server refuses to list the Log Retention 1525 * Policies because the client does not have the correct 1526 * privileges. 1527 * @throws CommunicationException 1528 * If the client cannot contact the server due to an 1529 * underlying communication problem. 1530 */ 1531 String[] listLogRetentionPolicies() throws ConcurrentModificationException, 1532 AuthorizationException, CommunicationException; 1533 1534 1535 1536 /** 1537 * Gets the named Log Retention Policy. 1538 * 1539 * @param name 1540 * The name of the Log Retention Policy to retrieve. 1541 * @return Returns the named Log Retention Policy. 1542 * @throws DefinitionDecodingException 1543 * If the named Log Retention Policy was found but its 1544 * type could not be determined. 1545 * @throws ManagedObjectDecodingException 1546 * If the named Log Retention Policy was found but one or 1547 * more of its properties could not be decoded. 1548 * @throws ManagedObjectNotFoundException 1549 * If the named Log Retention Policy was not found on the 1550 * server. 1551 * @throws ConcurrentModificationException 1552 * If this Root has been removed from the server by 1553 * another client. 1554 * @throws AuthorizationException 1555 * If the server refuses to retrieve the named Log 1556 * Retention Policy because the client does not have the 1557 * correct privileges. 1558 * @throws CommunicationException 1559 * If the client cannot contact the server due to an 1560 * underlying communication problem. 1561 */ 1562 LogRetentionPolicyCfgClient getLogRetentionPolicy(String name) 1563 throws DefinitionDecodingException, ManagedObjectDecodingException, 1564 ManagedObjectNotFoundException, ConcurrentModificationException, 1565 AuthorizationException, CommunicationException; 1566 1567 1568 1569 /** 1570 * Creates a new Log Retention Policy. The new Log Retention Policy 1571 * will initially not contain any property values (including 1572 * mandatory properties). Once the Log Retention Policy has been 1573 * configured it can be added to the server using the {@link 1574 * #commit()} method. 1575 * 1576 * @param <C> 1577 * The type of the Log Retention Policy being created. 1578 * @param d 1579 * The definition of the Log Retention Policy to be 1580 * created. 1581 * @param name 1582 * The name of the new Log Retention Policy. 1583 * @param exceptions 1584 * An optional collection in which to place any {@link 1585 * PropertyException}s that occurred whilst attempting to 1586 * determine the default values of the Log Retention Policy. 1587 * This argument can be <code>null<code>. 1588 * @return Returns a new Log Retention Policy configuration 1589 * instance. 1590 * @throws IllegalManagedObjectNameException 1591 * If the name of the new Log Retention Policy is invalid. 1592 */ 1593 <C extends LogRetentionPolicyCfgClient> C createLogRetentionPolicy( 1594 ManagedObjectDefinition<C, ? extends LogRetentionPolicyCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 1595 1596 1597 1598 /** 1599 * Removes the named Log Retention Policy. 1600 * 1601 * @param name 1602 * The name of the Log Retention Policy to remove. 1603 * @throws ManagedObjectNotFoundException 1604 * If the Log Retention Policy does not exist. 1605 * @throws OperationRejectedException 1606 * If the server refuses to remove the Log Retention 1607 * Policy due to some server-side constraint which cannot 1608 * be satisfied (for example, if it is referenced by 1609 * another managed object). 1610 * @throws ConcurrentModificationException 1611 * If this Root has been removed from the server by 1612 * another client. 1613 * @throws AuthorizationException 1614 * If the server refuses to remove the Log Retention 1615 * Policy because the client does not have the correct 1616 * privileges. 1617 * @throws CommunicationException 1618 * If the client cannot contact the server due to an 1619 * underlying communication problem. 1620 */ 1621 void removeLogRetentionPolicy(String name) 1622 throws ManagedObjectNotFoundException, OperationRejectedException, 1623 ConcurrentModificationException, AuthorizationException, 1624 CommunicationException; 1625 1626 1627 1628 /** 1629 * Lists the Log Rotation Policies. 1630 * 1631 * @return Returns an array containing the names of the Log Rotation 1632 * Policies. 1633 * @throws ConcurrentModificationException 1634 * If this Root has been removed from the server by 1635 * another client. 1636 * @throws AuthorizationException 1637 * If the server refuses to list the Log Rotation Policies 1638 * because the client does not have the correct privileges. 1639 * @throws CommunicationException 1640 * If the client cannot contact the server due to an 1641 * underlying communication problem. 1642 */ 1643 String[] listLogRotationPolicies() throws ConcurrentModificationException, 1644 AuthorizationException, CommunicationException; 1645 1646 1647 1648 /** 1649 * Gets the named Log Rotation Policy. 1650 * 1651 * @param name 1652 * The name of the Log Rotation Policy to retrieve. 1653 * @return Returns the named Log Rotation Policy. 1654 * @throws DefinitionDecodingException 1655 * If the named Log Rotation Policy was found but its type 1656 * could not be determined. 1657 * @throws ManagedObjectDecodingException 1658 * If the named Log Rotation Policy was found but one or 1659 * more of its properties could not be decoded. 1660 * @throws ManagedObjectNotFoundException 1661 * If the named Log Rotation Policy was not found on the 1662 * server. 1663 * @throws ConcurrentModificationException 1664 * If this Root has been removed from the server by 1665 * another client. 1666 * @throws AuthorizationException 1667 * If the server refuses to retrieve the named Log 1668 * Rotation Policy because the client does not have the 1669 * correct privileges. 1670 * @throws CommunicationException 1671 * If the client cannot contact the server due to an 1672 * underlying communication problem. 1673 */ 1674 LogRotationPolicyCfgClient getLogRotationPolicy(String name) 1675 throws DefinitionDecodingException, ManagedObjectDecodingException, 1676 ManagedObjectNotFoundException, ConcurrentModificationException, 1677 AuthorizationException, CommunicationException; 1678 1679 1680 1681 /** 1682 * Creates a new Log Rotation Policy. The new Log Rotation Policy 1683 * will initially not contain any property values (including 1684 * mandatory properties). Once the Log Rotation Policy has been 1685 * configured it can be added to the server using the {@link 1686 * #commit()} method. 1687 * 1688 * @param <C> 1689 * The type of the Log Rotation Policy being created. 1690 * @param d 1691 * The definition of the Log Rotation Policy to be created. 1692 * @param name 1693 * The name of the new Log Rotation Policy. 1694 * @param exceptions 1695 * An optional collection in which to place any {@link 1696 * PropertyException}s that occurred whilst attempting to 1697 * determine the default values of the Log Rotation Policy. 1698 * This argument can be <code>null<code>. 1699 * @return Returns a new Log Rotation Policy configuration instance. 1700 * @throws IllegalManagedObjectNameException 1701 * If the name of the new Log Rotation Policy is invalid. 1702 */ 1703 <C extends LogRotationPolicyCfgClient> C createLogRotationPolicy( 1704 ManagedObjectDefinition<C, ? extends LogRotationPolicyCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 1705 1706 1707 1708 /** 1709 * Removes the named Log Rotation Policy. 1710 * 1711 * @param name 1712 * The name of the Log Rotation Policy to remove. 1713 * @throws ManagedObjectNotFoundException 1714 * If the Log Rotation Policy does not exist. 1715 * @throws OperationRejectedException 1716 * If the server refuses to remove the Log Rotation Policy 1717 * due to some server-side constraint which cannot be 1718 * satisfied (for example, if it is referenced by another 1719 * managed object). 1720 * @throws ConcurrentModificationException 1721 * If this Root has been removed from the server by 1722 * another client. 1723 * @throws AuthorizationException 1724 * If the server refuses to remove the Log Rotation Policy 1725 * because the client does not have the correct privileges. 1726 * @throws CommunicationException 1727 * If the client cannot contact the server due to an 1728 * underlying communication problem. 1729 */ 1730 void removeLogRotationPolicy(String name) 1731 throws ManagedObjectNotFoundException, OperationRejectedException, 1732 ConcurrentModificationException, AuthorizationException, 1733 CommunicationException; 1734 1735 1736 1737 /** 1738 * Lists the Matching Rules. 1739 * 1740 * @return Returns an array containing the names of the Matching 1741 * Rules. 1742 * @throws ConcurrentModificationException 1743 * If this Root has been removed from the server by 1744 * another client. 1745 * @throws AuthorizationException 1746 * If the server refuses to list the Matching Rules 1747 * because the client does not have the correct privileges. 1748 * @throws CommunicationException 1749 * If the client cannot contact the server due to an 1750 * underlying communication problem. 1751 */ 1752 String[] listMatchingRules() throws ConcurrentModificationException, 1753 AuthorizationException, CommunicationException; 1754 1755 1756 1757 /** 1758 * Gets the named Matching Rule. 1759 * 1760 * @param name 1761 * The name of the Matching Rule to retrieve. 1762 * @return Returns the named Matching Rule. 1763 * @throws DefinitionDecodingException 1764 * If the named Matching Rule was found but its type could 1765 * not be determined. 1766 * @throws ManagedObjectDecodingException 1767 * If the named Matching Rule was found but one or more of 1768 * its properties could not be decoded. 1769 * @throws ManagedObjectNotFoundException 1770 * If the named Matching Rule was not found on the server. 1771 * @throws ConcurrentModificationException 1772 * If this Root has been removed from the server by 1773 * another client. 1774 * @throws AuthorizationException 1775 * If the server refuses to retrieve the named Matching 1776 * Rule because the client does not have the correct 1777 * privileges. 1778 * @throws CommunicationException 1779 * If the client cannot contact the server due to an 1780 * underlying communication problem. 1781 */ 1782 MatchingRuleCfgClient getMatchingRule(String name) 1783 throws DefinitionDecodingException, ManagedObjectDecodingException, 1784 ManagedObjectNotFoundException, ConcurrentModificationException, 1785 AuthorizationException, CommunicationException; 1786 1787 1788 1789 /** 1790 * Creates a new Matching Rule. The new Matching Rule will initially 1791 * not contain any property values (including mandatory properties). 1792 * Once the Matching Rule has been configured it can be added to the 1793 * server using the {@link #commit()} method. 1794 * 1795 * @param <C> 1796 * The type of the Matching Rule being created. 1797 * @param d 1798 * The definition of the Matching Rule to be created. 1799 * @param name 1800 * The name of the new Matching Rule. 1801 * @param exceptions 1802 * An optional collection in which to place any {@link 1803 * PropertyException}s that occurred whilst attempting to 1804 * determine the default values of the Matching Rule. This 1805 * argument can be <code>null<code>. 1806 * @return Returns a new Matching Rule configuration instance. 1807 * @throws IllegalManagedObjectNameException 1808 * If the name of the new Matching Rule is invalid. 1809 */ 1810 <C extends MatchingRuleCfgClient> C createMatchingRule( 1811 ManagedObjectDefinition<C, ? extends MatchingRuleCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 1812 1813 1814 1815 /** 1816 * Removes the named Matching Rule. 1817 * 1818 * @param name 1819 * The name of the Matching Rule to remove. 1820 * @throws ManagedObjectNotFoundException 1821 * If the Matching Rule does not exist. 1822 * @throws OperationRejectedException 1823 * If the server refuses to remove the Matching Rule due 1824 * to some server-side constraint which cannot be satisfied 1825 * (for example, if it is referenced by another managed 1826 * object). 1827 * @throws ConcurrentModificationException 1828 * If this Root has been removed from the server by 1829 * another client. 1830 * @throws AuthorizationException 1831 * If the server refuses to remove the Matching Rule 1832 * because the client does not have the correct privileges. 1833 * @throws CommunicationException 1834 * If the client cannot contact the server due to an 1835 * underlying communication problem. 1836 */ 1837 void removeMatchingRule(String name) 1838 throws ManagedObjectNotFoundException, OperationRejectedException, 1839 ConcurrentModificationException, AuthorizationException, 1840 CommunicationException; 1841 1842 1843 1844 /** 1845 * Lists the Monitor Providers. 1846 * 1847 * @return Returns an array containing the names of the Monitor 1848 * Providers. 1849 * @throws ConcurrentModificationException 1850 * If this Root has been removed from the server by 1851 * another client. 1852 * @throws AuthorizationException 1853 * If the server refuses to list the Monitor Providers 1854 * because the client does not have the correct privileges. 1855 * @throws CommunicationException 1856 * If the client cannot contact the server due to an 1857 * underlying communication problem. 1858 */ 1859 String[] listMonitorProviders() throws ConcurrentModificationException, 1860 AuthorizationException, CommunicationException; 1861 1862 1863 1864 /** 1865 * Gets the named Monitor Provider. 1866 * 1867 * @param name 1868 * The name of the Monitor Provider to retrieve. 1869 * @return Returns the named Monitor Provider. 1870 * @throws DefinitionDecodingException 1871 * If the named Monitor Provider was found but its type 1872 * could not be determined. 1873 * @throws ManagedObjectDecodingException 1874 * If the named Monitor Provider was found but one or more 1875 * of its properties could not be decoded. 1876 * @throws ManagedObjectNotFoundException 1877 * If the named Monitor Provider was not found on the 1878 * server. 1879 * @throws ConcurrentModificationException 1880 * If this Root has been removed from the server by 1881 * another client. 1882 * @throws AuthorizationException 1883 * If the server refuses to retrieve the named Monitor 1884 * Provider because the client does not have the correct 1885 * privileges. 1886 * @throws CommunicationException 1887 * If the client cannot contact the server due to an 1888 * underlying communication problem. 1889 */ 1890 MonitorProviderCfgClient getMonitorProvider(String name) 1891 throws DefinitionDecodingException, ManagedObjectDecodingException, 1892 ManagedObjectNotFoundException, ConcurrentModificationException, 1893 AuthorizationException, CommunicationException; 1894 1895 1896 1897 /** 1898 * Creates a new Monitor Provider. The new Monitor Provider will 1899 * initially not contain any property values (including mandatory 1900 * properties). Once the Monitor Provider has been configured it can 1901 * be added to the server using the {@link #commit()} method. 1902 * 1903 * @param <C> 1904 * The type of the Monitor Provider being created. 1905 * @param d 1906 * The definition of the Monitor Provider to be created. 1907 * @param name 1908 * The name of the new Monitor Provider. 1909 * @param exceptions 1910 * An optional collection in which to place any {@link 1911 * PropertyException}s that occurred whilst attempting to 1912 * determine the default values of the Monitor Provider. 1913 * This argument can be <code>null<code>. 1914 * @return Returns a new Monitor Provider configuration instance. 1915 * @throws IllegalManagedObjectNameException 1916 * If the name of the new Monitor Provider is invalid. 1917 */ 1918 <C extends MonitorProviderCfgClient> C createMonitorProvider( 1919 ManagedObjectDefinition<C, ? extends MonitorProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 1920 1921 1922 1923 /** 1924 * Removes the named Monitor Provider. 1925 * 1926 * @param name 1927 * The name of the Monitor Provider to remove. 1928 * @throws ManagedObjectNotFoundException 1929 * If the Monitor Provider does not exist. 1930 * @throws OperationRejectedException 1931 * If the server refuses to remove the Monitor Provider 1932 * due to some server-side constraint which cannot be 1933 * satisfied (for example, if it is referenced by another 1934 * managed object). 1935 * @throws ConcurrentModificationException 1936 * If this Root has been removed from the server by 1937 * another client. 1938 * @throws AuthorizationException 1939 * If the server refuses to remove the Monitor Provider 1940 * because the client does not have the correct privileges. 1941 * @throws CommunicationException 1942 * If the client cannot contact the server due to an 1943 * underlying communication problem. 1944 */ 1945 void removeMonitorProvider(String name) 1946 throws ManagedObjectNotFoundException, OperationRejectedException, 1947 ConcurrentModificationException, AuthorizationException, 1948 CommunicationException; 1949 1950 1951 1952 /** 1953 * Lists the Password Generators. 1954 * 1955 * @return Returns an array containing the names of the Password 1956 * Generators. 1957 * @throws ConcurrentModificationException 1958 * If this Root has been removed from the server by 1959 * another client. 1960 * @throws AuthorizationException 1961 * If the server refuses to list the Password Generators 1962 * because the client does not have the correct privileges. 1963 * @throws CommunicationException 1964 * If the client cannot contact the server due to an 1965 * underlying communication problem. 1966 */ 1967 String[] listPasswordGenerators() throws ConcurrentModificationException, 1968 AuthorizationException, CommunicationException; 1969 1970 1971 1972 /** 1973 * Gets the named Password Generator. 1974 * 1975 * @param name 1976 * The name of the Password Generator to retrieve. 1977 * @return Returns the named Password Generator. 1978 * @throws DefinitionDecodingException 1979 * If the named Password Generator was found but its type 1980 * could not be determined. 1981 * @throws ManagedObjectDecodingException 1982 * If the named Password Generator was found but one or 1983 * more of its properties could not be decoded. 1984 * @throws ManagedObjectNotFoundException 1985 * If the named Password Generator was not found on the 1986 * server. 1987 * @throws ConcurrentModificationException 1988 * If this Root has been removed from the server by 1989 * another client. 1990 * @throws AuthorizationException 1991 * If the server refuses to retrieve the named Password 1992 * Generator because the client does not have the correct 1993 * privileges. 1994 * @throws CommunicationException 1995 * If the client cannot contact the server due to an 1996 * underlying communication problem. 1997 */ 1998 PasswordGeneratorCfgClient getPasswordGenerator(String name) 1999 throws DefinitionDecodingException, ManagedObjectDecodingException, 2000 ManagedObjectNotFoundException, ConcurrentModificationException, 2001 AuthorizationException, CommunicationException; 2002 2003 2004 2005 /** 2006 * Creates a new Password Generator. The new Password Generator will 2007 * initially not contain any property values (including mandatory 2008 * properties). Once the Password Generator has been configured it 2009 * can be added to the server using the {@link #commit()} method. 2010 * 2011 * @param <C> 2012 * The type of the Password Generator being created. 2013 * @param d 2014 * The definition of the Password Generator to be created. 2015 * @param name 2016 * The name of the new Password Generator. 2017 * @param exceptions 2018 * An optional collection in which to place any {@link 2019 * PropertyException}s that occurred whilst attempting to 2020 * determine the default values of the Password Generator. 2021 * This argument can be <code>null<code>. 2022 * @return Returns a new Password Generator configuration instance. 2023 * @throws IllegalManagedObjectNameException 2024 * If the name of the new Password Generator is invalid. 2025 */ 2026 <C extends PasswordGeneratorCfgClient> C createPasswordGenerator( 2027 ManagedObjectDefinition<C, ? extends PasswordGeneratorCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 2028 2029 2030 2031 /** 2032 * Removes the named Password Generator. 2033 * 2034 * @param name 2035 * The name of the Password Generator to remove. 2036 * @throws ManagedObjectNotFoundException 2037 * If the Password Generator does not exist. 2038 * @throws OperationRejectedException 2039 * If the server refuses to remove the Password Generator 2040 * due to some server-side constraint which cannot be 2041 * satisfied (for example, if it is referenced by another 2042 * managed object). 2043 * @throws ConcurrentModificationException 2044 * If this Root has been removed from the server by 2045 * another client. 2046 * @throws AuthorizationException 2047 * If the server refuses to remove the Password Generator 2048 * because the client does not have the correct privileges. 2049 * @throws CommunicationException 2050 * If the client cannot contact the server due to an 2051 * underlying communication problem. 2052 */ 2053 void removePasswordGenerator(String name) 2054 throws ManagedObjectNotFoundException, OperationRejectedException, 2055 ConcurrentModificationException, AuthorizationException, 2056 CommunicationException; 2057 2058 2059 2060 /** 2061 * Lists the Password Policies. 2062 * 2063 * @return Returns an array containing the names of the Password 2064 * Policies. 2065 * @throws ConcurrentModificationException 2066 * If this Root has been removed from the server by 2067 * another client. 2068 * @throws AuthorizationException 2069 * If the server refuses to list the Password Policies 2070 * because the client does not have the correct privileges. 2071 * @throws CommunicationException 2072 * If the client cannot contact the server due to an 2073 * underlying communication problem. 2074 */ 2075 String[] listPasswordPolicies() throws ConcurrentModificationException, 2076 AuthorizationException, CommunicationException; 2077 2078 2079 2080 /** 2081 * Gets the named Password Policy. 2082 * 2083 * @param name 2084 * The name of the Password Policy to retrieve. 2085 * @return Returns the named Password Policy. 2086 * @throws DefinitionDecodingException 2087 * If the named Password Policy was found but its type 2088 * could not be determined. 2089 * @throws ManagedObjectDecodingException 2090 * If the named Password Policy was found but one or more 2091 * of its properties could not be decoded. 2092 * @throws ManagedObjectNotFoundException 2093 * If the named Password Policy was not found on the 2094 * server. 2095 * @throws ConcurrentModificationException 2096 * If this Root has been removed from the server by 2097 * another client. 2098 * @throws AuthorizationException 2099 * If the server refuses to retrieve the named Password 2100 * Policy because the client does not have the correct 2101 * privileges. 2102 * @throws CommunicationException 2103 * If the client cannot contact the server due to an 2104 * underlying communication problem. 2105 */ 2106 AuthenticationPolicyCfgClient getPasswordPolicy(String name) 2107 throws DefinitionDecodingException, ManagedObjectDecodingException, 2108 ManagedObjectNotFoundException, ConcurrentModificationException, 2109 AuthorizationException, CommunicationException; 2110 2111 2112 2113 /** 2114 * Creates a new Password Policy. The new Password Policy will 2115 * initially not contain any property values (including mandatory 2116 * properties). Once the Password Policy has been configured it can 2117 * be added to the server using the {@link #commit()} method. 2118 * 2119 * @param <C> 2120 * The type of the Password Policy being created. 2121 * @param d 2122 * The definition of the Password Policy to be created. 2123 * @param name 2124 * The name of the new Password Policy. 2125 * @param exceptions 2126 * An optional collection in which to place any {@link 2127 * PropertyException}s that occurred whilst attempting to 2128 * determine the default values of the Password Policy. This 2129 * argument can be <code>null<code>. 2130 * @return Returns a new Password Policy configuration instance. 2131 * @throws IllegalManagedObjectNameException 2132 * If the name of the new Password Policy is invalid. 2133 */ 2134 <C extends AuthenticationPolicyCfgClient> C createPasswordPolicy( 2135 ManagedObjectDefinition<C, ? extends AuthenticationPolicyCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 2136 2137 2138 2139 /** 2140 * Removes the named Password Policy. 2141 * 2142 * @param name 2143 * The name of the Password Policy to remove. 2144 * @throws ManagedObjectNotFoundException 2145 * If the Password Policy does not exist. 2146 * @throws OperationRejectedException 2147 * If the server refuses to remove the Password Policy due 2148 * to some server-side constraint which cannot be satisfied 2149 * (for example, if it is referenced by another managed 2150 * object). 2151 * @throws ConcurrentModificationException 2152 * If this Root has been removed from the server by 2153 * another client. 2154 * @throws AuthorizationException 2155 * If the server refuses to remove the Password Policy 2156 * because the client does not have the correct privileges. 2157 * @throws CommunicationException 2158 * If the client cannot contact the server due to an 2159 * underlying communication problem. 2160 */ 2161 void removePasswordPolicy(String name) 2162 throws ManagedObjectNotFoundException, OperationRejectedException, 2163 ConcurrentModificationException, AuthorizationException, 2164 CommunicationException; 2165 2166 2167 2168 /** 2169 * Lists the Password Storage Schemes. 2170 * 2171 * @return Returns an array containing the names of the Password 2172 * Storage Schemes. 2173 * @throws ConcurrentModificationException 2174 * If this Root has been removed from the server by 2175 * another client. 2176 * @throws AuthorizationException 2177 * If the server refuses to list the Password Storage 2178 * Schemes because the client does not have the correct 2179 * privileges. 2180 * @throws CommunicationException 2181 * If the client cannot contact the server due to an 2182 * underlying communication problem. 2183 */ 2184 String[] listPasswordStorageSchemes() throws ConcurrentModificationException, 2185 AuthorizationException, CommunicationException; 2186 2187 2188 2189 /** 2190 * Gets the named Password Storage Scheme. 2191 * 2192 * @param name 2193 * The name of the Password Storage Scheme to retrieve. 2194 * @return Returns the named Password Storage Scheme. 2195 * @throws DefinitionDecodingException 2196 * If the named Password Storage Scheme was found but its 2197 * type could not be determined. 2198 * @throws ManagedObjectDecodingException 2199 * If the named Password Storage Scheme was found but one 2200 * or more of its properties could not be decoded. 2201 * @throws ManagedObjectNotFoundException 2202 * If the named Password Storage Scheme was not found on 2203 * the server. 2204 * @throws ConcurrentModificationException 2205 * If this Root has been removed from the server by 2206 * another client. 2207 * @throws AuthorizationException 2208 * If the server refuses to retrieve the named Password 2209 * Storage Scheme because the client does not have the 2210 * correct privileges. 2211 * @throws CommunicationException 2212 * If the client cannot contact the server due to an 2213 * underlying communication problem. 2214 */ 2215 PasswordStorageSchemeCfgClient getPasswordStorageScheme(String name) 2216 throws DefinitionDecodingException, ManagedObjectDecodingException, 2217 ManagedObjectNotFoundException, ConcurrentModificationException, 2218 AuthorizationException, CommunicationException; 2219 2220 2221 2222 /** 2223 * Creates a new Password Storage Scheme. The new Password Storage 2224 * Scheme will initially not contain any property values (including 2225 * mandatory properties). Once the Password Storage Scheme has been 2226 * configured it can be added to the server using the {@link 2227 * #commit()} method. 2228 * 2229 * @param <C> 2230 * The type of the Password Storage Scheme being created. 2231 * @param d 2232 * The definition of the Password Storage Scheme to be 2233 * created. 2234 * @param name 2235 * The name of the new Password Storage Scheme. 2236 * @param exceptions 2237 * An optional collection in which to place any {@link 2238 * PropertyException}s that occurred whilst attempting to 2239 * determine the default values of the Password Storage 2240 * Scheme. This argument can be <code>null<code>. 2241 * @return Returns a new Password Storage Scheme configuration 2242 * instance. 2243 * @throws IllegalManagedObjectNameException 2244 * If the name of the new Password Storage Scheme is 2245 * invalid. 2246 */ 2247 <C extends PasswordStorageSchemeCfgClient> C createPasswordStorageScheme( 2248 ManagedObjectDefinition<C, ? extends PasswordStorageSchemeCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 2249 2250 2251 2252 /** 2253 * Removes the named Password Storage Scheme. 2254 * 2255 * @param name 2256 * The name of the Password Storage Scheme to remove. 2257 * @throws ManagedObjectNotFoundException 2258 * If the Password Storage Scheme does not exist. 2259 * @throws OperationRejectedException 2260 * If the server refuses to remove the Password Storage 2261 * Scheme due to some server-side constraint which cannot 2262 * be satisfied (for example, if it is referenced by 2263 * another managed object). 2264 * @throws ConcurrentModificationException 2265 * If this Root has been removed from the server by 2266 * another client. 2267 * @throws AuthorizationException 2268 * If the server refuses to remove the Password Storage 2269 * Scheme because the client does not have the correct 2270 * privileges. 2271 * @throws CommunicationException 2272 * If the client cannot contact the server due to an 2273 * underlying communication problem. 2274 */ 2275 void removePasswordStorageScheme(String name) 2276 throws ManagedObjectNotFoundException, OperationRejectedException, 2277 ConcurrentModificationException, AuthorizationException, 2278 CommunicationException; 2279 2280 2281 2282 /** 2283 * Lists the Password Validators. 2284 * 2285 * @return Returns an array containing the names of the Password 2286 * Validators. 2287 * @throws ConcurrentModificationException 2288 * If this Root has been removed from the server by 2289 * another client. 2290 * @throws AuthorizationException 2291 * If the server refuses to list the Password Validators 2292 * because the client does not have the correct privileges. 2293 * @throws CommunicationException 2294 * If the client cannot contact the server due to an 2295 * underlying communication problem. 2296 */ 2297 String[] listPasswordValidators() throws ConcurrentModificationException, 2298 AuthorizationException, CommunicationException; 2299 2300 2301 2302 /** 2303 * Gets the named Password Validator. 2304 * 2305 * @param name 2306 * The name of the Password Validator to retrieve. 2307 * @return Returns the named Password Validator. 2308 * @throws DefinitionDecodingException 2309 * If the named Password Validator was found but its type 2310 * could not be determined. 2311 * @throws ManagedObjectDecodingException 2312 * If the named Password Validator was found but one or 2313 * more of its properties could not be decoded. 2314 * @throws ManagedObjectNotFoundException 2315 * If the named Password Validator was not found on the 2316 * server. 2317 * @throws ConcurrentModificationException 2318 * If this Root has been removed from the server by 2319 * another client. 2320 * @throws AuthorizationException 2321 * If the server refuses to retrieve the named Password 2322 * Validator because the client does not have the correct 2323 * privileges. 2324 * @throws CommunicationException 2325 * If the client cannot contact the server due to an 2326 * underlying communication problem. 2327 */ 2328 PasswordValidatorCfgClient getPasswordValidator(String name) 2329 throws DefinitionDecodingException, ManagedObjectDecodingException, 2330 ManagedObjectNotFoundException, ConcurrentModificationException, 2331 AuthorizationException, CommunicationException; 2332 2333 2334 2335 /** 2336 * Creates a new Password Validator. The new Password Validator will 2337 * initially not contain any property values (including mandatory 2338 * properties). Once the Password Validator has been configured it 2339 * can be added to the server using the {@link #commit()} method. 2340 * 2341 * @param <C> 2342 * The type of the Password Validator being created. 2343 * @param d 2344 * The definition of the Password Validator to be created. 2345 * @param name 2346 * The name of the new Password Validator. 2347 * @param exceptions 2348 * An optional collection in which to place any {@link 2349 * PropertyException}s that occurred whilst attempting to 2350 * determine the default values of the Password Validator. 2351 * This argument can be <code>null<code>. 2352 * @return Returns a new Password Validator configuration instance. 2353 * @throws IllegalManagedObjectNameException 2354 * If the name of the new Password Validator is invalid. 2355 */ 2356 <C extends PasswordValidatorCfgClient> C createPasswordValidator( 2357 ManagedObjectDefinition<C, ? extends PasswordValidatorCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 2358 2359 2360 2361 /** 2362 * Removes the named Password Validator. 2363 * 2364 * @param name 2365 * The name of the Password Validator to remove. 2366 * @throws ManagedObjectNotFoundException 2367 * If the Password Validator does not exist. 2368 * @throws OperationRejectedException 2369 * If the server refuses to remove the Password Validator 2370 * due to some server-side constraint which cannot be 2371 * satisfied (for example, if it is referenced by another 2372 * managed object). 2373 * @throws ConcurrentModificationException 2374 * If this Root has been removed from the server by 2375 * another client. 2376 * @throws AuthorizationException 2377 * If the server refuses to remove the Password Validator 2378 * because the client does not have the correct privileges. 2379 * @throws CommunicationException 2380 * If the client cannot contact the server due to an 2381 * underlying communication problem. 2382 */ 2383 void removePasswordValidator(String name) 2384 throws ManagedObjectNotFoundException, OperationRejectedException, 2385 ConcurrentModificationException, AuthorizationException, 2386 CommunicationException; 2387 2388 2389 2390 /** 2391 * Gets the Plugin Root. 2392 * 2393 * @return Returns the Plugin Root. 2394 * @throws DefinitionDecodingException 2395 * If the Plugin Root was found but its type could not be 2396 * determined. 2397 * @throws ManagedObjectDecodingException 2398 * If the Plugin Root was found but one or more of its 2399 * properties could not be decoded. 2400 * @throws ManagedObjectNotFoundException 2401 * If the Plugin Root could not be found on the server. 2402 * @throws ConcurrentModificationException 2403 * If this Root has been removed from the server by 2404 * another client. 2405 * @throws AuthorizationException 2406 * If the server refuses to retrieve the Plugin Root 2407 * because the client does not have the correct privileges. 2408 * @throws CommunicationException 2409 * If the client cannot contact the server due to an 2410 * underlying communication problem. 2411 */ 2412 PluginRootCfgClient getPluginRoot() 2413 throws DefinitionDecodingException, ManagedObjectDecodingException, 2414 ManagedObjectNotFoundException, ConcurrentModificationException, 2415 AuthorizationException, CommunicationException; 2416 2417 2418 2419 /** 2420 * Gets the Root DN. 2421 * 2422 * @return Returns the Root DN. 2423 * @throws DefinitionDecodingException 2424 * If the Root DN was found but its type could not be 2425 * determined. 2426 * @throws ManagedObjectDecodingException 2427 * If the Root DN was found but one or more of its 2428 * properties could not be decoded. 2429 * @throws ManagedObjectNotFoundException 2430 * If the Root DN could not be found on the server. 2431 * @throws ConcurrentModificationException 2432 * If this Root has been removed from the server by 2433 * another client. 2434 * @throws AuthorizationException 2435 * If the server refuses to retrieve the Root DN because 2436 * the client does not have the correct privileges. 2437 * @throws CommunicationException 2438 * If the client cannot contact the server due to an 2439 * underlying communication problem. 2440 */ 2441 RootDNCfgClient getRootDN() 2442 throws DefinitionDecodingException, ManagedObjectDecodingException, 2443 ManagedObjectNotFoundException, ConcurrentModificationException, 2444 AuthorizationException, CommunicationException; 2445 2446 2447 2448 /** 2449 * Gets the Root DSE Backend. 2450 * 2451 * @return Returns the Root DSE Backend. 2452 * @throws DefinitionDecodingException 2453 * If the Root DSE Backend was found but its type could 2454 * not be determined. 2455 * @throws ManagedObjectDecodingException 2456 * If the Root DSE Backend was found but one or more of 2457 * its properties could not be decoded. 2458 * @throws ManagedObjectNotFoundException 2459 * If the Root DSE Backend could not be found on the 2460 * server. 2461 * @throws ConcurrentModificationException 2462 * If this Root has been removed from the server by 2463 * another client. 2464 * @throws AuthorizationException 2465 * If the server refuses to retrieve the Root DSE Backend 2466 * because the client does not have the correct privileges. 2467 * @throws CommunicationException 2468 * If the client cannot contact the server due to an 2469 * underlying communication problem. 2470 */ 2471 RootDSEBackendCfgClient getRootDSEBackend() 2472 throws DefinitionDecodingException, ManagedObjectDecodingException, 2473 ManagedObjectNotFoundException, ConcurrentModificationException, 2474 AuthorizationException, CommunicationException; 2475 2476 2477 2478 /** 2479 * Lists the SASL Mechanism Handlers. 2480 * 2481 * @return Returns an array containing the names of the SASL 2482 * Mechanism Handlers. 2483 * @throws ConcurrentModificationException 2484 * If this Root has been removed from the server by 2485 * another client. 2486 * @throws AuthorizationException 2487 * If the server refuses to list the SASL Mechanism 2488 * Handlers because the client does not have the correct 2489 * privileges. 2490 * @throws CommunicationException 2491 * If the client cannot contact the server due to an 2492 * underlying communication problem. 2493 */ 2494 String[] listSASLMechanismHandlers() throws ConcurrentModificationException, 2495 AuthorizationException, CommunicationException; 2496 2497 2498 2499 /** 2500 * Gets the named SASL Mechanism Handler. 2501 * 2502 * @param name 2503 * The name of the SASL Mechanism Handler to retrieve. 2504 * @return Returns the named SASL Mechanism Handler. 2505 * @throws DefinitionDecodingException 2506 * If the named SASL Mechanism Handler was found but its 2507 * type could not be determined. 2508 * @throws ManagedObjectDecodingException 2509 * If the named SASL Mechanism Handler was found but one 2510 * or more of its properties could not be decoded. 2511 * @throws ManagedObjectNotFoundException 2512 * If the named SASL Mechanism Handler was not found on 2513 * the server. 2514 * @throws ConcurrentModificationException 2515 * If this Root has been removed from the server by 2516 * another client. 2517 * @throws AuthorizationException 2518 * If the server refuses to retrieve the named SASL 2519 * Mechanism Handler because the client does not have the 2520 * correct privileges. 2521 * @throws CommunicationException 2522 * If the client cannot contact the server due to an 2523 * underlying communication problem. 2524 */ 2525 SASLMechanismHandlerCfgClient getSASLMechanismHandler(String name) 2526 throws DefinitionDecodingException, ManagedObjectDecodingException, 2527 ManagedObjectNotFoundException, ConcurrentModificationException, 2528 AuthorizationException, CommunicationException; 2529 2530 2531 2532 /** 2533 * Creates a new SASL Mechanism Handler. The new SASL Mechanism 2534 * Handler will initially not contain any property values (including 2535 * mandatory properties). Once the SASL Mechanism Handler has been 2536 * configured it can be added to the server using the {@link 2537 * #commit()} method. 2538 * 2539 * @param <C> 2540 * The type of the SASL Mechanism Handler being created. 2541 * @param d 2542 * The definition of the SASL Mechanism Handler to be 2543 * created. 2544 * @param name 2545 * The name of the new SASL Mechanism Handler. 2546 * @param exceptions 2547 * An optional collection in which to place any {@link 2548 * PropertyException}s that occurred whilst attempting to 2549 * determine the default values of the SASL Mechanism 2550 * Handler. This argument can be <code>null<code>. 2551 * @return Returns a new SASL Mechanism Handler configuration 2552 * instance. 2553 * @throws IllegalManagedObjectNameException 2554 * If the name of the new SASL Mechanism Handler is 2555 * invalid. 2556 */ 2557 <C extends SASLMechanismHandlerCfgClient> C createSASLMechanismHandler( 2558 ManagedObjectDefinition<C, ? extends SASLMechanismHandlerCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 2559 2560 2561 2562 /** 2563 * Removes the named SASL Mechanism Handler. 2564 * 2565 * @param name 2566 * The name of the SASL Mechanism Handler to remove. 2567 * @throws ManagedObjectNotFoundException 2568 * If the SASL Mechanism Handler does not exist. 2569 * @throws OperationRejectedException 2570 * If the server refuses to remove the SASL Mechanism 2571 * Handler due to some server-side constraint which cannot 2572 * be satisfied (for example, if it is referenced by 2573 * another managed object). 2574 * @throws ConcurrentModificationException 2575 * If this Root has been removed from the server by 2576 * another client. 2577 * @throws AuthorizationException 2578 * If the server refuses to remove the SASL Mechanism 2579 * Handler because the client does not have the correct 2580 * privileges. 2581 * @throws CommunicationException 2582 * If the client cannot contact the server due to an 2583 * underlying communication problem. 2584 */ 2585 void removeSASLMechanismHandler(String name) 2586 throws ManagedObjectNotFoundException, OperationRejectedException, 2587 ConcurrentModificationException, AuthorizationException, 2588 CommunicationException; 2589 2590 2591 2592 /** 2593 * Lists the Schema Providers. 2594 * 2595 * @return Returns an array containing the names of the Schema 2596 * Providers. 2597 * @throws ConcurrentModificationException 2598 * If this Root has been removed from the server by 2599 * another client. 2600 * @throws AuthorizationException 2601 * If the server refuses to list the Schema Providers 2602 * because the client does not have the correct privileges. 2603 * @throws CommunicationException 2604 * If the client cannot contact the server due to an 2605 * underlying communication problem. 2606 */ 2607 String[] listSchemaProviders() throws ConcurrentModificationException, 2608 AuthorizationException, CommunicationException; 2609 2610 2611 2612 /** 2613 * Gets the named Schema Provider. 2614 * 2615 * @param name 2616 * The name of the Schema Provider to retrieve. 2617 * @return Returns the named Schema Provider. 2618 * @throws DefinitionDecodingException 2619 * If the named Schema Provider was found but its type 2620 * could not be determined. 2621 * @throws ManagedObjectDecodingException 2622 * If the named Schema Provider was found but one or more 2623 * of its properties could not be decoded. 2624 * @throws ManagedObjectNotFoundException 2625 * If the named Schema Provider was not found on the 2626 * server. 2627 * @throws ConcurrentModificationException 2628 * If this Root has been removed from the server by 2629 * another client. 2630 * @throws AuthorizationException 2631 * If the server refuses to retrieve the named Schema 2632 * Provider because the client does not have the correct 2633 * privileges. 2634 * @throws CommunicationException 2635 * If the client cannot contact the server due to an 2636 * underlying communication problem. 2637 */ 2638 SchemaProviderCfgClient getSchemaProvider(String name) 2639 throws DefinitionDecodingException, ManagedObjectDecodingException, 2640 ManagedObjectNotFoundException, ConcurrentModificationException, 2641 AuthorizationException, CommunicationException; 2642 2643 2644 2645 /** 2646 * Creates a new Schema Provider. The new Schema Provider will 2647 * initially not contain any property values (including mandatory 2648 * properties). Once the Schema Provider has been configured it can 2649 * be added to the server using the {@link #commit()} method. 2650 * 2651 * @param <C> 2652 * The type of the Schema Provider being created. 2653 * @param d 2654 * The definition of the Schema Provider to be created. 2655 * @param name 2656 * The name of the new Schema Provider. 2657 * @param exceptions 2658 * An optional collection in which to place any {@link 2659 * PropertyException}s that occurred whilst attempting to 2660 * determine the default values of the Schema Provider. This 2661 * argument can be <code>null<code>. 2662 * @return Returns a new Schema Provider configuration instance. 2663 * @throws IllegalManagedObjectNameException 2664 * If the name of the new Schema Provider is invalid. 2665 */ 2666 <C extends SchemaProviderCfgClient> C createSchemaProvider( 2667 ManagedObjectDefinition<C, ? extends SchemaProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 2668 2669 2670 2671 /** 2672 * Removes the named Schema Provider. 2673 * 2674 * @param name 2675 * The name of the Schema Provider to remove. 2676 * @throws ManagedObjectNotFoundException 2677 * If the Schema Provider does not exist. 2678 * @throws OperationRejectedException 2679 * If the server refuses to remove the Schema Provider due 2680 * to some server-side constraint which cannot be satisfied 2681 * (for example, if it is referenced by another managed 2682 * object). 2683 * @throws ConcurrentModificationException 2684 * If this Root has been removed from the server by 2685 * another client. 2686 * @throws AuthorizationException 2687 * If the server refuses to remove the Schema Provider 2688 * because the client does not have the correct privileges. 2689 * @throws CommunicationException 2690 * If the client cannot contact the server due to an 2691 * underlying communication problem. 2692 */ 2693 void removeSchemaProvider(String name) 2694 throws ManagedObjectNotFoundException, OperationRejectedException, 2695 ConcurrentModificationException, AuthorizationException, 2696 CommunicationException; 2697 2698 2699 2700 /** 2701 * Lists the Synchronization Providers. 2702 * 2703 * @return Returns an array containing the names of the 2704 * Synchronization Providers. 2705 * @throws ConcurrentModificationException 2706 * If this Root has been removed from the server by 2707 * another client. 2708 * @throws AuthorizationException 2709 * If the server refuses to list the Synchronization 2710 * Providers because the client does not have the correct 2711 * privileges. 2712 * @throws CommunicationException 2713 * If the client cannot contact the server due to an 2714 * underlying communication problem. 2715 */ 2716 String[] listSynchronizationProviders() throws ConcurrentModificationException, 2717 AuthorizationException, CommunicationException; 2718 2719 2720 2721 /** 2722 * Gets the named Synchronization Provider. 2723 * 2724 * @param name 2725 * The name of the Synchronization Provider to retrieve. 2726 * @return Returns the named Synchronization Provider. 2727 * @throws DefinitionDecodingException 2728 * If the named Synchronization Provider was found but its 2729 * type could not be determined. 2730 * @throws ManagedObjectDecodingException 2731 * If the named Synchronization Provider was found but one 2732 * or more of its properties could not be decoded. 2733 * @throws ManagedObjectNotFoundException 2734 * If the named Synchronization Provider was not found on 2735 * the server. 2736 * @throws ConcurrentModificationException 2737 * If this Root has been removed from the server by 2738 * another client. 2739 * @throws AuthorizationException 2740 * If the server refuses to retrieve the named 2741 * Synchronization Provider because the client does not 2742 * have the correct privileges. 2743 * @throws CommunicationException 2744 * If the client cannot contact the server due to an 2745 * underlying communication problem. 2746 */ 2747 SynchronizationProviderCfgClient getSynchronizationProvider(String name) 2748 throws DefinitionDecodingException, ManagedObjectDecodingException, 2749 ManagedObjectNotFoundException, ConcurrentModificationException, 2750 AuthorizationException, CommunicationException; 2751 2752 2753 2754 /** 2755 * Creates a new Synchronization Provider. The new Synchronization 2756 * Provider will initially not contain any property values (including 2757 * mandatory properties). Once the Synchronization Provider has been 2758 * configured it can be added to the server using the {@link 2759 * #commit()} method. 2760 * 2761 * @param <C> 2762 * The type of the Synchronization Provider being created. 2763 * @param d 2764 * The definition of the Synchronization Provider to be 2765 * created. 2766 * @param name 2767 * The name of the new Synchronization Provider. 2768 * @param exceptions 2769 * An optional collection in which to place any {@link 2770 * PropertyException}s that occurred whilst attempting to 2771 * determine the default values of the Synchronization 2772 * Provider. This argument can be <code>null<code>. 2773 * @return Returns a new Synchronization Provider configuration 2774 * instance. 2775 * @throws IllegalManagedObjectNameException 2776 * If the name of the new Synchronization Provider is 2777 * invalid. 2778 */ 2779 <C extends SynchronizationProviderCfgClient> C createSynchronizationProvider( 2780 ManagedObjectDefinition<C, ? extends SynchronizationProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 2781 2782 2783 2784 /** 2785 * Removes the named Synchronization Provider. 2786 * 2787 * @param name 2788 * The name of the Synchronization Provider to remove. 2789 * @throws ManagedObjectNotFoundException 2790 * If the Synchronization Provider does not exist. 2791 * @throws OperationRejectedException 2792 * If the server refuses to remove the Synchronization 2793 * Provider due to some server-side constraint which cannot 2794 * be satisfied (for example, if it is referenced by 2795 * another managed object). 2796 * @throws ConcurrentModificationException 2797 * If this Root has been removed from the server by 2798 * another client. 2799 * @throws AuthorizationException 2800 * If the server refuses to remove the Synchronization 2801 * Provider because the client does not have the correct 2802 * privileges. 2803 * @throws CommunicationException 2804 * If the client cannot contact the server due to an 2805 * underlying communication problem. 2806 */ 2807 void removeSynchronizationProvider(String name) 2808 throws ManagedObjectNotFoundException, OperationRejectedException, 2809 ConcurrentModificationException, AuthorizationException, 2810 CommunicationException; 2811 2812 2813 2814 /** 2815 * Lists the Trust Manager Providers. 2816 * 2817 * @return Returns an array containing the names of the Trust 2818 * Manager Providers. 2819 * @throws ConcurrentModificationException 2820 * If this Root has been removed from the server by 2821 * another client. 2822 * @throws AuthorizationException 2823 * If the server refuses to list the Trust Manager 2824 * Providers because the client does not have the correct 2825 * privileges. 2826 * @throws CommunicationException 2827 * If the client cannot contact the server due to an 2828 * underlying communication problem. 2829 */ 2830 String[] listTrustManagerProviders() throws ConcurrentModificationException, 2831 AuthorizationException, CommunicationException; 2832 2833 2834 2835 /** 2836 * Gets the named Trust Manager Provider. 2837 * 2838 * @param name 2839 * The name of the Trust Manager Provider to retrieve. 2840 * @return Returns the named Trust Manager Provider. 2841 * @throws DefinitionDecodingException 2842 * If the named Trust Manager Provider was found but its 2843 * type could not be determined. 2844 * @throws ManagedObjectDecodingException 2845 * If the named Trust Manager Provider was found but one 2846 * or more of its properties could not be decoded. 2847 * @throws ManagedObjectNotFoundException 2848 * If the named Trust Manager Provider was not found on 2849 * the server. 2850 * @throws ConcurrentModificationException 2851 * If this Root has been removed from the server by 2852 * another client. 2853 * @throws AuthorizationException 2854 * If the server refuses to retrieve the named Trust 2855 * Manager Provider because the client does not have the 2856 * correct privileges. 2857 * @throws CommunicationException 2858 * If the client cannot contact the server due to an 2859 * underlying communication problem. 2860 */ 2861 TrustManagerProviderCfgClient getTrustManagerProvider(String name) 2862 throws DefinitionDecodingException, ManagedObjectDecodingException, 2863 ManagedObjectNotFoundException, ConcurrentModificationException, 2864 AuthorizationException, CommunicationException; 2865 2866 2867 2868 /** 2869 * Creates a new Trust Manager Provider. The new Trust Manager 2870 * Provider will initially not contain any property values (including 2871 * mandatory properties). Once the Trust Manager Provider has been 2872 * configured it can be added to the server using the {@link 2873 * #commit()} method. 2874 * 2875 * @param <C> 2876 * The type of the Trust Manager Provider being created. 2877 * @param d 2878 * The definition of the Trust Manager Provider to be 2879 * created. 2880 * @param name 2881 * The name of the new Trust Manager Provider. 2882 * @param exceptions 2883 * An optional collection in which to place any {@link 2884 * PropertyException}s that occurred whilst attempting to 2885 * determine the default values of the Trust Manager 2886 * Provider. This argument can be <code>null<code>. 2887 * @return Returns a new Trust Manager Provider configuration 2888 * instance. 2889 * @throws IllegalManagedObjectNameException 2890 * If the name of the new Trust Manager Provider is 2891 * invalid. 2892 */ 2893 <C extends TrustManagerProviderCfgClient> C createTrustManagerProvider( 2894 ManagedObjectDefinition<C, ? extends TrustManagerProviderCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 2895 2896 2897 2898 /** 2899 * Removes the named Trust Manager Provider. 2900 * 2901 * @param name 2902 * The name of the Trust Manager Provider to remove. 2903 * @throws ManagedObjectNotFoundException 2904 * If the Trust Manager Provider does not exist. 2905 * @throws OperationRejectedException 2906 * If the server refuses to remove the Trust Manager 2907 * Provider due to some server-side constraint which cannot 2908 * be satisfied (for example, if it is referenced by 2909 * another managed object). 2910 * @throws ConcurrentModificationException 2911 * If this Root has been removed from the server by 2912 * another client. 2913 * @throws AuthorizationException 2914 * If the server refuses to remove the Trust Manager 2915 * Provider because the client does not have the correct 2916 * privileges. 2917 * @throws CommunicationException 2918 * If the client cannot contact the server due to an 2919 * underlying communication problem. 2920 */ 2921 void removeTrustManagerProvider(String name) 2922 throws ManagedObjectNotFoundException, OperationRejectedException, 2923 ConcurrentModificationException, AuthorizationException, 2924 CommunicationException; 2925 2926 2927 2928 /** 2929 * Lists the Virtual Attributes. 2930 * 2931 * @return Returns an array containing the names of the Virtual 2932 * Attributes. 2933 * @throws ConcurrentModificationException 2934 * If this Root has been removed from the server by 2935 * another client. 2936 * @throws AuthorizationException 2937 * If the server refuses to list the Virtual Attributes 2938 * because the client does not have the correct privileges. 2939 * @throws CommunicationException 2940 * If the client cannot contact the server due to an 2941 * underlying communication problem. 2942 */ 2943 String[] listVirtualAttributes() throws ConcurrentModificationException, 2944 AuthorizationException, CommunicationException; 2945 2946 2947 2948 /** 2949 * Gets the named Virtual Attribute. 2950 * 2951 * @param name 2952 * The name of the Virtual Attribute to retrieve. 2953 * @return Returns the named Virtual Attribute. 2954 * @throws DefinitionDecodingException 2955 * If the named Virtual Attribute was found but its type 2956 * could not be determined. 2957 * @throws ManagedObjectDecodingException 2958 * If the named Virtual Attribute was found but one or 2959 * more of its properties could not be decoded. 2960 * @throws ManagedObjectNotFoundException 2961 * If the named Virtual Attribute was not found on the 2962 * server. 2963 * @throws ConcurrentModificationException 2964 * If this Root has been removed from the server by 2965 * another client. 2966 * @throws AuthorizationException 2967 * If the server refuses to retrieve the named Virtual 2968 * Attribute because the client does not have the correct 2969 * privileges. 2970 * @throws CommunicationException 2971 * If the client cannot contact the server due to an 2972 * underlying communication problem. 2973 */ 2974 VirtualAttributeCfgClient getVirtualAttribute(String name) 2975 throws DefinitionDecodingException, ManagedObjectDecodingException, 2976 ManagedObjectNotFoundException, ConcurrentModificationException, 2977 AuthorizationException, CommunicationException; 2978 2979 2980 2981 /** 2982 * Creates a new Virtual Attribute. The new Virtual Attribute will 2983 * initially not contain any property values (including mandatory 2984 * properties). Once the Virtual Attribute has been configured it can 2985 * be added to the server using the {@link #commit()} method. 2986 * 2987 * @param <C> 2988 * The type of the Virtual Attribute being created. 2989 * @param d 2990 * The definition of the Virtual Attribute to be created. 2991 * @param name 2992 * The name of the new Virtual Attribute. 2993 * @param exceptions 2994 * An optional collection in which to place any {@link 2995 * PropertyException}s that occurred whilst attempting to 2996 * determine the default values of the Virtual Attribute. 2997 * This argument can be <code>null<code>. 2998 * @return Returns a new Virtual Attribute configuration instance. 2999 * @throws IllegalManagedObjectNameException 3000 * If the name of the new Virtual Attribute is invalid. 3001 */ 3002 <C extends VirtualAttributeCfgClient> C createVirtualAttribute( 3003 ManagedObjectDefinition<C, ? extends VirtualAttributeCfg> d, String name, Collection<PropertyException> exceptions) throws IllegalManagedObjectNameException; 3004 3005 3006 3007 /** 3008 * Removes the named Virtual Attribute. 3009 * 3010 * @param name 3011 * The name of the Virtual Attribute to remove. 3012 * @throws ManagedObjectNotFoundException 3013 * If the Virtual Attribute does not exist. 3014 * @throws OperationRejectedException 3015 * If the server refuses to remove the Virtual Attribute 3016 * due to some server-side constraint which cannot be 3017 * satisfied (for example, if it is referenced by another 3018 * managed object). 3019 * @throws ConcurrentModificationException 3020 * If this Root has been removed from the server by 3021 * another client. 3022 * @throws AuthorizationException 3023 * If the server refuses to remove the Virtual Attribute 3024 * because the client does not have the correct privileges. 3025 * @throws CommunicationException 3026 * If the client cannot contact the server due to an 3027 * underlying communication problem. 3028 */ 3029 void removeVirtualAttribute(String name) 3030 throws ManagedObjectNotFoundException, OperationRejectedException, 3031 ConcurrentModificationException, AuthorizationException, 3032 CommunicationException; 3033 3034 3035 3036 /** 3037 * Gets the Work Queue. 3038 * 3039 * @return Returns the Work Queue. 3040 * @throws DefinitionDecodingException 3041 * If the Work Queue was found but its type could not be 3042 * determined. 3043 * @throws ManagedObjectDecodingException 3044 * If the Work Queue was found but one or more of its 3045 * properties could not be decoded. 3046 * @throws ManagedObjectNotFoundException 3047 * If the Work Queue could not be found on the server. 3048 * @throws ConcurrentModificationException 3049 * If this Root has been removed from the server by 3050 * another client. 3051 * @throws AuthorizationException 3052 * If the server refuses to retrieve the Work Queue 3053 * because the client does not have the correct privileges. 3054 * @throws CommunicationException 3055 * If the client cannot contact the server due to an 3056 * underlying communication problem. 3057 */ 3058 WorkQueueCfgClient getWorkQueue() 3059 throws DefinitionDecodingException, ManagedObjectDecodingException, 3060 ManagedObjectNotFoundException, ConcurrentModificationException, 3061 AuthorizationException, CommunicationException; 3062 3063}