1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
22 module com
{ module sun
{ module star
{ module registry
{
24 /** allows access to a registry (a persistent data source).
25 The data is stored in a hierarchical key structure beginning with a root key.
26 Each key can store a value and can have multiple subkeys.
30 published
interface XSimpleRegistry
: com
::sun
::star
::uno
::XInterface
32 /** returns the URL of the current data source of the registry.
36 /** connects the registry to a persistent data source represented by
39 <p>If a local registry is already open, this function
40 will close the currently open registry.
43 specifies the complete URL to access the data source.
46 specifies if the data source should be opened for
50 specifies if the data source should be created if it
51 does not already exist.
53 @throws InvalidRegistryException
54 if the registry does not exist.
56 void open
( [in] string rURL
,
57 [in] boolean bReadOnly
,
58 [in] boolean bCreate
)
59 raises
( com
::sun
::star
::registry
::InvalidRegistryException
);
61 /** checks if the registry points to a valid data-source.
65 /** disconnects the registry from the data-source.
67 @throws InvalidRegistryException
68 if the registry is not open.
71 raises
( com
::sun
::star
::registry
::InvalidRegistryException
);
73 /** destroys the registry and the data source.
75 @throws InvalidRegistryException
76 if the registry is not open.
79 raises
( com
::sun
::star
::registry
::InvalidRegistryException
);
82 the root key of the registry.
84 @throws InvalidRegistryException
85 if no registry is open
87 com
::sun
::star
::registry
::XRegistryKey getRootKey
()
88 raises
( com
::sun
::star
::registry
::InvalidRegistryException
);
90 /** checks if the registry is readonly.
92 @throws InvalidRegistryException
93 if the registry is not open.
96 raises
( com
::sun
::star
::registry
::InvalidRegistryException
);
98 /** merges a registry under the specified key.
100 @deprecated The merge functionality is deprecated and not implemented. Implementations will
101 throw a com::sun::star::RuntimeException.
103 void mergeKey
( [in] string aKeyName
,
105 raises
( com
::sun
::star
::registry
::InvalidRegistryException
,
106 com
::sun
::star
::registry
::MergeConflictException
);
113 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */