001 /*
002 * CDDL HEADER START
003 *
004 * The contents of this file are subject to the terms of the
005 * Common Development and Distribution License, Version 1.0 only
006 * (the "License"). You may not use this file except in compliance
007 * with the License.
008 *
009 * You can obtain a copy of the license at
010 * trunk/opends/resource/legal-notices/OpenDS.LICENSE
011 * or https://OpenDS.dev.java.net/OpenDS.LICENSE.
012 * See the License for the specific language governing permissions
013 * and limitations under the License.
014 *
015 * When distributing Covered Code, include this CDDL HEADER in each
016 * file and include the License file at
017 * trunk/opends/resource/legal-notices/OpenDS.LICENSE. If applicable,
018 * add the following below this CDDL HEADER, with the fields enclosed
019 * by brackets "[]" replaced with your own identifying information:
020 * Portions Copyright [yyyy] [name of copyright owner]
021 *
022 * CDDL HEADER END
023 *
024 *
025 * Copyright 2008 Sun Microsystems, Inc.
026 */
027 package org.opends.server.admin.std.client;
028
029
030
031 import java.util.Collection;
032 import java.util.SortedSet;
033 import org.opends.server.admin.ConfigurationClient;
034 import org.opends.server.admin.IllegalPropertyValueException;
035 import org.opends.server.admin.ManagedObjectDefinition;
036 import org.opends.server.admin.std.meta.GlobalCfgDefn.DisabledPrivilege;
037 import org.opends.server.admin.std.meta.GlobalCfgDefn.EtimeResolution;
038 import org.opends.server.admin.std.meta.GlobalCfgDefn.InvalidAttributeSyntaxBehavior;
039 import org.opends.server.admin.std.meta.GlobalCfgDefn.SingleStructuralObjectclassBehavior;
040 import org.opends.server.admin.std.meta.GlobalCfgDefn.WorkflowConfigurationMode;
041 import org.opends.server.admin.std.meta.GlobalCfgDefn.WritabilityMode;
042 import org.opends.server.admin.std.server.GlobalCfg;
043
044
045
046 /**
047 * A client-side interface for reading and modifying Global
048 * Configuration settings.
049 * <p>
050 * The Global Configuration contains properties that affect the
051 * overall operation of the OpenDS Directory Server .
052 */
053 public interface GlobalCfgClient extends ConfigurationClient {
054
055 /**
056 * Get the configuration definition associated with this Global Configuration.
057 *
058 * @return Returns the configuration definition associated with this Global Configuration.
059 */
060 ManagedObjectDefinition<? extends GlobalCfgClient, ? extends GlobalCfg> definition();
061
062
063
064 /**
065 * Gets the "add-missing-rdn-attributes" property.
066 * <p>
067 * Indicates whether the Directory Server should automatically add
068 * any attribute values contained in the entry's RDN into that entry
069 * when processing an add request.
070 *
071 * @return Returns the value of the "add-missing-rdn-attributes" property.
072 */
073 boolean isAddMissingRDNAttributes();
074
075
076
077 /**
078 * Sets the "add-missing-rdn-attributes" property.
079 * <p>
080 * Indicates whether the Directory Server should automatically add
081 * any attribute values contained in the entry's RDN into that entry
082 * when processing an add request.
083 *
084 * @param value The value of the "add-missing-rdn-attributes" property.
085 * @throws IllegalPropertyValueException
086 * If the new value is invalid.
087 */
088 void setAddMissingRDNAttributes(Boolean value) throws IllegalPropertyValueException;
089
090
091
092 /**
093 * Gets the "allow-attribute-name-exceptions" property.
094 * <p>
095 * Indicates whether the Directory Server should allow underscores
096 * in attribute names and allow attribute names to begin with numeric
097 * digits (both of which are violations of the LDAP standards).
098 *
099 * @return Returns the value of the "allow-attribute-name-exceptions" property.
100 */
101 boolean isAllowAttributeNameExceptions();
102
103
104
105 /**
106 * Sets the "allow-attribute-name-exceptions" property.
107 * <p>
108 * Indicates whether the Directory Server should allow underscores
109 * in attribute names and allow attribute names to begin with numeric
110 * digits (both of which are violations of the LDAP standards).
111 *
112 * @param value The value of the "allow-attribute-name-exceptions" property.
113 * @throws IllegalPropertyValueException
114 * If the new value is invalid.
115 */
116 void setAllowAttributeNameExceptions(Boolean value) throws IllegalPropertyValueException;
117
118
119
120 /**
121 * Gets the "allowed-task" property.
122 * <p>
123 * Specifies the fully-qualified name of a Java class that may be
124 * invoked in the server.
125 * <p>
126 * Any attempt to invoke a task not included in the list of allowed
127 * tasks is rejected.
128 *
129 * @return Returns the values of the "allowed-task" property.
130 */
131 SortedSet<String> getAllowedTask();
132
133
134
135 /**
136 * Sets the "allowed-task" property.
137 * <p>
138 * Specifies the fully-qualified name of a Java class that may be
139 * invoked in the server.
140 * <p>
141 * Any attempt to invoke a task not included in the list of allowed
142 * tasks is rejected.
143 *
144 * @param values The values of the "allowed-task" property.
145 * @throws IllegalPropertyValueException
146 * If one or more of the new values are invalid.
147 */
148 void setAllowedTask(Collection<String> values) throws IllegalPropertyValueException;
149
150
151
152 /**
153 * Gets the "bind-with-dn-requires-password" property.
154 * <p>
155 * Indicates whether the Directory Server should reject any simple
156 * bind request that contains a DN but no password.
157 * <p>
158 * Although such bind requests are technically allowed by the LDAPv3
159 * specification (and should be treated as anonymous simple
160 * authentication), they may introduce security problems in
161 * applications that do not verify that the client actually provided
162 * a password.
163 *
164 * @return Returns the value of the "bind-with-dn-requires-password" property.
165 */
166 boolean isBindWithDNRequiresPassword();
167
168
169
170 /**
171 * Sets the "bind-with-dn-requires-password" property.
172 * <p>
173 * Indicates whether the Directory Server should reject any simple
174 * bind request that contains a DN but no password.
175 * <p>
176 * Although such bind requests are technically allowed by the LDAPv3
177 * specification (and should be treated as anonymous simple
178 * authentication), they may introduce security problems in
179 * applications that do not verify that the client actually provided
180 * a password.
181 *
182 * @param value The value of the "bind-with-dn-requires-password" property.
183 * @throws IllegalPropertyValueException
184 * If the new value is invalid.
185 */
186 void setBindWithDNRequiresPassword(Boolean value) throws IllegalPropertyValueException;
187
188
189
190 /**
191 * Gets the "check-schema" property.
192 * <p>
193 * Indicates whether schema enforcement is active.
194 * <p>
195 * When schema enforcement is activated, the Directory Server
196 * ensures that all operations result in entries are valid according
197 * to the defined server schema. It is strongly recommended that this
198 * option be left enabled to prevent the inadvertent addition of
199 * invalid data into the server.
200 *
201 * @return Returns the value of the "check-schema" property.
202 */
203 boolean isCheckSchema();
204
205
206
207 /**
208 * Sets the "check-schema" property.
209 * <p>
210 * Indicates whether schema enforcement is active.
211 * <p>
212 * When schema enforcement is activated, the Directory Server
213 * ensures that all operations result in entries are valid according
214 * to the defined server schema. It is strongly recommended that this
215 * option be left enabled to prevent the inadvertent addition of
216 * invalid data into the server.
217 *
218 * @param value The value of the "check-schema" property.
219 * @throws IllegalPropertyValueException
220 * If the new value is invalid.
221 */
222 void setCheckSchema(Boolean value) throws IllegalPropertyValueException;
223
224
225
226 /**
227 * Gets the "default-password-policy" property.
228 * <p>
229 * Specifies the name of the password policy that is in effect for
230 * users whose entries do not specify an alternate password policy
231 * (either via a real or virtual attribute).
232 *
233 * @return Returns the value of the "default-password-policy" property.
234 */
235 String getDefaultPasswordPolicy();
236
237
238
239 /**
240 * Sets the "default-password-policy" property.
241 * <p>
242 * Specifies the name of the password policy that is in effect for
243 * users whose entries do not specify an alternate password policy
244 * (either via a real or virtual attribute).
245 *
246 * @param value The value of the "default-password-policy" property.
247 * @throws IllegalPropertyValueException
248 * If the new value is invalid.
249 */
250 void setDefaultPasswordPolicy(String value) throws IllegalPropertyValueException;
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 IllegalPropertyValueException
280 * If one or more of the new values are invalid.
281 */
282 void setDisabledPrivilege(Collection<DisabledPrivilege> values) throws IllegalPropertyValueException;
283
284
285
286 /**
287 * Gets the "entry-cache-preload" property.
288 * <p>
289 * Indicates whether or not to preload the entry cache on startup.
290 *
291 * @return Returns the value of the "entry-cache-preload" property.
292 */
293 boolean isEntryCachePreload();
294
295
296
297 /**
298 * Sets the "entry-cache-preload" property.
299 * <p>
300 * Indicates whether or not to preload the entry cache on startup.
301 *
302 * @param value The value of the "entry-cache-preload" property.
303 * @throws IllegalPropertyValueException
304 * If the new value is invalid.
305 */
306 void setEntryCachePreload(Boolean value) throws IllegalPropertyValueException;
307
308
309
310 /**
311 * Gets the "etime-resolution" property.
312 * <p>
313 * Specifies the resolution to use for operation elapsed processing
314 * time (etime) measurements.
315 *
316 * @return Returns the value of the "etime-resolution" property.
317 */
318 EtimeResolution getEtimeResolution();
319
320
321
322 /**
323 * Sets the "etime-resolution" property.
324 * <p>
325 * Specifies the resolution to use for operation elapsed processing
326 * time (etime) measurements.
327 *
328 * @param value The value of the "etime-resolution" property.
329 * @throws IllegalPropertyValueException
330 * If the new value is invalid.
331 */
332 void setEtimeResolution(EtimeResolution value) throws IllegalPropertyValueException;
333
334
335
336 /**
337 * Gets the "idle-time-limit" property.
338 * <p>
339 * Specifies the maximum length of time that a client connection may
340 * remain established since its last completed operation.
341 * <p>
342 * A value of "0 seconds" indicates that no idle time limit is
343 * enforced.
344 *
345 * @return Returns the value of the "idle-time-limit" property.
346 */
347 long getIdleTimeLimit();
348
349
350
351 /**
352 * Sets the "idle-time-limit" property.
353 * <p>
354 * Specifies the maximum length of time that a client connection may
355 * remain established since its last completed operation.
356 * <p>
357 * A value of "0 seconds" indicates that no idle time limit is
358 * enforced.
359 *
360 * @param value The value of the "idle-time-limit" property.
361 * @throws IllegalPropertyValueException
362 * If the new value is invalid.
363 */
364 void setIdleTimeLimit(Long value) throws IllegalPropertyValueException;
365
366
367
368 /**
369 * Gets the "invalid-attribute-syntax-behavior" property.
370 * <p>
371 * Specifies how the Directory Server should handle operations
372 * whenever an attribute value violates the associated attribute
373 * syntax.
374 *
375 * @return Returns the value of the "invalid-attribute-syntax-behavior" property.
376 */
377 InvalidAttributeSyntaxBehavior getInvalidAttributeSyntaxBehavior();
378
379
380
381 /**
382 * Sets the "invalid-attribute-syntax-behavior" property.
383 * <p>
384 * Specifies how the Directory Server should handle operations
385 * whenever an attribute value violates the associated attribute
386 * syntax.
387 *
388 * @param value The value of the "invalid-attribute-syntax-behavior" property.
389 * @throws IllegalPropertyValueException
390 * If the new value is invalid.
391 */
392 void setInvalidAttributeSyntaxBehavior(InvalidAttributeSyntaxBehavior value) throws IllegalPropertyValueException;
393
394
395
396 /**
397 * Gets the "lookthrough-limit" property.
398 * <p>
399 * Specifies the maximum number of entries that the Directory Server
400 * should "look through" in the course of processing a search
401 * request.
402 * <p>
403 * This includes any entry that the server must examine in the
404 * course of processing the request, regardless of whether it
405 * actually matches the search criteria. A value of 0 indicates that
406 * no lookthrough limit is enforced. Note that this is the default
407 * server-wide limit, but it may be overridden on a per-user basis
408 * using the ds-rlim-lookthrough-limit operational attribute.
409 *
410 * @return Returns the value of the "lookthrough-limit" property.
411 */
412 int getLookthroughLimit();
413
414
415
416 /**
417 * Sets the "lookthrough-limit" property.
418 * <p>
419 * Specifies the maximum number of entries that the Directory Server
420 * should "look through" in the course of processing a search
421 * request.
422 * <p>
423 * This includes any entry that the server must examine in the
424 * course of processing the request, regardless of whether it
425 * actually matches the search criteria. A value of 0 indicates that
426 * no lookthrough limit is enforced. Note that this is the default
427 * server-wide limit, but it may be overridden on a per-user basis
428 * using the ds-rlim-lookthrough-limit operational attribute.
429 *
430 * @param value The value of the "lookthrough-limit" property.
431 * @throws IllegalPropertyValueException
432 * If the new value is invalid.
433 */
434 void setLookthroughLimit(Integer value) throws IllegalPropertyValueException;
435
436
437
438 /**
439 * Gets the "notify-abandoned-operations" property.
440 * <p>
441 * Indicates whether the Directory Server should send a response to
442 * any operation that is interrupted via an abandon request.
443 * <p>
444 * The LDAP specification states that abandoned operations should
445 * not receive any response, but this may cause problems with client
446 * applications that always expect to receive a response to each
447 * request.
448 *
449 * @return Returns the value of the "notify-abandoned-operations" property.
450 */
451 boolean isNotifyAbandonedOperations();
452
453
454
455 /**
456 * Sets the "notify-abandoned-operations" property.
457 * <p>
458 * Indicates whether the Directory Server should send a response to
459 * any operation that is interrupted via an abandon request.
460 * <p>
461 * The LDAP specification states that abandoned operations should
462 * not receive any response, but this may cause problems with client
463 * applications that always expect to receive a response to each
464 * request.
465 *
466 * @param value The value of the "notify-abandoned-operations" property.
467 * @throws IllegalPropertyValueException
468 * If the new value is invalid.
469 */
470 void setNotifyAbandonedOperations(Boolean value) throws IllegalPropertyValueException;
471
472
473
474 /**
475 * Gets the "proxied-authorization-identity-mapper" property.
476 * <p>
477 * Specifies the name of the identity mapper to map authorization ID
478 * values (using the "u:" form) provided in the proxied authorization
479 * control to the corresponding user entry.
480 *
481 * @return Returns the value of the "proxied-authorization-identity-mapper" property.
482 */
483 String getProxiedAuthorizationIdentityMapper();
484
485
486
487 /**
488 * Sets the "proxied-authorization-identity-mapper" property.
489 * <p>
490 * Specifies the name of the identity mapper to map authorization ID
491 * values (using the "u:" form) provided in the proxied authorization
492 * control to the corresponding user entry.
493 *
494 * @param value The value of the "proxied-authorization-identity-mapper" property.
495 * @throws IllegalPropertyValueException
496 * If the new value is invalid.
497 */
498 void setProxiedAuthorizationIdentityMapper(String value) throws IllegalPropertyValueException;
499
500
501
502 /**
503 * Gets the "reject-unauthenticated-requests" property.
504 * <p>
505 * Indicates whether the Directory Server should reject any request
506 * (other than bind or StartTLS requests) received from a client that
507 * has not yet been authenticated, whose last authentication attempt
508 * was unsuccessful, or whose last authentication attempt used
509 * anonymous authentication.
510 *
511 * @return Returns the value of the "reject-unauthenticated-requests" property.
512 */
513 boolean isRejectUnauthenticatedRequests();
514
515
516
517 /**
518 * Sets the "reject-unauthenticated-requests" property.
519 * <p>
520 * Indicates whether the Directory Server should reject any request
521 * (other than bind or StartTLS requests) received from a client that
522 * has not yet been authenticated, whose last authentication attempt
523 * was unsuccessful, or whose last authentication attempt used
524 * anonymous authentication.
525 *
526 * @param value The value of the "reject-unauthenticated-requests" property.
527 * @throws IllegalPropertyValueException
528 * If the new value is invalid.
529 */
530 void setRejectUnauthenticatedRequests(Boolean value) throws IllegalPropertyValueException;
531
532
533
534 /**
535 * Gets the "return-bind-error-messages" property.
536 * <p>
537 * Indicates whether responses for failed bind operations should
538 * include a message string providing the reason for the
539 * authentication failure.
540 * <p>
541 * Note that these messages may include information that could
542 * potentially be used by an attacker. If this option is disabled,
543 * then these messages appears only in the server's access log.
544 *
545 * @return Returns the value of the "return-bind-error-messages" property.
546 */
547 boolean isReturnBindErrorMessages();
548
549
550
551 /**
552 * Sets the "return-bind-error-messages" property.
553 * <p>
554 * Indicates whether responses for failed bind operations should
555 * include a message string providing the reason for the
556 * authentication failure.
557 * <p>
558 * Note that these messages may include information that could
559 * potentially be used by an attacker. If this option is disabled,
560 * then these messages appears only in the server's access log.
561 *
562 * @param value The value of the "return-bind-error-messages" property.
563 * @throws IllegalPropertyValueException
564 * If the new value is invalid.
565 */
566 void setReturnBindErrorMessages(Boolean value) throws IllegalPropertyValueException;
567
568
569
570 /**
571 * Gets the "save-config-on-successful-startup" property.
572 * <p>
573 * Indicates whether the Directory Server should save a copy of its
574 * configuration whenever the startup process completes successfully.
575 * <p>
576 * This ensures that the server provides a "last known good"
577 * configuration, which can be used as a reference (or copied into
578 * the active config) if the server fails to start with the current
579 * "active" configuration.
580 *
581 * @return Returns the value of the "save-config-on-successful-startup" property.
582 */
583 boolean isSaveConfigOnSuccessfulStartup();
584
585
586
587 /**
588 * Sets the "save-config-on-successful-startup" property.
589 * <p>
590 * Indicates whether the Directory Server should save a copy of its
591 * configuration whenever the startup process completes successfully.
592 * <p>
593 * This ensures that the server provides a "last known good"
594 * configuration, which can be used as a reference (or copied into
595 * the active config) if the server fails to start with the current
596 * "active" configuration.
597 *
598 * @param value The value of the "save-config-on-successful-startup" property.
599 * @throws IllegalPropertyValueException
600 * If the new value is invalid.
601 */
602 void setSaveConfigOnSuccessfulStartup(Boolean value) throws IllegalPropertyValueException;
603
604
605
606 /**
607 * Gets the "server-error-result-code" property.
608 * <p>
609 * Specifies the numeric value of the result code when request
610 * processing fails due to an internal server error.
611 *
612 * @return Returns the value of the "server-error-result-code" property.
613 */
614 int getServerErrorResultCode();
615
616
617
618 /**
619 * Sets the "server-error-result-code" property.
620 * <p>
621 * Specifies the numeric value of the result code when request
622 * processing fails due to an internal server error.
623 *
624 * @param value The value of the "server-error-result-code" property.
625 * @throws IllegalPropertyValueException
626 * If the new value is invalid.
627 */
628 void setServerErrorResultCode(Integer value) throws IllegalPropertyValueException;
629
630
631
632 /**
633 * Gets the "single-structural-objectclass-behavior" property.
634 * <p>
635 * Specifies how the Directory Server should handle operations an
636 * entry does not contain a structural object class or contains
637 * multiple structural classes.
638 *
639 * @return Returns the value of the "single-structural-objectclass-behavior" property.
640 */
641 SingleStructuralObjectclassBehavior getSingleStructuralObjectclassBehavior();
642
643
644
645 /**
646 * Sets the "single-structural-objectclass-behavior" property.
647 * <p>
648 * Specifies how the Directory Server should handle operations an
649 * entry does not contain a structural object class or contains
650 * multiple structural classes.
651 *
652 * @param value The value of the "single-structural-objectclass-behavior" property.
653 * @throws IllegalPropertyValueException
654 * If the new value is invalid.
655 */
656 void setSingleStructuralObjectclassBehavior(SingleStructuralObjectclassBehavior value) throws IllegalPropertyValueException;
657
658
659
660 /**
661 * Gets the "size-limit" property.
662 * <p>
663 * Specifies the maximum number of entries that the Directory Server
664 * should return to the client durin a search operation.
665 * <p>
666 * A value of 0 indicates that no size limit is enforced. Note that
667 * this is the default server-wide limit, but it may be overridden on
668 * a per-user basis using the ds-rlim-size-limit operational
669 * attribute.
670 *
671 * @return Returns the value of the "size-limit" property.
672 */
673 int getSizeLimit();
674
675
676
677 /**
678 * Sets the "size-limit" property.
679 * <p>
680 * Specifies the maximum number of entries that the Directory Server
681 * should return to the client durin a search operation.
682 * <p>
683 * A value of 0 indicates that no size limit is enforced. Note that
684 * this is the default server-wide limit, but it may be overridden on
685 * a per-user basis using the ds-rlim-size-limit operational
686 * attribute.
687 *
688 * @param value The value of the "size-limit" property.
689 * @throws IllegalPropertyValueException
690 * If the new value is invalid.
691 */
692 void setSizeLimit(Integer value) throws IllegalPropertyValueException;
693
694
695
696 /**
697 * Gets the "smtp-server" property.
698 * <p>
699 * Specifies the address (and optional port number) for a mail
700 * server that can be used to send email messages via SMTP.
701 * <p>
702 * It may be an IP address or resolvable hostname, optionally
703 * followed by a colon and a port number.
704 *
705 * @return Returns the values of the "smtp-server" property.
706 */
707 SortedSet<String> getSMTPServer();
708
709
710
711 /**
712 * Sets the "smtp-server" property.
713 * <p>
714 * Specifies the address (and optional port number) for a mail
715 * server that can be used to send email messages via SMTP.
716 * <p>
717 * It may be an IP address or resolvable hostname, optionally
718 * followed by a colon and a port number.
719 *
720 * @param values The values of the "smtp-server" property.
721 * @throws IllegalPropertyValueException
722 * If one or more of the new values are invalid.
723 */
724 void setSMTPServer(Collection<String> values) throws IllegalPropertyValueException;
725
726
727
728 /**
729 * Gets the "time-limit" property.
730 * <p>
731 * Specifies the maximum length of time that the Directory Server
732 * should spend processing a search operation.
733 * <p>
734 * A value of 0 seconds indicates that no time limit is enforced.
735 * Note that this is the default server-wide time limit, but it may
736 * be overridden on a per-user basis using the ds-rlim-time-limit
737 * operational attribute.
738 *
739 * @return Returns the value of the "time-limit" property.
740 */
741 long getTimeLimit();
742
743
744
745 /**
746 * Sets the "time-limit" property.
747 * <p>
748 * Specifies the maximum length of time that the Directory Server
749 * should spend processing a search operation.
750 * <p>
751 * A value of 0 seconds indicates that no time limit is enforced.
752 * Note that this is the default server-wide time limit, but it may
753 * be overridden on a per-user basis using the ds-rlim-time-limit
754 * operational attribute.
755 *
756 * @param value The value of the "time-limit" property.
757 * @throws IllegalPropertyValueException
758 * If the new value is invalid.
759 */
760 void setTimeLimit(Long value) throws IllegalPropertyValueException;
761
762
763
764 /**
765 * Gets the "workflow-configuration-mode" property.
766 * <p>
767 * Specifies the workflow configuration mode (auto vs. manual).
768 *
769 * @return Returns the value of the "workflow-configuration-mode" property.
770 */
771 WorkflowConfigurationMode getWorkflowConfigurationMode();
772
773
774
775 /**
776 * Sets the "workflow-configuration-mode" property.
777 * <p>
778 * Specifies the workflow configuration mode (auto vs. manual).
779 *
780 * @param value The value of the "workflow-configuration-mode" property.
781 * @throws IllegalPropertyValueException
782 * If the new value is invalid.
783 */
784 void setWorkflowConfigurationMode(WorkflowConfigurationMode value) throws IllegalPropertyValueException;
785
786
787
788 /**
789 * Gets the "writability-mode" property.
790 * <p>
791 * Specifies the kinds of write operations the Directory Server can
792 * process.
793 *
794 * @return Returns the value of the "writability-mode" property.
795 */
796 WritabilityMode getWritabilityMode();
797
798
799
800 /**
801 * Sets the "writability-mode" property.
802 * <p>
803 * Specifies the kinds of write operations the Directory Server can
804 * process.
805 *
806 * @param value The value of the "writability-mode" property.
807 * @throws IllegalPropertyValueException
808 * If the new value is invalid.
809 */
810 void setWritabilityMode(WritabilityMode value) throws IllegalPropertyValueException;
811
812 }