LibreOffice Module configmgr (master)  1
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
configmgr::ChildAccess Class Reference

#include <childaccess.hxx>

Inheritance diagram for configmgr::ChildAccess:
[legend]
Collaboration diagram for configmgr::ChildAccess:
[legend]

Public Member Functions

 ChildAccess (Components &components, rtl::Reference< RootAccess > const &root, rtl::Reference< Access > const &parent, OUString const &name, rtl::Reference< Node > const &node)
 
 ChildAccess (Components &components, rtl::Reference< RootAccess > const &root, rtl::Reference< Node > const &node)
 
virtual std::vector< OUString > getAbsolutePath () override
 
virtual std::vector< OUString > getRelativePath () override
 
virtual OUString getRelativePathRepresentation () override
 
virtual rtl::Reference< NodegetNode () override
 
virtual bool isFinalized () override
 
virtual OUString getNameInternal () override
 
virtual rtl::Reference< RootAccessgetRootAccess () override
 
virtual rtl::Reference< AccessgetParentAccess () override
 
virtual void SAL_CALL acquire () override throw ()
 
virtual void SAL_CALL release () override throw ()
 
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL getParent () override
 
virtual void SAL_CALL setParent (css::uno::Reference< css::uno::XInterface > const &) override
 
virtual sal_Int64 SAL_CALL getSomething (css::uno::Sequence< sal_Int8 > const &aIdentifier) override
 
void bind (rtl::Reference< RootAccess > const &root, rtl::Reference< Access > const &parent, OUString const &name) throw ()
 
void unbind () throw ()
 
bool isInTransaction () const
 
void committed ()
 
void setNode (rtl::Reference< Node > const &node)
 
void setProperty (css::uno::Any const &value, Modifications *localModifications)
 
css::uno::Any asValue ()
 
void commitChanges (bool valid, Modifications *globalModifications)
 
- Public Member Functions inherited from configmgr::Access
oslInterlockedCount acquireCounting ()
 
void releaseNondeleting ()
 
bool isValue ()
 
void markChildAsModified (rtl::Reference< ChildAccess > const &child)
 
void releaseChild (OUString const &name)
 
virtual void initBroadcaster (Modifications::Node const &modifications, Broadcaster *broadcaster)
 
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes () override
 
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId () override
 
virtual OUString SAL_CALL getImplementationName () override
 
virtual sal_Bool SAL_CALL supportsService (OUString const &ServiceName) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames () override
 
virtual void SAL_CALL dispose () override
 
virtual void SAL_CALL addEventListener (css::uno::Reference< css::lang::XEventListener > const &xListener) override
 
virtual void SAL_CALL removeEventListener (css::uno::Reference< css::lang::XEventListener > const &aListener) override
 
virtual css::uno::Type SAL_CALL getElementType () override
 
virtual sal_Bool SAL_CALL hasElements () override
 
virtual css::uno::Any SAL_CALL getByName (OUString const &aName) override
 
virtual css::uno::Sequence< OUString > SAL_CALL getElementNames () override
 
virtual sal_Bool SAL_CALL hasByName (OUString const &aName) override
 
virtual css::uno::Any SAL_CALL getByHierarchicalName (OUString const &aName) override
 
virtual sal_Bool SAL_CALL hasByHierarchicalName (OUString const &aName) override
 
virtual void SAL_CALL replaceByHierarchicalName (OUString const &aName, css::uno::Any const &aElement) override
 
virtual void SAL_CALL addContainerListener (css::uno::Reference< css::container::XContainerListener > const &xListener) override
 
virtual void SAL_CALL removeContainerListener (css::uno::Reference< css::container::XContainerListener > const &xListener) override
 
virtual OUString SAL_CALL getExactName (OUString const &aApproximateName) override
 
virtual css::uno::Sequence< css::beans::Property > SAL_CALL getProperties () override
 
virtual css::beans::Property SAL_CALL getPropertyByName (OUString const &aName) override
 
virtual sal_Bool SAL_CALL hasPropertyByName (OUString const &Name) override
 
virtual OUString SAL_CALL getHierarchicalName () override
 
virtual OUString SAL_CALL composeHierarchicalName (OUString const &aRelativeName) override
 
virtual OUString SAL_CALL getName () override
 
virtual void SAL_CALL setName (OUString const &aName) override
 
virtual css::beans::Property SAL_CALL getAsProperty () override
 
virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo () override
 
virtual void SAL_CALL setPropertyValue (OUString const &aPropertyName, css::uno::Any const &aValue) override
 
