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.net.InetAddress; 021import java.util.Collection; 022import java.util.SortedSet; 023import org.opends.server.admin.ConfigurationClient; 024import org.opends.server.admin.ManagedObjectDefinition; 025import org.opends.server.admin.PropertyException; 026import org.opends.server.admin.std.server.AdministrationConnectorCfg; 027 028 029 030/** 031 * A client-side interface for reading and modifying Administration 032 * Connector settings. 033 * <p> 034 * The Administration Connector is used to interact with 035 * administration tools using LDAP. 036 */ 037public interface AdministrationConnectorCfgClient extends ConfigurationClient { 038 039 /** 040 * Get the configuration definition associated with this Administration Connector. 041 * 042 * @return Returns the configuration definition associated with this Administration Connector. 043 */ 044 ManagedObjectDefinition<? extends AdministrationConnectorCfgClient, ? extends AdministrationConnectorCfg> definition(); 045 046 047 048 /** 049 * Gets the "key-manager-provider" property. 050 * <p> 051 * Specifies the name of the key manager that is used with the 052 * Administration Connector . 053 * 054 * @return Returns the value of the "key-manager-provider" property. 055 */ 056 String getKeyManagerProvider(); 057 058 059 060 /** 061 * Sets the "key-manager-provider" property. 062 * <p> 063 * Specifies the name of the key manager that is used with the 064 * Administration Connector . 065 * 066 * @param value The value of the "key-manager-provider" property. 067 * @throws PropertyException 068 * If the new value is invalid. 069 */ 070 void setKeyManagerProvider(String value) throws PropertyException; 071 072 073 074 /** 075 * Gets the "listen-address" property. 076 * <p> 077 * Specifies the address or set of addresses on which this 078 * Administration Connector should listen for connections from LDAP 079 * clients. 080 * <p> 081 * Multiple addresses may be provided as separate values for this 082 * attribute. If no values are provided, then the Administration 083 * Connector listens on all interfaces. 084 * 085 * @return Returns the values of the "listen-address" property. 086 */ 087 SortedSet<InetAddress> getListenAddress(); 088 089 090 091 /** 092 * Sets the "listen-address" property. 093 * <p> 094 * Specifies the address or set of addresses on which this 095 * Administration Connector should listen for connections from LDAP 096 * clients. 097 * <p> 098 * Multiple addresses may be provided as separate values for this 099 * attribute. If no values are provided, then the Administration 100 * Connector listens on all interfaces. 101 * 102 * @param values The values of the "listen-address" property. 103 * @throws PropertyException 104 * If one or more of the new values are invalid. 105 */ 106 void setListenAddress(Collection<InetAddress> values) throws PropertyException; 107 108 109 110 /** 111 * Gets the "listen-port" property. 112 * <p> 113 * Specifies the port number on which the Administration Connector 114 * will listen for connections from clients. 115 * <p> 116 * Only a single port number may be provided. 117 * 118 * @return Returns the value of the "listen-port" property. 119 */ 120 Integer getListenPort(); 121 122 123 124 /** 125 * Sets the "listen-port" property. 126 * <p> 127 * Specifies the port number on which the Administration Connector 128 * will listen for connections from clients. 129 * <p> 130 * Only a single port number may be provided. 131 * 132 * @param value The value of the "listen-port" property. 133 * @throws PropertyException 134 * If the new value is invalid. 135 */ 136 void setListenPort(int value) throws PropertyException; 137 138 139 140 /** 141 * Gets the "ssl-cert-nickname" property. 142 * <p> 143 * Specifies the nicknames (also called the aliases) of the 144 * certificates that the Administration Connector should use when 145 * performing SSL communication. The property can be used multiple 146 * times (referencing different nicknames) when an RSA, a DSA, and an 147 * ECC based server certificate is used in parallel. 148 * 149 * @return Returns the values of the "ssl-cert-nickname" property. 150 */ 151 SortedSet<String> getSSLCertNickname(); 152 153 154 155 /** 156 * Sets the "ssl-cert-nickname" property. 157 * <p> 158 * Specifies the nicknames (also called the aliases) of the 159 * certificates that the Administration Connector should use when 160 * performing SSL communication. The property can be used multiple 161 * times (referencing different nicknames) when an RSA, a DSA, and an 162 * ECC based server certificate is used in parallel. 163 * 164 * @param values The values of the "ssl-cert-nickname" property. 165 * @throws PropertyException 166 * If one or more of the new values are invalid. 167 */ 168 void setSSLCertNickname(Collection<String> values) throws PropertyException; 169 170 171 172 /** 173 * Gets the "ssl-cipher-suite" property. 174 * <p> 175 * Specifies the names of the SSL cipher suites that are allowed for 176 * use in SSL communication. 177 * 178 * @return Returns the values of the "ssl-cipher-suite" property. 179 */ 180 SortedSet<String> getSSLCipherSuite(); 181 182 183 184 /** 185 * Sets the "ssl-cipher-suite" property. 186 * <p> 187 * Specifies the names of the SSL cipher suites that are allowed for 188 * use in SSL communication. 189 * 190 * @param values The values of the "ssl-cipher-suite" property. 191 * @throws PropertyException 192 * If one or more of the new values are invalid. 193 */ 194 void setSSLCipherSuite(Collection<String> values) throws PropertyException; 195 196 197 198 /** 199 * Gets the "ssl-protocol" property. 200 * <p> 201 * Specifies the names of the SSL protocols that are allowed for use 202 * in SSL or StartTLS communication. 203 * 204 * @return Returns the values of the "ssl-protocol" property. 205 */ 206 SortedSet<String> getSSLProtocol(); 207 208 209 210 /** 211 * Sets the "ssl-protocol" property. 212 * <p> 213 * Specifies the names of the SSL protocols that are allowed for use 214 * in SSL or StartTLS communication. 215 * 216 * @param values The values of the "ssl-protocol" property. 217 * @throws PropertyException 218 * If one or more of the new values are invalid. 219 */ 220 void setSSLProtocol(Collection<String> values) throws PropertyException; 221 222 223 224 /** 225 * Gets the "trust-manager-provider" property. 226 * <p> 227 * Specifies the name of the trust manager that is used with the 228 * Administration Connector . 229 * 230 * @return Returns the value of the "trust-manager-provider" property. 231 */ 232 String getTrustManagerProvider(); 233 234 235 236 /** 237 * Sets the "trust-manager-provider" property. 238 * <p> 239 * Specifies the name of the trust manager that is used with the 240 * Administration Connector . 241 * 242 * @param value The value of the "trust-manager-provider" property. 243 * @throws PropertyException 244 * If the new value is invalid. 245 */ 246 void setTrustManagerProvider(String value) throws PropertyException; 247 248}