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.forgerock.opendj.server.config.client; 017 018 019 020import java.util.Collection; 021import java.util.SortedSet; 022import org.forgerock.opendj.config.ConfigurationClient; 023import org.forgerock.opendj.config.ManagedObjectDefinition; 024import org.forgerock.opendj.config.PropertyException; 025import org.forgerock.opendj.server.config.meta.GlobalCfgDefn.DisabledPrivilege; 026import org.forgerock.opendj.server.config.meta.GlobalCfgDefn.EtimeResolution; 027import org.forgerock.opendj.server.config.meta.GlobalCfgDefn.InvalidAttributeSyntaxBehavior; 028import org.forgerock.opendj.server.config.meta.GlobalCfgDefn.SingleStructuralObjectclassBehavior; 029import org.forgerock.opendj.server.config.meta.GlobalCfgDefn.WritabilityMode; 030import org.forgerock.opendj.server.config.server.GlobalCfg; 031 032 033 034/** 035 * A client-side interface for reading and modifying Global 036 * Configuration settings. 037 * <p> 038 * The Global Configuration contains properties that affect the 039 * overall operation of the OpenDJ. 040 */ 041public interface GlobalCfgClient extends ConfigurationClient { 042 043 /** 044 * Get the configuration definition associated with this Global Configuration. 045 * 046 * @return Returns the configuration definition associated with this Global Configuration. 047 */ 048 ManagedObjectDefinition<? extends GlobalCfgClient, ? extends GlobalCfg> definition(); 049 050 051 052 /** 053 * Gets the "add-missing-rdn-attributes" property. 054 * <p> 055 * Indicates whether the directory server should automatically add 056 * any attribute values contained in the entry's RDN into that entry 057 * when processing an add request. 058 * 059 * @return Returns the value of the "add-missing-rdn-attributes" property. 060 */ 061 boolean isAddMissingRDNAttributes(); 062 063 064 065 /** 066 * Sets the "add-missing-rdn-attributes" property. 067 * <p> 068 * Indicates whether the directory server should automatically add 069 * any attribute values contained in the entry's RDN into that entry 070 * when processing an add request. 071 * 072 * @param value The value of the "add-missing-rdn-attributes" property. 073 * @throws PropertyException 074 * If the new value is invalid. 075 */ 076 void setAddMissingRDNAttributes(Boolean value) throws PropertyException; 077 078 079 080 /** 081 * Gets the "allow-attribute-name-exceptions" property. 082 * <p> 083 * Indicates whether the directory server should allow underscores 084 * in attribute names and allow attribute names to begin with numeric 085 * digits (both of which are violations of the LDAP standards). 086 * 087 * @return Returns the value of the "allow-attribute-name-exceptions" property. 088 */ 089 boolean isAllowAttributeNameExceptions(); 090 091 092 093 /** 094 * Sets the "allow-attribute-name-exceptions" property. 095 * <p> 096 * Indicates whether the directory server should allow underscores 097 * in attribute names and allow attribute names to begin with numeric 098 * digits (both of which are violations of the LDAP standards). 099 * 100 * @param value The value of the "allow-attribute-name-exceptions" property. 101 * @throws PropertyException 102 * If the new value is invalid. 103 */ 104 void setAllowAttributeNameExceptions(Boolean value) throws PropertyException; 105 106 107 108 /** 109 * Gets the "allowed-task" property. 110 * <p> 111 * Specifies the fully-qualified name of a Java class that may be 112 * invoked in the server. 113 * <p> 114 * Any attempt to invoke a task not included in the list of allowed 115 * tasks is rejected. 116 * 117 * @return Returns the values of the "allowed-task" property. 118 */ 119 SortedSet<String> getAllowedTask(); 120 121 122 123 /** 124 * Sets the "allowed-task" property. 125 * <p> 126 * Specifies the fully-qualified name of a Java class that may be 127 * invoked in the server. 128 * <p> 129 * Any attempt to invoke a task not included in the list of allowed 130 * tasks is rejected. 131 * 132 * @param values The values of the "allowed-task" property. 133 * @throws PropertyException 134 * If one or more of the new values are invalid. 135 */ 136 void setAllowedTask(Collection<String> values) throws PropertyException; 137 138 139 140 /** 141 * Gets the "bind-with-dn-requires-password" property. 142 * <p> 143 * Indicates whether the directory server should reject any simple 144 * bind request that contains a DN but no password. 145 * <p> 146 * Although such bind requests are technically allowed by the LDAPv3 147 * specification (and should be treated as anonymous simple 148 * authentication), they may introduce security problems in 149 * applications that do not verify that the client actually provided 150 * a password. 151 * 152 * @return Returns the value of the "bind-with-dn-requires-password" property. 153 */ 154 boolean isBindWithDNRequiresPassword(); 155 156 157 158 /** 159 * Sets the "bind-with-dn-requires-password" property. 160 * <p> 161 * Indicates whether the directory server should reject any simple 162 * bind request that contains a DN but no password. 163 * <p> 164 * Although such bind requests are technically allowed by the LDAPv3 165 * specification (and should be treated as anonymous simple 166 * authentication), they may introduce security problems in 167 * applications that do not verify that the client actually provided 168 * a password. 169 * 170 * @param value The value of the "bind-with-dn-requires-password" property. 171 * @throws PropertyException 172 * If the new value is invalid. 173 */ 174 void setBindWithDNRequiresPassword(Boolean value) throws PropertyException; 175 176 177 178 /** 179 * Gets the "check-schema" property. 180 * <p> 181 * Indicates whether schema enforcement is active. 182 * <p> 183 * When schema enforcement is activated, the directory server 184 * ensures that all operations result in entries are valid according 185 * to the defined server schema. It is strongly recommended that this 186 * option be left enabled to prevent the inadvertent addition of 187 * invalid data into the server. 188 * 189 * @return Returns the value of the "check-schema" property. 190 */ 191 boolean isCheckSchema(); 192 193 194 195 /** 196 * Sets the "check-schema" property. 197 * <p> 198 * Indicates whether schema enforcement is active. 199 * <p> 200 * When schema enforcement is activated, the directory server 201 * ensures that all operations result in entries are valid according 202 * to the defined server schema. It is strongly recommended that this 203 * option be left enabled to prevent the inadvertent addition of 204 * invalid data into the server. 205 * 206 * @param value The value of the "check-schema" property. 207 * @throws PropertyException 208 * If the new value is invalid. 209 */ 210 void setCheckSchema(Boolean value) throws PropertyException; 211 212 213 214 /** 215 * Gets the "default-password-policy" property. 216 * <p> 217 * Specifies the name of the password policy that is in effect for 218 * users whose entries do not specify an alternate password policy 219 * (either via a real or virtual attribute). 220 * <p> 221 * In addition, the default password policy will be used for 222 * providing default parameters for sub-entry based password policies 223 * when not provided or supported by the sub-entry itself. This 224 * property must reference a password policy and no other type of 225 * authentication policy. 226 * 227 * @return Returns the value of the "default-password-policy" property. 228 */ 229 String getDefaultPasswordPolicy(); 230 231 232 233 /** 234 * Sets the "default-password-policy" property. 235 * <p> 236 * Specifies the name of the password policy that is in effect for 237 * users whose entries do not specify an alternate password policy 238 * (either via a real or virtual attribute). 239 * <p> 240 * In addition, the default password policy will be used for 241 * providing default parameters for sub-entry based password policies 242 * when not provided or supported by the sub-entry itself. This 243 * property must reference a password policy and no other type of 244 * authentication policy. 245 * 246 * @param value The value of the "default-password-policy" property. 247 * @throws PropertyException 248 * If the new value is invalid. 249 */ 250 void setDefaultPasswordPolicy(String value) throws PropertyException; 251 252 253 254 /** 255 * Gets the "disabled-privilege" property. 256 * <p> 257 * Specifies the name of a privilege that should not be evaluated by 258 * the server. 259 * <p> 260 * If a privilege is disabled, then it is assumed that all clients 261 * (including unauthenticated clients) have that privilege. 262 * 263 * @return Returns the values of the "disabled-privilege" property. 264 */ 265 SortedSet<DisabledPrivilege> getDisabledPrivilege(); 266 267 268 269 /** 270 * Sets the "disabled-privilege" property. 271 * <p> 272 * Specifies the name of a privilege that should not be evaluated by 273 * the server. 274 * <p> 275 * If a privilege is disabled, then it is assumed that all clients 276 * (including unauthenticated clients) have that privilege. 277 * 278 * @param values The values of the "disabled-privilege" property. 279 * @throws PropertyException 280 * If one or more of the new values are invalid. 281 */ 282 void setDisabledPrivilege(Collection<DisabledPrivilege> values) throws PropertyException; 283 284 285 286 /** 287 * Gets the "etime-resolution" property. 288 * <p> 289 * Specifies the resolution to use for operation elapsed processing 290 * time (etime) measurements. 291 * 292 * @return Returns the value of the "etime-resolution" property. 293 */ 294 EtimeResolution getEtimeResolution(); 295 296 297 298 /** 299 * Sets the "etime-resolution" property. 300 * <p> 301 * Specifies the resolution to use for operation elapsed processing 302 * time (etime) measurements. 303 * 304 * @param value The value of the "etime-resolution" property. 305 * @throws PropertyException 306 * If the new value is invalid. 307 */ 308 void setEtimeResolution(EtimeResolution value) throws PropertyException; 309 310 311 312 /** 313 * Gets the "idle-time-limit" property. 314 * <p> 315 * Specifies the maximum length of time that a client connection may 316 * remain established since its last completed operation. 317 * <p> 318 * A value of "0 seconds" indicates that no idle time limit is 319 * enforced. 320 * 321 * @return Returns the value of the "idle-time-limit" property. 322 */ 323 long getIdleTimeLimit(); 324 325 326 327 /** 328 * Sets the "idle-time-limit" property. 329 * <p> 330 * Specifies the maximum length of time that a client connection may 331 * remain established since its last completed operation. 332 * <p> 333 * A value of "0 seconds" indicates that no idle time limit is 334 * enforced. 335 * 336 * @param value The value of the "idle-time-limit" property. 337 * @throws PropertyException 338 * If the new value is invalid. 339 */ 340 void setIdleTimeLimit(Long value) throws PropertyException; 341 342 343 344 /** 345 * Gets the "invalid-attribute-syntax-behavior" property. 346 * <p> 347 * Specifies how the directory server should handle operations 348 * whenever an attribute value violates the associated attribute 349 * syntax. 350 * 351 * @return Returns the value of the "invalid-attribute-syntax-behavior" property. 352 */ 353 InvalidAttributeSyntaxBehavior getInvalidAttributeSyntaxBehavior(); 354 355 356 357 /** 358 * Sets the "invalid-attribute-syntax-behavior" property. 359 * <p> 360 * Specifies how the directory server should handle operations 361 * whenever an attribute value violates the associated attribute 362 * syntax. 363 * 364 * @param value The value of the "invalid-attribute-syntax-behavior" property. 365 * @throws PropertyException 366 * If the new value is invalid. 367 */ 368 void setInvalidAttributeSyntaxBehavior(InvalidAttributeSyntaxBehavior value) throws PropertyException; 369 370 371 372 /** 373 * Gets the "lookthrough-limit" property. 374 * <p> 375 * Specifies the maximum number of entries that the directory server 376 * should "look through" in the course of processing a search 377 * request. 378 * <p> 379 * This includes any entry that the server must examine in the 380 * course of processing the request, regardless of whether it 381 * actually matches the search criteria. A value of 0 indicates that 382 * no lookthrough limit is enforced. Note that this is the default 383 * server-wide limit, but it may be overridden on a per-user basis 384 * using the ds-rlim-lookthrough-limit operational attribute. 385 * 386 * @return Returns the value of the "lookthrough-limit" property. 387 */ 388 int getLookthroughLimit(); 389 390 391 392 /** 393 * Sets the "lookthrough-limit" property. 394 * <p> 395 * Specifies the maximum number of entries that the directory server 396 * should "look through" in the course of processing a search 397 * request. 398 * <p> 399 * This includes any entry that the server must examine in the 400 * course of processing the request, regardless of whether it 401 * actually matches the search criteria. A value of 0 indicates that 402 * no lookthrough limit is enforced. Note that this is the default 403 * server-wide limit, but it may be overridden on a per-user basis 404 * using the ds-rlim-lookthrough-limit operational attribute. 405 * 406 * @param value The value of the "lookthrough-limit" property. 407 * @throws PropertyException 408 * If the new value is invalid. 409 */ 410 void setLookthroughLimit(Integer value) throws PropertyException; 411 412 413 414 /** 415 * Gets the "max-allowed-client-connections" property. 416 * <p> 417 * Specifies the maximum number of client connections that may be 418 * established at any given time 419 * <p> 420 * A value of 0 indicates that unlimited client connection is 421 * allowed. 422 * 423 * @return Returns the value of the "max-allowed-client-connections" property. 424 */ 425 int getMaxAllowedClientConnections(); 426 427 428 429 /** 430 * Sets the "max-allowed-client-connections" property. 431 * <p> 432 * Specifies the maximum number of client connections that may be 433 * established at any given time 434 * <p> 435 * A value of 0 indicates that unlimited client connection is 436 * allowed. 437 * 438 * @param value The value of the "max-allowed-client-connections" property. 439 * @throws PropertyException 440 * If the new value is invalid. 441 */ 442 void setMaxAllowedClientConnections(Integer value) throws PropertyException; 443 444 445 446 /** 447 * Gets the "max-internal-buffer-size" property. 448 * <p> 449 * The threshold capacity beyond which internal cached buffers used 450 * for encoding and decoding entries and protocol messages will be 451 * trimmed after use. 452 * <p> 453 * Individual buffers may grow very large when encoding and decoding 454 * large entries and protocol messages and should be reduced in size 455 * when they are no longer needed. This setting specifies the 456 * threshold at which a buffer is determined to have grown too big 457 * and should be trimmed down after use. 458 * 459 * @return Returns the value of the "max-internal-buffer-size" property. 460 */ 461 long getMaxInternalBufferSize(); 462 463 464 465 /** 466 * Sets the "max-internal-buffer-size" property. 467 * <p> 468 * The threshold capacity beyond which internal cached buffers used 469 * for encoding and decoding entries and protocol messages will be 470 * trimmed after use. 471 * <p> 472 * Individual buffers may grow very large when encoding and decoding 473 * large entries and protocol messages and should be reduced in size 474 * when they are no longer needed. This setting specifies the 475 * threshold at which a buffer is determined to have grown too big 476 * and should be trimmed down after use. 477 * 478 * @param value The value of the "max-internal-buffer-size" property. 479 * @throws PropertyException 480 * If the new value is invalid. 481 */ 482 void setMaxInternalBufferSize(Long value) throws PropertyException; 483 484 485 486 /** 487 * Gets the "max-psearches" property. 488 * <p> 489 * Defines the maximum number of concurrent persistent searches that 490 * can be performed on directory server 491 * <p> 492 * The persistent search mechanism provides an active channel 493 * through which entries that change, and information about the 494 * changes that occur, can be communicated. Because each persistent 495 * search operation consumes resources, limiting the number of 496 * simultaneous persistent searches keeps the performance impact 497 * minimal. A value of -1 indicates that there is no limit on the 498 * persistent searches. 499 * 500 * @return Returns the value of the "max-psearches" property. 501 */ 502 int getMaxPsearches(); 503 504 505 506 /** 507 * Sets the "max-psearches" property. 508 * <p> 509 * Defines the maximum number of concurrent persistent searches that 510 * can be performed on directory server 511 * <p> 512 * The persistent search mechanism provides an active channel 513 * through which entries that change, and information about the 514 * changes that occur, can be communicated. Because each persistent 515 * search operation consumes resources, limiting the number of 516 * simultaneous persistent searches keeps the performance impact 517 * minimal. A value of -1 indicates that there is no limit on the 518 * persistent searches. 519 * 520 * @param value The value of the "max-psearches" property. 521 * @throws PropertyException 522 * If the new value is invalid. 523 */ 524 void setMaxPsearches(Integer value) throws PropertyException; 525 526 527 528 /** 529 * Gets the "notify-abandoned-operations" property. 530 * <p> 531 * Indicates whether the directory server should send a response to 532 * any operation that is interrupted via an abandon request. 533 * <p> 534 * The LDAP specification states that abandoned operations should 535 * not receive any response, but this may cause problems with client 536 * applications that always expect to receive a response to each 537 * request. 538 * 539 * @return Returns the value of the "notify-abandoned-operations" property. 540 */ 541 boolean isNotifyAbandonedOperations(); 542 543 544 545 /** 546 * Sets the "notify-abandoned-operations" property. 547 * <p> 548 * Indicates whether the directory server should send a response to 549 * any operation that is interrupted via an abandon request. 550 * <p> 551 * The LDAP specification states that abandoned operations should 552 * not receive any response, but this may cause problems with client 553 * applications that always expect to receive a response to each 554 * request. 555 * 556 * @param value The value of the "notify-abandoned-operations" property. 557 * @throws PropertyException 558 * If the new value is invalid. 559 */ 560 void setNotifyAbandonedOperations(Boolean value) throws PropertyException; 561 562 563 564 /** 565 * Gets the "proxied-authorization-identity-mapper" property. 566 * <p> 567 * Specifies the name of the identity mapper to map authorization ID 568 * values (using the "u:" form) provided in the proxied authorization 569 * control to the corresponding user entry. 570 * 571 * @return Returns the value of the "proxied-authorization-identity-mapper" property. 572 */ 573 String getProxiedAuthorizationIdentityMapper(); 574 575 576 577 /** 578 * Sets the "proxied-authorization-identity-mapper" property. 579 * <p> 580 * Specifies the name of the identity mapper to map authorization ID 581 * values (using the "u:" form) provided in the proxied authorization 582 * control to the corresponding user entry. 583 * 584 * @param value The value of the "proxied-authorization-identity-mapper" property. 585 * @throws PropertyException 586 * If the new value is invalid. 587 */ 588 void setProxiedAuthorizationIdentityMapper(String value) throws PropertyException; 589 590 591 592 /** 593 * Gets the "reject-unauthenticated-requests" property. 594 * <p> 595 * Indicates whether the directory server should reject any request 596 * (other than bind or StartTLS requests) received from a client that 597 * has not yet been authenticated, whose last authentication attempt 598 * was unsuccessful, or whose last authentication attempt used 599 * anonymous authentication. 600 * 601 * @return Returns the value of the "reject-unauthenticated-requests" property. 602 */ 603 boolean isRejectUnauthenticatedRequests(); 604 605 606 607 /** 608 * Sets the "reject-unauthenticated-requests" property. 609 * <p> 610 * Indicates whether the directory server should reject any request 611 * (other than bind or StartTLS requests) received from a client that 612 * has not yet been authenticated, whose last authentication attempt 613 * was unsuccessful, or whose last authentication attempt used 614 * anonymous authentication. 615 * 616 * @param value The value of the "reject-unauthenticated-requests" property. 617 * @throws PropertyException 618 * If the new value is invalid. 619 */ 620 void setRejectUnauthenticatedRequests(Boolean value) throws PropertyException; 621 622 623 624 /** 625 * Gets the "return-bind-error-messages" property. 626 * <p> 627 * Indicates whether responses for failed bind operations should 628 * include a message string providing the reason for the 629 * authentication failure. 630 * <p> 631 * Note that these messages may include information that could 632 * potentially be used by an attacker. If this option is disabled, 633 * then these messages appears only in the server's access log. 634 * 635 * @return Returns the value of the "return-bind-error-messages" property. 636 */ 637 boolean isReturnBindErrorMessages(); 638 639 640 641 /** 642 * Sets the "return-bind-error-messages" property. 643 * <p> 644 * Indicates whether responses for failed bind operations should 645 * include a message string providing the reason for the 646 * authentication failure. 647 * <p> 648 * Note that these messages may include information that could 649 * potentially be used by an attacker. If this option is disabled, 650 * then these messages appears only in the server's access log. 651 * 652 * @param value The value of the "return-bind-error-messages" property. 653 * @throws PropertyException 654 * If the new value is invalid. 655 */ 656 void setReturnBindErrorMessages(Boolean value) throws PropertyException; 657 658 659 660 /** 661 * Gets the "save-config-on-successful-startup" property. 662 * <p> 663 * Indicates whether the directory server should save a copy of its 664 * configuration whenever the startup process completes successfully. 665 * <p> 666 * This ensures that the server provides a "last known good" 667 * configuration, which can be used as a reference (or copied into 668 * the active config) if the server fails to start with the current 669 * "active" configuration. 670 * 671 * @return Returns the value of the "save-config-on-successful-startup" property. 672 */ 673 boolean isSaveConfigOnSuccessfulStartup(); 674 675 676 677 /** 678 * Sets the "save-config-on-successful-startup" property. 679 * <p> 680 * Indicates whether the directory server should save a copy of its 681 * configuration whenever the startup process completes successfully. 682 * <p> 683 * This ensures that the server provides a "last known good" 684 * configuration, which can be used as a reference (or copied into 685 * the active config) if the server fails to start with the current 686 * "active" configuration. 687 * 688 * @param value The value of the "save-config-on-successful-startup" property. 689 * @throws PropertyException 690 * If the new value is invalid. 691 */ 692 void setSaveConfigOnSuccessfulStartup(Boolean value) throws PropertyException; 693 694 695 696 /** 697 * Gets the "server-error-result-code" property. 698 * <p> 699 * Specifies the numeric value of the result code when request 700 * processing fails due to an internal server error. 701 * 702 * @return Returns the value of the "server-error-result-code" property. 703 */ 704 int getServerErrorResultCode(); 705 706 707 708 /** 709 * Sets the "server-error-result-code" property. 710 * <p> 711 * Specifies the numeric value of the result code when request 712 * processing fails due to an internal server error. 713 * 714 * @param value The value of the "server-error-result-code" property. 715 * @throws PropertyException 716 * If the new value is invalid. 717 */ 718 void setServerErrorResultCode(Integer value) throws PropertyException; 719 720 721 722 /** 723 * Gets the "single-structural-objectclass-behavior" property. 724 * <p> 725 * Specifies how the directory server should handle operations an 726 * entry does not contain a structural object class or contains 727 * multiple structural classes. 728 * 729 * @return Returns the value of the "single-structural-objectclass-behavior" property. 730 */ 731 SingleStructuralObjectclassBehavior getSingleStructuralObjectclassBehavior(); 732 733 734 735 /** 736 * Sets the "single-structural-objectclass-behavior" property. 737 * <p> 738 * Specifies how the directory server should handle operations an 739 * entry does not contain a structural object class or contains 740 * multiple structural classes. 741 * 742 * @param value The value of the "single-structural-objectclass-behavior" property. 743 * @throws PropertyException 744 * If the new value is invalid. 745 */ 746 void setSingleStructuralObjectclassBehavior(SingleStructuralObjectclassBehavior value) throws PropertyException; 747 748 749 750 /** 751 * Gets the "size-limit" property. 752 * <p> 753 * Specifies the maximum number of entries that can be returned to 754 * the client during a single search operation. 755 * <p> 756 * A value of 0 indicates that no size limit is enforced. Note that 757 * this is the default server-wide limit, but it may be overridden on 758 * a per-user basis using the ds-rlim-size-limit operational 759 * attribute. 760 * 761 * @return Returns the value of the "size-limit" property. 762 */ 763 int getSizeLimit(); 764 765 766 767 /** 768 * Sets the "size-limit" property. 769 * <p> 770 * Specifies the maximum number of entries that can be returned to 771 * the client during a single search operation. 772 * <p> 773 * A value of 0 indicates that no size limit is enforced. Note that 774 * this is the default server-wide limit, but it may be overridden on 775 * a per-user basis using the ds-rlim-size-limit operational 776 * attribute. 777 * 778 * @param value The value of the "size-limit" property. 779 * @throws PropertyException 780 * If the new value is invalid. 781 */ 782 void setSizeLimit(Integer value) throws PropertyException; 783 784 785 786 /** 787 * Gets the "smtp-server" property. 788 * <p> 789 * Specifies the address (and optional port number) for a mail 790 * server that can be used to send email messages via SMTP. 791 * <p> 792 * It may be an IP address or resolvable hostname, optionally 793 * followed by a colon and a port number. 794 * 795 * @return Returns the values of the "smtp-server" property. 796 */ 797 SortedSet<String> getSMTPServer(); 798 799 800 801 /** 802 * Sets the "smtp-server" property. 803 * <p> 804 * Specifies the address (and optional port number) for a mail 805 * server that can be used to send email messages via SMTP. 806 * <p> 807 * It may be an IP address or resolvable hostname, optionally 808 * followed by a colon and a port number. 809 * 810 * @param values The values of the "smtp-server" property. 811 * @throws PropertyException 812 * If one or more of the new values are invalid. 813 */ 814 void setSMTPServer(Collection<String> values) throws PropertyException; 815 816 817 818 /** 819 * Gets the "time-limit" property. 820 * <p> 821 * Specifies the maximum length of time that should be spent 822 * processing a single search operation. 823 * <p> 824 * A value of 0 seconds indicates that no time limit is enforced. 825 * Note that this is the default server-wide time limit, but it may 826 * be overridden on a per-user basis using the ds-rlim-time-limit 827 * operational attribute. 828 * 829 * @return Returns the value of the "time-limit" property. 830 */ 831 long getTimeLimit(); 832 833 834 835 /** 836 * Sets the "time-limit" property. 837 * <p> 838 * Specifies the maximum length of time that should be spent 839 * processing a single search operation. 840 * <p> 841 * A value of 0 seconds indicates that no time limit is enforced. 842 * Note that this is the default server-wide time limit, but it may 843 * be overridden on a per-user basis using the ds-rlim-time-limit 844 * operational attribute. 845 * 846 * @param value The value of the "time-limit" property. 847 * @throws PropertyException 848 * If the new value is invalid. 849 */ 850 void setTimeLimit(Long value) throws PropertyException; 851 852 853 854 /** 855 * Gets the "trust-transaction-ids" property. 856 * <p> 857 * Indicates whether the directory server should trust the 858 * transaction ids that may be received from requests, either through 859 * a LDAP control or through a HTTP header. 860 * 861 * @return Returns the value of the "trust-transaction-ids" property. 862 */ 863 boolean isTrustTransactionIds(); 864 865 866 867 /** 868 * Sets the "trust-transaction-ids" property. 869 * <p> 870 * Indicates whether the directory server should trust the 871 * transaction ids that may be received from requests, either through 872 * a LDAP control or through a HTTP header. 873 * 874 * @param value The value of the "trust-transaction-ids" property. 875 * @throws PropertyException 876 * If the new value is invalid. 877 */ 878 void setTrustTransactionIds(Boolean value) throws PropertyException; 879 880 881 882 /** 883 * Gets the "writability-mode" property. 884 * <p> 885 * Specifies the kinds of write operations the directory server can 886 * process. 887 * 888 * @return Returns the value of the "writability-mode" property. 889 */ 890 WritabilityMode getWritabilityMode(); 891 892 893 894 /** 895 * Sets the "writability-mode" property. 896 * <p> 897 * Specifies the kinds of write operations the directory server can 898 * process. 899 * 900 * @param value The value of the "writability-mode" property. 901 * @throws PropertyException 902 * If the new value is invalid. 903 */ 904 void setWritabilityMode(WritabilityMode value) throws PropertyException; 905 906}