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 org.opends.server.admin.IllegalPropertyValueException;
032 import org.opends.server.admin.ManagedObjectDefinition;
033 import org.opends.server.admin.std.meta.BackendCfgDefn.WritabilityMode;
034 import org.opends.server.admin.std.server.TrustStoreBackendCfg;
035
036
037
038 /**
039 * A client-side interface for reading and modifying Trust Store
040 * Backend settings.
041 * <p>
042 * The Trust Store Backend provides an LDAP view of a file-based trust
043 * store. It is used by the administrative cryptographic framework.
044 */
045 public interface TrustStoreBackendCfgClient extends BackendCfgClient {
046
047 /**
048 * Get the configuration definition associated with this Trust Store Backend.
049 *
050 * @return Returns the configuration definition associated with this Trust Store Backend.
051 */
052 ManagedObjectDefinition<? extends TrustStoreBackendCfgClient, ? extends TrustStoreBackendCfg> definition();
053
054
055
056 /**
057 * Gets the "java-class" property.
058 * <p>
059 * Specifies the fully-qualified name of the Java class that
060 * provides the backend implementation.
061 *
062 * @return Returns the value of the "java-class" property.
063 */
064 String getJavaClass();
065
066
067
068 /**
069 * Sets the "java-class" property.
070 * <p>
071 * Specifies the fully-qualified name of the Java class that
072 * provides the backend implementation.
073 *
074 * @param value The value of the "java-class" property.
075 * @throws IllegalPropertyValueException
076 * If the new value is invalid.
077 */
078 void setJavaClass(String value) throws IllegalPropertyValueException;
079
080
081
082 /**
083 * Gets the "trust-store-file" property.
084 * <p>
085 * Specifies the path to the file that stores the trust information.
086 * <p>
087 * It may be an absolute path, or a path that is relative to the
088 * OpenDS Directory Server instance root.
089 *
090 * @return Returns the value of the "trust-store-file" property.
091 */
092 String getTrustStoreFile();
093
094
095
096 /**
097 * Sets the "trust-store-file" property.
098 * <p>
099 * Specifies the path to the file that stores the trust information.
100 * <p>
101 * It may be an absolute path, or a path that is relative to the
102 * OpenDS Directory Server instance root.
103 *
104 * @param value The value of the "trust-store-file" property.
105 * @throws IllegalPropertyValueException
106 * If the new value is invalid.
107 */
108 void setTrustStoreFile(String value) throws IllegalPropertyValueException;
109
110
111
112 /**
113 * Gets the "trust-store-pin" property.
114 * <p>
115 * Specifies the clear-text PIN needed to access the Trust Store
116 * Backend .
117 *
118 * @return Returns the value of the "trust-store-pin" property.
119 */
120 String getTrustStorePin();
121
122
123
124 /**
125 * Sets the "trust-store-pin" property.
126 * <p>
127 * Specifies the clear-text PIN needed to access the Trust Store
128 * Backend .
129 *
130 * @param value The value of the "trust-store-pin" property.
131 * @throws IllegalPropertyValueException
132 * If the new value is invalid.
133 */
134 void setTrustStorePin(String value) throws IllegalPropertyValueException;
135
136
137
138 /**
139 * Gets the "trust-store-pin-environment-variable" property.
140 * <p>
141 * Specifies the name of the environment variable that contains the
142 * clear-text PIN needed to access the Trust Store Backend .
143 *
144 * @return Returns the value of the "trust-store-pin-environment-variable" property.
145 */
146 String getTrustStorePinEnvironmentVariable();
147
148
149
150 /**
151 * Sets the "trust-store-pin-environment-variable" property.
152 * <p>
153 * Specifies the name of the environment variable that contains the
154 * clear-text PIN needed to access the Trust Store Backend .
155 *
156 * @param value The value of the "trust-store-pin-environment-variable" property.
157 * @throws IllegalPropertyValueException
158 * If the new value is invalid.
159 */
160 void setTrustStorePinEnvironmentVariable(String value) throws IllegalPropertyValueException;
161
162
163
164 /**
165 * Gets the "trust-store-pin-file" property.
166 * <p>
167 * Specifies the path to the text file whose only contents should be
168 * a single line containing the clear-text PIN needed to access the
169 * Trust Store Backend .
170 *
171 * @return Returns the value of the "trust-store-pin-file" property.
172 */
173 String getTrustStorePinFile();
174
175
176
177 /**
178 * Sets the "trust-store-pin-file" property.
179 * <p>
180 * Specifies the path to the text file whose only contents should be
181 * a single line containing the clear-text PIN needed to access the
182 * Trust Store Backend .
183 *
184 * @param value The value of the "trust-store-pin-file" property.
185 * @throws IllegalPropertyValueException
186 * If the new value is invalid.
187 */
188 void setTrustStorePinFile(String value) throws IllegalPropertyValueException;
189
190
191
192 /**
193 * Gets the "trust-store-pin-property" property.
194 * <p>
195 * Specifies the name of the Java property that contains the
196 * clear-text PIN needed to access the Trust Store Backend .
197 *
198 * @return Returns the value of the "trust-store-pin-property" property.
199 */
200 String getTrustStorePinProperty();
201
202
203
204 /**
205 * Sets the "trust-store-pin-property" property.
206 * <p>
207 * Specifies the name of the Java property that contains the
208 * clear-text PIN needed to access the Trust Store Backend .
209 *
210 * @param value The value of the "trust-store-pin-property" property.
211 * @throws IllegalPropertyValueException
212 * If the new value is invalid.
213 */
214 void setTrustStorePinProperty(String value) throws IllegalPropertyValueException;
215
216
217
218 /**
219 * Gets the "trust-store-type" property.
220 * <p>
221 * Specifies the format for the data in the key store file.
222 * <p>
223 * Valid values should always include 'JKS' and 'PKCS12', but
224 * different implementations may allow other values as well.
225 *
226 * @return Returns the value of the "trust-store-type" property.
227 */
228 String getTrustStoreType();
229
230
231
232 /**
233 * Sets the "trust-store-type" property.
234 * <p>
235 * Specifies the format for the data in the key store file.
236 * <p>
237 * Valid values should always include 'JKS' and 'PKCS12', but
238 * different implementations may allow other values as well.
239 *
240 * @param value The value of the "trust-store-type" property.
241 * @throws IllegalPropertyValueException
242 * If the new value is invalid.
243 */
244 void setTrustStoreType(String value) throws IllegalPropertyValueException;
245
246
247
248 /**
249 * Gets the "writability-mode" property.
250 * <p>
251 * Specifies the behavior that the backend should use when
252 * processing write operations.
253 *
254 * @return Returns the value of the "writability-mode" property.
255 */
256 WritabilityMode getWritabilityMode();
257
258
259
260 /**
261 * Sets the "writability-mode" property.
262 * <p>
263 * Specifies the behavior that the backend should use when
264 * processing write operations.
265 *
266 * @param value The value of the "writability-mode" property.
267 * @throws IllegalPropertyValueException
268 * If the new value is invalid.
269 */
270 void setWritabilityMode(WritabilityMode value) throws IllegalPropertyValueException;
271
272 }