summaryrefslogtreecommitdiff
path: root/framework
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2011-07-28 09:02:49 +0100
committerCaolán McNamara <caolanm@redhat.com>2011-07-28 09:02:49 +0100
commit625ddeb48632ab60a09a9cf7a109e7f00afcacf2 (patch)
treeb0cbe8fa9c45db608ed5c65b126ff3d46d8eedcb /framework
parent36a665a6754bbc4bb0a2d612a15b1b8413af3721 (diff)
callcatcher: ditch various unused methods
Diffstat (limited to 'framework')
-rw-r--r--framework/Library_fwe.mk1
-rw-r--r--framework/inc/xml/eventsdocumenthandler.hxx187
-rw-r--r--framework/source/fwe/xml/eventsdocumenthandler.cxx553
3 files changed, 0 insertions, 741 deletions
diff --git a/framework/Library_fwe.mk b/framework/Library_fwe.mk
index fefd7eb7dc8c..1b86e5f0e3b9 100644
--- a/framework/Library_fwe.mk
+++ b/framework/Library_fwe.mk
@@ -82,7 +82,6 @@ $(eval $(call gb_Library_add_exception_objects,fwe,\
framework/source/fwe/helper/documentundoguard \
framework/source/fwe/helper/undomanagerhelper \
framework/source/fwe/interaction/preventduplicateinteraction \
- framework/source/fwe/xml/eventsdocumenthandler \
framework/source/fwe/xml/menuconfiguration \
framework/source/fwe/xml/menudocumenthandler \
framework/source/fwe/xml/saxnamespacefilter \
diff --git a/framework/inc/xml/eventsdocumenthandler.hxx b/framework/inc/xml/eventsdocumenthandler.hxx
deleted file mode 100644
index fc678b88ac00..000000000000
--- a/framework/inc/xml/eventsdocumenthandler.hxx
+++ /dev/null
@@ -1,187 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef __FRAMEWORK_XML_EVENTSDOCUMENTHANDLER_HXX_
-#define __FRAMEWORK_XML_EVENTSDOCUMENTHANDLER_HXX_
-
-#include <framework/eventsconfiguration.hxx>
-
-//_________________________________________________________________________________________________________________
-// interface includes
-//_________________________________________________________________________________________________________________
-
-#include <com/sun/star/xml/sax/XDocumentHandler.hpp>
-
-//_________________________________________________________________________________________________________________
-// other includes
-//_________________________________________________________________________________________________________________
-#include <threadhelp/threadhelpbase.hxx>
-#include <rtl/ustring.hxx>
-#include <cppuhelper/implbase1.hxx>
-
-#include <boost/unordered_map.hpp>
-#include <stdtypes.h>
-
-#include <framework/fwedllapi.h>
-//_________________________________________________________________________________________________________________
-// namespace
-//_________________________________________________________________________________________________________________
-
-namespace framework{
-
-//*****************************************************************************************************************
-// Hash code function for using in all hash maps of follow implementation.
-
-class FWE_DLLPUBLIC OReadEventsDocumentHandler : private ThreadHelpBase, // Struct for right initalization of lock member! Must be first of baseclasses.
- public ::cppu::WeakImplHelper1< ::com::sun::star::xml::sax::XDocumentHandler >
-{
- public:
- enum Events_XML_Entry
- {
- EV_ELEMENT_EVENTS,
- EV_ELEMENT_EVENT,
- EV_ATTRIBUTE_TYPE,
- EV_ATTRIBUTE_NAME,
- XL_ATTRIBUTE_HREF,
- XL_ATTRIBUTE_TYPE,
- EV_ATTRIBUTE_MACRONAME,
- EV_ATTRIBUTE_LIBRARY,
- EV_XML_ENTRY_COUNT
- };
-
- enum Event_XML_Namespace
- {
- EV_NS_EVENT,
- EV_NS_XLINK,
- EV_XML_NAMESPACES_COUNT
- };
-
- OReadEventsDocumentHandler( EventsConfig& aItems );
-
-
- // XDocumentHandler
- virtual void SAL_CALL startDocument(void)
- throw ( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- virtual void SAL_CALL endDocument(void)
- throw( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- virtual void SAL_CALL startElement(
- const rtl::OUString& aName,
- const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList > &xAttribs)
- throw( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- virtual void SAL_CALL endElement(const rtl::OUString& aName)
- throw( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- virtual void SAL_CALL characters(const rtl::OUString& aChars)
- throw( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- virtual void SAL_CALL ignorableWhitespace(const rtl::OUString& aWhitespaces)
- throw( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- virtual void SAL_CALL processingInstruction(const rtl::OUString& aTarget,
- const rtl::OUString& aData)
- throw( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- virtual void SAL_CALL setDocumentLocator(
- const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XLocator > &xLocator)
- throw( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- protected:
- virtual ~OReadEventsDocumentHandler();
-
- private:
- ::rtl::OUString getErrorLineString();
-
- class EventsHashMap : public ::boost::unordered_map< ::rtl::OUString ,
- Events_XML_Entry ,
- OUStringHashCode ,
- ::std::equal_to< ::rtl::OUString > >
- {
- public:
- inline void free()
- {
- EventsHashMap().swap( *this );
- }
- };
-
- sal_Bool m_bEventsStartFound;
- sal_Bool m_bEventsEndFound;
- sal_Bool m_bEventStartFound;
- EventsHashMap m_aEventsMap;
- EventsConfig& m_aEventItems;
- ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XLocator > m_xLocator;
-};
-
-class FWE_DLLPUBLIC OWriteEventsDocumentHandler : private ThreadHelpBase // Struct for right initalization of lock member! Must be first of baseclasses.
-{
- public:
- OWriteEventsDocumentHandler(
- const EventsConfig& aItems,
- ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XDocumentHandler > );
- virtual ~OWriteEventsDocumentHandler();
-
- void WriteEventsDocument() throw
- ( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- protected:
- virtual void WriteEvent(
- const ::rtl::OUString& aEventName,
- const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aPropertyValue ) throw
- ( ::com::sun::star::xml::sax::SAXException,
- ::com::sun::star::uno::RuntimeException );
-
- const EventsConfig& m_aItems;
- ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XDocumentHandler > m_xWriteDocumentHandler;
- ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList > m_xEmptyList;
- ::rtl::OUString m_aXMLEventNS;
- ::rtl::OUString m_aXMLXlinkNS;
- ::rtl::OUString m_aAttributeType;
- ::rtl::OUString m_aAttributeURL;
- ::rtl::OUString m_aAttributeLanguage;
- ::rtl::OUString m_aAttributeLinkType;
- ::rtl::OUString m_aAttributeMacroName;
- ::rtl::OUString m_aAttributeLibrary;
- ::rtl::OUString m_aAttributeName;
-};
-
-} // namespace framework
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/framework/source/fwe/xml/eventsdocumenthandler.cxx b/framework/source/fwe/xml/eventsdocumenthandler.cxx
deleted file mode 100644
index 31a4ff7e11dd..000000000000
--- a/framework/source/fwe/xml/eventsdocumenthandler.cxx
+++ /dev/null
@@ -1,553 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_framework.hxx"
-
-#include <framework/fwedllapi.h>
-#include <stdio.h>
-
-//_________________________________________________________________________________________________________________
-// my own includes
-//_________________________________________________________________________________________________________________
-
-#include <threadhelp/resetableguard.hxx>
-#include <xml/eventsdocumenthandler.hxx>
-#include <macros/debug.hxx>
-
-//_________________________________________________________________________________________________________________
-// interface includes
-//_________________________________________________________________________________________________________________
-
-#include <com/sun/star/xml/sax/XExtendedDocumentHandler.hpp>
-
-//_________________________________________________________________________________________________________________
-// other includes
-//_________________________________________________________________________________________________________________
-
-#include <sal/config.h>
-#include <vcl/svapp.hxx>
-#include <vcl/toolbox.hxx>
-
-#include <comphelper/attributelist.hxx>
-
-//_________________________________________________________________________________________________________________
-// namespace
-//_________________________________________________________________________________________________________________
-
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::xml::sax;
-
-
-#define XMLNS_EVENT "http://openoffice.org/2001/event"
-#define XMLNS_XLINK "http://www.w3.org/1999/xlink"
-#define XMLNS_EVENT_PREFIX "event:"
-#define XMLNS_XLINK_PREFIX "xlink:"
-
-#define ATTRIBUTE_XMLNS_EVENT "xmlns:event"
-#define ATTRIBUTE_XMLNS_XLINK "xmlns:xlink"
-
-#define XMLNS_FILTER_SEPARATOR "^"
-
-#define ELEMENT_EVENTS "events"
-#define ELEMENT_EVENT "event"
-
-#define ATTRIBUTE_LANGUAGE "language"
-#define ATTRIBUTE_LIBRARY "library"
-#define ATTRIBUTE_NAME "name"
-#define ATTRIBUTE_HREF "href"
-#define ATTRIBUTE_TYPE "type"
-#define ATTRIBUTE_MACRONAME "macro-name"
-
-#define ELEMENT_NS_EVENTS "event:events"
-#define ELEMENT_NS_EVENT "event:event"
-
-#define ATTRIBUTE_TYPE_CDATA "CDATA"
-
-#define EVENTS_DOCTYPE "<!DOCTYPE event:events PUBLIC \"-//OpenOffice.org//DTD OfficeDocument 1.0//EN\" \"event.dtd\">"
-
-// Property names for events
-#define PROP_EVENT_TYPE "EventType"
-#define PROP_LIBRARY "Library"
-#define PROP_SCRIPT "Script"
-#define PROP_MACRO_NAME "MacroName"
-#define STAR_BASIC "StarBasic"
-#define JAVA_SCRIPT "JavaScript"
-
-
-namespace framework
-{
-
-struct EventEntryProperty
-{
- OReadEventsDocumentHandler::Event_XML_Namespace nNamespace;
- char aEntryName[20];
-};
-
-static EventEntryProperty EventEntries[OReadEventsDocumentHandler::EV_XML_ENTRY_COUNT] =
-{
- { OReadEventsDocumentHandler::EV_NS_EVENT, ELEMENT_EVENTS },
- { OReadEventsDocumentHandler::EV_NS_EVENT, ELEMENT_EVENT },
- { OReadEventsDocumentHandler::EV_NS_EVENT, ATTRIBUTE_LANGUAGE },
- { OReadEventsDocumentHandler::EV_NS_EVENT, ATTRIBUTE_NAME },
- { OReadEventsDocumentHandler::EV_NS_XLINK, ATTRIBUTE_HREF },
- { OReadEventsDocumentHandler::EV_NS_XLINK, ATTRIBUTE_TYPE },
- { OReadEventsDocumentHandler::EV_NS_EVENT, ATTRIBUTE_MACRONAME },
- { OReadEventsDocumentHandler::EV_NS_EVENT, ATTRIBUTE_LIBRARY }
-};
-
-
-OReadEventsDocumentHandler::OReadEventsDocumentHandler( EventsConfig& aItems ) :
- ThreadHelpBase( &Application::GetSolarMutex() ),
- m_aEventItems( aItems )
-{
- ::rtl::OUString aNamespaceEvent( RTL_CONSTASCII_USTRINGPARAM( XMLNS_EVENT ));
- ::rtl::OUString aNamespaceXLink( RTL_CONSTASCII_USTRINGPARAM( XMLNS_XLINK ));
- ::rtl::OUString aSeparator( RTL_CONSTASCII_USTRINGPARAM( XMLNS_FILTER_SEPARATOR ));
-
- // create hash map
- for ( int i = 0; i < (int)EV_XML_ENTRY_COUNT; i++ )
- {
- if ( EventEntries[i].nNamespace == EV_NS_EVENT )
- {
- ::rtl::OUString temp( aNamespaceEvent );
- temp += aSeparator;
- temp += ::rtl::OUString::createFromAscii( EventEntries[i].aEntryName );
- m_aEventsMap.insert( EventsHashMap::value_type( temp, (Events_XML_Entry)i ) );
- }
- else
- {
- ::rtl::OUString temp( aNamespaceXLink );
- temp += aSeparator;
- temp += ::rtl::OUString::createFromAscii( EventEntries[i].aEntryName );
- m_aEventsMap.insert( EventsHashMap::value_type( temp, (Events_XML_Entry)i ) );
- }
- }
-
- m_bEventsStartFound = sal_False;
- m_bEventsEndFound = sal_False;
- m_bEventStartFound = sal_False;
-}
-
-OReadEventsDocumentHandler::~OReadEventsDocumentHandler()
-{
-}
-
-// XDocumentHandler
-void SAL_CALL OReadEventsDocumentHandler::startDocument(void)
-throw ( SAXException, RuntimeException )
-{
-}
-
-void SAL_CALL OReadEventsDocumentHandler::endDocument(void)
-throw( SAXException, RuntimeException )
-{
- ResetableGuard aGuard( m_aLock );
-
- if (( m_bEventsStartFound && !m_bEventsEndFound ) ||
- ( !m_bEventsStartFound && m_bEventsEndFound ) )
- {
- ::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "No matching start or end element 'event:events' found!" ));
- throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
- }
-}
-
-void SAL_CALL OReadEventsDocumentHandler::startElement(
- const ::rtl::OUString& aName, const Reference< XAttributeList > &xAttribs )
-throw( SAXException, RuntimeException )
-{
- ResetableGuard aGuard( m_aLock );
-
- EventsHashMap::const_iterator pEventEntry = m_aEventsMap.find( aName );
- if ( pEventEntry != m_aEventsMap.end() )
- {
- switch ( pEventEntry->second )
- {
- case EV_ELEMENT_EVENTS:
- {
- if ( m_bEventsStartFound )
- {
- ::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'event:events' cannot be embeded into 'event:events'!" ));
- throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
- }
-
- m_bEventsStartFound = sal_True;
- }
- break;
-
- case EV_ELEMENT_EVENT:
- {
- if ( !m_bEventsStartFound )
- {
- ::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element 'event:event' must be embeded into element 'event:events'!" ));
- throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
- }
-
- if ( m_bEventStartFound )
- {
- ::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Element event:event is not a container!" ));
- throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
- }
-
- ::rtl::OUString aLanguage;
- ::rtl::OUString aURL;
- ::rtl::OUString aMacroName;
- ::rtl::OUString aLibrary;
- ::rtl::OUString aEventName;
-
- m_bEventStartFound = sal_True;
-
- long nIndex = m_aEventItems.aEventNames.getLength();
- long nPropCount = 2; // every event config entry needs at least 2 properties
- Sequence< PropertyValue > aEventProperties( nPropCount );
-
- m_aEventItems.aEventNames.realloc( nIndex + 1 );
-
- for ( sal_Int16 n = 0; n < xAttribs->getLength(); n++ )
- {
- pEventEntry = m_aEventsMap.find( xAttribs->getNameByIndex( n ) );
- if ( pEventEntry != m_aEventsMap.end() )
- {
- switch ( pEventEntry->second )
- {
- case EV_ATTRIBUTE_TYPE:
- {
- aLanguage = xAttribs->getValueByIndex( n );
- }
- break;
-
- case EV_ATTRIBUTE_NAME:
- {
- aEventName = xAttribs->getValueByIndex( n );
- }
- break;
-
- case XL_ATTRIBUTE_HREF:
- {
- aURL = xAttribs->getValueByIndex( n );
- }
- break;
-
- case EV_ATTRIBUTE_MACRONAME:
- {
- aMacroName = xAttribs->getValueByIndex( n );
- }
- break;
-
- case EV_ATTRIBUTE_LIBRARY:
- {
- aLibrary = xAttribs->getValueByIndex( n );
- }
- break;
-
- default:
- break; // nothing to do
- }
- }
- } // for
-
- ::rtl::OUString aRequiredAttributeName;
- if ( aLanguage.getLength() == 0 )
- aRequiredAttributeName = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_TYPE ));
- else if ( aEventName.getLength() == 0 )
- aRequiredAttributeName = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_NAME ));
-
- // check for missing attribute values
- if ( aRequiredAttributeName.getLength() > 0 )
- {
- ::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "Required attribute "));
- aErrorMessage += aRequiredAttributeName;
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( " must have a value!" ));
- throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
- }
-
- Any a;
-
- // set properties
- a <<= aLanguage;
- aEventProperties[0].Value <<= a;
- aEventProperties[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( PROP_EVENT_TYPE ));
-
- a <<= aMacroName;
- aEventProperties[1].Value <<= a;
- aEventProperties[1].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( PROP_MACRO_NAME ));
-
- if ( aLibrary.getLength() > 0 )
- {
- ++nPropCount;
- aEventProperties.realloc( nPropCount );
- a <<= aLibrary;
- aEventProperties[nPropCount-1].Value <<= a;
- aEventProperties[nPropCount-1].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( PROP_LIBRARY ));
- }
-
- if ( aURL.getLength() > 0 )
- {
- ++nPropCount;
- aEventProperties.realloc( nPropCount );
- a <<= aURL;
- aEventProperties[nPropCount-1].Value <<= a;
- aEventProperties[nPropCount-1].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( PROP_SCRIPT ));
- }
-
- // set event name
- m_aEventItems.aEventNames[ nIndex ] = aEventName;
-
- m_aEventItems.aEventsProperties.realloc( nIndex + 1 );
- a <<= aEventProperties;
- m_aEventItems.aEventsProperties[ nIndex ] = a;
- }
- break;
-
- default:
- break;
- }
- }
-}
-
-void SAL_CALL OReadEventsDocumentHandler::endElement(const ::rtl::OUString& aName)
-throw( SAXException, RuntimeException )
-{
- ResetableGuard aGuard( m_aLock );
-
- EventsHashMap::const_iterator pEventEntry = m_aEventsMap.find( aName );
- if ( pEventEntry != m_aEventsMap.end() )
- {
- switch ( pEventEntry->second )
- {
- case EV_ELEMENT_EVENTS:
- {
- if ( !m_bEventsStartFound )
- {
- ::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "End element 'event:events' found, but no start element" ));
- throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
- }
-
- m_bEventsStartFound = sal_False;
- }
- break;
-
- case EV_ELEMENT_EVENT:
- {
- if ( !m_bEventStartFound )
- {
- ::rtl::OUString aErrorMessage = getErrorLineString();
- aErrorMessage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "End element 'event:event' found, but no start element" ));
- throw SAXException( aErrorMessage, Reference< XInterface >(), Any() );
- }
-
- m_bEventStartFound = sal_False;
- }
- break;
-
- default:
- break; // impossible case
- }
- }
-}
-
-void SAL_CALL OReadEventsDocumentHandler::characters(const ::rtl::OUString&)
-throw( SAXException, RuntimeException )
-{
-}
-
-void SAL_CALL OReadEventsDocumentHandler::ignorableWhitespace(const ::rtl::OUString&)
-throw( SAXException, RuntimeException )
-{
-}
-
-void SAL_CALL OReadEventsDocumentHandler::processingInstruction(
- const ::rtl::OUString& /*aTarget*/, const ::rtl::OUString& /*aData*/ )
-throw( SAXException, RuntimeException )
-{
-}
-
-void SAL_CALL OReadEventsDocumentHandler::setDocumentLocator(
- const Reference< XLocator > &xLocator)
-throw( SAXException, RuntimeException )
-{
- ResetableGuard aGuard( m_aLock );
-
- m_xLocator = xLocator;
-}
-
-::rtl::OUString OReadEventsDocumentHandler::getErrorLineString()
-{
- ResetableGuard aGuard( m_aLock );
-
- char buffer[32];
-
- if ( m_xLocator.is() )
- {
- snprintf( buffer, sizeof(buffer), "Line: %ld - ", static_cast<long>(m_xLocator->getLineNumber() ));
- return ::rtl::OUString::createFromAscii( buffer );
- }
- else
- return ::rtl::OUString();
-}
-
-
-//_________________________________________________________________________________________________________________
-// OWriteEventsDocumentHandler
-//_________________________________________________________________________________________________________________
-
-OWriteEventsDocumentHandler::OWriteEventsDocumentHandler(
- const EventsConfig& aItems,
- Reference< XDocumentHandler > rWriteDocumentHandler ) :
- ThreadHelpBase( &Application::GetSolarMutex() ),
- m_aItems( aItems ),
- m_xWriteDocumentHandler( rWriteDocumentHandler )
-{
- ::comphelper::AttributeList* pList = new ::comphelper::AttributeList;
- m_xEmptyList = Reference< XAttributeList >( (XAttributeList *) pList, UNO_QUERY );
- m_aAttributeType = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_TYPE_CDATA ));
- m_aXMLXlinkNS = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( XMLNS_XLINK_PREFIX ));
- m_aXMLEventNS = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( XMLNS_EVENT_PREFIX ));
-}
-
-OWriteEventsDocumentHandler::~OWriteEventsDocumentHandler()
-{
-}
-
-void OWriteEventsDocumentHandler::WriteEventsDocument() throw
-( SAXException, RuntimeException )
-{
- ResetableGuard aGuard( m_aLock );
-
- m_xWriteDocumentHandler->startDocument();
-
- // write DOCTYPE line!
- Reference< XExtendedDocumentHandler > xExtendedDocHandler( m_xWriteDocumentHandler, UNO_QUERY );
- if ( xExtendedDocHandler.is() )
- {
- xExtendedDocHandler->unknown( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( EVENTS_DOCTYPE )) );
- m_xWriteDocumentHandler->ignorableWhitespace( ::rtl::OUString() );
- }
-
- ::comphelper::AttributeList* pList = new ::comphelper::AttributeList;
- Reference< XAttributeList > xList( (XAttributeList *) pList , UNO_QUERY );
-
- pList->AddAttribute( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_XMLNS_EVENT )),
- m_aAttributeType,
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( XMLNS_EVENT )) );
- pList->AddAttribute( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_XMLNS_XLINK )),
- m_aAttributeType,
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( XMLNS_XLINK )) );
-
- m_xWriteDocumentHandler->startElement( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ELEMENT_NS_EVENTS )), pList );
- m_xWriteDocumentHandler->ignorableWhitespace( ::rtl::OUString() );
-
- Sequence< PropertyValue > aEventProperties;
-
- for ( int i = 0; i < m_aItems.aEventNames.getLength(); i++ )
- {
- if ( m_aItems.aEventsProperties[i] >>= aEventProperties )
- WriteEvent( m_aItems.aEventNames[i], aEventProperties );
- }
-
- m_xWriteDocumentHandler->ignorableWhitespace( ::rtl::OUString() );
- m_xWriteDocumentHandler->endElement( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ELEMENT_NS_EVENTS )) );
-
- m_xWriteDocumentHandler->ignorableWhitespace( ::rtl::OUString() );
- m_xWriteDocumentHandler->endDocument();
-}
-
-//_________________________________________________________________________________________________________________
-// protected member functions
-//_________________________________________________________________________________________________________________
-
-void OWriteEventsDocumentHandler::WriteEvent( const ::rtl::OUString& aEventName, const Sequence< PropertyValue >& aPropertyValues ) throw
-( SAXException, RuntimeException )
-{
- if ( aPropertyValues.getLength() > 0 )
- {
- ::comphelper::AttributeList* pList = new ::comphelper::AttributeList;
- Reference< XAttributeList > xList( (XAttributeList *) pList , UNO_QUERY );
-
- if ( m_aAttributeURL.getLength() == 0 )
- {
- m_aAttributeURL = m_aXMLXlinkNS;
- m_aAttributeURL += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_HREF ));
- m_aAttributeLinkType = m_aXMLXlinkNS;
- m_aAttributeLinkType += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_TYPE ));
- m_aAttributeLanguage = m_aXMLEventNS;
- m_aAttributeLanguage += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_LANGUAGE ));
- m_aAttributeMacroName = m_aXMLEventNS;
- m_aAttributeMacroName += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_MACRONAME ));
- m_aAttributeLibrary = m_aXMLEventNS;
- m_aAttributeLibrary += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_LIBRARY ));
- m_aAttributeName = m_aXMLEventNS;
- m_aAttributeName += ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ATTRIBUTE_NAME ));
- }
-
- pList->AddAttribute( m_aAttributeName, m_aAttributeType, aEventName );
-
- sal_Bool bURLSet = sal_False;
- ::rtl::OUString aValue;
- ::rtl::OUString aName;
-
- // save attributes
- for ( int i = 0; i < aPropertyValues.getLength(); i++ )
- {
- aPropertyValues[i].Value >>= aValue;
- if ( aPropertyValues[i].Name.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( PROP_EVENT_TYPE )))
- pList->AddAttribute( m_aAttributeLanguage, m_aAttributeType, aValue );
- else if ( aPropertyValues[i].Name.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( PROP_MACRO_NAME )) &&
- aValue.getLength() > 0 )
- pList->AddAttribute( m_aAttributeMacroName, m_aAttributeType, aValue );
- else if ( aPropertyValues[i].Name.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( PROP_LIBRARY )) &&
- aValue.getLength() > 0 )
- pList->AddAttribute( m_aAttributeLibrary, m_aAttributeType, aValue );
- else if ( aPropertyValues[i].Name.equalsAsciiL( RTL_CONSTASCII_STRINGPARAM( PROP_SCRIPT )))
- {
- pList->AddAttribute( m_aAttributeURL, m_aAttributeType, aValue );
- bURLSet = sal_True;
- }
- }
-
- if ( bURLSet )
- pList->AddAttribute( m_aAttributeLinkType, m_aAttributeType, ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "simple" )) );
-
- m_xWriteDocumentHandler->startElement( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ELEMENT_NS_EVENT )), xList );
- m_xWriteDocumentHandler->ignorableWhitespace( ::rtl::OUString() );
-
- m_xWriteDocumentHandler->endElement( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( ELEMENT_NS_EVENT )) );
- m_xWriteDocumentHandler->ignorableWhitespace( ::rtl::OUString() );
- }
-}
-
-} // namespace framework
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */