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.server.RootDSEBackendCfg;
037 import org.opends.server.types.DN;
038
039
040
041 /**
042 * A client-side interface for reading and modifying Root DSE Backend
043 * settings.
044 * <p>
045 * The Root DSE Backend contains the Directory Server root DSE.
046 */
047 public interface RootDSEBackendCfgClient extends ConfigurationClient {
048
049 /**
050 * Get the configuration definition associated with this Root DSE Backend.
051 *
052 * @return Returns the configuration definition associated with this Root DSE Backend.
053 */
054 ManagedObjectDefinition<? extends RootDSEBackendCfgClient, ? extends RootDSEBackendCfg> definition();
055
056
057
058 /**
059 * Gets the "show-all-attributes" property.
060 * <p>
061 * Indicates whether all attributes in the root DSE are to be
062 * treated like user attributes (and therefore returned to clients by
063 * default) regardless of the Directory Server schema configuration.
064 *
065 * @return Returns the value of the "show-all-attributes" property.
066 */
067 Boolean isShowAllAttributes();
068
069
070
071 /**
072 * Sets the "show-all-attributes" property.
073 * <p>
074 * Indicates whether all attributes in the root DSE are to be
075 * treated like user attributes (and therefore returned to clients by
076 * default) regardless of the Directory Server schema configuration.
077 *
078 * @param value The value of the "show-all-attributes" property.
079 * @throws IllegalPropertyValueException
080 * If the new value is invalid.
081 */
082 void setShowAllAttributes(boolean value) throws IllegalPropertyValueException;
083
084
085
086 /**
087 * Gets the "subordinate-base-dn" property.
088 * <p>
089 * Specifies the set of base DNs used for singleLevel, wholeSubtree,
090 * and subordinateSubtree searches based at the root DSE.
091 *
092 * @return Returns the values of the "subordinate-base-dn" property.
093 */
094 SortedSet<DN> getSubordinateBaseDN();
095
096
097
098 /**
099 * Sets the "subordinate-base-dn" property.
100 * <p>
101 * Specifies the set of base DNs used for singleLevel, wholeSubtree,
102 * and subordinateSubtree searches based at the root DSE.
103 *
104 * @param values The values of the "subordinate-base-dn" property.
105 * @throws IllegalPropertyValueException
106 * If one or more of the new values are invalid.
107 */
108 void setSubordinateBaseDN(Collection<DN> values) throws IllegalPropertyValueException;
109
110 }