fdeb2071f2
2005/09/05 14:07:30 rt 1.10.42.1: #i54170# Change license header: remove SISSL
171 lines
5.6 KiB
Text
171 lines
5.6 KiB
Text
/*************************************************************************
|
|
*
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
|
*
|
|
* $RCSfile: DefaultRegistry.idl,v $
|
|
*
|
|
* $Revision: 1.11 $
|
|
*
|
|
* last change: $Author: rt $ $Date: 2005-09-09 16:07:10 $
|
|
*
|
|
* The Contents of this file are made available subject to
|
|
* the terms of GNU Lesser General Public License Version 2.1.
|
|
*
|
|
*
|
|
* GNU Lesser General Public License Version 2.1
|
|
* =============================================
|
|
* Copyright 2005 by Sun Microsystems, Inc.
|
|
* 901 San Antonio Road, Palo Alto, CA 94303, USA
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License version 2.1, as published by the Free Software Foundation.
|
|
*
|
|
* This library is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
* Lesser General Public License for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
* MA 02111-1307 USA
|
|
*
|
|
************************************************************************/
|
|
#ifndef __com_sun_star_registry_DefaultRegistry_idl__
|
|
#define __com_sun_star_registry_DefaultRegistry_idl__
|
|
|
|
#ifndef __com_sun_star_registry_XSimpleRegistry_idl__
|
|
#include <com/sun/star/registry/XSimpleRegistry.idl>
|
|
#endif
|
|
|
|
|
|
//=============================================================================
|
|
|
|
module com { module sun { module star { module registry {
|
|
|
|
//=============================================================================
|
|
|
|
// DocMerge from xml: service com::sun::star::registry::DefaultRegistry
|
|
/** implicitly supports a local registry and a read-only
|
|
system registry for global information.
|
|
In the context of this service,
|
|
the functions <code>open</code>, <code>close</code>, and <code>destroy</code>
|
|
from <type>XSimpleRegistry</type> are not supported and throw an exception
|
|
if they are used.
|
|
<dl>
|
|
<dt>Functions of <type>XSimpleRegistry</type>:
|
|
<dl>
|
|
<dt> <b>getURL</b>
|
|
</dt>
|
|
<dd> returns the name of the local registry.
|
|
</dd>
|
|
<dt> <b>isValid</b>
|
|
</dt>
|
|
<dd> checks if the local registry is valid. If the interface is not <NULL/>
|
|
the local registry should always be valid.
|
|
</dd>
|
|
<dt> <b>isReadOnly</b> </dt>
|
|
<dd> checks if the local registry has write protection.
|
|
</dd>
|
|
<dt> <b>mergeKey</b>
|
|
</dt>
|
|
<dd> merges all information from the specified registry in the local registry.
|
|
</dd>
|
|
<dt> <b>getRootKey</b>
|
|
</dt>
|
|
<dd> returns a virtual rootkey of both registries.
|
|
</dd>
|
|
</dl>
|
|
|
|
<br>
|
|
|
|
</dt>
|
|
<dt>Functions of XRegistryKey:
|
|
<dl>
|
|
<dt> <b>openKey</b>
|
|
</dt>
|
|
<dd> returns a virtual key which is specified in the local or the sytem
|
|
registry.
|
|
</dd>
|
|
<dt> <b>deleteKey</b>
|
|
</dt>
|
|
<dd> deletes the key only if it is present in the local registry.
|
|
</dd>
|
|
<dt> <b>setLongValue, setAsciiValue, setStringValue, setBinaryValue</b>
|
|
</dt>
|
|
<dd> sets the value at the specified key in the local registry.
|
|
</dd>
|
|
<dt> <b>getLongValue, getAsciiValue, getStringValue, getBinaryValue</b>
|
|
</dt>
|
|
<dd> returns the value at the specified key in the local registry, or if
|
|
the value is not present in the local registry, it will return the value of the
|
|
system registry.
|
|
</dd>
|
|
<dt> <b>openKeys</b>
|
|
</dt>
|
|
<dd> returns a sequence of all subkeys in both registries.
|
|
</dd>
|
|
<dt> <b>getKeyNames</b>
|
|
</dt>
|
|
<dd> returns a sequence with the names of all subkeys in both registries.
|
|
</dd>
|
|
<dt>
|
|
<br>
|
|
<b>Note: all write functions only work on the local registry.</b>
|
|
</dt>
|
|
</dl>
|
|
|
|
<br>
|
|
|
|
</dt>
|
|
<dt>How to find the registries:
|
|
<dl>
|
|
<dt> search for the system registry:
|
|
</dt>
|
|
<dd> The system registry will always be searched in the same directory as the
|
|
executable. The name of the system registry is "applicat.rdb". If the system
|
|
registry was not found, then the environment variable STAR_REGISTRY will be checked.
|
|
If this variable was set, it must contain a full path to a valid system registry.
|
|
</dd>
|
|
<dt> Search for the user registry using the following rules:
|
|
</dt>
|
|
<dd>
|
|
<dl>
|
|
<dt> 1. (for further use) search in sversion.ini (.sversionrc) for an entry
|
|
REGISTRY_VERSION_STRING (example: UserRegistry 5.0/505=test.rdb) in the section
|
|
[Registry]. If found, then take this value instead of "user.rdb" as "REGISTRY NAME".
|
|
</dt>
|
|
<dt> 2. Search in the config directory of the user for a file "REGISTRY NAME". If
|
|
found, return the full path and name of the file. If not found, retry this
|
|
step with a dot before "REGISTRY NAME".
|
|
</dt>
|
|
<dt> 3. If not found, a new user registry with name user.rdb will be created in the user
|
|
config directory.
|
|
</dt>
|
|
</dl>
|
|
</dd>
|
|
</dl>
|
|
</dt>
|
|
</dl>
|
|
<h4>Guarantees:</h4>
|
|
|
|
<ul>
|
|
<li>-thread safe</li>
|
|
</ul>
|
|
*/
|
|
published service DefaultRegistry
|
|
{
|
|
// DocMerge: empty anyway
|
|
interface com::sun::star::registry::XSimpleRegistry;
|
|
|
|
};
|
|
|
|
//=============================================================================
|
|
|
|
}; }; }; };
|
|
|
|
/*=============================================================================
|
|
|
|
=============================================================================*/
|
|
#endif
|