LCOV - code coverage report
Current view: top level - scripting/source/stringresource - stringresource.hxx (source / functions) Hit Total Coverage
Test: commit c8344322a7af75b84dd3ca8f78b05543a976dfd5 Lines: 0 4 0.0 %
Date: 2015-06-13 12:38:46 Functions: 0 2 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       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             : #ifndef INCLUDED_SCRIPTING_SOURCE_STRINGRESOURCE_STRINGRESOURCE_HXX
      21             : #define INCLUDED_SCRIPTING_SOURCE_STRINGRESOURCE_STRINGRESOURCE_HXX
      22             : 
      23             : #include <com/sun/star/resource/XStringResourceWithStorage.hpp>
      24             : #include <com/sun/star/resource/XStringResourceWithLocation.hpp>
      25             : #include <com/sun/star/lang/XServiceInfo.hpp>
      26             : #include <com/sun/star/lang/XInitialization.hpp>
      27             : #include <com/sun/star/uno/XComponentContext.hpp>
      28             : #include <com/sun/star/ucb/XSimpleFileAccess3.hpp>
      29             : #include <com/sun/star/io/XInputStream.hpp>
      30             : #include <com/sun/star/io/XOutputStream.hpp>
      31             : #include <cppuhelper/implbase1.hxx>
      32             : #include <cppuhelper/implbase2.hxx>
      33             : #include <cppuhelper/interfacecontainer.hxx>
      34             : #include <osl/mutex.hxx>
      35             : 
      36             : #include <unordered_map>
      37             : #include <vector>
      38             : 
      39             : 
      40             : namespace stringresource
      41             : {
      42             : 
      43             : 
      44             : 
      45             : // mutex
      46             : 
      47             : 
      48             : ::osl::Mutex& getMutex();
      49             : 
      50             : 
      51             : 
      52             : // class stringresourceImpl
      53             : 
      54             : 
      55             : // Hashtable to map string ids to string
      56             : typedef std::unordered_map
      57             : <
      58             :     OUString,
      59             :     OUString,
      60             :     OUStringHash
      61             : >
      62             : IdToStringMap;
      63             : 
      64             : typedef std::unordered_map
      65             : <
      66             :     OUString,
      67             :     sal_Int32,
      68             :     OUStringHash
      69             : >
      70             : IdToIndexMap;
      71             : 
      72             : 
      73           0 : struct LocaleItem
      74             : {
      75             :     ::com::sun::star::lang::Locale      m_locale;
      76             :     IdToStringMap                       m_aIdToStringMap;
      77             :     IdToIndexMap                        m_aIdToIndexMap;
      78             :     sal_Int32                           m_nNextIndex;
      79             :     bool                                m_bLoaded;
      80             :     bool                                m_bModified;
      81             : 
      82           0 :     LocaleItem( ::com::sun::star::lang::Locale locale, bool bLoaded=true )
      83             :         : m_locale( locale )
      84             :         , m_nNextIndex( 0 )
      85             :         , m_bLoaded( bLoaded )
      86           0 :         , m_bModified( false )
      87           0 :     {}
      88             : };
      89             : 
      90             : typedef std::vector< LocaleItem* > LocaleItemVector;
      91             : typedef std::vector< LocaleItem* >::iterator LocaleItemVectorIt;
      92             : typedef std::vector< LocaleItem* >::const_iterator LocaleItemVectorConstIt;
      93             : 
      94             : typedef ::cppu::WeakImplHelper2<
      95             :     ::com::sun::star::lang::XServiceInfo,
      96             :     ::com::sun::star::resource::XStringResourceManager > StringResourceImpl_BASE;
      97             : 
      98             : class StringResourceImpl : public StringResourceImpl_BASE
      99             : {
     100             : protected:
     101             :     ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >        m_xContext;
     102             :     ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiComponentFactory >  m_xMCF;
     103             : 
     104             :     LocaleItem*                                                                         m_pCurrentLocaleItem;
     105             :     LocaleItem*                                                                         m_pDefaultLocaleItem;
     106             :     bool                                                                                m_bDefaultModified;
     107             : 
     108             :     ::cppu::OInterfaceContainerHelper                                                   m_aListenerContainer;
     109             : 
     110             :     LocaleItemVector                                                                    m_aLocaleItemVector;
     111             :     LocaleItemVector                                                                    m_aDeletedLocaleItemVector;
     112             :     LocaleItemVector                                                                    m_aChangedDefaultLocaleVector;
     113             : 
     114             :     bool                                                                                m_bModified;
     115             :     bool                                                                                m_bReadOnly;
     116             : 
     117             :     sal_Int32                                                                           m_nNextUniqueNumericId;
     118             : 
     119             :     // Scans ResourceID to start with number and adapt m_nNextUniqueNumericId
     120             :     void implScanIdForNumber( const OUString& ResourceID );
     121             :     const static sal_Int32 UNIQUE_NUMBER_NEEDS_INITIALISATION = -1;
     122             : 
     123             :     // Checks read only status and throws exception if it's true
     124             :     void implCheckReadOnly( const sal_Char* pExceptionMsg )
     125             :         throw (::com::sun::star::lang::NoSupportException);
     126             : 
     127             :     // Return the context's MultiComponentFactory
     128             :     ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiComponentFactory >
     129             :         getMultiComponentFactory();
     130             : 
     131             :     // Returns the LocalItem for a given locale, if it exists, otherwise NULL
     132             :     // This method compares the locales exactly, no closest match search is performed
     133             :     LocaleItem* getItemForLocale( const ::com::sun::star::lang::Locale& locale, bool bException )
     134             :         throw (::com::sun::star::lang::IllegalArgumentException);
     135             : 
     136             :     // Returns the LocalItem for a given locale, if it exists, otherwise NULL
     137             :     // This method performs a closest match search, at least the language must match
     138             :     LocaleItem* getClosestMatchItemForLocale( const ::com::sun::star::lang::Locale& locale );
     139             :     void implSetCurrentLocale( const ::com::sun::star::lang::Locale& locale,
     140             :         bool FindClosestMatch, bool bUseDefaultIfNoMatch )
     141             :             throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
     142             : 
     143             :     void implModified();
     144             :     void implNotifyListeners();
     145             : 
     146             :     //=== Impl methods for ...ForLocale methods ===
     147             :     OUString SAL_CALL implResolveString( const OUString& ResourceID, LocaleItem* pLocaleItem )
     148             :         throw (::com::sun::star::resource::MissingResourceException);
     149             :     bool implHasEntryForId( const OUString& ResourceID, LocaleItem* pLocaleItem );
     150             :     ::com::sun::star::uno::Sequence< OUString > implGetResourceIDs( LocaleItem* pLocaleItem );
     151             :     void implSetString( const OUString& ResourceID,
     152             :         const OUString& Str, LocaleItem* pLocaleItem );
     153             :     void implRemoveId( const OUString& ResourceID, LocaleItem* pLocaleItem )
     154             :         throw (::com::sun::star::resource::MissingResourceException);
     155             : 
     156             :     // Method to load a locale if necessary, returns true if loading was
     157             :     // successful. Default implementation in base class just returns true.
     158             :     virtual bool loadLocale( LocaleItem* pLocaleItem );
     159             : 
     160             :     virtual void implLoadAllLocales();
     161             : 
     162             : public:
     163             :     StringResourceImpl(
     164             :         const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
     165             :     virtual ~StringResourceImpl();
     166             : 
     167             :     // XServiceInfo
     168             :     virtual OUString SAL_CALL getImplementationName(  )
     169             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     170             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     171             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     172             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames(  )
     173             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     174             : 
     175             :     // XModifyBroadcaster
     176             :     virtual void SAL_CALL addModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
     177             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     178             :     virtual void SAL_CALL removeModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
     179             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     180             : 
     181             :      // XStringResourceResolver
     182             :     virtual OUString SAL_CALL resolveString( const OUString& ResourceID )
     183             :         throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     184             :     virtual OUString SAL_CALL resolveStringForLocale( const OUString& ResourceID,
     185             :         const ::com::sun::star::lang::Locale& locale )
     186             :             throw ( ::com::sun::star::resource::MissingResourceException,
     187             :                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     188             :     virtual sal_Bool SAL_CALL hasEntryForId( const OUString& ResourceID )
     189             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     190             :     virtual sal_Bool SAL_CALL hasEntryForIdAndLocale( const OUString& ResourceID,
     191             :         const ::com::sun::star::lang::Locale& locale )
     192             :             throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     193             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getResourceIDs(  )
     194             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     195             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getResourceIDsForLocale
     196             :         ( const ::com::sun::star::lang::Locale& locale )
     197             :             throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     198             :     virtual ::com::sun::star::lang::Locale SAL_CALL getCurrentLocale(  )
     199             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     200             :     virtual ::com::sun::star::lang::Locale SAL_CALL getDefaultLocale(  )
     201             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     202             :     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::lang::Locale > SAL_CALL getLocales(  )
     203             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     204             : 
     205             :     // XStringResourceManager
     206             :     virtual sal_Bool SAL_CALL isReadOnly()
     207             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     208             :     virtual void SAL_CALL setCurrentLocale( const ::com::sun::star::lang::Locale& locale, sal_Bool FindClosestMatch )
     209             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     210             :     virtual void SAL_CALL setDefaultLocale( const ::com::sun::star::lang::Locale& locale )
     211             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException,
     212             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     213             :     virtual void SAL_CALL setString( const OUString& ResourceID, const OUString& Str )
     214             :         throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     215             :     virtual void SAL_CALL setStringForLocale( const OUString& ResourceID, const OUString& Str,
     216             :         const ::com::sun::star::lang::Locale& locale )
     217             :             throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     218             :     virtual void SAL_CALL removeId( const OUString& ResourceID )
     219             :         throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException,
     220             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     221             :     virtual void SAL_CALL removeIdForLocale( const OUString& ResourceID,
     222             :         const ::com::sun::star::lang::Locale& locale )
     223             :             throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException,
     224             :                    ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     225             :     virtual void SAL_CALL newLocale( const ::com::sun::star::lang::Locale& locale )
     226             :         throw (::com::sun::star::container::ElementExistException, ::com::sun::star::lang::IllegalArgumentException,
     227             :                ::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     228             :     virtual void SAL_CALL removeLocale( const ::com::sun::star::lang::Locale& locale )
     229             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException,
     230             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     231             :     virtual ::sal_Int32 SAL_CALL getUniqueNumericId(  )
     232             :         throw (::com::sun::star::lang::NoSupportException,
     233             :                ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     234             :  };
     235             : 
     236             : typedef ::cppu::ImplInheritanceHelper1<
     237             :         StringResourceImpl,
     238             :         ::com::sun::star::resource::XStringResourcePersistence > StringResourcePersistenceImpl_BASE;
     239             : 
     240             : class BinaryOutput;
     241             : 
     242             : class StringResourcePersistenceImpl : public StringResourcePersistenceImpl_BASE
     243             : {
     244             : protected:
     245             :     OUString                                                             m_aNameBase;
     246             :     OUString                                                             m_aComment;
     247             : 
     248             :     void SAL_CALL implInitializeCommonParameters
     249             :         ( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
     250             :             throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
     251             : 
     252             :     // Scan locale properties files
     253             :     virtual void implScanLocales();
     254             : 
     255             :     // Method to load a locale if necessary, returns true if loading was successful
     256             :     virtual bool loadLocale( LocaleItem* pLocaleItem ) SAL_OVERRIDE;
     257             : 
     258             :     // does the actual loading
     259             :     virtual bool implLoadLocale( LocaleItem* pLocaleItem );
     260             : 
     261             :     virtual void implLoadAllLocales() SAL_OVERRIDE;
     262             : 
     263             :     void implScanLocaleNames( const ::com::sun::star::uno::Sequence< OUString >& aContentSeq );
     264             :     static OUString implGetFileNameForLocaleItem( LocaleItem* pLocaleItem, const OUString& aNameBase );
     265             :     static OUString implGetPathForLocaleItem( LocaleItem* pLocaleItem, const OUString& aNameBase,
     266             :         const OUString& aLocation, bool bDefaultFile=false );
     267             : 
     268             :     bool implReadPropertiesFile( LocaleItem* pLocaleItem,
     269             :         const ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream >& xInput );
     270             : 
     271             :     bool implWritePropertiesFile( LocaleItem* pLocaleItem, const ::com::sun::star::uno::Reference
     272             :         < ::com::sun::star::io::XOutputStream >& xOutputStream, const OUString& aComment );
     273             : 
     274             :     void implWriteLocaleBinary( LocaleItem* pLocaleItem, BinaryOutput& rOut );
     275             : 
     276             :     void implStoreAtStorage
     277             :     (
     278             :         const OUString& aNameBase,
     279             :         const OUString& aComment,
     280             :         const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& Storage,
     281             :         bool bUsedForStore,
     282             :         bool bStoreAll
     283             :     )
     284             :     throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
     285             : 
     286             :     void implKillRemovedLocaleFiles
     287             :     (
     288             :         const OUString& Location,
     289             :         const OUString& aNameBase,
     290             :         const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess3 >& xFileAccess
     291             :     )
     292             :     throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
     293             : 
     294             :     void implKillChangedDefaultFiles
     295             :     (
     296             :         const OUString& Location,
     297             :         const OUString& aNameBase,
     298             :         const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess3 >& xFileAccess
     299             :     )
     300             :     throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
     301             : 
     302             :     void implStoreAtLocation
     303             :     (
     304             :         const OUString& Location,
     305             :         const OUString& aNameBase,
     306             :         const OUString& aComment,
     307             :         const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess3 >& xFileAccess,
     308             :         bool bUsedForStore,
     309             :         bool bStoreAll,
     310             :         bool bKillAll = false
     311             :     )
     312             :     throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException);
     313             : 
     314             : public:
     315             :     StringResourcePersistenceImpl(
     316             :         const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
     317             :     virtual ~StringResourcePersistenceImpl();
     318             : 
     319             :     // XServiceInfo
     320             :     virtual OUString SAL_CALL getImplementationName(  )
     321             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     322             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     323             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     324             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames(  )
     325             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     326             : 
     327             :     // XModifyBroadcaster
     328             :     virtual void SAL_CALL addModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
     329             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     330             :     virtual void SAL_CALL removeModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
     331             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     332             : 
     333             :      // XStringResourceResolver
     334             :     virtual OUString SAL_CALL resolveString( const OUString& ResourceID )
     335             :         throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     336             :     virtual OUString SAL_CALL resolveStringForLocale( const OUString& ResourceID,
     337             :         const ::com::sun::star::lang::Locale& locale )
     338             :             throw ( ::com::sun::star::resource::MissingResourceException,
     339             :                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     340             :     virtual sal_Bool SAL_CALL hasEntryForId( const OUString& ResourceID )
     341             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     342             :     virtual sal_Bool SAL_CALL hasEntryForIdAndLocale( const OUString& ResourceID,
     343             :         const ::com::sun::star::lang::Locale& locale )
     344             :             throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     345             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getResourceIDs(  )
     346             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     347             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getResourceIDsForLocale
     348             :         ( const ::com::sun::star::lang::Locale& locale )
     349             :             throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     350             :     virtual ::com::sun::star::lang::Locale SAL_CALL getCurrentLocale(  )
     351             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     352             :     virtual ::com::sun::star::lang::Locale SAL_CALL getDefaultLocale(  )
     353             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     354             :     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::lang::Locale > SAL_CALL getLocales(  )
     355             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     356             : 
     357             :     // XStringResourceManager
     358             :     virtual sal_Bool SAL_CALL isReadOnly()
     359             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     360             :     virtual void SAL_CALL setCurrentLocale( const ::com::sun::star::lang::Locale& locale, sal_Bool FindClosestMatch )
     361             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     362             :     virtual void SAL_CALL setDefaultLocale( const ::com::sun::star::lang::Locale& locale )
     363             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException,
     364             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     365             :     virtual void SAL_CALL setString( const OUString& ResourceID, const OUString& Str )
     366             :         throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     367             :     virtual void SAL_CALL setStringForLocale( const OUString& ResourceID, const OUString& Str,
     368             :         const ::com::sun::star::lang::Locale& locale )
     369             :             throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     370             :     virtual void SAL_CALL removeId( const OUString& ResourceID )
     371             :         throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException,
     372             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     373             :     virtual void SAL_CALL removeIdForLocale( const OUString& ResourceID,
     374             :         const ::com::sun::star::lang::Locale& locale )
     375             :             throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException,
     376             :                    ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     377             :     virtual void SAL_CALL newLocale( const ::com::sun::star::lang::Locale& locale )
     378             :         throw (::com::sun::star::container::ElementExistException, ::com::sun::star::lang::IllegalArgumentException,
     379             :                ::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     380             :     virtual void SAL_CALL removeLocale( const ::com::sun::star::lang::Locale& locale )
     381             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException,
     382             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     383             :     virtual ::sal_Int32 SAL_CALL getUniqueNumericId(  )
     384             :         throw (::com::sun::star::lang::NoSupportException,
     385             :                ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     386             : 
     387             :     // XStringResourcePersistence
     388             :     virtual void SAL_CALL store(  )
     389             :         throw (::com::sun::star::lang::NoSupportException,
     390             :                ::com::sun::star::uno::Exception,
     391             :                ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     392             :     virtual sal_Bool SAL_CALL isModified(  )
     393             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     394             :     virtual void SAL_CALL setComment( const OUString& Comment )
     395             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     396             :     virtual void SAL_CALL storeToStorage
     397             :         ( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& Storage,
     398             :           const OUString& NameBase, const OUString& Comment )
     399             :             throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     400             :     virtual void SAL_CALL storeToURL( const OUString& URL, const OUString& NameBase,
     401             :         const OUString& Comment, const ::com::sun::star::uno::Reference
     402             :         < ::com::sun::star::task::XInteractionHandler >& Handler )
     403             :             throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     404             :     virtual ::com::sun::star::uno::Sequence< ::sal_Int8 > SAL_CALL exportBinary(  )
     405             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     406             :     virtual void SAL_CALL importBinary( const ::com::sun::star::uno::Sequence< ::sal_Int8 >& Data )
     407             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     408             : };
     409             : 
     410             : 
     411             : typedef ::cppu::ImplInheritanceHelper2<
     412             :         StringResourcePersistenceImpl,
     413             :         ::com::sun::star::lang::XInitialization,
     414             :         ::com::sun::star::resource::XStringResourceWithStorage > StringResourceWithStorageImpl_BASE;
     415             : 
     416             : class StringResourceWithStorageImpl : public StringResourceWithStorageImpl_BASE
     417             : {
     418             :     ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >       m_xStorage;
     419             :     bool                                                                        m_bStorageChanged;
     420             : 
     421             :     virtual void implScanLocales() SAL_OVERRIDE;
     422             :     virtual bool implLoadLocale( LocaleItem* pLocaleItem ) SAL_OVERRIDE;
     423             : 
     424             : public:
     425             :     StringResourceWithStorageImpl(
     426             :         const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
     427             :     virtual ~StringResourceWithStorageImpl();
     428             : 
     429             :     // XServiceInfo
     430             :     virtual OUString SAL_CALL getImplementationName(  )
     431             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     432             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     433             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     434             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames(  )
     435             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     436             : 
     437             :     // XInitialization
     438             :     virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
     439             :         throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     440             : 
     441             :     // XModifyBroadcaster
     442             :     virtual void SAL_CALL addModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
     443             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     444             :     virtual void SAL_CALL removeModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
     445             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     446             : 
     447             :      // XStringResourceResolver
     448             :     virtual OUString SAL_CALL resolveString( const OUString& ResourceID )
     449             :         throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     450             :     virtual OUString SAL_CALL resolveStringForLocale( const OUString& ResourceID,
     451             :         const ::com::sun::star::lang::Locale& locale )
     452             :             throw ( ::com::sun::star::resource::MissingResourceException,
     453             :                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     454             :     virtual sal_Bool SAL_CALL hasEntryForId( const OUString& ResourceID )
     455             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     456             :     virtual sal_Bool SAL_CALL hasEntryForIdAndLocale( const OUString& ResourceID,
     457             :         const ::com::sun::star::lang::Locale& locale )
     458             :             throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     459             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getResourceIDs(  )
     460             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     461             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getResourceIDsForLocale
     462             :         ( const ::com::sun::star::lang::Locale& locale )
     463             :             throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     464             :     virtual ::com::sun::star::lang::Locale SAL_CALL getCurrentLocale(  )
     465             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     466             :     virtual ::com::sun::star::lang::Locale SAL_CALL getDefaultLocale(  )
     467             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     468             :     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::lang::Locale > SAL_CALL getLocales(  )
     469             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     470             : 
     471             :     // XStringResourceManager
     472             :     virtual sal_Bool SAL_CALL isReadOnly()
     473             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     474             :     virtual void SAL_CALL setCurrentLocale( const ::com::sun::star::lang::Locale& locale, sal_Bool FindClosestMatch )
     475             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     476             :     virtual void SAL_CALL setDefaultLocale( const ::com::sun::star::lang::Locale& locale )
     477             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException,
     478             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     479             :     virtual void SAL_CALL setString( const OUString& ResourceID, const OUString& Str )
     480             :         throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     481             :     virtual void SAL_CALL setStringForLocale( const OUString& ResourceID, const OUString& Str,
     482             :         const ::com::sun::star::lang::Locale& locale )
     483             :             throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     484             :     virtual void SAL_CALL removeId( const OUString& ResourceID )
     485             :         throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException,
     486             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     487             :     virtual void SAL_CALL removeIdForLocale( const OUString& ResourceID,
     488             :         const ::com::sun::star::lang::Locale& locale )
     489             :             throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException,
     490             :                    ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     491             :     virtual void SAL_CALL newLocale( const ::com::sun::star::lang::Locale& locale )
     492             :         throw (::com::sun::star::container::ElementExistException, ::com::sun::star::lang::IllegalArgumentException,
     493             :                ::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     494             :     virtual void SAL_CALL removeLocale( const ::com::sun::star::lang::Locale& locale )
     495             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException,
     496             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     497             :     virtual ::sal_Int32 SAL_CALL getUniqueNumericId(  )
     498             :         throw (::com::sun::star::lang::NoSupportException,
     499             :                ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     500             : 
     501             :     // XStringResourcePersistence
     502             :     virtual void SAL_CALL store(  )
     503             :         throw (::com::sun::star::lang::NoSupportException,
     504             :                ::com::sun::star::uno::Exception,
     505             :                ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     506             :     virtual sal_Bool SAL_CALL isModified(  )
     507             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     508             :     virtual void SAL_CALL setComment( const OUString& Comment )
     509             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     510             :     virtual void SAL_CALL storeToStorage
     511             :         ( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& Storage,
     512             :           const OUString& NameBase, const OUString& Comment )
     513             :             throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     514             :     virtual void SAL_CALL storeToURL( const OUString& URL, const OUString& NameBase,
     515             :         const OUString& Comment, const ::com::sun::star::uno::Reference
     516             :         < ::com::sun::star::task::XInteractionHandler >& Handler )
     517             :             throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     518             :     virtual ::com::sun::star::uno::Sequence< ::sal_Int8 > SAL_CALL exportBinary(  )
     519             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     520             :     virtual void SAL_CALL importBinary( const ::com::sun::star::uno::Sequence< ::sal_Int8 >& Data )
     521             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     522             : 
     523             :     // XStringResourceWithStorage
     524             :     virtual void SAL_CALL storeAsStorage
     525             :         ( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& Storage )
     526             :             throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     527             :     virtual void SAL_CALL setStorage
     528             :         ( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& Storage )
     529             :             throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     530             : };
     531             : 
     532             : 
     533             : typedef ::cppu::ImplInheritanceHelper2<
     534             :         StringResourcePersistenceImpl,
     535             :         ::com::sun::star::lang::XInitialization,
     536             :         ::com::sun::star::resource::XStringResourceWithLocation > StringResourceWithLocationImpl_BASE;
     537             : 
     538             : class StringResourceWithLocationImpl : public StringResourceWithLocationImpl_BASE
     539             : {
     540             :     OUString                                                             m_aLocation;
     541             :     bool                                                                        m_bLocationChanged;
     542             :     com::sun::star::uno::Reference< com::sun::star::ucb::XSimpleFileAccess3 >   m_xSFI;
     543             :     com::sun::star::uno::Reference< com::sun::star::task::XInteractionHandler > m_xInteractionHandler;
     544             : 
     545             :     const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess3 > getFileAccess();
     546             : 
     547             :     virtual void implScanLocales() SAL_OVERRIDE;
     548             :     virtual bool implLoadLocale( LocaleItem* pLocaleItem ) SAL_OVERRIDE;
     549             : 
     550             : public:
     551             :     StringResourceWithLocationImpl(
     552             :         const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& rxContext );
     553             :     virtual ~StringResourceWithLocationImpl();
     554             : 
     555             :     // XServiceInfo
     556             :     virtual OUString SAL_CALL getImplementationName(  )
     557             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     558             :     virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName )
     559             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     560             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames(  )
     561             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     562             : 
     563             :     // XInitialization
     564             :     virtual void SAL_CALL initialize( const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Any >& aArguments )
     565             :         throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     566             : 
     567             :     // XModifyBroadcaster
     568             :     virtual void SAL_CALL addModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
     569             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     570             :     virtual void SAL_CALL removeModifyListener( const ::com::sun::star::uno::Reference< ::com::sun::star::util::XModifyListener >& aListener )
     571             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     572             : 
     573             :      // XStringResourceResolver
     574             :     virtual OUString SAL_CALL resolveString( const OUString& ResourceID )
     575             :         throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     576             :     virtual OUString SAL_CALL resolveStringForLocale( const OUString& ResourceID,
     577             :         const ::com::sun::star::lang::Locale& locale )
     578             :             throw ( ::com::sun::star::resource::MissingResourceException,
     579             :                     ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     580             :     virtual sal_Bool SAL_CALL hasEntryForId( const OUString& ResourceID )
     581             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     582             :     virtual sal_Bool SAL_CALL hasEntryForIdAndLocale( const OUString& ResourceID,
     583             :         const ::com::sun::star::lang::Locale& locale )
     584             :             throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     585             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getResourceIDs(  )
     586             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     587             :     virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getResourceIDsForLocale
     588             :         ( const ::com::sun::star::lang::Locale& locale )
     589             :             throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     590             :     virtual ::com::sun::star::lang::Locale SAL_CALL getCurrentLocale(  )
     591             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     592             :     virtual ::com::sun::star::lang::Locale SAL_CALL getDefaultLocale(  )
     593             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     594             :     virtual ::com::sun::star::uno::Sequence< ::com::sun::star::lang::Locale > SAL_CALL getLocales(  )
     595             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     596             : 
     597             :     // XStringResourceManager
     598             :     virtual sal_Bool SAL_CALL isReadOnly()
     599             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     600             :     virtual void SAL_CALL setCurrentLocale( const ::com::sun::star::lang::Locale& locale, sal_Bool FindClosestMatch )
     601             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     602             :     virtual void SAL_CALL setDefaultLocale( const ::com::sun::star::lang::Locale& locale )
     603             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException,
     604             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     605             :     virtual void SAL_CALL setString( const OUString& ResourceID, const OUString& Str )
     606             :         throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     607             :     virtual void SAL_CALL setStringForLocale( const OUString& ResourceID, const OUString& Str,
     608             :         const ::com::sun::star::lang::Locale& locale )
     609             :             throw (::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     610             :     virtual void SAL_CALL removeId( const OUString& ResourceID )
     611             :         throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException,
     612             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     613             :     virtual void SAL_CALL removeIdForLocale( const OUString& ResourceID,
     614             :         const ::com::sun::star::lang::Locale& locale )
     615             :             throw (::com::sun::star::resource::MissingResourceException, ::com::sun::star::uno::RuntimeException,
     616             :                    ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     617             :     virtual void SAL_CALL newLocale( const ::com::sun::star::lang::Locale& locale )
     618             :         throw (::com::sun::star::container::ElementExistException, ::com::sun::star::lang::IllegalArgumentException,
     619             :                ::com::sun::star::lang::NoSupportException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     620             :     virtual void SAL_CALL removeLocale( const ::com::sun::star::lang::Locale& locale )
     621             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException,
     622             :                ::com::sun::star::lang::NoSupportException, std::exception) SAL_OVERRIDE;
     623             :     virtual ::sal_Int32 SAL_CALL getUniqueNumericId(  )
     624             :         throw (::com::sun::star::lang::NoSupportException,
     625             :                ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     626             : 
     627             :     // XStringResourcePersistence
     628             :     virtual void SAL_CALL store(  )
     629             :         throw (::com::sun::star::lang::NoSupportException,
     630             :                ::com::sun::star::uno::Exception,
     631             :                ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     632             :     virtual sal_Bool SAL_CALL isModified(  )
     633             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     634             :     virtual void SAL_CALL setComment( const OUString& Comment )
     635             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     636             :     virtual void SAL_CALL storeToStorage
     637             :         ( const ::com::sun::star::uno::Reference< ::com::sun::star::embed::XStorage >& Storage,
     638             :           const OUString& NameBase, const OUString& Comment )
     639             :             throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     640             :     virtual void SAL_CALL storeToURL( const OUString& URL, const OUString& NameBase,
     641             :         const OUString& Comment, const ::com::sun::star::uno::Reference
     642             :         < ::com::sun::star::task::XInteractionHandler >& Handler )
     643             :             throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     644             :     virtual ::com::sun::star::uno::Sequence< ::sal_Int8 > SAL_CALL exportBinary(  )
     645             :         throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     646             :     virtual void SAL_CALL importBinary( const ::com::sun::star::uno::Sequence< ::sal_Int8 >& Data )
     647             :         throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     648             : 
     649             :     // XStringResourceWithLocation
     650             :     virtual void SAL_CALL storeAsURL( const OUString& URL )
     651             :         throw (::com::sun::star::uno::Exception, ::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     652             :     virtual void SAL_CALL setURL( const OUString& URL )
     653             :         throw (css::lang::IllegalArgumentException, css::lang::NoSupportException,
     654             :                css::uno::RuntimeException, std::exception) SAL_OVERRIDE;
     655             : };
     656             : 
     657             : 
     658             : }   // namespace stringtable
     659             : 
     660             : 
     661             : #endif // INCLUDED_SCRIPTING_SOURCE_STRINGRESOURCE_STRINGRESOURCE_HXX
     662             : 
     663             : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Generated by: LCOV version 1.11