virtual css::uno::Any SAL_CALL getPropertyValue (OUString const &PropertyName) override
 
virtual void SAL_CALL addPropertyChangeListener (OUString const &aPropertyName, css::uno::Reference< css::beans::XPropertyChangeListener > const &xListener) override
 
virtual void SAL_CALL removePropertyChangeListener (OUString const &aPropertyName, css::uno::Reference< css::beans::XPropertyChangeListener > const &aListener) override
 
virtual void SAL_CALL addVetoableChangeListener (OUString const &PropertyName, css::uno::Reference< css::beans::XVetoableChangeListener > const &aListener) override
 
virtual void SAL_CALL removeVetoableChangeListener (OUString const &PropertyName, css::uno::Reference< css::beans::XVetoableChangeListener > const &aListener) override
 
virtual void SAL_CALL setPropertyValues (css::uno::Sequence< OUString > const &aPropertyNames, css::uno::Sequence< css::uno::Any > const &aValues) override
 
virtual css::uno::Sequence< css::uno::Any > SAL_CALL getPropertyValues (css::uno::Sequence< OUString > const &aPropertyNames) override
 
virtual void SAL_CALL addPropertiesChangeListener (css::uno::Sequence< OUString > const &aPropertyNames, css::uno::Reference< css::beans::XPropertiesChangeListener > const &xListener) override
 
virtual void SAL_CALL removePropertiesChangeListener (css::uno::Reference< css::beans::XPropertiesChangeListener > const &xListener) override
 
virtual void SAL_CALL firePropertiesChangeEvent (css::uno::Sequence< OUString > const &aPropertyNames, css::uno::Reference< css::beans::XPropertiesChangeListener > const &xListener) override
 
virtual css::uno::Reference< css::beans::XHierarchicalPropertySetInfo > SAL_CALL getHierarchicalPropertySetInfo () override
 
virtual void SAL_CALL setHierarchicalPropertyValue (OUString const &aHierarchicalPropertyName, css::uno::Any const &aValue) override
 
virtual css::uno::Any SAL_CALL getHierarchicalPropertyValue (OUString const &aHierarchicalPropertyName) override
 
virtual void SAL_CALL setHierarchicalPropertyValues (css::uno::Sequence< OUString > const &aHierarchicalPropertyNames, css::uno::Sequence< css::uno::Any > const &Values) override
 
virtual css::uno::Sequence< css::uno::Any > SAL_CALL getHierarchicalPropertyValues (css::uno::Sequence< OUString > const &aHierarchicalPropertyNames) override
 
virtual css::beans::Property SAL_CALL getPropertyByHierarchicalName (OUString const &aHierarchicalName) override
 
virtual sal_Bool SAL_CALL hasPropertyByHierarchicalName (OUString const &aHierarchicalName) override
 
virtual void SAL_CALL replaceByName (OUString const &aName, css::uno::Any const &aElement) override
 
virtual void SAL_CALL insertByName (OUString const &aName, css::uno::Any const &aElement) override
 
virtual void SAL_CALL removeByName (OUString const &aName) override
 
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstance () override
 
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL createInstanceWithArguments (css::uno::Sequence< css::uno::Any > const &aArguments) override
 
- Public Member Functions inherited from cppu::OWeakObject
 OWeakObject ()
 
 OWeakObject (const OWeakObject &)
 
OWeakObject &SAL_CALL operator= (const OWeakObject &)
 
virtual css::uno::Any SAL_CALL queryInterface (const css::uno::Type &rType) SAL_OVERRIDE
 
virtual css::uno::Reference< css::uno::XAdapter > SAL_CALL queryAdapter () SAL_OVERRIDE
 
SAL_CALL operator css::uno::Reference< css::uno::XInterface > ()
 

Static Public Member Functions

static css::uno::Sequence< sal_Int8 > const & getTunnelId ()
 
static bool asSimpleValue (const rtl::Reference< Node > &rNode, css::uno::Any &value, Components &components)
 Can we quickly extract a simple value into value ? if so returns true. More...
 

Private Member Functions

virtual ~ChildAccess () override
 
virtual void addTypes (std::vector< css::uno::Type > *types) const override
 
virtual void addSupportedServiceNames (std::vector< OUString > *services) override
 
virtual css::uno::Any SAL_CALL queryInterface (css::uno::Type const &aType) override
 

Private Attributes

rtl::Reference< RootAccessroot_
 
rtl::Reference< Accessparent_
 
