/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project .
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License , v . 2 . 0 . If a copy of the MPL was not distributed with this
* file , You can obtain one at http : //mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice :
*
* Licensed to the Apache Software Foundation ( ASF ) under one or more
* contributor license agreements . See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership . The ASF licenses this file to you under the Apache
* License , Version 2 . 0 ( the " License " ) ; you may not use this file
* except in compliance with the License . You may obtain a copy of
* the License at http : //www.apache.org/licenses/LICENSE-2.0 .
*/
module com { module sun { module star { module registry {
/** supports a shared view on two different registries. The registry
files will be opened in two different modes , registry1 will be opened with read / write
rights and registry2 will be opened read - only .
In the context of this service , the functions < code > open < / code > , < code > close < / code > ,
and < code > destroy < / code > from XSimpleRegistry are not supported and
throw an exception if they are used .
Functions of XSimpleRegistry :
< dl >
< dt > < b > getURL < / b >
< / dt >
< dd > returns the name of registry1 .
< / dd >
< dt > < b > isValid < / b >
< / dt >
< dd > checks if registry1 is valid . If the interface is not ` NULL `
then registry1 should always be valid .
< / dd >
< dt > < b > isReadOnly < / b >
< / dt >
< dd > checks if registry1 has write protection .
< / dd >
< dt > < b > mergeKey < / b >
< / dt >
< dd > merges all information from the specified registry in registry1 .
< / dd >
< dt > < b > getRootKey < / b >
< / dt >
< dd > returns a virtual rootkey of both registries .
< / dd >
< / dl >
Functions of XRegistryKey :
< dl >
< dt > < b > openKey < / b >
< / dt >
< dd > returns a virtual key which is specified in registry1 or registry2 .
< / dd >
< dt > < b > deleteKey < / b >
< / dt >
< dd > deletes the key only if it is present in registry1 .
< / dd >
< dt > < b > setLongValue , setAsciiValue , setStringValue , setBinaryValue < / b >
< / dt >
< dd > sets the value at the specified key in registry1 .
< / dd >
< dt > < b > getLongValue , getAsciiValue , getStringValue , getBinaryValue < / b >
< / dt >
< dd > returns the value at the specified key in registry1 , or if
the value is not present in registry1 , it will return the value of registry2 .
< / 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 >
< b > Note : all write functions only work on registry1 . < / b >
< / dt >
< / dl >
How to initialize the registries : < br >
Use a sequence of XSimpleRegistry with two elements . The first element must be
the registry which is opened with read / write rights and the second element must be
the read - only one . < br >
Two different ways are possible : < br >
< ul >
< li > use com : : sun : : star : : lang : : XMultiServiceFactory : : createInstanceWithArguments ( ) to
create an instance of this service where the value of the any parameter must be the sequence with
the two open registries .
< li > use the initialize function of the com : : sun : : star : : lang : : XInitialization interface where the value of the
any parameter must be the sequence with the two open registries .
< / ul >
< br >
Guarantees :
< ul >
< li > - thread safe < / li >
< / ul >
*/
published service NestedRegistry
{
interface com::sun::star::registry::XSimpleRegistry;
interface com::sun::star::lang::XInitialization;
};
}; }; }; };
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Messung V0.5 in Prozent C=94 H=100 G=96
¤ Dauer der Verarbeitung: 0.9 Sekunden
¤
*© Formatika GbR, Deutschland