callcatcher: comphelper's unused code

This commit is contained in:
Matúš Kukan
2011-10-03 00:47:44 +02:00
parent 84e2f8ff43
commit 1fe85161e4
28 changed files with 0 additions and 1906 deletions

View File

@@ -70,7 +70,6 @@ $(eval $(call gb_Library_add_exception_objects,comphelper,\
comphelper/source/eventattachermgr/eventattachermgr \
comphelper/source/misc/accessiblecomponenthelper \
comphelper/source/misc/accessiblecontexthelper \
comphelper/source/misc/accessibleeventbuffer \
comphelper/source/misc/accessibleeventnotifier \
comphelper/source/misc/accessiblekeybindinghelper \
comphelper/source/misc/accessibleselectionhelper \
@@ -126,7 +125,6 @@ $(eval $(call gb_Library_add_exception_objects,comphelper,\
comphelper/source/processfactory/processfactory \
comphelper/source/property/ChainablePropertySet \
comphelper/source/property/ChainablePropertySetInfo \
comphelper/source/property/composedprops \
comphelper/source/property/genericpropertyset \
comphelper/source/property/MasterPropertySet \
comphelper/source/property/MasterPropertySetInfo \
@@ -145,7 +143,6 @@ $(eval $(call gb_Library_add_exception_objects,comphelper,\
comphelper/source/streaming/basicio \
comphelper/source/streaming/memorystream \
comphelper/source/streaming/oslfile2streamwrap \
comphelper/source/streaming/otransactedfilestream \
comphelper/source/streaming/seekableinput \
comphelper/source/streaming/seqinputstreamserv \
comphelper/source/streaming/seqoutputstreamserv \

View File

@@ -43,11 +43,9 @@ $(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/scoped_disposing
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/xmltools.hxx,comphelper/xmltools.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/asyncnotification.hxx,comphelper/asyncnotification.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/namedvaluecollection.hxx,comphelper/namedvaluecollection.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/composedprops.hxx,comphelper/composedprops.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/mediadescriptor.hxx,comphelper/mediadescriptor.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/synchronousdispatch.hxx,comphelper/synchronousdispatch.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/accessiblecomponenthelper.hxx,comphelper/accessiblecomponenthelper.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/otransactedfilestream.hxx,comphelper/otransactedfilestream.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/propmultiplex.hxx,comphelper/propmultiplex.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/servicehelper.hxx,comphelper/servicehelper.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/servicedecl.hxx,comphelper/servicedecl.hxx))
@@ -63,7 +61,6 @@ $(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/propertystatecon
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/propertysetinfo.hxx,comphelper/propertysetinfo.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/accimplaccess.hxx,comphelper/accimplaccess.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/docpasswordrequest.hxx,comphelper/docpasswordrequest.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/accessibleeventbuffer.hxx,comphelper/accessibleeventbuffer.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/regpathhelper.hxx,comphelper/regpathhelper.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/extract.hxx,comphelper/extract.hxx))
$(eval $(call gb_Package_add_file,comphelper_inc,inc/comphelper/interaction.hxx,comphelper/interaction.hxx))

View File

@@ -53,12 +53,6 @@ namespace comphelper
* _setSingleValue and released after all processing has completed
* (including _postSetValues or _postGetValues )
*
* The implementations of getPropertyValues/setPropertyValues call
* lockMutex and _preGetValues/_preSetValues once before calling
* _getSingleValue/_setSingleValue for each property. After each
* property has been dealt with, _postGetValues/_postSetValues
* are called once.
*
* Any MasterPropertySet implementations that can include an
* implementation of a given ChainablePropertySet must be
* declared as a 'friend' in the implementation of the ChainablePropertySet.
@@ -76,8 +70,6 @@ namespace comphelper
ChainablePropertySetInfo *mpInfo;
osl::SolarMutex* mpMutex;
::com::sun::star::uno::Reference < com::sun::star::beans::XPropertySetInfo > mxInfo;
void lockMutex();
void unlockMutex();
virtual void _preSetValues ()
throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException ) = 0;

View File

@@ -53,8 +53,6 @@ namespace comphelper
PropertyInfoHash maMap;
com::sun::star::uno::Sequence < com::sun::star::beans::Property > maProperties;
public:
ChainablePropertySetInfo()
throw();
ChainablePropertySetInfo( PropertyInfo * pMap )
throw();

View File

@@ -73,8 +73,6 @@ namespace comphelper
sal_uInt8 mnLastId;
SlaveMap maSlaveMap;
::com::sun::star::uno::Reference < com::sun::star::beans::XPropertySetInfo > mxInfo;
void lockMutex();
void unlockMutex();
virtual void _preSetValues ()
throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException ) = 0;

View File

@@ -45,8 +45,6 @@ namespace comphelper
PropertyDataHash maMap;
com::sun::star::uno::Sequence < com::sun::star::beans::Property > maProperties;
public:
MasterPropertySetInfo()
throw();
MasterPropertySetInfo( PropertyInfo * pMap )
throw();
virtual ~MasterPropertySetInfo()
@@ -55,8 +53,6 @@ namespace comphelper
throw();
void add( PropertyInfoHash &rHash, sal_uInt8 nMapId )
throw();
void remove( const rtl::OUString& aName )
throw();
// XPropertySetInfo
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property > SAL_CALL getProperties()

View File

@@ -227,27 +227,6 @@ namespace comphelper
const ::com::sun::star::uno::Any& _rNewValue
);
/** records a certain event so that all AccessibleEventListeners can
be notified later on.
Can even be called with our mutex locked.
@param _nEventId
the id of the even. See AccessibleEventType
@param _rOldValue
the old value to be notified
@param _rNewValue
the new value to be notified
@param _rBuffer
the buffer that records the event
*/
virtual void SAL_CALL BufferAccessibleEvent(
const sal_Int16 _nEventId,
const ::com::sun::star::uno::Any& _rOldValue,
const ::com::sun::star::uno::Any& _rNewValue,
AccessibleEventBuffer & _rBuffer
);
// life time control
/// checks whether the object is alive (returns <TRUE/> then) or disposed
sal_Bool isAlive() const;

View File

@@ -1,136 +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.
*
************************************************************************/
#if !defined INCLUDED_COMPHELPER_ACCESSIBLEEVENTBUFFER_HXX
#define INCLUDED_COMPHELPER_ACCESSIBLEEVENTBUFFER_HXX
#include "com/sun/star/uno/Reference.hxx"
#include "com/sun/star/uno/Sequence.hxx"
#include <vector>
namespace com { namespace sun { namespace star { namespace uno {
class XInterface;
} } } }
namespace com { namespace sun { namespace star {
namespace accessibility { struct AccessibleEventObject; }
} } }
namespace comphelper {
/**
A buffer for AccessibleEventObjects about to be sent to
XAccessibleEventListeners.
This buffer records pairs of AccessibleEventObjects and sequences of
XAccessibleEventListeners. At a time when it is safe to do so (e.g., when
no critical mutexes are held), all events can be notified at once.
This class is not thread-safe in itself, but it is thread-compatible (i.e.,
all multi-threaded uses of instances of this class have to ensure proper
mutual exclusion).
*/
class AccessibleEventBuffer
{
public:
/**
Create an initially empty buffer.
Internally uses ::std::vector and thus may throw exceptions thrown by
operations on ::std::vector, especially ::std::bad_alloc.
*/
AccessibleEventBuffer();
/**
Create a buffer with a copy of another buffer.
The events from the other buffer are copied, not shared.
Internally uses ::std::vector and thus may throw exceptions thrown by
operations on ::std::vector, especially ::std::bad_alloc.
*/
AccessibleEventBuffer(AccessibleEventBuffer const & rOther);
/**
Destroy the buffer.
If the buffer contains any events that have not yet been sent, those
events are lost.
Does not throw any exceptions.
*/
~AccessibleEventBuffer();
/**
Copy another buffer into this buffer.
If this buffer contained any events that had not yet been sent, those
events are lost. The events from the other buffer are copied, not
shared.
Internally uses ::std::vector and thus may throw exceptions thrown by
operations on ::std::vector, especially ::std::bad_alloc.
*/
AccessibleEventBuffer operator =(AccessibleEventBuffer const & rOther);
/**
Add an event to the buffer.
Internally uses ::std::vector and thus may throw exceptions thrown by
operations on ::std::vector, especially ::std::bad_alloc.
*/
void addEvent(
::com::sun::star::accessibility::AccessibleEventObject const &
rEvent,
::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference<
::com::sun::star::uno::XInterface > > const & rListeners);
/**
Sends all the events accumulated in the buffer.
If sending any of the events to a specific XAccessibleListener fails with
a RuntimeException, that exception is ignored and the method carries on
with the rest of the notifications.
After sending all events, the buffer is cleared.
*/
void sendEvents() const;
private:
struct Entry;
typedef ::std::vector< Entry > Entries;
Entries m_aEntries;
};
}
#endif // INCLUDED_COMPHELPER_ACCESSIBLEEVENTBUFFER_HXX
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@@ -52,8 +52,6 @@ public:
// methods that are not contained in any interface
void AddAttribute( const ::rtl::OUString &sName , const ::rtl::OUString &sType , const ::rtl::OUString &sValue );
void Clear();
void RemoveAttribute( const ::rtl::OUString sName );
void SetAttributeList( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList > & );
void AppendAttributeList( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList > & );
// ::com::sun::star::xml::sax::XAttributeList

View File

@@ -1,129 +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 _COMPHELPER_COMPOSEDPROPS_HXX_
#define _COMPHELPER_COMPOSEDPROPS_HXX_
#include <cppuhelper/implbase2.hxx>
#include <comphelper/types.hxx>
#include <comphelper/stl_types.hxx>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/beans/XPropertyState.hpp>
#include <com/sun/star/beans/XPropertySetInfo.hpp>
#include <osl/mutex.hxx>
#include "comphelper/comphelperdllapi.h"
//.........................................................................
namespace comphelper
{
//.........................................................................
//=====================================================================
//= IPropertySetComposerCallback
//=====================================================================
class IPropertySetComposerCallback
{
public:
/** determines whether or not a property should appear in the composed property set
@param _rPropertyName
the name of the property
*/
virtual sal_Bool isComposeable(const ::rtl::OUString& _rPropertyName) const = 0;
};
//=====================================================================
//= OComposedPropertySet
//=====================================================================
class OComposedPropertySetInfo;
typedef ::cppu::WeakImplHelper2 < ::com::sun::star::beans::XPropertySet
, ::com::sun::star::beans::XPropertyState
> OComposedPropertySet_Base;
/** helper class for composing a property set from a sequence of other property sets.
<p>First: This class is a fast shot, so don't sue me :) (To be honest, it's the migration of an old ugly
implementation. It's still ugly).</p>
<p>The property listener mechanisms are not supported (you can't add property listeners).</p>
<p>Speaking strictly, the property defaults (getPropertyDefault) do not work correctly, as there's always
an empty <type scope="com.sun.star.uno">Any</type> returned.</p>
*/
class COMPHELPER_DLLPUBLIC OComposedPropertySet : public OComposedPropertySet_Base
{
private:
::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property >
m_aProperties;
OComposedPropertySetInfo* m_pInfo;
protected:
::osl::Mutex m_aMutex;
DECLARE_STL_VECTOR(::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>, PropertySetArray);
PropertySetArray m_aSingleSets;
public:
/** constructs a composed property set
@param _rElements
the single property sets to compose
<p>The first property set in the sequence is the master set, any properties not present here
are not present in the composed set.<br/>
This may change in the future (as it's just missing implementation), so don't rely on this behaviour.</p>
@param _pPropertyMetaData
the callback for retrieving property meta data (namely composeability)<br/>
if not specified, all properties are assumed to be composable
*/
OComposedPropertySet(
const ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet> > & _rElements,
const IPropertySetComposerCallback* _pPropertyMetaData = NULL
);
// XPropertyState
virtual ::com::sun::star::beans::PropertyState SAL_CALL getPropertyState( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyState > SAL_CALL getPropertyStates( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL setPropertyToDefault( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Any SAL_CALL getPropertyDefault( const ::rtl::OUString& aPropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
// XPropertySet
virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw(::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw(::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
protected:
~OComposedPropertySet();
void compose(const IPropertySetComposerCallback* _pMetaData);
};
//.........................................................................
} // namespace comphelper
//.........................................................................
#endif // _COMPHELPER_COMPOSEDPROPS_HXX_
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@@ -164,21 +164,6 @@ public:
// ------------------------------------------------------------------------
/** This helper function generates the hash code based on the algorithm
specified by MS for "Password to modify" feature of Word.
@param aString
The string for which the hash should be calculated
@return
The hash represented by sequence of bytes in BigEndian form
*/
static ::com::sun::star::uno::Sequence< sal_Int8 > GetWordHashAsSequence(
const ::rtl::OUString& aString );
// ------------------------------------------------------------------------
/** This helper function generates the hash code based on the algorithm
specified by MS for "Password to modify" and passwords related to
table protection of Excel.

View File

@@ -65,7 +65,6 @@ public:
virtual void SAL_CALL acquire( ) throw ();
virtual void SAL_CALL release( ) throw ();
sal_Bool isAbort() const;
sal_Bool isPassword() const;
::rtl::OUString getPassword() const;
@@ -104,7 +103,6 @@ public:
virtual void SAL_CALL acquire( ) throw ();
virtual void SAL_CALL release( ) throw ();
sal_Bool isAbort() const;
sal_Bool isPassword() const;
::rtl::OUString getPassword() const;

View File

@@ -1,138 +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 _COMPHELPER_OTRANSACTEDFILESTREAM_HXX
#define _COMPHELPER_OTRANSACTEDFILESTREAM_HXX
#include <com/sun/star/uno/Sequence.hxx>
#include <com/sun/star/uno/Reference.hxx>
#include <com/sun/star/io/XInputStream.hpp>
#include <com/sun/star/io/XOutputStream.hpp>
#include <com/sun/star/io/XSeekable.hpp>
#include <com/sun/star/io/XTruncate.hpp>
#include <com/sun/star/io/XStream.hpp>
#include <com/sun/star/embed/XTransactedObject.hpp>
#include <com/sun/star/beans/XPropertySetInfo.hpp>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/ucb/XSimpleFileAccess.hpp>
#include <osl/mutex.hxx>
#include <cppuhelper/implbase7.hxx>
#include "comphelper/comphelperdllapi.h"
namespace comphelper
{
//==================================================================
// OTransactedFileStream
// allows to get transacted stream access to a file
// the file contents are automatically truncated, but the file
// itself is changed only on commit
// after the first commit the stream switches to direct mode
//==================================================================
struct TTFileStreamData_Impl;
class COMPHELPER_DLLPUBLIC OTruncatedTransactedFileStream
: public ::cppu::WeakImplHelper7 <
::com::sun::star::io::XStream,
::com::sun::star::io::XInputStream,
::com::sun::star::io::XOutputStream,
::com::sun::star::io::XTruncate,
::com::sun::star::io::XSeekable,
::com::sun::star::beans::XPropertySetInfo,
::com::sun::star::beans::XPropertySet >
{
::osl::Mutex m_aMutex;
TTFileStreamData_Impl* m_pStreamData;
void CommonInit_Impl(
const ::rtl::OUString& aURL,
const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess >& xFileAccess,
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory,
sal_Bool bDeleteOptionIsProvided );
void CloseAll_Impl();
public:
OTruncatedTransactedFileStream( const ::rtl::OUString& aURL, const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
OTruncatedTransactedFileStream( const ::rtl::OUString& aURL, const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess >& xFileAccess, const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory );
OTruncatedTransactedFileStream( const ::rtl::OUString& aURL, const ::com::sun::star::uno::Reference< ::com::sun::star::ucb::XSimpleFileAccess >& xFileAccess, const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xFactory, sal_Bool bDeleteIfNotCommited );
~OTruncatedTransactedFileStream();
void Commit_Impl();
void Revert_Impl();
// com::sun::star::io::XStream
virtual ::com::sun::star::uno::Reference< ::com::sun::star::io::XInputStream > SAL_CALL getInputStream( ) throw (::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Reference< ::com::sun::star::io::XOutputStream > SAL_CALL getOutputStream( ) throw (::com::sun::star::uno::RuntimeException);
// com::sun::star::io::XInputStream
virtual ::sal_Int32 SAL_CALL readBytes( ::com::sun::star::uno::Sequence< ::sal_Int8 >& aData, ::sal_Int32 nBytesToRead ) throw (::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
virtual ::sal_Int32 SAL_CALL readSomeBytes( ::com::sun::star::uno::Sequence< ::sal_Int8 >& aData, ::sal_Int32 nMaxBytesToRead ) throw (::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL skipBytes( ::sal_Int32 nBytesToSkip ) throw (::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
virtual ::sal_Int32 SAL_CALL available( ) throw (::com::sun::star::io::NotConnectedException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL closeInput( ) throw (::com::sun::star::io::NotConnectedException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
// com::sun::star::io::XOutputStream
virtual void SAL_CALL writeBytes( const ::com::sun::star::uno::Sequence< ::sal_Int8 >& aData ) throw (::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL flush( ) throw (::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL closeOutput( ) throw (::com::sun::star::io::NotConnectedException, ::com::sun::star::io::BufferSizeExceededException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
// com::sun::star::io::XTruncate
virtual void SAL_CALL truncate( ) throw (::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
// com::sun::star::io::XSeekable
virtual void SAL_CALL seek( ::sal_Int64 location ) throw (::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
virtual ::sal_Int64 SAL_CALL getPosition( ) throw (::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
virtual ::sal_Int64 SAL_CALL getLength( ) throw (::com::sun::star::io::IOException, ::com::sun::star::uno::RuntimeException);
// ::com::sun::star::beans::XPropertySetInfo
virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::Property > SAL_CALL getProperties( ) throw (::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::beans::Property SAL_CALL getPropertyByName( const ::rtl::OUString& aName ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::uno::RuntimeException);
virtual ::sal_Bool SAL_CALL hasPropertyByName( const ::rtl::OUString& Name ) throw (::com::sun::star::uno::RuntimeException);
// com::sun::star::beans::XPropertySet
virtual ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) throw (::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL setPropertyValue( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Any& aValue ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::beans::PropertyVetoException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual ::com::sun::star::uno::Any SAL_CALL getPropertyValue( const ::rtl::OUString& PropertyName ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL addPropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& xListener ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL removePropertyChangeListener( const ::rtl::OUString& aPropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertyChangeListener >& aListener ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL addVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL removeVetoableChangeListener( const ::rtl::OUString& PropertyName, const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XVetoableChangeListener >& aListener ) throw (::com::sun::star::beans::UnknownPropertyException, ::com::sun::star::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException);
};
} // namespace comphelper
#endif //_COMPHELPER_OTRANSACTEDFILESTREAM_HXX
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@@ -29,7 +29,6 @@
// MARKER(update_precomp.py): autogen include statement, do not remove
#include "precompiled_comphelper.hxx"
#include <comphelper/accessiblecontexthelper.hxx>
#include <comphelper/accessibleeventbuffer.hxx>
#include <osl/diagnose.h>
#include <cppuhelper/weakref.hxx>
#include <com/sun/star/accessibility/AccessibleEventId.hpp>
@@ -214,35 +213,6 @@ namespace comphelper
AccessibleEventNotifier::addEvent( m_pImpl->getClientId( ), aEvent );
}
//---------------------------------------------------------------------
void SAL_CALL OAccessibleContextHelper::BufferAccessibleEvent( const sal_Int16 _nEventId,
const Any& _rOldValue, const Any& _rNewValue,
AccessibleEventBuffer & _rBuffer )
{
// TODO: this whole method (as well as the class AccessibleEventBuffer) should be removed
// The reasons why they have been introduces id that we needed to collect a set of events
// before notifying them alltogether (after releasing our mutex). With the other
// NotifyAccessibleEvent being asynchronous now, this should not be necessary anymore
// - clients could use the other version now.
// copy our current listeners
Sequence< Reference< XInterface > > aListeners;
if ( m_pImpl->getClientId( ) )
aListeners = AccessibleEventNotifier::getEventListeners( m_pImpl->getClientId( ) );
if ( aListeners.getLength() )
{
AccessibleEventObject aEvent;
aEvent.Source = *this;
OSL_ENSURE( aEvent.Source.is(), "OAccessibleContextHelper::BufferAccessibleEvent: invalid creator!" );
aEvent.EventId = _nEventId;
aEvent.OldValue = _rOldValue;
aEvent.NewValue = _rNewValue;
_rBuffer.addEvent( aEvent, aListeners );
}
}
//---------------------------------------------------------------------
sal_Bool OAccessibleContextHelper::isAlive() const
{

View File

@@ -1,113 +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_comphelper.hxx"
#include "comphelper/accessibleeventbuffer.hxx"
#include "com/sun/star/uno/Reference.hxx"
#include "com/sun/star/uno/RuntimeException.hpp"
#include "com/sun/star/uno/Sequence.hxx"
#include "com/sun/star/uno/XInterface.hpp"
#include "com/sun/star/accessibility/AccessibleEventObject.hpp"
#include "com/sun/star/accessibility/XAccessibleEventListener.hpp"
#include "osl/diagnose.h"
#include "rtl/textenc.h"
#include "rtl/ustring.hxx"
#include "sal/types.h"
namespace css = ::com::sun::star;
using comphelper::AccessibleEventBuffer;
struct AccessibleEventBuffer::Entry
{
inline Entry(::css::accessibility::AccessibleEventObject const & rEvent,
::css::uno::Sequence< ::css::uno::Reference<
::css::uno::XInterface > > const & rListeners):
m_aEvent(rEvent), m_aListeners(rListeners) {}
::css::accessibility::AccessibleEventObject m_aEvent;
::css::uno::Sequence<
::css::uno::Reference< ::css::uno::XInterface > > m_aListeners;
};
AccessibleEventBuffer::AccessibleEventBuffer()
{}
AccessibleEventBuffer::AccessibleEventBuffer(
AccessibleEventBuffer const & rOther):
m_aEntries(rOther.m_aEntries)
{}
AccessibleEventBuffer::~AccessibleEventBuffer()
{}
AccessibleEventBuffer
AccessibleEventBuffer::operator =(AccessibleEventBuffer const & rOther)
{
m_aEntries = rOther.m_aEntries;
return *this;
}
void AccessibleEventBuffer::addEvent(
::css::accessibility::AccessibleEventObject const & rEvent,
::css::uno::Sequence< ::css::uno::Reference< ::css::uno::XInterface > >
const & rListeners)
{
m_aEntries.push_back(Entry(rEvent, rListeners));
}
void AccessibleEventBuffer::sendEvents() const
{
for (Entries::const_iterator aIt(m_aEntries.begin());
aIt != m_aEntries.end(); ++aIt)
for (::sal_Int32 i = 0; i < aIt->m_aListeners.getLength(); ++i)
{
::css::uno::Reference<
::css::accessibility::XAccessibleEventListener > xListener(
aIt->m_aListeners[i], ::css::uno::UNO_QUERY);
if (xListener.is())
try
{
xListener->notifyEvent(aIt->m_aEvent);
}
catch (::css::uno::RuntimeException & rEx)
{
OSL_TRACE(
"comphelper::AccessibleEventBuffer::sendEvents:"
" caught %s\n",
::rtl::OUStringToOString(
rEx.Message, RTL_TEXTENCODING_UTF8).getStr());
}
}
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@@ -220,20 +220,6 @@ sal_uInt32 DocPasswordHelper::GetWordHashAsUINT32(
return nResult;
}
// ============================================================================
Sequence< sal_Int8 > DocPasswordHelper::GetWordHashAsSequence(
const ::rtl::OUString& aUString )
{
sal_uInt32 nHash = GetWordHashAsUINT32( aUString );
Sequence< sal_Int8 > aResult( 4 );
aResult[0] = ( nHash >> 24 );
aResult[1] = ( ( nHash >> 16 ) & 0xFF );
aResult[2] = ( ( nHash >> 8 ) & 0xFF );
aResult[3] = ( nHash & 0xFF );
return aResult;
}
// ============================================================================
sal_uInt16 DocPasswordHelper::GetXLHashAsUINT16(
const ::rtl::OUString& aUString,

View File

@@ -138,11 +138,6 @@ void SAL_CALL SimplePasswordRequest::release( ) throw ()
OWeakObject::release();
}
sal_Bool SimplePasswordRequest::isAbort() const
{
return mpAbort->isSelected();
}
sal_Bool SimplePasswordRequest::isPassword() const
{
return mpPassword->isSelected();
@@ -219,11 +214,6 @@ void SAL_CALL DocPasswordRequest::release( ) throw ()
OWeakObject::release();
}
sal_Bool DocPasswordRequest::isAbort() const
{
return mpAbort->isSelected();
}
sal_Bool DocPasswordRequest::isPassword() const
{
return mpPassword->isSelected();

View File

@@ -62,18 +62,6 @@ Reference< XPropertySetInfo > SAL_CALL ChainablePropertySet::getPropertySetInfo(
return mxInfo;
}
void ChainablePropertySet::lockMutex()
{
if (mpMutex)
mpMutex->acquire();
}
void ChainablePropertySet::unlockMutex()
{
if (mpMutex)
mpMutex->release();
}
void SAL_CALL ChainablePropertySet::setPropertyValue( const ::rtl::OUString& rPropertyName, const Any& rValue )
throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException, RuntimeException)
{

View File

@@ -45,11 +45,6 @@ using ::com::sun::star::beans::Property;
using ::com::sun::star::beans::XPropertySetInfo;
using ::com::sun::star::beans::UnknownPropertyException;
ChainablePropertySetInfo::ChainablePropertySetInfo()
throw()
{
}
ChainablePropertySetInfo::ChainablePropertySetInfo( PropertyInfo* pMap )
throw()
{

View File

@@ -90,17 +90,6 @@ MasterPropertySet::MasterPropertySet( comphelper::MasterPropertySetInfo* pInfo,
{
}
void MasterPropertySet::lockMutex()
{
if (mpMutex)
mpMutex->acquire();
}
void MasterPropertySet::unlockMutex()
{
if (mpMutex)
mpMutex->release();
}
MasterPropertySet::~MasterPropertySet()
throw()
{

View File

@@ -45,11 +45,6 @@ using ::com::sun::star::beans::Property;
using ::com::sun::star::beans::XPropertySetInfo;
using ::com::sun::star::beans::UnknownPropertyException;
MasterPropertySetInfo::MasterPropertySetInfo()
throw()
{
}
MasterPropertySetInfo::MasterPropertySetInfo( PropertyInfo* pMap )
throw()
{
@@ -108,14 +103,6 @@ void MasterPropertySetInfo::add( PropertyInfoHash &rHash, sal_uInt8 nMapId )
}
}
void MasterPropertySetInfo::remove( const rtl::OUString& aName )
throw()
{
maMap.erase ( aName );
if ( maProperties.getLength() )
maProperties.realloc( 0 );
}
Sequence< ::Property > SAL_CALL MasterPropertySetInfo::getProperties()
throw(::com::sun::star::uno::RuntimeException)
{

View File

@@ -1,359 +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_comphelper.hxx"
#include <comphelper/composedprops.hxx>
#include <com/sun/star/container/XChild.hpp>
#include <com/sun/star/beans/XPropertySetInfo.hpp>
#include <cppuhelper/implbase1.hxx>
//.........................................................................
namespace comphelper
{
//.........................................................................
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::beans;
using namespace ::com::sun::star::lang;
//=====================================================================
//= OComposedPropertySetInfo
//=====================================================================
class OComposedPropertySetInfo : public ::cppu::WeakImplHelper1< XPropertySetInfo >
{
private:
Sequence< Property> m_aProperties;
public:
OComposedPropertySetInfo(const Sequence< Property>& _rProperties);
virtual Sequence< Property > SAL_CALL getProperties( ) throw(RuntimeException);
virtual Property SAL_CALL getPropertyByName( const ::rtl::OUString& _rName ) throw(UnknownPropertyException, RuntimeException);
virtual sal_Bool SAL_CALL hasPropertyByName( const ::rtl::OUString& _rName ) throw(RuntimeException);
};
//=====================================================================
//= OComposedPropertySet
//=====================================================================
//---------------------------------------------------------------------
OComposedPropertySet::OComposedPropertySet(
const Sequence< Reference< XPropertySet> > & _rElements,
const IPropertySetComposerCallback* _pPropertyMetaData)
:m_pInfo(NULL)
{
// copy the sequence
sal_Int32 nSingleSets = _rElements.getLength();
if (nSingleSets)
{
m_aSingleSets.resize(nSingleSets);
const Reference< XPropertySet >* pSingleSets = _rElements.getConstArray();
::std::copy(pSingleSets, pSingleSets + nSingleSets, m_aSingleSets.begin());
}
// impl ctor
compose(_pPropertyMetaData);
}
//---------------------------------------------------------------------
OComposedPropertySet::~OComposedPropertySet()
{
if (m_pInfo)
m_pInfo->release();
}
//---------------------------------------------------------------------
void OComposedPropertySet::compose(const IPropertySetComposerCallback* _pMetaData)
{
sal_Int32 nSingleSets = m_aSingleSets.size();
if (nSingleSets>0)
{
// get the properties of the first set
Reference< XPropertySet > xMasterSet = m_aSingleSets[0];
Sequence< Property> aMasterProps;
if (xMasterSet.is())
aMasterProps = xMasterSet->getPropertySetInfo()->getProperties();
sal_Int32 nMasterPropsCount = aMasterProps.getLength();
const Property* pMasterProps = aMasterProps.getConstArray();
// check which of the master properties should be included
Sequence<sal_Bool> aInclusionFlags(nMasterPropsCount);
sal_Bool* pInclusionFlags = aInclusionFlags.getArray();
// the states of all these properties
Sequence< PropertyState > aPropertyStates(nMasterPropsCount);
for (sal_Int32 i=0; i<nMasterPropsCount; ++i)
pInclusionFlags[i] = sal_True;
Reference< XPropertySet > xSecondarySet;
sal_Int32 nSecondaryPropertyCount;
Sequence< Property > aSecondaryProperties;
const Property* pPrimaryProperty = aMasterProps.getConstArray();
for (sal_Int32 nPrimary=0; nPrimary<nMasterPropsCount; ++nPrimary, ++pPrimaryProperty)
{
if (_pMetaData && !_pMetaData->isComposeable(pPrimaryProperty->Name))
// do not include this property
pInclusionFlags[nPrimary] = sal_False;
else
{
// search the property in all secondary sets
for (sal_Int32 i=1; i<nSingleSets; ++i)
{
xSecondarySet = m_aSingleSets[i];
aSecondaryProperties = xSecondarySet->getPropertySetInfo()->getProperties();
nSecondaryPropertyCount = aSecondaryProperties.getLength();
const Property* pSecondaryProperties = aSecondaryProperties.getConstArray();
// search the current primary property in the secondary property sequence
sal_Int32 k=0;
while (k<nSecondaryPropertyCount && (pSecondaryProperties[k].Name != pPrimaryProperty->Name))
++k;
if (k >= nSecondaryPropertyCount)
// not found -> do not include
pInclusionFlags[nPrimary] = sal_False;
}
}
}
// count what's left ....
sal_Int32 nOverallProperties = 0;
for (sal_Int32 nCounter=0; nCounter<nMasterPropsCount; ++nCounter)
{
if (pInclusionFlags[nCounter])
++nOverallProperties;
}
// and finally construct our sequence
m_aProperties = Sequence< Property >(nOverallProperties);
Property* pProperties = m_aProperties.getArray();
const Property* pMasterProperties = pMasterProps;
sal_Int32 nOwnProperties = 0;
for (sal_Int32 nCopy = 0; nCopy < nMasterPropsCount; ++nCopy, ++pMasterProperties)
{
if (pInclusionFlags[nCopy])
pProperties[nOwnProperties++] = *pMasterProperties;
}
}
}
//------------------------------------------------------------------------------
Reference< XPropertySetInfo > SAL_CALL OComposedPropertySet::getPropertySetInfo( ) throw(RuntimeException)
{
::osl::MutexGuard aGuard(m_aMutex);
if (!m_pInfo)
{
m_pInfo = new OComposedPropertySetInfo(m_aProperties);
m_pInfo->acquire();
}
return m_pInfo;
}
//------------------------------------------------------------------------------
PropertyState SAL_CALL OComposedPropertySet::getPropertyState( const ::rtl::OUString& _rPropertyName ) throw(UnknownPropertyException, RuntimeException)
{
// assume DIRECT for the moment
PropertyState eState = PropertyState_DIRECT_VALUE;
sal_Int32 nSingleSets = m_aSingleSets.size();
if (nSingleSets>0)
{
// check the master state
Reference< XPropertySet > xMasterSet(m_aSingleSets[0]);
Any aPrimaryValue;
if (xMasterSet.is())
{
Reference< XPropertyState > xMasterState(xMasterSet,UNO_QUERY);
aPrimaryValue = xMasterSet->getPropertyValue(_rPropertyName);
if (xMasterState.is())
eState = xMasterState->getPropertyState(_rPropertyName);
}
// loop through the secondary sets
PropertyState eSecondaryState;
for (sal_Int32 i=1; i<nSingleSets; ++i)
{
Reference< XPropertySet > xSecondary(m_aSingleSets[i]);
Reference< XPropertyState > xSecondaryState(xSecondary, UNO_QUERY);
// the secondary state
eSecondaryState = PropertyState_DIRECT_VALUE;
if(xSecondaryState.is())
eSecondaryState = xSecondaryState->getPropertyState(_rPropertyName);
// the secondary value
Any aSecondaryValue(xSecondary->getPropertyValue(_rPropertyName));
if ( (PropertyState_AMBIGUOUS_VALUE == eSecondaryState) // secondary is ambiguous
|| !::comphelper::compare(aPrimaryValue, aSecondaryValue) // unequal values
)
{
eState = PropertyState_AMBIGUOUS_VALUE;
break;
}
}
}
else
{
throw UnknownPropertyException( _rPropertyName, *this );
}
return eState;
}
//---------------------------------------------------------------------
Sequence< PropertyState > SAL_CALL OComposedPropertySet::getPropertyStates( const Sequence< ::rtl::OUString >& _rPropertyName ) throw(UnknownPropertyException, RuntimeException)
{
sal_Int32 nCount = _rPropertyName.getLength();
Sequence< PropertyState > aReturn(nCount);
const ::rtl::OUString* pNames = _rPropertyName.getConstArray();
PropertyState* pStates = aReturn.getArray();
for (sal_Int32 i=0; i<nCount; ++i, ++pNames, ++pStates)
*pStates = getPropertyState(*pNames);
return aReturn;
}
//---------------------------------------------------------------------
void SAL_CALL OComposedPropertySet::setPropertyToDefault( const ::rtl::OUString& _rPropertyName ) throw(UnknownPropertyException, RuntimeException)
{
sal_Int32 nSingleSets = m_aSingleSets.size();
for (sal_Int32 i=0; i<nSingleSets; ++i)
{
Reference< XPropertyState > xState(m_aSingleSets[i], UNO_QUERY);
if(xState.is())
xState->setPropertyToDefault(_rPropertyName);
}
}
//---------------------------------------------------------------------
Any SAL_CALL OComposedPropertySet::getPropertyDefault( const ::rtl::OUString& ) throw(UnknownPropertyException, WrappedTargetException, RuntimeException)
{
return Any();
}
//------------------------------------------------------------------------------
void SAL_CALL OComposedPropertySet::setPropertyValue( const ::rtl::OUString& _rPropertyName, const Any& _rValue ) throw(UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException, RuntimeException)
{
sal_Int32 nSingleSets = m_aSingleSets.size();
for (sal_Int32 i=0; i<nSingleSets; ++i)
{
if (m_aSingleSets[i].is())
m_aSingleSets[i]->setPropertyValue(_rPropertyName, _rValue);
}
}
//------------------------------------------------------------------------------
Any SAL_CALL OComposedPropertySet::getPropertyValue( const ::rtl::OUString& _rPropertyName ) throw(UnknownPropertyException, WrappedTargetException, RuntimeException)
{
sal_Int32 nSingleSets = m_aSingleSets.size();
if ((nSingleSets>0) && (m_aSingleSets[0].is()))
return m_aSingleSets[0]->getPropertyValue(_rPropertyName);
return Any();
}
//------------------------------------------------------------------------------
void SAL_CALL OComposedPropertySet::addPropertyChangeListener( const ::rtl::OUString&, const Reference< XPropertyChangeListener >& ) throw(UnknownPropertyException, WrappedTargetException, RuntimeException)
{
// TODO:
// hold the single property sets weak
// be a property change listener on all single property sets (for all composed properties)
// upon property change
// determine the new state/value of the composed property
// broadcast the new composed property value
}
//------------------------------------------------------------------------------
void SAL_CALL OComposedPropertySet::removePropertyChangeListener( const ::rtl::OUString&, const Reference< XPropertyChangeListener >& ) throw(UnknownPropertyException, WrappedTargetException, RuntimeException)
{
// TODO
}
//------------------------------------------------------------------------------
void SAL_CALL OComposedPropertySet::addVetoableChangeListener( const ::rtl::OUString&, const Reference< XVetoableChangeListener >& ) throw(UnknownPropertyException, WrappedTargetException, RuntimeException)
{
OSL_FAIL("OComposedPropertySet::addVetoableChangeListener: no implemented (yet)!");
}
//------------------------------------------------------------------------------
void SAL_CALL OComposedPropertySet::removeVetoableChangeListener( const ::rtl::OUString&, const Reference< XVetoableChangeListener >& ) throw(UnknownPropertyException, WrappedTargetException, RuntimeException)
{
OSL_FAIL("OComposedPropertySet::removeVetoableChangeListener: no implemented (yet)!");
}
//------------------------------------------------------------------------------
OComposedPropertySetInfo::OComposedPropertySetInfo(const Sequence< Property>& rSeq)
:m_aProperties(rSeq)
{
}
//------------------------------------------------------------------------------
Sequence< Property> SAL_CALL OComposedPropertySetInfo::getProperties() throw(RuntimeException)
{
return m_aProperties;
}
//------------------------------------------------------------------------------
Property SAL_CALL OComposedPropertySetInfo::getPropertyByName( const ::rtl::OUString& _rName ) throw(UnknownPropertyException, RuntimeException)
{
sal_Int32 nLength = m_aProperties.getLength();
const Property* pProps = m_aProperties.getConstArray();
// TODO TODO TODO: this O(n) search really sucks ...
for (sal_Int32 i=0; i<nLength; ++i, ++pProps)
{
if (pProps->Name == _rName)
return *pProps;
}
throw UnknownPropertyException( _rName, *this );
}
//------------------------------------------------------------------------------
sal_Bool SAL_CALL OComposedPropertySetInfo::hasPropertyByName( const ::rtl::OUString& _rName ) throw(RuntimeException)
{
sal_Int32 nLength = m_aProperties.getLength();
const Property* pProps = m_aProperties.getConstArray();
// TODO TODO TODO: this O(n) search really sucks ...
for( sal_Int32 i=0; i<nLength; ++i,++pProps )
{
if(pProps->Name == _rName)
return sal_True;
}
return sal_False;
}
//.........................................................................
} // namespace comphelper
//.........................................................................
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@@ -1,826 +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_comphelper.hxx"
#include <osl/diagnose.h>
#include <com/sun/star/beans/PropertyAttribute.hpp>
#include <com/sun/star/io/XAsyncOutputMonitor.hpp>
#include <com/sun/star/embed/UseBackupException.hpp>
#include <comphelper/otransactedfilestream.hxx>
#include <comphelper/storagehelper.hxx>
#include <cppuhelper/implbase1.hxx>
using namespace ::com::sun::star;
namespace comphelper
{
// ========================================================================
class OTransactionHelper : public ::cppu::WeakImplHelper1 < embed::XTransactedObject >
{
OTruncatedTransactedFileStream* m_pFileStream;
uno::Reference< io::XStream > m_xStreamHolder;
public:
OTransactionHelper( OTruncatedTransactedFileStream* pStream )
: m_pFileStream( pStream )
{
m_xStreamHolder = static_cast< io::XStream* >( pStream );
if ( !m_xStreamHolder.is() )
throw uno::RuntimeException();
}
virtual void SAL_CALL commit( ) throw (io::IOException, lang::WrappedTargetException, uno::RuntimeException);
virtual void SAL_CALL revert( ) throw (io::IOException, lang::WrappedTargetException, uno::RuntimeException);
};
// ------------------------------------------------------------------------
void SAL_CALL OTransactionHelper::commit( ) throw (io::IOException, lang::WrappedTargetException, uno::RuntimeException)
{
m_pFileStream->Commit_Impl();
}
// ------------------------------------------------------------------------
void SAL_CALL OTransactionHelper::revert( ) throw (io::IOException, lang::WrappedTargetException, uno::RuntimeException)
{
m_pFileStream->Revert_Impl();
}
// ========================================================================
struct TTFileStreamData_Impl
{
uno::Reference< ucb::XSimpleFileAccess > m_xFileAccess;
sal_Bool m_bDelete;
::rtl::OUString m_aURL;
// the streams below are not visible from outside so there is no need to remember position
// original stream related members
uno::Reference< io::XStream > m_xOrigStream;
uno::Reference< io::XTruncate > m_xOrigTruncate;
uno::Reference< io::XSeekable > m_xOrigSeekable;
uno::Reference< io::XInputStream > m_xOrigInStream;
uno::Reference< io::XOutputStream > m_xOrigOutStream;
// temporary stream related members
uno::Reference< io::XStream > m_xTempStream;
uno::Reference< io::XTruncate > m_xTempTruncate;
uno::Reference< io::XSeekable > m_xTempSeekable;
uno::Reference< io::XInputStream > m_xTempInStream;
uno::Reference< io::XOutputStream > m_xTempOutStream;
sal_Bool m_bInOpen;
sal_Bool m_bOutOpen;
sal_Bool m_bTransacted;
TTFileStreamData_Impl(
const uno::Reference< ucb::XSimpleFileAccess >& xFileAccess,
sal_Bool bDelete,
const ::rtl::OUString& aURL,
const uno::Reference< io::XStream >& xOrigStream,
const uno::Reference< io::XTruncate >& xOrigTruncate,
const uno::Reference< io::XSeekable >& xOrigSeekable,
const uno::Reference< io::XInputStream >& xOrigInStream,
const uno::Reference< io::XOutputStream >& xOrigOutStream,
const uno::Reference< io::XStream >& xTempStream,
const uno::Reference< io::XTruncate >& xTempTruncate,
const uno::Reference< io::XSeekable >& xTempSeekable,
const uno::Reference< io::XInputStream >& xTempInStream,
const uno::Reference< io::XOutputStream >& xTempOutStream )
: m_xFileAccess( xFileAccess )
, m_bDelete( bDelete )
, m_aURL( aURL )
, m_xOrigStream( xOrigStream )
, m_xOrigTruncate( xOrigTruncate )
, m_xOrigSeekable( xOrigSeekable )
, m_xOrigInStream( xOrigInStream )
, m_xOrigOutStream( xOrigOutStream )
, m_xTempStream( xTempStream )
, m_xTempTruncate( xTempTruncate )
, m_xTempSeekable( xTempSeekable )
, m_xTempInStream( xTempInStream )
, m_xTempOutStream( xTempOutStream )
, m_bInOpen( sal_False )
, m_bOutOpen( sal_False )
, m_bTransacted( sal_True )
{}
void NoTransaction()
{
m_bDelete = sal_False;
m_bTransacted = sal_False;
m_xTempStream = uno::Reference< io::XStream >();
m_xTempTruncate = uno::Reference< io::XTruncate >();
m_xTempSeekable = uno::Reference< io::XSeekable >();
m_xTempInStream = uno::Reference< io::XInputStream >();
m_xTempOutStream = uno::Reference< io::XOutputStream >();
}
void FreeOriginal()
{
m_bDelete = sal_False;
m_bTransacted = sal_False;
m_xOrigStream = m_xTempStream;
m_xTempStream = uno::Reference< io::XStream >();
m_xOrigTruncate = m_xTempTruncate;
m_xTempTruncate = uno::Reference< io::XTruncate >();
m_xOrigSeekable = m_xTempSeekable;
m_xTempSeekable = uno::Reference< io::XSeekable >();
m_xOrigInStream = m_xTempInStream;
m_xTempInStream = uno::Reference< io::XInputStream >();
m_xOrigOutStream = m_xTempOutStream;
m_xTempOutStream = uno::Reference< io::XOutputStream >();
}
};
// ========================================================================
// ------------------------------------------------------------------------
OTruncatedTransactedFileStream::OTruncatedTransactedFileStream(
const ::rtl::OUString& aURL,
const uno::Reference< lang::XMultiServiceFactory >& xFactory )
: m_pStreamData( NULL )
{
uno::Reference< ucb::XSimpleFileAccess > xSimpleFileAccess(
xFactory->createInstance( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.ucb.SimpleFileAccess" ) ) ),
uno::UNO_QUERY_THROW );
CommonInit_Impl( aURL, xSimpleFileAccess, xFactory, sal_False );
}
// ------------------------------------------------------------------------
OTruncatedTransactedFileStream::OTruncatedTransactedFileStream(
const ::rtl::OUString& aURL,
const uno::Reference< ucb::XSimpleFileAccess >& xFileAccess,
const uno::Reference< lang::XMultiServiceFactory >& xFactory )
: m_pStreamData( NULL )
{
CommonInit_Impl( aURL, xFileAccess, xFactory, sal_False );
}
// ------------------------------------------------------------------------
OTruncatedTransactedFileStream::OTruncatedTransactedFileStream(
const ::rtl::OUString& aURL,
const uno::Reference< ucb::XSimpleFileAccess >& xFileAccess,
const uno::Reference< lang::XMultiServiceFactory >& xFactory,
sal_Bool bDeleteIfNotCommited )
: m_pStreamData( NULL )
{
CommonInit_Impl( aURL, xFileAccess, xFactory, sal_True );
if ( m_pStreamData )
m_pStreamData->m_bDelete = bDeleteIfNotCommited;
}
// ------------------------------------------------------------------------
OTruncatedTransactedFileStream::~OTruncatedTransactedFileStream()
{
CloseAll_Impl();
}
// ------------------------------------------------------------------------
void OTruncatedTransactedFileStream::CloseAll_Impl()
{
::osl::MutexGuard aGuard( m_aMutex );
if ( m_pStreamData )
{
sal_Bool bDelete = m_pStreamData->m_bDelete;
::rtl::OUString aURL = m_pStreamData->m_aURL;
uno::Reference< ucb::XSimpleFileAccess > xFileAccess = m_pStreamData->m_xFileAccess;
delete m_pStreamData;
m_pStreamData = NULL;
if ( bDelete && xFileAccess.is() && aURL.getLength() )
{
// delete the file
try
{
xFileAccess->kill( aURL );
} catch( uno::Exception& )
{
OSL_FAIL( "Could not remove the file!" );
}
}
}
}
// ------------------------------------------------------------------------
void OTruncatedTransactedFileStream::CommonInit_Impl(
const ::rtl::OUString& aURL,
const uno::Reference< ucb::XSimpleFileAccess >& xFileAccess,
const uno::Reference< lang::XMultiServiceFactory >& xFactory,
sal_Bool bDeleteOptionIsProvided )
{
sal_Bool bDelete = sal_False;
if ( !bDeleteOptionIsProvided )
bDelete = !xFileAccess->exists( aURL );
uno::Reference< io::XStream > xOrigStream = xFileAccess->openFileReadWrite( aURL );
uno::Reference< io::XTruncate > xOrigTruncate( xOrigStream, uno::UNO_QUERY_THROW );
uno::Reference< io::XSeekable > xOrigSeekable( xOrigStream, uno::UNO_QUERY_THROW );
uno::Reference< io::XInputStream > xOrigInStream = xOrigStream->getInputStream();
uno::Reference< io::XOutputStream > xOrigOutStream = xOrigStream->getOutputStream();
if ( !xOrigInStream.is() || !xOrigOutStream.is() )
throw uno::RuntimeException();
// temporary stream related members
uno::Reference< io::XStream > xTempStream( xFactory->createInstance(
::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.io.TempFile" ) ) ),
uno::UNO_QUERY_THROW );
uno::Reference< io::XTruncate > xTempTruncate( xTempStream, uno::UNO_QUERY_THROW );
uno::Reference< io::XSeekable > xTempSeekable( xTempStream, uno::UNO_QUERY_THROW );
uno::Reference< io::XInputStream > xTempInStream = xTempStream->getInputStream();
uno::Reference< io::XOutputStream > xTempOutStream = xTempStream->getOutputStream();
if ( !xTempInStream.is() || !xTempOutStream.is() )
throw uno::RuntimeException();
m_pStreamData = new TTFileStreamData_Impl( xFileAccess, bDelete, aURL,
xOrigStream, xOrigTruncate, xOrigSeekable, xOrigInStream, xOrigOutStream,
xTempStream, xTempTruncate, xTempSeekable, xTempInStream, xTempOutStream );
}
// ------------------------------------------------------------------------
void OTruncatedTransactedFileStream::Commit_Impl()
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
sal_Int64 nPos = m_pStreamData->m_xTempSeekable->getPosition();
m_pStreamData->m_xTempSeekable->seek( 0 );
// after the following step fails the information might be lost, throw an exception with URL of temporary file
try
{
m_pStreamData->m_xOrigTruncate->truncate();
OStorageHelper::CopyInputToOutput( m_pStreamData->m_xTempInStream, m_pStreamData->m_xOrigOutStream );
m_pStreamData->m_xOrigOutStream->flush();
// in case the stream is based on a file it will implement the following interface
// the call should be used to be sure that the contents are written to the file system
uno::Reference< io::XAsyncOutputMonitor > asyncOutputMonitor( m_pStreamData->m_xOrigOutStream, uno::UNO_QUERY );
if ( asyncOutputMonitor.is() )
asyncOutputMonitor->waitForCompletion();
}
catch( uno::Exception& )
{
::rtl::OUString aTempURL;
try {
uno::Reference< beans::XPropertySet > xTempFile( m_pStreamData->m_xTempStream, uno::UNO_QUERY_THROW );
uno::Any aUrl = xTempFile->getPropertyValue( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("Uri")) );
aUrl >>= aTempURL;
xTempFile->setPropertyValue( ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("RemoveFile")),
uno::makeAny( sal_False ) );
m_pStreamData->m_xTempSeekable->seek( nPos );
}
catch( uno::Exception& )
{
OSL_FAIL( "These calls are pretty simple, they should not fail!\n" );
}
m_pStreamData->FreeOriginal();
::rtl::OUString aErrTxt( RTL_CONSTASCII_USTRINGPARAM ( "Writing file failed!" ) );
embed::UseBackupException aException( aErrTxt, uno::Reference< uno::XInterface >(), aTempURL );
throw lang::WrappedTargetException( aErrTxt,
static_cast < OWeakObject * > ( this ),
uno::makeAny ( aException ) );
}
m_pStreamData->m_xOrigSeekable->seek( nPos );
m_pStreamData->NoTransaction();
}
else
throw io::NotConnectedException();
}
// ------------------------------------------------------------------------
void OTruncatedTransactedFileStream::Revert_Impl()
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
m_pStreamData->m_xTempTruncate->truncate();
else
throw io::NotConnectedException();
}
// com::sun::star::io::XStream
// ------------------------------------------------------------------------
uno::Reference< io::XInputStream > SAL_CALL OTruncatedTransactedFileStream::getInputStream( )
throw (uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( m_pStreamData )
m_pStreamData->m_bInOpen = sal_True;
return static_cast< io::XInputStream* >( this );
}
// ------------------------------------------------------------------------
uno::Reference< io::XOutputStream > SAL_CALL OTruncatedTransactedFileStream::getOutputStream( )
throw (uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( m_pStreamData )
m_pStreamData->m_bOutOpen = sal_True;
return static_cast< io::XOutputStream* >( this );
}
// com::sun::star::io::XInputStream
// ------------------------------------------------------------------------
::sal_Int32 SAL_CALL OTruncatedTransactedFileStream::readBytes( uno::Sequence< ::sal_Int8 >& aData, ::sal_Int32 nBytesToRead )
throw (io::NotConnectedException, io::BufferSizeExceededException, io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempInStream.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xTempInStream->readBytes( aData, nBytesToRead );
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigInStream.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xOrigInStream->readBytes( aData, nBytesToRead );
}
}
// ------------------------------------------------------------------------
::sal_Int32 SAL_CALL OTruncatedTransactedFileStream::readSomeBytes( uno::Sequence< ::sal_Int8 >& aData, ::sal_Int32 nMaxBytesToRead )
throw (io::NotConnectedException, io::BufferSizeExceededException, io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempInStream.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xTempInStream->readSomeBytes( aData, nMaxBytesToRead );
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigInStream.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xOrigInStream->readSomeBytes( aData, nMaxBytesToRead );
}
}
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::skipBytes( ::sal_Int32 nBytesToSkip )
throw (io::NotConnectedException, io::BufferSizeExceededException, io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempInStream.is() )
throw uno::RuntimeException();
m_pStreamData->m_xTempInStream->skipBytes( nBytesToSkip );
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigInStream.is() )
throw uno::RuntimeException();
m_pStreamData->m_xOrigInStream->skipBytes( nBytesToSkip );
}
}
// ------------------------------------------------------------------------
::sal_Int32 SAL_CALL OTruncatedTransactedFileStream::available( )
throw (io::NotConnectedException, io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempInStream.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xTempInStream->available();
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigInStream.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xOrigInStream->available();
}
}
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::closeInput()
throw (io::NotConnectedException, io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
m_pStreamData->m_bInOpen = sal_False;
if ( !m_pStreamData->m_bOutOpen )
CloseAll_Impl();
}
// com::sun::star::io::XOutputStream
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::writeBytes( const uno::Sequence< ::sal_Int8 >& aData )
throw (io::NotConnectedException, io::BufferSizeExceededException, io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempOutStream.is() )
throw uno::RuntimeException();
m_pStreamData->m_xTempOutStream->writeBytes( aData );
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigOutStream.is() )
throw uno::RuntimeException();
m_pStreamData->m_xOrigOutStream->writeBytes( aData );
}
}
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::flush( )
throw (io::NotConnectedException, io::BufferSizeExceededException, io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
{
OSL_FAIL( "flush() call on closed stream!\n" );
return;
// in future throw exception, for now some code might call flush() on closed stream
// since file ucp implementation allows it
// throw io::NotConnectedException();
}
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempOutStream.is() )
throw uno::RuntimeException();
m_pStreamData->m_xTempOutStream->flush();
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigOutStream.is() )
throw uno::RuntimeException();
m_pStreamData->m_xOrigOutStream->flush();
}
}
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::closeOutput( )
throw (io::NotConnectedException, io::BufferSizeExceededException, io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
m_pStreamData->m_bOutOpen = sal_False;
if ( !m_pStreamData->m_bInOpen )
CloseAll_Impl();
}
// com::sun::star::io::XTruncate
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::truncate( )
throw (io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempTruncate.is() )
throw uno::RuntimeException();
m_pStreamData->m_xTempTruncate->truncate();
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigTruncate.is() )
throw uno::RuntimeException();
m_pStreamData->m_xOrigTruncate->truncate();
}
}
// com::sun::star::io::XSeekable
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::seek( ::sal_Int64 location )
throw (lang::IllegalArgumentException, io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempSeekable.is() )
throw uno::RuntimeException();
m_pStreamData->m_xTempSeekable->seek( location );
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigSeekable.is() )
throw uno::RuntimeException();
m_pStreamData->m_xOrigSeekable->seek( location );
}
}
// ------------------------------------------------------------------------
::sal_Int64 SAL_CALL OTruncatedTransactedFileStream::getPosition( )
throw (io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempSeekable.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xTempSeekable->getPosition();
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigSeekable.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xOrigSeekable->getPosition();
}
}
// ------------------------------------------------------------------------
::sal_Int64 SAL_CALL OTruncatedTransactedFileStream::getLength( )
throw (io::IOException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
if ( m_pStreamData->m_bTransacted )
{
// temporary stream data should be provided
if ( !m_pStreamData->m_xTempSeekable.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xTempSeekable->getLength();
}
else
{
// the original stream data should be provided
if ( !m_pStreamData->m_xOrigSeekable.is() )
throw uno::RuntimeException();
return m_pStreamData->m_xOrigSeekable->getLength();
}
}
// com::sun::star::beans::XPropertySetInfo
// ------------------------------------------------------------------------
uno::Sequence< beans::Property > SAL_CALL OTruncatedTransactedFileStream::getProperties()
throw (uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
uno::Sequence< beans::Property > aProps( 1 );
aProps[0].Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "TransactionSupport" ) );
aProps[0].Type = getCppuType( static_cast< uno::Reference< beans::XPropertySet >* >( NULL ) );
aProps[0].Attributes = beans::PropertyAttribute::TRANSIENT | beans::PropertyAttribute::READONLY;
return aProps;
}
// ------------------------------------------------------------------------
beans::Property SAL_CALL OTruncatedTransactedFileStream::getPropertyByName( const ::rtl::OUString& aName )
throw (beans::UnknownPropertyException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
::rtl::OUString aTransactionPropName( RTL_CONSTASCII_USTRINGPARAM( "TransactionSupport" ) );
if ( !aName.equals( aTransactionPropName ) )
throw beans::UnknownPropertyException();
beans::Property aProp;
aProp.Name = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "TransactionSupport" ) );
aProp.Type = getCppuType( static_cast< uno::Reference< beans::XPropertySet >* >( NULL ) );
aProp.Attributes = beans::PropertyAttribute::TRANSIENT | beans::PropertyAttribute::READONLY;
return aProp;
}
// ------------------------------------------------------------------------
::sal_Bool SAL_CALL OTruncatedTransactedFileStream::hasPropertyByName( const ::rtl::OUString& Name )
throw (uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
::rtl::OUString aTransactionPropName( RTL_CONSTASCII_USTRINGPARAM( "TransactionSupport" ) );
return ( Name.equals( aTransactionPropName ) );
}
// com::sun::star::beans::XPropertySet
// ------------------------------------------------------------------------
uno::Reference< beans::XPropertySetInfo > SAL_CALL OTruncatedTransactedFileStream::getPropertySetInfo()
throw (uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
return static_cast< beans::XPropertySetInfo* >( this );
}
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::setPropertyValue( const ::rtl::OUString& aPropertyName, const uno::Any& )
throw (beans::UnknownPropertyException, beans::PropertyVetoException, lang::IllegalArgumentException, lang::WrappedTargetException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
::rtl::OUString aTransactionPropName( RTL_CONSTASCII_USTRINGPARAM( "TransactionSupport" ) );
if ( aPropertyName.equals( aTransactionPropName ) )
throw beans::PropertyVetoException();
throw beans::UnknownPropertyException();
}
// ------------------------------------------------------------------------
uno::Any SAL_CALL OTruncatedTransactedFileStream::getPropertyValue( const ::rtl::OUString& PropertyName )
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
{
::osl::MutexGuard aGuard( m_aMutex );
if ( !m_pStreamData )
throw io::NotConnectedException();
::rtl::OUString aTransactionPropName( RTL_CONSTASCII_USTRINGPARAM( "TransactionSupport" ) );
if ( PropertyName.equals( aTransactionPropName ) )
{
uno::Reference< embed::XTransactedObject > xObj;
if ( m_pStreamData->m_bTransacted )
xObj = static_cast< embed::XTransactedObject* >( new OTransactionHelper( this ) );
return uno::makeAny( xObj );
}
throw beans::UnknownPropertyException();
}
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::addPropertyChangeListener( const ::rtl::OUString&, const uno::Reference< beans::XPropertyChangeListener >& )
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
{
// not implemented
}
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::removePropertyChangeListener( const ::rtl::OUString&, const uno::Reference< beans::XPropertyChangeListener >& )
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
{
// not implemented
}
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::addVetoableChangeListener( const ::rtl::OUString&, const uno::Reference< beans::XVetoableChangeListener >& )
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
{
// not implemented
}
// ------------------------------------------------------------------------
void SAL_CALL OTruncatedTransactedFileStream::removeVetoableChangeListener( const ::rtl::OUString&, const uno::Reference< beans::XVetoableChangeListener >& )
throw (beans::UnknownPropertyException, lang::WrappedTargetException, uno::RuntimeException)
{
// not implemented
}
} // namespace comphelper
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */

View File

@@ -140,25 +140,6 @@ void AttributeList::Clear()
OSL_ENSURE( ! getLength(), "Length > 0 after AttributeList::Clear!");
}
void AttributeList::RemoveAttribute( const OUString sName )
{
::std::vector<struct TagAttribute_Impl>::iterator ii = m_pImpl->vecAttribute.begin();
for( ; ii != m_pImpl->vecAttribute.end() ; ++ii ) {
if( (*ii).sName == sName ) {
m_pImpl->vecAttribute.erase( ii );
break;
}
}
}
void AttributeList::SetAttributeList( const uno::Reference< ::com::sun::star::xml::sax::XAttributeList > &r )
{
Clear();
AppendAttributeList( r );
}
void AttributeList::AppendAttributeList( const uno::Reference< ::com::sun::star::xml::sax::XAttributeList > &r )
{
OSL_ENSURE( r.is(), "r isn't!" );

View File

@@ -864,7 +864,6 @@ SvUShorts::Replace(unsigned short const&, unsigned short)
SvUShorts::Replace(unsigned short const*, unsigned short, unsigned short)
SvUShorts::_ForEach(unsigned short, unsigned short, unsigned char (*)(unsigned short const&, void*), void*)
SvUnoAttributeContainer::getImplementation(com::sun::star::uno::Reference<com::sun::star::uno::XInterface>)
SvXMLAttributeList::SetAttributeList(com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList> const&)
SvXMLAutoStylePoolNamesP_Impl::GetPos(rtl::OUString const*) const
SvXMLAutoStylePoolNamesP_Impl::Remove(rtl::OUString*)
SvXMLAutoStylePoolParentsP_Impl::GetPos(SvXMLAutoStylePoolParentP_Impl const*) const
@@ -2035,16 +2034,6 @@ chelp::Databases::getInstallPathAsSystemPath()
cmis::Content::exchangeIdentity(com::sun::star::uno::Reference<com::sun::star::ucb::XContentIdentifier> const&)
cmis::Content::queryChildren(std::list<rtl::Reference<cmis::Content>, std::allocator<rtl::Reference<cmis::Content> > >&)
codemaker::cpp::typeToPrefix(TypeManager const&, rtl::OString const&)
comphelper::AccessibleEventBuffer::AccessibleEventBuffer()
comphelper::AccessibleEventBuffer::sendEvents() const
comphelper::AccessibleEventBuffer::~AccessibleEventBuffer()
comphelper::AttributeList::RemoveAttribute(rtl::OUString)
comphelper::AttributeList::SetAttributeList(com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList> const&)
comphelper::ChainablePropertySet::lockMutex()
comphelper::ChainablePropertySet::unlockMutex()
comphelper::ChainablePropertySetInfo::ChainablePropertySetInfo()
comphelper::DocPasswordHelper::GetWordHashAsSequence(rtl::OUString const&)
comphelper::DocPasswordRequest::isAbort() const
comphelper::EmbeddedObjectContainer::CopyEmbeddedObject(comphelper::EmbeddedObjectContainer&, com::sun::star::uno::Reference<com::sun::star::embed::XEmbeddedObject> const&, rtl::OUString&)
comphelper::EventLogger::addLogHandler(com::sun::star::uno::Reference<com::sun::star::logging::XLogHandler> const&)
comphelper::EventLogger::getLogLevel() const
@@ -2053,25 +2042,17 @@ comphelper::EventLogger::removeLogHandler(com::sun::star::uno::Reference<com::su
comphelper::EventLogger::setLogLevel(int) const
comphelper::FastPropertySetInfo::FastPropertySetInfo()
comphelper::FastPropertySetInfo::addProperty(com::sun::star::beans::Property const&)
comphelper::MasterPropertySet::lockMutex()
comphelper::MasterPropertySet::unlockMutex()
comphelper::MasterPropertySetInfo::MasterPropertySetInfo()
comphelper::MasterPropertySetInfo::remove(rtl::OUString const&)
comphelper::MimeConfigurationHelper::AddFilterNameCheckOwnFile(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue>&)
comphelper::MimeConfigurationHelper::GetSequenceClassIDFromObjectName(rtl::OUString const&)
comphelper::OAccessibleImplementationAccess::setForeignControlledState(com::sun::star::uno::Reference<com::sun::star::accessibility::XAccessibleContext> const&, short, unsigned char)
comphelper::OAccessibleSelectionHelper::OAccessibleSelectionHelper()
comphelper::OAccessibleTextHelper::OAccessibleTextHelper()
comphelper::OComposedPropertySet::OComposedPropertySet(com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::beans::XPropertySet> > const&, comphelper::IPropertySetComposerCallback const*)
comphelper::OContainerListenerAdapter::lock()
comphelper::OContainerListenerAdapter::unlock()
comphelper::OInteractionRequest::clearContinuations()
comphelper::OPropertyContainerHelper::modifyAttributes(int, int, int)
comphelper::OSelectionChangeListener::disposeAdapter()
comphelper::OStreamSection::available()
comphelper::OTruncatedTransactedFileStream::OTruncatedTransactedFileStream(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&)
comphelper::OTruncatedTransactedFileStream::OTruncatedTransactedFileStream(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::ucb::XSimpleFileAccess> const&, com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&)
comphelper::OTruncatedTransactedFileStream::OTruncatedTransactedFileStream(rtl::OUString const&, com::sun::star::uno::Reference<com::sun::star::ucb::XSimpleFileAccess> const&, com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&, unsigned char)
comphelper::OfficeResourceBundle::OfficeResourceBundle(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&)
comphelper::PropertySetHelper::PropertySetHelper()
comphelper::PropertySetHelper::setInfo(comphelper::PropertySetInfo*)
@@ -2079,7 +2060,6 @@ comphelper::PropertySetInfo::add(comphelper::PropertyMapEntry*, int)
comphelper::ResourceBasedEventLogger::ResourceBasedEventLogger(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&, rtl::OUString const&)
comphelper::SequenceAsHashMap::getAsConstAnyList(unsigned char) const
comphelper::ServiceInfoHelper::concatSequences(com::sun::star::uno::Sequence<rtl::OUString> const&, com::sun::star::uno::Sequence<rtl::OUString> const&)
comphelper::SimplePasswordRequest::isAbort() const
comphelper::createEventAttacherManager(com::sun::star::uno::Reference<com::sun::star::beans::XIntrospection> const&, com::sun::star::uno::Reference<com::sun::star::lang::XMultiServiceFactory> const&)
comphelper::findProperty(com::sun::star::beans::Property&, com::sun::star::uno::Sequence<com::sun::star::beans::Property>&, rtl::OUString const&)
comphelper::getPathToSystemRegistry()

View File

@@ -79,7 +79,6 @@ public:
void AddAttribute( const ::rtl::OUString &sName , const ::rtl::OUString &sValue );
void Clear();
void RemoveAttribute( const ::rtl::OUString sName );
void SetAttributeList( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList > & );
void AppendAttributeList( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList > & );
void SetValueByIndex( sal_Int16 i, const ::rtl::OUString& rValue );
void RemoveAttributeByIndex( sal_Int16 i );

View File

@@ -189,13 +189,6 @@ void SvXMLAttributeList::RemoveAttribute( const OUString sName )
}
}
void SvXMLAttributeList::SetAttributeList( const uno::Reference< ::com::sun::star::xml::sax::XAttributeList > &r )
{
Clear();
AppendAttributeList( r );
}
void SvXMLAttributeList::AppendAttributeList( const uno::Reference< ::com::sun::star::xml::sax::XAttributeList > &r )
{
OSL_ASSERT( r.is() );

View File

@@ -78,7 +78,6 @@ public:
// void Clear();
void RemoveAttributeByIndex( sal_Int16 i );
void RenameAttributeByIndex( sal_Int16 i, const ::rtl::OUString& rNewName );
// void SetAttributeList( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList > & );
void AppendAttributeList( const ::com::sun::star::uno::Reference< ::com::sun::star::xml::sax::XAttributeList > & );
sal_Int16 GetIndexByName( const ::rtl::OUString& rName ) const;