22#include <com/sun/star/xml/crypto/sax/XSecuritySAXEventKeeper.hpp>
23#include <com/sun/star/xml/crypto/sax/XReferenceResolvedBroadcaster.hpp>
24#include <com/sun/star/xml/crypto/sax/XSAXEventKeeperStatusChangeBroadcaster.hpp>
25#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
26#include <com/sun/star/lang/XInitialization.hpp>
27#include <com/sun/star/lang/XServiceInfo.hpp>
43 css::xml::crypto::sax::XSecuritySAXEventKeeper,
44 css::xml::crypto::sax::XReferenceResolvedBroadcaster,
45 css::xml::crypto::sax::XSAXEventKeeperStatusChangeBroadcaster,
46 css::xml::sax::XDocumentHandler,
47 css::lang::XInitialization,
48 css::lang::XServiceInfo
65 css::uno::Reference< css::xml::wrapper::XXMLDocumentWrapper >
78 css::uno::Reference< css::xml::csax::XCompressedDocumentHandler >
88 css::uno::Reference< css::xml::crypto::sax::XSAXEventKeeperStatusChangeListener >
188 BufferNode const * pBufferNode, sal_Int32 nIndent)
const;
190 static css::uno::Sequence< css::uno::Reference< css::xml::wrapper::XXMLElementWrapper > >
194 BufferNode* pBufferNode,
bool bClearRoot)
const;
206 css::xml::crypto::sax::ElementMarkPriority nPriority,
208 const css::uno::Reference< css::xml::crypto::sax::XReferenceResolvedListener>& xReferenceResolvedListener);
222 virtual sal_Int32 SAL_CALL
addBlocker( )
override;
223 virtual void SAL_CALL
removeBlocker( sal_Int32
id )
override;
225 virtual css::uno::Reference< css::xml::wrapper::XXMLElementWrapper > SAL_CALL
229 const css::uno::Reference< css::xml::wrapper::XXMLElementWrapper >& aElement )
override;
230 virtual css::uno::Reference<
231 css::xml::sax::XDocumentHandler > SAL_CALL
233 css::xml::sax::XDocumentHandler >& xNewHandler )
override;
235 virtual css::uno::Reference< css::xml::wrapper::XXMLElementWrapper > SAL_CALL
240 css::xml::crypto::sax::ElementMarkPriority priority,
242 virtual void SAL_CALL
setSecurityId( sal_Int32
id, sal_Int32 securityId )
override;
246 sal_Int32 referenceId,
247 const css::uno::Reference< css::xml::crypto::sax::XReferenceResolvedListener >& listener )
override;
249 sal_Int32 referenceId,
250 const css::uno::Reference< css::xml::crypto::sax::XReferenceResolvedListener >& listener )
override;
254 const css::uno::Reference< css::xml::crypto::sax::XSAXEventKeeperStatusChangeListener >& listener )
override;
256 const css::uno::Reference< css::xml::crypto::sax::XSAXEventKeeperStatusChangeListener >& listener )
override;
262 const OUString& aName,
263 const css::uno::Reference< css::xml::sax::XAttributeList >&
265 virtual void SAL_CALL
endElement(
const OUString& aName )
override;
266 virtual void SAL_CALL
characters(
const OUString& aChars )
override;
269 const OUString& aTarget,
const OUString& aData )
override;
271 const css::uno::Reference< css::xml::sax::XLocator >& xLocator )
override;
275 const css::uno::Sequence< css::uno::Any >& aArguments )
override;
SAXEventKeeperImpl & operator=(const SAXEventKeeperImpl &)=delete
OUString printBufferNode(BufferNode const *pBufferNode, sal_Int32 nIndent) const
std::vector< const ElementCollector * > m_vNewElementCollectors
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
virtual void SAL_CALL removeSAXEventKeeperStatusChangeListener(const css::uno::Reference< css::xml::crypto::sax::XSAXEventKeeperStatusChangeListener > &listener) override
virtual void SAL_CALL addSAXEventKeeperStatusChangeListener(const css::uno::Reference< css::xml::crypto::sax::XSAXEventKeeperStatusChangeListener > &listener) override
ElementMark * m_pNewBlocker
virtual void SAL_CALL setElement(sal_Int32 id, const css::uno::Reference< css::xml::wrapper::XXMLElementWrapper > &aElement) override
virtual void SAL_CALL setSecurityId(sal_Int32 id, sal_Int32 securityId) override
virtual void SAL_CALL removeBlocker(sal_Int32 id) override
virtual void SAL_CALL endDocument() override
virtual void SAL_CALL removeElementCollector(sal_Int32 id) override
virtual OUString SAL_CALL getImplementationName() override
css::uno::Reference< css::xml::sax::XDocumentHandler > m_xDocumentHandler
BufferNode * m_pCurrentBufferNode
virtual void SAL_CALL processingInstruction(const OUString &aTarget, const OUString &aData) override
virtual sal_Int32 SAL_CALL addBlocker() override
virtual void SAL_CALL startElement(const OUString &aName, const css::uno::Reference< css::xml::sax::XAttributeList > &xAttribs) override
sal_Int32 m_nNextElementMarkId
virtual void SAL_CALL addReferenceResolvedListener(sal_Int32 referenceId, const css::uno::Reference< css::xml::crypto::sax::XReferenceResolvedListener > &listener) override
virtual css::uno::Reference< css::xml::sax::XDocumentHandler > SAL_CALL setNextHandler(const css::uno::Reference< css::xml::sax::XDocumentHandler > &xNewHandler) override
css::uno::Reference< css::xml::wrapper::XXMLDocumentWrapper > m_xXMLDocument
virtual css::uno::Reference< css::xml::wrapper::XXMLElementWrapper > SAL_CALL getCurrentBlockingNode() override
void setCurrentBufferNode(BufferNode *pBufferNode)
sal_Int32 createElementCollector(css::xml::crypto::sax::ElementMarkPriority nPriority, bool bModifyElement, const css::uno::Reference< css::xml::crypto::sax::XReferenceResolvedListener > &xReferenceResolvedListener)
virtual sal_Int32 SAL_CALL addElementCollector() override
sal_Int32 createBlocker()
virtual void SAL_CALL startDocument() override
virtual void SAL_CALL initialize(const css::uno::Sequence< css::uno::Any > &aArguments) override
ElementMark * findElementMarkBuffer(sal_Int32 nId) const
void releaseElementMarkBuffer()
static css::uno::Sequence< css::uno::Reference< css::xml::wrapper::XXMLElementWrapper > > collectChildWorkingElement(BufferNode const *pBufferNode)
virtual void SAL_CALL ignorableWhitespace(const OUString &aWhitespaces) override
std::vector< sal_Int32 > m_vReleasedElementMarkBuffers
BufferNode * addNewElementMarkBuffers()
css::uno::Reference< css::xml::sax::XDocumentHandler > m_xNextHandler
void smashBufferNode(BufferNode *pBufferNode, bool bClearRoot) const
virtual void SAL_CALL removeReferenceResolvedListener(sal_Int32 referenceId, const css::uno::Reference< css::xml::crypto::sax::XReferenceResolvedListener > &listener) override
SAXEventKeeperImpl(const SAXEventKeeperImpl &)=delete
virtual sal_Int32 SAL_CALL addSecurityElementCollector(css::xml::crypto::sax::ElementMarkPriority priority, sal_Bool modifyElement) override
css::uno::Reference< css::xml::crypto::sax::XSAXEventKeeperStatusChangeListener > m_xSAXEventKeeperStatusChangeListener
void removeElementMarkBuffer(sal_Int32 nId)
virtual OUString SAL_CALL printBufferNodeTree() override
std::unique_ptr< BufferNode > m_pRootBufferNode
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual void SAL_CALL setDocumentLocator(const css::uno::Reference< css::xml::sax::XLocator > &xLocator) override
static BufferNode * findNextBlockingBufferNode(BufferNode *pStartBufferNode)
virtual void SAL_CALL endElement(const OUString &aName) override
virtual ~SAXEventKeeperImpl() override
virtual css::uno::Reference< css::xml::wrapper::XXMLElementWrapper > SAL_CALL getElement(sal_Int32 id) override
css::uno::Reference< css::xml::csax::XCompressedDocumentHandler > m_xCompressedDocumentHandler
virtual void SAL_CALL characters(const OUString &aChars) override
BufferNode * m_pCurrentBlockingBufferNode
virtual sal_Bool SAL_CALL isBlocking() override
static void diffuse(BufferNode *pBufferNode)
void markElementMarkBuffer(sal_Int32 nId)
std::vector< std::unique_ptr< const ElementMark > > m_vElementMarkBuffers
css::uno::Sequence< OUString > SAXEventKeeperImpl_getSupportedServiceNames()
OUString SAXEventKeeperImpl_getImplementationName()