OUString name_
 
rtl::Reference< Nodenode_
 
std::unique_ptr< css::uno::Any > changedValue_
 
bool inTransaction_
 
std::shared_ptr< osl::Mutex > lock_
 

Additional Inherited Members

- Protected Types inherited from configmgr::Access
enum  {
  IS_ANY = 0,
  IS_GROUP = 0x01,
  IS_SET = 0x02,
  IS_EXTENSIBLE = 0x04,
  IS_GROUP_MEMBER = 0x08,
  IS_SET_MEMBER = 0x10,
  IS_UPDATE = 0x20
}
 
- Protected Member Functions inherited from configmgr::Access
 Access (Components &components)
 
virtual ~Access () override
 
virtual void initDisposeBroadcaster (Broadcaster *broadcaster)
 
virtual void clearListeners () throw ()
 
ComponentsgetComponents () const
 
void checkLocalizedPropertyAccess ()
 
rtl::Reference< NodegetParentNode ()
 
rtl::Reference< ChildAccessgetChild (OUString const &name)
 
std::vector< rtl::Reference< ChildAccess > > getAllChildren ()
 
void checkValue (css::uno::Any const &value, Type type, bool nillable)
 
void insertLocalizedValueChild (OUString const &name, css::uno::Any const &value, Modifications *localModifications)
 
void reportChildChanges (std::vector< css::util::ElementChange > *changes)
 
void commitChildChanges (bool valid, Modifications *globalModifications)
 
void initBroadcasterAndChanges (Modifications::Node const &modifications, Broadcaster *broadcaster, std::vector< css::util::ElementChange > *changes)
 
bool isDisposed () const
 
bool thisIs (int what)
 
- Protected Member Functions inherited from cppu::OWeakObject
virtual ~OWeakObject () COVERITY_NOEXCEPT_FALSE
 
void disposeWeakConnectionPoint ()
 
- Protected Attributes inherited from cppu::OWeakObject
oslInterlockedCount m_refCount
 

Detailed Description

Definition at line 49 of file childaccess.hxx.

Constructor & Destructor Documentation

configmgr::ChildAccess::ChildAccess ( Components components,
rtl::Reference< RootAccess > const &  root,
rtl::Reference< Access > const &  parent,
OUString const &  name,
rtl::Reference< Node > const &  node 
)

Definition at line 68 of file childaccess.cxx.

References assert(), and name_.

configmgr::ChildAccess::ChildAccess ( Components components,
rtl::Reference< RootAccess > const &  root,
rtl::Reference< Node > const &  node 
)

Definition at line 79 of file childaccess.cxx.

References assert().

configmgr::ChildAccess::~ChildAccess ( )
overrideprivatevirtual

Definition at line 316 of file childaccess.cxx.

References lock_, name_, and parent_.

Member Function Documentation

void configmgr::ChildAccess::acquire ( )
throw (
)
overridevirtual

Reimplemented from cppu::OWeakObject.

Definition at line 140 of file childaccess.cxx.

References cppu::OWeakObject::acquire().

void configmgr::ChildAccess::addSupportedServiceNames ( std::vector< OUString > *  services)
overrideprivatevirtual
void configmgr::ChildAccess::addTypes ( std::vector< css::uno::Type > *  types) const
overrideprivatevirtual

Implements configmgr::Access.

Definition at line 323 of file childaccess.cxx.

References assert().

bool configmgr::ChildAccess::asSimpleValue ( const rtl::Reference< Node > &  rNode,
css::uno::Any &  value,
Components components 
)
static

Can we quickly extract a simple value into value ? if so returns true.

Definition at line 274 of file childaccess.cxx.

References getValue(), configmgr::Node::KIND_LOCALIZED_VALUE, and configmgr::Node::KIND_PROPERTY.

Referenced by asValue(), and configmgr::Access::getByNameFast().

css::uno::Any configmgr::ChildAccess::asValue ( )
void configmgr::ChildAccess::bind ( rtl::Reference< RootAccess > const &  root,
rtl::Reference< Access > const &  parent,
OUString const &  name 
)
throw (
)

Definition at line 175 of file childaccess.cxx.

References assert(), name, name_, and root_.

void configmgr::ChildAccess::commitChanges ( bool  valid,
Modifications globalModifications 
)
void configmgr::ChildAccess::committed ( )

Definition at line 193 of file childaccess.cxx.

References inTransaction_.

std::vector< OUString > configmgr::ChildAccess::getAbsolutePath ( )
overridevirtual

