LibreOffice Module configmgr (master) 1
access.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
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/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
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 .
18 */
19
20#pragma once
21
22#include <sal/config.h>
23
24#include <set>
25#include <vector>
26#include "config_map.hxx"
27
28#include <com/sun/star/beans/XExactName.hpp>
29#include <com/sun/star/beans/XHierarchicalPropertySet.hpp>
30#include <com/sun/star/beans/XHierarchicalPropertySetInfo.hpp>
31#include <com/sun/star/beans/XMultiHierarchicalPropertySet.hpp>
32#include <com/sun/star/beans/XMultiPropertySet.hpp>
33#include <com/sun/star/beans/XProperty.hpp>
34#include <com/sun/star/beans/XPropertySet.hpp>
35#include <com/sun/star/beans/XPropertySetInfo.hpp>
36#include <com/sun/star/container/XContainer.hpp>
37#include <com/sun/star/container/XHierarchicalName.hpp>
38#include <com/sun/star/container/XHierarchicalNameReplace.hpp>
39#include <com/sun/star/container/XNameContainer.hpp>
40#include <com/sun/star/container/XNamed.hpp>
41#include <com/sun/star/lang/XComponent.hpp>
42#include <com/sun/star/lang/XServiceInfo.hpp>
43#include <com/sun/star/lang/XTypeProvider.hpp>
44#include <com/sun/star/lang/XSingleServiceFactory.hpp>
45#include <com/sun/star/uno/Reference.hxx>
46#include <com/sun/star/uno/Sequence.hxx>
47#include <cppuhelper/weak.hxx>
48#include <osl/interlck.h>
49#include <rtl/ref.hxx>
50#include <sal/types.h>
51
52#include "modifications.hxx"
53#include "type.hxx"
54
55namespace com::sun::star {
56 namespace beans {
57 class XHierarchicalPropertySetInfo;
58 class XPropertiesChangeListener;
59 class XPropertyChangeListener;
60 class XVetoableChangeListener;
61 struct Property;
62 }
63 namespace container { class XContainerListener; }
64 namespace lang { class XEventListener; }
65 namespace uno {
66 class Any;
67 class Type;
68 class XInterface;
69 }
70 namespace util { struct ElementChange; }
71}
72
73namespace configmgr {
74
75class Broadcaster;
76class ChildAccess;
77class Components;
78class Node;
79class RootAccess;
80
81class Access:
82 public cppu::OWeakObject, public css::lang::XTypeProvider,
83 public css::lang::XServiceInfo,
84 public css::lang::XComponent,
85 public css::container::XHierarchicalNameReplace,
86 public css::container::XContainer,
87 public css::beans::XExactName,
88 public css::beans::XPropertySetInfo,
89 public css::container::XHierarchicalName,
90 public css::container::XNamed,
91 public css::beans::XProperty,
92 public css::beans::XPropertySet,
93 public css::beans::XMultiPropertySet,
94 public css::beans::XHierarchicalPropertySet,
95 public css::beans::XMultiHierarchicalPropertySet,
96 public css::beans::XHierarchicalPropertySetInfo,
97 public css::container::XNameContainer,
98 public css::lang::XSingleServiceFactory
99{
100public:
101 oslInterlockedCount acquireCounting();
102
103 void releaseNondeleting();
104
105 bool isValue();
106
108 void releaseChild(OUString const & name);
109
110 virtual std::vector<OUString> getAbsolutePath() = 0;
111 virtual std::vector<OUString> getRelativePath() = 0;
112
113 virtual OUString getRelativePathRepresentation() = 0;
115
116 virtual bool isFinalized() = 0;
117
118 virtual void initBroadcaster(
119 Modifications::Node const & modifications, Broadcaster * broadcaster);
120
121 using OWeakObject::acquire;
122 using OWeakObject::release;
123
124 virtual css::uno::Sequence< css::uno::Type > SAL_CALL
125 getTypes() override;
126
127 virtual css::uno::Sequence< sal_Int8 > SAL_CALL
128 getImplementationId() override;
129
130 virtual OUString SAL_CALL getImplementationName() override;
131
132 virtual sal_Bool SAL_CALL supportsService(OUString const & ServiceName) override;
133
134 virtual css::uno::Sequence< OUString > SAL_CALL
135 getSupportedServiceNames() override;
136
137 virtual void SAL_CALL dispose() override;
138
139 virtual void SAL_CALL addEventListener(
140 css::uno::Reference< css::lang::XEventListener >
141 const & xListener) override;
142
143 virtual void SAL_CALL removeEventListener(
144 css::uno::Reference< css::lang::XEventListener >
145 const & aListener) override;
146
147 virtual css::uno::Type SAL_CALL getElementType() override;
148
149 virtual sal_Bool SAL_CALL hasElements() override;
150
151 virtual css::uno::Any SAL_CALL getByName(
152 OUString const & aName) override;
153
154 virtual css::uno::Sequence< OUString > SAL_CALL
155 getElementNames() override;
156
157 virtual sal_Bool SAL_CALL hasByName(OUString const & aName) override;
158
159 virtual css::uno::Any SAL_CALL getByHierarchicalName(
160 OUString const & aName) override;
161
162 virtual sal_Bool SAL_CALL hasByHierarchicalName(OUString const & aName) override;
163
164 virtual void SAL_CALL replaceByHierarchicalName(
165 OUString const & aName, css::uno::Any const & aElement) override;
166
167 virtual void SAL_CALL addContainerListener(
168 css::uno::Reference<
169 css::container::XContainerListener > const & xListener) override;
170
171 virtual void SAL_CALL removeContainerListener(
172 css::uno::Reference<
173 css::container::XContainerListener > const & xListener) override;
174
175 virtual OUString SAL_CALL getExactName(
176 OUString const & aApproximateName) override;
177
178 virtual css::uno::Sequence< css::beans::Property >
179 SAL_CALL getProperties() override;
180
181 virtual css::beans::Property SAL_CALL getPropertyByName(
182 OUString const & aName) override;
183
184 virtual sal_Bool SAL_CALL hasPropertyByName(OUString const & Name) override;
185
186 virtual OUString SAL_CALL getHierarchicalName() override;
187
188 virtual OUString SAL_CALL composeHierarchicalName(
189 OUString const & aRelativeName) override;
190
191 virtual OUString SAL_CALL getName() override;
192
193 virtual void SAL_CALL setName(OUString const & aName) override;
194
195 virtual css::beans::Property SAL_CALL getAsProperty() override;
196
197 virtual
198 css::uno::Reference< css::beans::XPropertySetInfo >
199 SAL_CALL getPropertySetInfo() override;
200
201 virtual void SAL_CALL setPropertyValue(
202 OUString const & aPropertyName,
203 css::uno::Any const & aValue) override;
204
205 virtual css::uno::Any SAL_CALL getPropertyValue(
206 OUString const & PropertyName) override;
207
208 virtual void SAL_CALL addPropertyChangeListener(
209 OUString const & aPropertyName,
210 css::uno::Reference<
211 css::beans::XPropertyChangeListener > const & xListener) override;
212
213 virtual void SAL_CALL removePropertyChangeListener(
214 OUString const & aPropertyName,
215 css::uno::Reference<
216 css::beans::XPropertyChangeListener > const & aListener) override;
217
218 virtual void SAL_CALL addVetoableChangeListener(
219 OUString const & PropertyName,
220 css::uno::Reference<
221 css::beans::XVetoableChangeListener > const & aListener) override;
222
223 virtual void SAL_CALL removeVetoableChangeListener(
224 OUString const & PropertyName,
225 css::uno::Reference<
226 css::beans::XVetoableChangeListener > const & aListener) override;
227
228 virtual void SAL_CALL setPropertyValues(
229 css::uno::Sequence< OUString > const & aPropertyNames,
230 css::uno::Sequence< css::uno::Any > const &
231 aValues) override;
232
233 virtual css::uno::Sequence< css::uno::Any > SAL_CALL
235 css::uno::Sequence< OUString > const & aPropertyNames) override;
236
237 virtual void SAL_CALL addPropertiesChangeListener(
238 css::uno::Sequence< OUString > const & aPropertyNames,
239 css::uno::Reference<
240 css::beans::XPropertiesChangeListener > const &
241 xListener) override;
242
243 virtual void SAL_CALL removePropertiesChangeListener(
244 css::uno::Reference<
245 css::beans::XPropertiesChangeListener > const &
246 xListener) override;
247
248 virtual void SAL_CALL firePropertiesChangeEvent(
249 css::uno::Sequence< OUString > const & aPropertyNames,
250 css::uno::Reference<
251 css::beans::XPropertiesChangeListener > const &
252 xListener) override;
253
254 virtual
255 css::uno::Reference<
256 css::beans::XHierarchicalPropertySetInfo > SAL_CALL
258
259 virtual void SAL_CALL setHierarchicalPropertyValue(
260 OUString const & aHierarchicalPropertyName,
261 css::uno::Any const & aValue) override;
262
263 virtual css::uno::Any SAL_CALL getHierarchicalPropertyValue(
264 OUString const & aHierarchicalPropertyName) override;
265
266 virtual void SAL_CALL setHierarchicalPropertyValues(
267 css::uno::Sequence< OUString > const &
268 aHierarchicalPropertyNames,
269 css::uno::Sequence< css::uno::Any > const &
270 Values) override;
271
272 virtual css::uno::Sequence< css::uno::Any > SAL_CALL
274 css::uno::Sequence< OUString > const &
275 aHierarchicalPropertyNames) override;
276
277 virtual css::beans::Property SAL_CALL
278 getPropertyByHierarchicalName(OUString const & aHierarchicalName) override;
279
281 OUString const & aHierarchicalName) override;
282
283 virtual void SAL_CALL replaceByName(
284 OUString const & aName, css::uno::Any const & aElement) override;
285
286 virtual void SAL_CALL insertByName(
287 OUString const & aName, css::uno::Any const & aElement) override;
288
289 virtual void SAL_CALL removeByName(OUString const & aName) override;
290
291 virtual css::uno::Reference< css::uno::XInterface >
292 SAL_CALL createInstance() override;
293
294 virtual css::uno::Reference< css::uno::XInterface >
296 css::uno::Sequence< css::uno::Any > const &
297 aArguments) override;
298
299protected:
300 explicit Access(Components & components);
301
302 virtual ~Access() override;
303
304 virtual const OUString & getNameInternal() = 0;
307
308 virtual void addTypes(std::vector< css::uno::Type > * types)
309 const = 0;
310
312 std::vector<OUString> * services) = 0;
313
314 virtual void initDisposeBroadcaster(Broadcaster * broadcaster);
315 virtual void clearListeners() noexcept;
316
317 virtual css::uno::Any SAL_CALL queryInterface(
318 css::uno::Type const & aType) override;
319
321
323
326 std::vector< rtl::Reference< ChildAccess > > getAllChildren();
327
328 void checkValue(
329 css::uno::Any const & value, Type type, bool nillable);
330
332 OUString const & name, css::uno::Any const & value,
333 Modifications * localModifications);
334
336 std::vector< css::util::ElementChange > * changes);
337
338 void commitChildChanges(bool valid, Modifications * globalModifications);
339
341 Modifications::Node const & modifications, Broadcaster * broadcaster,
342 std::vector< css::util::ElementChange > * changes);
343
344 bool isDisposed() const { return disposed_;}
345
346private:
347 Access(const Access&) = delete;
348 Access& operator=(const Access&) = delete;
349
353
355
358 bool theDirectlyModified);
359 };
360
362
364 ModifiedChildren::iterator const & childIterator);
365
367 OUString const & name);
368
369 rtl::Reference< ChildAccess > getSubChild(OUString const & path);
370
371 bool setChildProperty(
372 OUString const & name, css::uno::Any const & value,
373 Modifications * localModifications);
374
375 css::beans::Property asProperty();
376
377 bool getByNameFast(const OUString & name, css::uno::Any & value);
379 const rtl::Reference< Node > &node);
380
381 void checkFinalized();
382
383 void checkKnownProperty(OUString const & descriptor);
384
385 rtl::Reference< ChildAccess > getFreeSetMember( css::uno::Any const & value);
386
388
390
391 typedef
392 std::multiset<
393 css::uno::Reference<
394 css::lang::XEventListener > >
396
397 typedef
398 std::multiset<
399 css::uno::Reference<
400 css::container::XContainerListener > >
402
403 typedef
404 std::multiset<
405 css::uno::Reference<
406 css::beans::XPropertyChangeListener > >
408
411
412 typedef
413 std::multiset<
414 css::uno::Reference<
415 css::beans::XVetoableChangeListener > >
417
420
421 typedef
422 std::multiset<
423 css::uno::Reference<
424 css::beans::XPropertiesChangeListener > >
426
436
437 std::shared_ptr<osl::Mutex> lock_;
438
439#if !defined NDEBUG
440protected:
441 enum {
442 IS_ANY = 0, IS_GROUP = 0x01, IS_SET = 0x02, IS_EXTENSIBLE = 0x04,
443 IS_GROUP_MEMBER = 0x08, IS_SET_MEMBER = 0x10, IS_UPDATE = 0x20 };
444 bool thisIs(int what);
445#endif
446};
447
448}
449
450/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
void commitChildChanges(bool valid, Modifications *globalModifications)
Definition: access.cxx:1546
virtual void SAL_CALL setPropertyValue(OUString const &aPropertyName, css::uno::Any const &aValue) override
Definition: access.cxx:696
PropertyChangeListeners propertyChangeListeners_
Definition: access.hxx:432
virtual css::uno::Any SAL_CALL getByName(OUString const &aName) override
Definition: access.cxx:395
void checkKnownProperty(OUString const &descriptor)
Definition: access.cxx:2132
virtual void SAL_CALL addContainerListener(css::uno::Reference< css::container::XContainerListener > const &xListener) override
Definition: access.cxx:493
virtual css::beans::Property SAL_CALL getAsProperty() override
Definition: access.cxx:682
rtl::Reference< Access > getNotificationRoot()
Definition: access.cxx:2182
Components & getComponents() const
Definition: access.hxx:320
virtual css::uno::Sequence< css::uno::Any > SAL_CALL getPropertyValues(css::uno::Sequence< OUString > const &aPropertyNames) override
Definition: access.cxx:853
DisposeListeners disposeListeners_
Definition: access.hxx:430
virtual void SAL_CALL removeEventListener(css::uno::Reference< css::lang::XEventListener > const &aListener) override
Definition: access.cxx:317
PropertiesChangeListeners propertiesChangeListeners_
Definition: access.hxx:434
virtual const OUString & getNameInternal()=0
virtual css::uno::Sequence< css::uno::Any > SAL_CALL getHierarchicalPropertyValues(css::uno::Sequence< OUString > const &aHierarchicalPropertyNames) override
Definition: access.cxx:1010
virtual css::uno::Any SAL_CALL getHierarchicalPropertyValue(OUString const &aHierarchicalPropertyName) override
Definition: access.cxx:959
rtl::Reference< ChildAccess > getModifiedChild(ModifiedChildren::iterator const &childIterator)
Definition: access.cxx:1932
Components & components_
Definition: access.hxx:427
virtual void SAL_CALL removeByName(OUString const &aName) override
Definition: access.cxx:1153
virtual void initBroadcaster(Modifications::Node const &modifications, Broadcaster *broadcaster)
Definition: access.cxx:166
std::multiset< css::uno::Reference< css::container::XContainerListener > > ContainerListeners
Definition: access.hxx:401
virtual rtl::Reference< RootAccess > getRootAccess()=0
WeakChildMap cachedChildren_
Definition: access.hxx:429
void checkValue(css::uno::Any const &value, Type type, bool nillable)
Definition: access.cxx:1478
std::multiset< css::uno::Reference< css::beans::XPropertyChangeListener > > PropertyChangeListenersElement
Definition: access.hxx:407
rtl::Reference< ChildAccess > getUnmodifiedChild(OUString const &name)
Definition: access.cxx:1950
virtual sal_Bool SAL_CALL hasPropertyByHierarchicalName(OUString const &aHierarchicalName) override
Definition: access.cxx:1045
oslInterlockedCount acquireCounting()
Definition: access.cxx:125
virtual sal_Bool SAL_CALL hasPropertyByName(OUString const &Name) override
Definition: access.cxx:561
std::multiset< css::uno::Reference< css::lang::XEventListener > > DisposeListeners
Definition: access.hxx:395
virtual css::uno::Sequence< css::beans::Property > SAL_CALL getProperties() override
Definition: access.cxx:535
virtual rtl::Reference< Node > getNode()=0
config_map< PropertyChangeListenersElement > PropertyChangeListeners
Definition: access.hxx:410
virtual void clearListeners() noexcept
Definition: access.cxx:1276
rtl::Reference< Node > getParentNode()
Definition: access.cxx:1361
bool setChildProperty(OUString const &name, css::uno::Any const &value, Modifications *localModifications)
Definition: access.cxx:2054
virtual void initDisposeBroadcaster(Broadcaster *broadcaster)
Definition: access.cxx:1225
virtual std::vector< OUString > getAbsolutePath()=0
virtual sal_Bool SAL_CALL hasByName(OUString const &aName) override
Definition: access.cxx:422
void checkFinalized()
Definition: access.cxx:2124
std::multiset< css::uno::Reference< css::beans::XPropertiesChangeListener > > PropertiesChangeListeners
Definition: access.hxx:425
virtual OUString SAL_CALL getHierarchicalName() override
Definition: access.cxx:568
ContainerListeners containerListeners_
Definition: access.hxx:431
virtual sal_Bool SAL_CALL hasElements() override
Definition: access.cxx:352
virtual void SAL_CALL replaceByHierarchicalName(OUString const &aName, css::uno::Any const &aElement) override
Definition: access.cxx:451
virtual void SAL_CALL removePropertyChangeListener(OUString const &aPropertyName, css::uno::Reference< css::beans::XPropertyChangeListener > const &aListener) override
Definition: access.cxx:754
virtual OUString SAL_CALL getExactName(OUString const &aApproximateName) override
Definition: access.cxx:527
void markChildAsModified(rtl::Reference< ChildAccess > const &child)
Definition: access.cxx:146
virtual void SAL_CALL setName(OUString const &aName) override
Definition: access.cxx:614
void initBroadcasterAndChanges(Modifications::Node const &modifications, Broadcaster *broadcaster, std::vector< css::util::ElementChange > *changes)
Definition: access.cxx:1597
virtual css::beans::Property SAL_CALL getPropertyByHierarchicalName(OUString const &aHierarchicalName) override
Definition: access.cxx:1032
virtual OUString SAL_CALL composeHierarchicalName(OUString const &aRelativeName) override
Definition: access.cxx:588
virtual void SAL_CALL addEventListener(css::uno::Reference< css::lang::XEventListener > const &xListener) override
Definition: access.cxx:295
void insertLocalizedValueChild(OUString const &name, css::uno::Any const &value, Modifications *localModifications)
Definition: access.cxx:1512
bool getByNameFast(const OUString &name, css::uno::Any &value)
Definition: access.cxx:359
virtual css::uno::Any SAL_CALL queryInterface(css::uno::Type const &aType) override
Definition: access.cxx:1293
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
Definition: access.cxx:244
virtual css::uno::Sequence< OUString > SAL_CALL getElementNames() override
Definition: access.cxx:407
virtual void SAL_CALL firePropertiesChangeEvent(css::uno::Sequence< OUString > const &aPropertyNames, css::uno::Reference< css::beans::XPropertiesChangeListener > const &xListener) override
Definition: access.cxx:907
std::multiset< css::uno::Reference< css::beans::XVetoableChangeListener > > VetoableChangeListenersElement
Definition: access.hxx:416
rtl::Reference< ChildAccess > createUnmodifiedChild(const OUString &name, const rtl::Reference< Node > &node)
Definition: access.cxx:1941
virtual void addTypes(std::vector< css::uno::Type > *types) const =0
rtl::Reference< ChildAccess > getSubChild(OUString const &path)
Definition: access.cxx:1973
bool thisIs(int what)
Definition: access.cxx:2193
VetoableChangeListeners vetoableChangeListeners_
Definition: access.hxx:433
virtual css::beans::Property SAL_CALL getPropertyByName(OUString const &aName) override
Definition: access.cxx:549
virtual void SAL_CALL addVetoableChangeListener(OUString const &PropertyName, css::uno::Reference< css::beans::XVetoableChangeListener > const &aListener) override
Definition: access.cxx:775
virtual css::uno::Type SAL_CALL getElementType() override
Definition: access.cxx:329
virtual OUString getRelativePathRepresentation()=0
std::vector< rtl::Reference< ChildAccess > > getAllChildren()
Definition: access.cxx:1457
virtual bool isFinalized()=0
virtual ~Access() override
Definition: access.cxx:1223
virtual void SAL_CALL removeVetoableChangeListener(OUString const &PropertyName, css::uno::Reference< css::beans::XVetoableChangeListener > const &aListener) override
Definition: access.cxx:800
virtual void SAL_CALL addPropertyChangeListener(OUString const &aPropertyName, css::uno::Reference< css::beans::XPropertyChangeListener > const &xListener) override
Definition: access.cxx:730
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() override
Definition: access.cxx:172
rtl::Reference< ChildAccess > getChild(OUString const &name)
Definition: access.cxx:1366
virtual sal_Bool SAL_CALL supportsService(OUString const &ServiceName) override
Definition: access.cxx:239
Access & operator=(const Access &)=delete
virtual sal_Bool SAL_CALL hasByHierarchicalName(OUString const &aName) override
Definition: access.cxx:443
virtual void SAL_CALL insertByName(OUString const &aName, css::uno::Any const &aElement) override
Definition: access.cxx:1093
void checkLocalizedPropertyAccess()
Definition: access.cxx:1351
virtual void SAL_CALL removePropertiesChangeListener(css::uno::Reference< css::beans::XPropertiesChangeListener > const &xListener) override
Definition: access.cxx:894
void releaseChild(OUString const &name)
Definition: access.cxx:162
virtual std::vector< OUString > getRelativePath()=0
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstance() override
Definition: access.cxx:1187
virtual css::uno::Any SAL_CALL getByHierarchicalName(OUString const &aName) override
Definition: access.cxx:430
virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo() override
Definition: access.cxx:690
virtual void SAL_CALL removeContainerListener(css::uno::Reference< css::container::XContainerListener > const &xListener) override
Definition: access.cxx:515
void reportChildChanges(std::vector< css::util::ElementChange > *changes)
Definition: access.cxx:1528
config_map< ChildAccess * > WeakChildMap
Definition: access.hxx:389
config_map< VetoableChangeListenersElement > VetoableChangeListeners
Definition: access.hxx:419
ModifiedChildren modifiedChildren_
Definition: access.hxx:428
void releaseNondeleting()
Definition: access.cxx:129
virtual void addSupportedServiceNames(std::vector< OUString > *services)=0
virtual rtl::Reference< Access > getParentAccess()=0
virtual css::uno::Reference< css::beans::XHierarchicalPropertySetInfo > SAL_CALL getHierarchicalPropertySetInfo() override
Definition: access.cxx:926
Access(Components &components)
Definition: access.cxx:1218
virtual void SAL_CALL addPropertiesChangeListener(css::uno::Sequence< OUString > const &aPropertyNames, css::uno::Reference< css::beans::XPropertiesChangeListener > const &xListener) override
Definition: access.cxx:871
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() override
Definition: access.cxx:223
virtual void SAL_CALL replaceByName(OUString const &aName, css::uno::Any const &aElement) override
Definition: access.cxx:1053
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstanceWithArguments(css::uno::Sequence< css::uno::Any > const &aArguments) override
Definition: access.cxx:1205
virtual void SAL_CALL dispose() override
Definition: access.cxx:274
config_map< ModifiedChild > ModifiedChildren
Definition: access.hxx:361
std::shared_ptr< osl::Mutex > lock_
Definition: access.hxx:437
virtual void SAL_CALL setPropertyValues(css::uno::Sequence< OUString > const &aPropertyNames, css::uno::Sequence< css::uno::Any > const &aValues) override
Definition: access.cxx:821
rtl::Reference< ChildAccess > getFreeSetMember(css::uno::Any const &value)
Definition: access.cxx:2159
virtual void SAL_CALL setHierarchicalPropertyValues(css::uno::Sequence< OUString > const &aHierarchicalPropertyNames, css::uno::Sequence< css::uno::Any > const &Values) override
Definition: access.cxx:973
css::beans::Property asProperty()
Definition: access.cxx:2068
virtual css::uno::Any SAL_CALL getPropertyValue(OUString const &PropertyName) override
Definition: access.cxx:718
Access(const Access &)=delete
bool isDisposed() const
Definition: access.hxx:344
virtual OUString SAL_CALL getName() override
Definition: access.cxx:607
virtual void SAL_CALL setHierarchicalPropertyValue(OUString const &aHierarchicalPropertyName, css::uno::Any const &aValue) override
Definition: access.cxx:931
virtual OUString SAL_CALL getImplementationName() override
Definition: access.cxx:231
OUString name
Definition: components.cxx:85
rtl::Reference< ChildAccess > child
Definition: access.hxx:351
unsigned char sal_Bool
std::vector< uno::Reference< sheet::XSpreadsheetDocument > > Components