20#ifndef INCLUDED_PACKAGE_SOURCE_XSTOR_OHIERARCHYHOLDER_HXX
21#define INCLUDED_PACKAGE_SOURCE_XSTOR_OHIERARCHYHOLDER_HXX
23#include <com/sun/star/embed/XStorage.hpp>
24#include <com/sun/star/embed/XTransactionListener.hpp>
25#include <com/sun/star/embed/XExtendedStorageStream.hpp>
33#include <unordered_map>
39typedef std::unordered_map< OUString,
42typedef ::std::vector< css::uno::WeakReference< css::embed::XExtendedStorageStream > >
68 void SetParent( const ::rtl::Reference< OHierarchyElement_Impl >& rParent ) {
m_rParent = rParent; }
72 void RemoveElement( const ::rtl::Reference< OHierarchyElement_Impl >& aRef );
74 css::uno::Reference< css::embed::XExtendedStorageStream >
76 std::vector<OUString>& aPath,
77 sal_Int32 nStreamMode,
78 const ::comphelper::SequenceAsHashMap& aEncryptionData );
83 virtual void SAL_CALL
disposing(
const css::lang::EventObject& Source )
override;
86 virtual void SAL_CALL
preCommit(
const css::lang::EventObject& aEvent )
override;
87 virtual void SAL_CALL
commited(
const css::lang::EventObject& aEvent )
override;
88 virtual void SAL_CALL
preRevert(
const css::lang::EventObject& aEvent )
override;
89 virtual void SAL_CALL
reverted(
const css::lang::EventObject& aEvent )
override;
105 css::uno::Reference< css::embed::XExtendedStorageStream >
107 std::vector<OUString>& aListPath,
108 sal_Int32 nStreamMode,
OHierarchyElement_Impl(css::uno::Reference< css::embed::XStorage > xStorage)
virtual void SAL_CALL preCommit(const css::lang::EventObject &aEvent) override
OWeakStorRefVector_Impl m_aOpenStreams
css::uno::WeakReference< css::embed::XStorage > m_xWeakOwnStorage
virtual void SAL_CALL disposing(const css::lang::EventObject &Source) override
::rtl::Reference< OHierarchyElement_Impl > m_rParent
OHierarchyElementList_Impl m_aChildren
css::uno::Reference< css::embed::XStorage > m_xOwnStorage
css::uno::Reference< css::embed::XExtendedStorageStream > GetStreamHierarchically(sal_Int32 nStorageMode, std::vector< OUString > &aPath, sal_Int32 nStreamMode, const ::comphelper::SequenceAsHashMap &aEncryptionData)
void SetParent(const ::rtl::Reference< OHierarchyElement_Impl > &rParent)
virtual void SAL_CALL preRevert(const css::lang::EventObject &aEvent) override
virtual void SAL_CALL reverted(const css::lang::EventObject &aEvent) override
OHierarchyElement_Impl(css::uno::WeakReference< css::embed::XStorage > xWeakStorage)
virtual void SAL_CALL commited(const css::lang::EventObject &aEvent) override
void RemoveElement(const ::rtl::Reference< OHierarchyElement_Impl > &aRef)
void RemoveStreamHierarchically(std::vector< OUString > &aListPath)
css::uno::WeakReference< css::embed::XStorage > m_xWeakOwnStorage
css::uno::Reference< css::embed::XExtendedStorageStream > GetStreamHierarchically(sal_Int32 nStorageMode, std::vector< OUString > &aListPath, sal_Int32 nStreamMode, const ::comphelper::SequenceAsHashMap &aEncryptionData=::comphelper::SequenceAsHashMap())
OHierarchyHolder_Impl(const css::uno::Reference< css::embed::XStorage > &xOwnStorage)
void RemoveStreamHierarchically(std::vector< OUString > &aListPath)
static std::vector< OUString > GetListPathFromString(std::u16string_view aPath)
::rtl::Reference< OHierarchyElement_Impl > m_xChild
std::unordered_map< OUString, ::rtl::Reference< OHierarchyElement_Impl > > OHierarchyElementList_Impl
::std::vector< css::uno::WeakReference< css::embed::XExtendedStorageStream > > OWeakStorRefVector_Impl