Implements configmgr::Access.

Definition at line 88 of file childaccess.cxx.

References assert(), getParentAccess(), and name_.

Referenced by commitChanges().

OUString configmgr::ChildAccess::getNameInternal ( )
overridevirtual

Implements configmgr::Access.

Definition at line 128 of file childaccess.cxx.

References name_.

rtl::Reference< Node > configmgr::ChildAccess::getNode ( )
overridevirtual

Implements configmgr::Access.

Definition at line 119 of file childaccess.cxx.

References node_.

css::uno::Reference< css::uno::XInterface > configmgr::ChildAccess::getParent ( )
overridevirtual
rtl::Reference< Access > configmgr::ChildAccess::getParentAccess ( )
overridevirtual

Implements configmgr::Access.

Definition at line 136 of file childaccess.cxx.

References parent_.

Referenced by getAbsolutePath(), getRelativePath(), getRelativePathRepresentation(), and setProperty().

std::vector< OUString > configmgr::ChildAccess::getRelativePath ( )
overridevirtual

Implements configmgr::Access.

Definition at line 96 of file childaccess.cxx.

References getParentAccess(), and name_.

Referenced by setProperty().

OUString configmgr::ChildAccess::getRelativePathRepresentation ( )
overridevirtual

Implements configmgr::Access.

Definition at line 106 of file childaccess.cxx.

References configmgr::Data::createSegment(), getParentAccess(), name_, and node_.

rtl::Reference< RootAccess > configmgr::ChildAccess::getRootAccess ( )
overridevirtual

Implements configmgr::Access.

Definition at line 132 of file childaccess.cxx.

References root_.

Referenced by asValue(), and setProperty().

sal_Int64 configmgr::ChildAccess::getSomething ( css::uno::Sequence< sal_Int8 > const &  aIdentifier)
overridevirtual
css::uno::Sequence< sal_Int8 > const & configmgr::ChildAccess::getTunnelId ( )
static

Definition at line 63 of file childaccess.cxx.

Referenced by configmgr::Access::getFreeSetMember(), and getSomething().

bool configmgr::ChildAccess::isFinalized ( )
overridevirtual

Implements configmgr::Access.

Definition at line 123 of file childaccess.cxx.

References configmgr::Data::NO_LAYER, node_, and parent_.

bool configmgr::ChildAccess::isInTransaction ( ) const
inline

Definition at line 97 of file childaccess.hxx.

References inTransaction_.

css::uno::Any configmgr::ChildAccess::queryInterface ( css::uno::Type const &  aType)
overrideprivatevirtual
void configmgr::ChildAccess::release ( )
throw (
)
overridevirtual

Reimplemented from cppu::OWeakObject.

Definition at line 144 of file childaccess.cxx.

References cppu::OWeakObject::release().

void configmgr::ChildAccess::setNode ( rtl::Reference< Node > const &  node)

Definition at line 197 of file childaccess.cxx.

References node_.

void configmgr::ChildAccess::setParent ( css::uno::Reference< css::uno::XInterface > const &  )
overridevirtual
void configmgr::ChildAccess::setProperty ( css::uno::Any const &  value,
Modifications localModifications 
)
void configmgr::ChildAccess::unbind ( )
throw (
)

Definition at line 186 of file childaccess.cxx.

References assert(), inTransaction_, name_, and parent_.

Member Data Documentation

std::unique_ptr< css::uno::Any > configmgr::ChildAccess::changedValue_
private

Definition at line 128 of file childaccess.hxx.

Referenced by asValue(), commitChanges(), and setProperty().

bool configmgr::ChildAccess::inTransaction_
private

Definition at line 129 of file childaccess.hxx.

Referenced by committed(), isInTransaction(), and unbind().

std::shared_ptr<osl::Mutex> configmgr::ChildAccess::lock_
private

Definition at line 131 of file childaccess.hxx.

Referenced by getParent(), getSomething(), queryInterface(), setParent(), and ~ChildAccess().

OUString configmgr::ChildAccess::name_
private
rtl::Reference< Node > configmgr::ChildAccess::node_
private
rtl::Reference< Access > configmgr::ChildAccess::parent_
private

Definition at line 125 of file childaccess.hxx.

Referenced by getParent(), getParentAccess(), isFinalized(), unbind(), and ~ChildAccess().

rtl::Reference< RootAccess > configmgr::ChildAccess::root_
private

Definition at line 124 of file childaccess.hxx.

Referenced by getRootAccess().


The documentation for this class was generated from the following files: