1*408a4873SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3*408a4873SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4*408a4873SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5*408a4873SAndrew Rist * distributed with this work for additional information
6*408a4873SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7*408a4873SAndrew Rist * to you under the Apache License, Version 2.0 (the
8*408a4873SAndrew Rist * "License"); you may not use this file except in compliance
9*408a4873SAndrew Rist * with the License.  You may obtain a copy of the License at
10*408a4873SAndrew Rist *
11*408a4873SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12*408a4873SAndrew Rist *
13*408a4873SAndrew Rist * Unless required by applicable law or agreed to in writing,
14*408a4873SAndrew Rist * software distributed under the License is distributed on an
15*408a4873SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*408a4873SAndrew Rist * KIND, either express or implied.  See the License for the
17*408a4873SAndrew Rist * specific language governing permissions and limitations
18*408a4873SAndrew Rist * under the License.
19*408a4873SAndrew Rist *
20*408a4873SAndrew Rist *************************************************************/
21*408a4873SAndrew Rist
22*408a4873SAndrew Rist
23cdf0e10cSrcweir#ifndef __com_sun_star_registry_XRegistryKey_idl__
24cdf0e10cSrcweir#define __com_sun_star_registry_XRegistryKey_idl__
25cdf0e10cSrcweir
26cdf0e10cSrcweir#ifndef __com_sun_star_uno_XInterface_idl__
27cdf0e10cSrcweir#include <com/sun/star/uno/XInterface.idl>
28cdf0e10cSrcweir#endif
29cdf0e10cSrcweir
30cdf0e10cSrcweir#ifndef __com_sun_star_registry_InvalidRegistryException_idl__
31cdf0e10cSrcweir#include <com/sun/star/registry/InvalidRegistryException.idl>
32cdf0e10cSrcweir#endif
33cdf0e10cSrcweir
34cdf0e10cSrcweir#ifndef __com_sun_star_registry_RegistryKeyType_idl__
35cdf0e10cSrcweir#include <com/sun/star/registry/RegistryKeyType.idl>
36cdf0e10cSrcweir#endif
37cdf0e10cSrcweir
38cdf0e10cSrcweir#ifndef __com_sun_star_registry_RegistryValueType_idl__
39cdf0e10cSrcweir#include <com/sun/star/registry/RegistryValueType.idl>
40cdf0e10cSrcweir#endif
41cdf0e10cSrcweir
42cdf0e10cSrcweir#ifndef __com_sun_star_registry_InvalidValueException_idl__
43cdf0e10cSrcweir#include <com/sun/star/registry/InvalidValueException.idl>
44cdf0e10cSrcweir#endif
45cdf0e10cSrcweir
46cdf0e10cSrcweir
47cdf0e10cSrcweir//=============================================================================
48cdf0e10cSrcweir
49cdf0e10cSrcweirmodule com { module sun { module star { module registry {
50cdf0e10cSrcweir
51cdf0e10cSrcweir//=============================================================================
52cdf0e10cSrcweir/** makes structural information (except regarding tree structures)
53cdf0e10cSrcweir	of a single registry key accessible.
54cdf0e10cSrcweir
55cdf0e10cSrcweir	<p>This is the main interface for registry keys.<p>
56cdf0e10cSrcweir
57cdf0e10cSrcweir	@see XSimpleRegistry
58cdf0e10cSrcweir*/
59cdf0e10cSrcweirpublished interface XRegistryKey: com::sun::star::uno::XInterface
60cdf0e10cSrcweir{
61cdf0e10cSrcweir	//---------------------------------------------------------------------
62cdf0e10cSrcweir	/** This is the key of the entry relative to its parent.<p>
63cdf0e10cSrcweir
64cdf0e10cSrcweir		<p>The access path starts with the root "/" and all parent
65cdf0e10cSrcweir		entry names are delimited with slashes "/" too, like in a
66cdf0e10cSrcweir		UNIX (R) file system. Slashes which are part of single names
67cdf0e10cSrcweir		are represented as hexadecimals preceded with a "%" like in
68cdf0e10cSrcweir		URL syntax.
69cdf0e10cSrcweir	 */
70cdf0e10cSrcweir	[readonly, attribute] string	KeyName;
71cdf0e10cSrcweir
72cdf0e10cSrcweir	//-------------------------------------------------------------------------
73cdf0e10cSrcweir	/** checks if the key can be overwritten.
74cdf0e10cSrcweir
75cdf0e10cSrcweir		@throws InvalidRegistryException
76cdf0e10cSrcweir		if the registry is not open.
77cdf0e10cSrcweir	*/
78cdf0e10cSrcweir	boolean isReadOnly()
79cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
80cdf0e10cSrcweir
81cdf0e10cSrcweir	//-------------------------------------------------------------------------
82cdf0e10cSrcweir	/** checks if the key points to an open valid key in the data-source.
83cdf0e10cSrcweir	*/
84cdf0e10cSrcweir	boolean isValid();
85cdf0e10cSrcweir
86cdf0e10cSrcweir	//-------------------------------------------------------------------------
87cdf0e10cSrcweir	/** @returns
88cdf0e10cSrcweir		the type of the specified key.
89cdf0e10cSrcweir
90cdf0e10cSrcweir		@param rKeyName
91cdf0e10cSrcweir		specifies the relative path from the current key to
92cdf0e10cSrcweir		the key of the type which will be returned.
93cdf0e10cSrcweir
94cdf0e10cSrcweir		@throws InvalidRegistryException
95cdf0e10cSrcweir		if the registry is not open.
96cdf0e10cSrcweir	*/
97cdf0e10cSrcweir	com::sun::star::registry::RegistryKeyType getKeyType( [in] string rKeyName )
98cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
99cdf0e10cSrcweir
100cdf0e10cSrcweir	//-------------------------------------------------------------------------
101cdf0e10cSrcweir	/** @returns
102cdf0e10cSrcweir		the type of the key value or NOT_DEFINED if the key has no value.
103cdf0e10cSrcweir
104cdf0e10cSrcweir		@throws InvalidRegistryException
105cdf0e10cSrcweir		if the registry is not open.
106cdf0e10cSrcweir	*/
107cdf0e10cSrcweir	com::sun::star::registry::RegistryValueType getValueType()
108cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
109cdf0e10cSrcweir
110cdf0e10cSrcweir	//-------------------------------------------------------------------------
111cdf0e10cSrcweir	/** @returns
112cdf0e10cSrcweir		a long value if the key contains one.
113cdf0e10cSrcweir
114cdf0e10cSrcweir		@throws InvalidRegistryException
115cdf0e10cSrcweir		if the registry is not open.
116cdf0e10cSrcweir
117cdf0e10cSrcweir		@throws InvalidValueException
118cdf0e10cSrcweir		if the value is not of type long.
119cdf0e10cSrcweir	*/
120cdf0e10cSrcweir	long getLongValue()
121cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException,
122cdf0e10cSrcweir					com::sun::star::registry::InvalidValueException );
123cdf0e10cSrcweir
124cdf0e10cSrcweir	//-------------------------------------------------------------------------
125cdf0e10cSrcweir	/** sets a long value to the key.
126cdf0e10cSrcweir
127cdf0e10cSrcweir		<p>If the key already has a value, the value will be
128cdf0e10cSrcweir		overridden.
129cdf0e10cSrcweir
130cdf0e10cSrcweir		@throws InvalidRegistryException
131cdf0e10cSrcweir		if the registry is not open.
132cdf0e10cSrcweir	*/
133cdf0e10cSrcweir	void setLongValue( [in] long value )
134cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
135cdf0e10cSrcweir
136cdf0e10cSrcweir	//-------------------------------------------------------------------------
137cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::getLongListValue
138cdf0e10cSrcweir	/** @returns
139cdf0e10cSrcweir		a sequence of longs if the key contains a long list value.
140cdf0e10cSrcweir
141cdf0e10cSrcweir	 	@throws InvalidRegistryException
142cdf0e10cSrcweir	 	if the registry is not open.
143cdf0e10cSrcweir
144cdf0e10cSrcweir	 	@throws InvalidValueException
145cdf0e10cSrcweir	 	if the actual value is not of type long list.
146cdf0e10cSrcweir	*/
147cdf0e10cSrcweir	sequence<long> getLongListValue()
148cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException,
149cdf0e10cSrcweir					com::sun::star::registry::InvalidValueException );
150cdf0e10cSrcweir
151cdf0e10cSrcweir	//-------------------------------------------------------------------------
152cdf0e10cSrcweir	/** sets a long list value to the key.
153cdf0e10cSrcweir
154cdf0e10cSrcweir		<p>If the key already has a value, the value will be
155cdf0e10cSrcweir		overridden.
156cdf0e10cSrcweir
157cdf0e10cSrcweir		@throws InvalidRegistryException
158cdf0e10cSrcweir		if the registry is not open.
159cdf0e10cSrcweir	*/
160cdf0e10cSrcweir	void setLongListValue( [in] sequence<long> seqValue )
161cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
162cdf0e10cSrcweir
163cdf0e10cSrcweir	//-------------------------------------------------------------------------
164cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::getAsciiValue
165cdf0e10cSrcweir	/** @returns
166cdf0e10cSrcweir		an ascii string value if the key contains one.
167cdf0e10cSrcweir
168cdf0e10cSrcweir	 	@throws InvalidRegistryException
169cdf0e10cSrcweir	 	if the registry is not open.
170cdf0e10cSrcweir
171cdf0e10cSrcweir	 	@throws InvalidValueException
172cdf0e10cSrcweir	 	if the actual value is not of type ascii.
173cdf0e10cSrcweir	*/
174cdf0e10cSrcweir	string getAsciiValue()
175cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException,
176cdf0e10cSrcweir					com::sun::star::registry::InvalidValueException );
177cdf0e10cSrcweir
178cdf0e10cSrcweir	//-------------------------------------------------------------------------
179cdf0e10cSrcweir	/** sets an ASCII string value to the key.
180cdf0e10cSrcweir
181cdf0e10cSrcweir		<p>The high byte of the string should be NULL.  If not, there
182cdf0e10cSrcweir		is no guarantee that the string will be correctly transported.
183cdf0e10cSrcweir		If the key already has a value, the value will be overridden.
184cdf0e10cSrcweir
185cdf0e10cSrcweir		@throws InvalidRegistryException
186cdf0e10cSrcweir		if the registry is not open.
187cdf0e10cSrcweir	*/
188cdf0e10cSrcweir	void setAsciiValue( [in] string value )
189cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
190cdf0e10cSrcweir
191cdf0e10cSrcweir	//-------------------------------------------------------------------------
192cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::getAsciiListValue
193cdf0e10cSrcweir	/** @returns
194cdf0e10cSrcweir		a sequence of ascii strings if the key contains an asci list value.
195cdf0e10cSrcweir
196cdf0e10cSrcweir	 	@throws InvalidRegistryException
197cdf0e10cSrcweir	 	if the registry is not open.
198cdf0e10cSrcweir
199cdf0e10cSrcweir	 	@throws InvalidValueException
200cdf0e10cSrcweir	 	if the actual value is not of type ascii list.
201cdf0e10cSrcweir	*/
202cdf0e10cSrcweir	sequence<string> getAsciiListValue()
203cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException,
204cdf0e10cSrcweir					com::sun::star::registry::InvalidValueException );
205cdf0e10cSrcweir
206cdf0e10cSrcweir	//-------------------------------------------------------------------------
207cdf0e10cSrcweir	/** sets an ASCII string list value to the key.
208cdf0e10cSrcweir
209cdf0e10cSrcweir		<p>The high byte of the string should be NULL. If not, there
210cdf0e10cSrcweir		is no guarantee that the string will be correctly transported.
211cdf0e10cSrcweir		If the key already has a value, the value will be overridden.
212cdf0e10cSrcweir
213cdf0e10cSrcweir		@throws InvalidRegistryException
214cdf0e10cSrcweir		if the registry is not open.
215cdf0e10cSrcweir	*/
216cdf0e10cSrcweir	void setAsciiListValue( [in] sequence<string> seqValue )
217cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
218cdf0e10cSrcweir
219cdf0e10cSrcweir	//-------------------------------------------------------------------------
220cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::getStringValue
221cdf0e10cSrcweir	/** @returns
222cdf0e10cSrcweir		a unicode string value if the key contains one.
223cdf0e10cSrcweir
224cdf0e10cSrcweir	 	@throws InvalidRegistryException
225cdf0e10cSrcweir	 	if the registry is not open.
226cdf0e10cSrcweir
227cdf0e10cSrcweir	 	@throws InvalidValueException
228cdf0e10cSrcweir	 	if the actual value is not of type string.
229cdf0e10cSrcweir	*/
230cdf0e10cSrcweir	string getStringValue()
231cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException,
232cdf0e10cSrcweir					com::sun::star::registry::InvalidValueException );
233cdf0e10cSrcweir
234cdf0e10cSrcweir	//-------------------------------------------------------------------------
235cdf0e10cSrcweir	/** sets a unicode string value to the key.
236cdf0e10cSrcweir
237cdf0e10cSrcweir		<p> If the key already has a value, the value will be
238cdf0e10cSrcweir		overridden.
239cdf0e10cSrcweir
240cdf0e10cSrcweir		@throws InvalidRegistryException
241cdf0e10cSrcweir		if the registry is not open.
242cdf0e10cSrcweir	*/
243cdf0e10cSrcweir	void setStringValue( [in] string value )
244cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
245cdf0e10cSrcweir
246cdf0e10cSrcweir	//-------------------------------------------------------------------------
247cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::getStringListValue
248cdf0e10cSrcweir	/** @returns
249cdf0e10cSrcweir		a sequence of unicode strings if the key contains an unicode string list value.
250cdf0e10cSrcweir
251cdf0e10cSrcweir	 	@throws InvalidRegistryException
252cdf0e10cSrcweir	 	if the registry is not open.
253cdf0e10cSrcweir
254cdf0e10cSrcweir	 	@throws InvalidValueException
255cdf0e10cSrcweir	 	if the actual value is not of type string list.
256cdf0e10cSrcweir	*/
257cdf0e10cSrcweir	sequence<string> getStringListValue()
258cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException,
259cdf0e10cSrcweir					com::sun::star::registry::InvalidValueException );
260cdf0e10cSrcweir
261cdf0e10cSrcweir	//-------------------------------------------------------------------------
262cdf0e10cSrcweir	/** sets a unicode string value to the key.
263cdf0e10cSrcweir
264cdf0e10cSrcweir		<p>If the key already has a value, the value will be overridden.
265cdf0e10cSrcweir
266cdf0e10cSrcweir		@throws InvalidRegistryException
267cdf0e10cSrcweir		if the registry is not open.
268cdf0e10cSrcweir	*/
269cdf0e10cSrcweir	void setStringListValue( [in] sequence<string> seqValue )
270cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
271cdf0e10cSrcweir
272cdf0e10cSrcweir	//-------------------------------------------------------------------------
273cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::getBinaryValue
274cdf0e10cSrcweir	/** @returns
275cdf0e10cSrcweir		a binary value if the key contains one.
276cdf0e10cSrcweir
277cdf0e10cSrcweir	 	@throws InvalidRegistryException
278cdf0e10cSrcweir	 	if the registry is not open.
279cdf0e10cSrcweir
280cdf0e10cSrcweir	 	@throws InvalidValueException
281cdf0e10cSrcweir	 	if the actual value is not of type binary.
282cdf0e10cSrcweir	*/
283cdf0e10cSrcweir	sequence<byte> getBinaryValue()
284cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException,
285cdf0e10cSrcweir					com::sun::star::registry::InvalidValueException );
286cdf0e10cSrcweir
287cdf0e10cSrcweir	//-------------------------------------------------------------------------
288cdf0e10cSrcweir	/** sets a binary value to the key.
289cdf0e10cSrcweir
290cdf0e10cSrcweir		<p>If the key already has a value, the value will be
291cdf0e10cSrcweir		overridden.
292cdf0e10cSrcweir
293cdf0e10cSrcweir		@throws InvalidRegistryException
294cdf0e10cSrcweir		if the registry is not open.
295cdf0e10cSrcweir	*/
296cdf0e10cSrcweir	void setBinaryValue( [in] sequence<byte> value )
297cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
298cdf0e10cSrcweir
299cdf0e10cSrcweir	//-------------------------------------------------------------------------
300cdf0e10cSrcweir	/** opens a sub key of the key.
301cdf0e10cSrcweir
302cdf0e10cSrcweir		<p>If the sub key does not exist, the function returns a
303cdf0e10cSrcweir		NULL-interface.
304cdf0e10cSrcweir
305cdf0e10cSrcweir		@param aKeyName
306cdf0e10cSrcweir		the relative path from the current key to the key
307cdf0e10cSrcweir		which will be created.
308cdf0e10cSrcweir
309cdf0e10cSrcweir		@returns
310cdf0e10cSrcweir		a NULL interface if the key does not exist.
311cdf0e10cSrcweir
312cdf0e10cSrcweir		@throws InvalidRegistryException
313cdf0e10cSrcweir		if the registry is not open.
314cdf0e10cSrcweir	*/
315cdf0e10cSrcweir	com::sun::star::registry::XRegistryKey openKey( [in] string aKeyName )
316cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
317cdf0e10cSrcweir
318cdf0e10cSrcweir	//-------------------------------------------------------------------------
319cdf0e10cSrcweir	/** creates a new key in the registry.<p>
320cdf0e10cSrcweir
321cdf0e10cSrcweir		<p>If the key already exists, the function will open the key.
322cdf0e10cSrcweir
323cdf0e10cSrcweir		@param aKeyName
324cdf0e10cSrcweir		specifies the relative path from the current key to
325cdf0e10cSrcweir		the key which will be created.
326cdf0e10cSrcweir
327cdf0e10cSrcweir		@returns
328cdf0e10cSrcweir		a NULL interface if the key could not be created.
329cdf0e10cSrcweir
330cdf0e10cSrcweir		@throws InvalidRegistryException
331cdf0e10cSrcweir		if the registry is not open, the registry is readonly
332cdf0e10cSrcweir		or if the key exists and is of type LINK.
333cdf0e10cSrcweir	*/
334cdf0e10cSrcweir	com::sun::star::registry::XRegistryKey createKey( [in] string aKeyName )
335cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
336cdf0e10cSrcweir
337cdf0e10cSrcweir	//-------------------------------------------------------------------------
338cdf0e10cSrcweir	/** closes a key in the registry.
339cdf0e10cSrcweir
340cdf0e10cSrcweir		@throws InvalidRegistryException
341cdf0e10cSrcweir		if the registry is not open.
342cdf0e10cSrcweir	*/
343cdf0e10cSrcweir	void closeKey()
344cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
345cdf0e10cSrcweir
346cdf0e10cSrcweir	//-------------------------------------------------------------------------
347cdf0e10cSrcweir	/** deletes a key from the registry.
348cdf0e10cSrcweir
349cdf0e10cSrcweir		@param aKeyName
350cdf0e10cSrcweir		specifies the relative path from the current key to
351cdf0e10cSrcweir		the key which will be deleted.
352cdf0e10cSrcweir
353cdf0e10cSrcweir		@throws InvalidRegistryException
354cdf0e10cSrcweir		if the registry is not open, the registry is readonly,
355cdf0e10cSrcweir		the key does not exists or if the key is of type LINK.
356cdf0e10cSrcweir	*/
357cdf0e10cSrcweir	void deleteKey( [in] string rKeyName )
358cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
359cdf0e10cSrcweir
360cdf0e10cSrcweir	//-------------------------------------------------------------------------
361cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::openKeys
362cdf0e10cSrcweir	/** opens all subkeys of the key. If a subkey is a link, the link will be
363cdf0e10cSrcweir		resolved and the appropriate key will be opened.
364cdf0e10cSrcweir
365cdf0e10cSrcweir	   	@returns
366cdf0e10cSrcweir	   	an empty sequence if the key has no subkeys.
367cdf0e10cSrcweir
368cdf0e10cSrcweir	   	@throws InvalidRegistryException
369cdf0e10cSrcweir	   	if the registry is not open.
370cdf0e10cSrcweir	*/
371cdf0e10cSrcweir	sequence<com::sun::star::registry::XRegistryKey> openKeys()
372cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
373cdf0e10cSrcweir
374cdf0e10cSrcweir	//-------------------------------------------------------------------------
375cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::getKeyNames
376cdf0e10cSrcweir	/** @returns a sequence with the names of all subkeys of the key.
377cdf0e10cSrcweir	  	If the key has no subkeys, the function returns an empty sequence. If a subkey is
378cdf0e10cSrcweir	   	a link, the name of the link will be returned.
379cdf0e10cSrcweir
380cdf0e10cSrcweir	 	@throws InvalidRegistryException
381cdf0e10cSrcweir	 	if the registry is not open.
382cdf0e10cSrcweir	 */
383cdf0e10cSrcweir	sequence<string> getKeyNames()
384cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
385cdf0e10cSrcweir
386cdf0e10cSrcweir	//-------------------------------------------------------------------------
387cdf0e10cSrcweir	/** creates a new link in the registry.
388cdf0e10cSrcweir
389cdf0e10cSrcweir		@returns
390cdf0e10cSrcweir		<TRUE/> if the link was created. If the link already
391cdf0e10cSrcweir		exists or the link target does not exist, the
392cdf0e10cSrcweir		function returns <FALSE/>.
393cdf0e10cSrcweir
394cdf0e10cSrcweir		@param aLinkName
395cdf0e10cSrcweir		specifies the relative path from the current key to
396cdf0e10cSrcweir		the link which will be created.
397cdf0e10cSrcweir
398cdf0e10cSrcweir		@param aLinkTarget
399cdf0e10cSrcweir		specifies the full path of the key which will be
400cdf0e10cSrcweir		referenced by the link.
401cdf0e10cSrcweir
402cdf0e10cSrcweir		@throws InvalidRegistryException
403cdf0e10cSrcweir		if the registry is not open or the registry is
404cdf0e10cSrcweir		readonly.
405cdf0e10cSrcweir
406cdf0e10cSrcweir	*/
407cdf0e10cSrcweir	boolean createLink( [in] string aLinkName,
408cdf0e10cSrcweir			 [in] string aLinkTarget )
409cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
410cdf0e10cSrcweir
411cdf0e10cSrcweir	//-------------------------------------------------------------------------
412cdf0e10cSrcweir	/** deletes a link from the registry.
413cdf0e10cSrcweir
414cdf0e10cSrcweir		@param aLinkName
415cdf0e10cSrcweir		specifies the relative path from the current key to
416cdf0e10cSrcweir		the link which will be deleted.
417cdf0e10cSrcweir
418cdf0e10cSrcweir		@throws InvalidRegistryException
419cdf0e10cSrcweir		if the registry is not open, the registry is readonly,
420cdf0e10cSrcweir		or if the link does not exist.
421cdf0e10cSrcweir	*/
422cdf0e10cSrcweir	void deleteLink( [in] string rLinkName )
423cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
424cdf0e10cSrcweir
425cdf0e10cSrcweir	//-------------------------------------------------------------------------
426cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::getLinkTarget
427cdf0e10cSrcweir	/** @returns
428cdf0e10cSrcweir		the target (complete path of a key) of the link specified by rLinkName.
429cdf0e10cSrcweir
430cdf0e10cSrcweir	 	@param rLinKName
431cdf0e10cSrcweir		specifies the relative path from the current key to
432cdf0e10cSrcweir		the link which target will be returned.
433cdf0e10cSrcweir
434cdf0e10cSrcweir	 	@throws InvalidRegistryException
435cdf0e10cSrcweir	 	if the registry is not open or the link does not exists.
436cdf0e10cSrcweir	*/
437cdf0e10cSrcweir	string getLinkTarget( [in] string rLinkName )
438cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
439cdf0e10cSrcweir
440cdf0e10cSrcweir	//-------------------------------------------------------------------------
441cdf0e10cSrcweir	// DOCUMENTATION CHANGED FOR XRegistryKey::getResolvedName
442cdf0e10cSrcweir	/** @returns
443cdf0e10cSrcweir		the resolved name of a key. The function resolve the complete name of the key.
444cdf0e10cSrcweir		If a link could not be resolved, the linktarget concatenated with the unresolved rest
445cdf0e10cSrcweir		of the name, will be returned.
446cdf0e10cSrcweir
447cdf0e10cSrcweir	 	@param rKeyName
448cdf0e10cSrcweir	 	specifies a relative path from the current key which will be resolved from all links.
449cdf0e10cSrcweir
450cdf0e10cSrcweir	 	@throws InvalidRegistryException
451cdf0e10cSrcweir	 	if the registry is not open or a recursion was detected.
452cdf0e10cSrcweir	*/
453cdf0e10cSrcweir	string getResolvedName( [in] string aKeyName )
454cdf0e10cSrcweir			raises( com::sun::star::registry::InvalidRegistryException );
455cdf0e10cSrcweir
456cdf0e10cSrcweir};
457cdf0e10cSrcweir
458cdf0e10cSrcweir//=============================================================================
459cdf0e10cSrcweir
460cdf0e10cSrcweir}; }; }; };
461cdf0e10cSrcweir
462cdf0e10cSrcweir#endif
463