23#include <com/sun/star/uno/XComponentContext.hpp>
24#include <com/sun/star/lang/XServiceInfo.hpp>
25#include <com/sun/star/chart2/data/XDatabaseDataProvider.hpp>
26#include <com/sun/star/chart2/XInternalDataProvider.hpp>
27#include <com/sun/star/chart/XComplexDescriptionAccess.hpp>
28#include <com/sun/star/sdbc/XRowSet.hpp>
29#include <com/sun/star/container/XChild.hpp>
42typedef ::cppu::WeakComponentImplHelper< css::chart2::data::XDatabaseDataProvider
43 , css::container::XChild
44 , css::chart::XComplexDescriptionAccess
56 virtual css::uno::Any SAL_CALL
queryInterface(css::uno::Type
const & type)
override;
57 virtual void SAL_CALL
acquire() noexcept
override
58 { TDatabaseDataProvider::acquire(); }
59 virtual void SAL_CALL
release() noexcept
override
60 { TDatabaseDataProvider::release(); }
69 virtual css::uno::Reference< css::chart2::data::XDataSource > SAL_CALL
createDataSource(
const css::uno::Sequence< css::beans::PropertyValue > &
aArguments)
override;
70 virtual css::uno::Sequence< css::beans::PropertyValue > SAL_CALL
detectArguments(
const css::uno::Reference< css::chart2::data::XDataSource > & xDataSource)
override;
74 virtual css::uno::Reference<css::chart2::data::XDataSequence> SAL_CALL
76 const OUString& aRole,
const OUString & aRangeRepresentation,
const OUString& aRoleQualifier)
override;
78 virtual css::uno::Reference< css::sheet::XRangeSelection > SAL_CALL
getRangeSelection()
override;
81 virtual OUString SAL_CALL
convertRangeToXML(
const OUString & aRangeRepresentation)
override;
85 virtual void SAL_CALL
initialize(
const css::uno::Sequence< css::uno::Any > &
aArguments)
override;
88 virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL
getPropertySetInfo()
override;
89 virtual void SAL_CALL
setPropertyValue(
const OUString & aPropertyName,
const css::uno::Any & aValue)
override;
90 virtual css::uno::Any SAL_CALL
getPropertyValue(
const OUString & PropertyName)
override;
91 virtual void SAL_CALL
addPropertyChangeListener(
const OUString & aPropertyName,
const css::uno::Reference< css::beans::XPropertyChangeListener > & xListener)
override;
92 virtual void SAL_CALL
removePropertyChangeListener(
const OUString & aPropertyName,
const css::uno::Reference< css::beans::XPropertyChangeListener > & aListener)
override;
93 virtual void SAL_CALL
addVetoableChangeListener(
const OUString & PropertyName,
const css::uno::Reference< css::beans::XVetoableChangeListener > & aListener)
override;
94 virtual void SAL_CALL
removeVetoableChangeListener(
const OUString & PropertyName,
const css::uno::Reference< css::beans::XVetoableChangeListener > & aListener)
override;
97 virtual css::uno::Sequence< OUString > SAL_CALL
getMasterFields()
override;
98 virtual void SAL_CALL
setMasterFields(
const css::uno::Sequence< OUString > & the_value)
override;
99 virtual css::uno::Sequence< OUString > SAL_CALL
getDetailFields()
override;
100 virtual void SAL_CALL
setDetailFields(
const css::uno::Sequence< OUString > & the_value)
override;
101 virtual OUString SAL_CALL
getCommand()
override;
102 virtual void SAL_CALL
setCommand(
const OUString & the_value)
override;
104 virtual void SAL_CALL
setCommandType(::sal_Int32 the_value)
override;
105 virtual OUString SAL_CALL
getFilter()
override;
106 virtual void SAL_CALL
setFilter(
const OUString & the_value)
override;
110 virtual void SAL_CALL
setHavingClause(
const OUString& _havingclause )
override;
111 virtual OUString SAL_CALL
getGroupBy()
override;
112 virtual void SAL_CALL
setGroupBy(
const OUString& _groupby )
override;
113 virtual OUString SAL_CALL
getOrder()
override;
114 virtual void SAL_CALL
setOrder(
const OUString& _order )
override;
117 virtual ::sal_Int32 SAL_CALL
getRowLimit()
override;
118 virtual void SAL_CALL
setRowLimit( ::sal_Int32 _rowlimit )
override;
119 virtual css::uno::Reference< css::sdbc::XConnection > SAL_CALL
getActiveConnection()
override;
120 virtual void SAL_CALL
setActiveConnection(
const css::uno::Reference< css::sdbc::XConnection > & the_value)
override;
122 virtual void SAL_CALL
setDataSourceName(
const OUString& _datasourcename )
override;
125 virtual void SAL_CALL
setNull(sal_Int32 parameterIndex, sal_Int32 sqlType)
override;
126 virtual void SAL_CALL
setObjectNull(sal_Int32 parameterIndex, sal_Int32 sqlType,
const OUString& typeName)
override;
128 virtual void SAL_CALL
setByte(sal_Int32 parameterIndex,
sal_Int8 x)
override;
129 virtual void SAL_CALL
setShort(sal_Int32 parameterIndex, sal_Int16 x)
override;
130 virtual void SAL_CALL
setInt(sal_Int32 parameterIndex, sal_Int32 x)
override;
131 virtual void SAL_CALL
setLong(sal_Int32 parameterIndex, sal_Int64 x)
override;
132 virtual void SAL_CALL
setFloat(sal_Int32 parameterIndex,
float x)
override;
133 virtual void SAL_CALL
setDouble(sal_Int32 parameterIndex,
double x)
override;
134 virtual void SAL_CALL
setString(sal_Int32 parameterIndex,
const OUString& x)
override;
135 virtual void SAL_CALL
setBytes(sal_Int32 parameterIndex,
const css::uno::Sequence< sal_Int8 >& x)
override;
136 virtual void SAL_CALL
setDate(sal_Int32 parameterIndex,
const css::util::Date& x)
override;
137 virtual void SAL_CALL
setTime(sal_Int32 parameterIndex,
const css::util::Time& x)
override;
138 virtual void SAL_CALL
setTimestamp(sal_Int32 parameterIndex,
const css::util::DateTime& x)
override;
139 virtual void SAL_CALL
setBinaryStream(sal_Int32 parameterIndex,
const css::uno::Reference< css::io::XInputStream>& x, sal_Int32 length)
override;
140 virtual void SAL_CALL
setCharacterStream(sal_Int32 parameterIndex,
const css::uno::Reference< css::io::XInputStream>& x, sal_Int32 length)
override;
141 virtual void SAL_CALL
setObject(sal_Int32 parameterIndex,
const css::uno::Any& x)
override;
142 virtual void SAL_CALL
setObjectWithInfo(sal_Int32 parameterIndex,
const css::uno::Any& x, sal_Int32 targetSqlType, sal_Int32 scale)
override;
143 virtual void SAL_CALL
setRef(sal_Int32 parameterIndex,
const css::uno::Reference< css::sdbc::XRef>& x)
override;
144 virtual void SAL_CALL
setBlob(sal_Int32 parameterIndex,
const css::uno::Reference< css::sdbc::XBlob>& x)
override;
145 virtual void SAL_CALL
setClob(sal_Int32 parameterIndex,
const css::uno::Reference< css::sdbc::XClob>& x)
override;
146 virtual void SAL_CALL
setArray(sal_Int32 parameterIndex,
const css::uno::Reference< css::sdbc::XArray>& x)
override;
150 virtual void SAL_CALL
execute()
override;
151 virtual void SAL_CALL
addRowSetListener(
const css::uno::Reference< css::sdbc::XRowSetListener>& _rxListener)
override;
152 virtual void SAL_CALL
removeRowSetListener(
const css::uno::Reference< css::sdbc::XRowSetListener>& _rxListener)
override;
161 virtual void SAL_CALL
afterLast()
override;
164 virtual sal_Int32 SAL_CALL
getRow()
override;
172 virtual css::uno::Reference< css::uno::XInterface > SAL_CALL
getStatement()
override;
175 virtual css::uno::Reference< css::uno::XInterface > SAL_CALL
getParent( )
override;
176 virtual void SAL_CALL
setParent(
const css::uno::Reference< css::uno::XInterface >& Parent )
override;
180 virtual void SAL_CALL
setComplexRowDescriptions(
const css::uno::Sequence< css::uno::Sequence< OUString > >& aRowDescriptions )
override;
182 virtual void SAL_CALL
setComplexColumnDescriptions(
const css::uno::Sequence< css::uno::Sequence< OUString > >& aColumnDescriptions )
override;
185 virtual css::uno::Sequence< css::uno::Sequence< double > > SAL_CALL
getData()
override;
186 virtual void SAL_CALL
setData(
const css::uno::Sequence< css::uno::Sequence< double > >& aData )
override;
188 virtual void SAL_CALL
setRowDescriptions(
const css::uno::Sequence< OUString >& aRowDescriptions )
override;
190 virtual void SAL_CALL
setColumnDescriptions(
const css::uno::Sequence< OUString >& aColumnDescriptions )
override;
206 virtual void SAL_CALL
disposing()
override;
214 template <
typename T>
void set(
const OUString& _sProperty
221 if ( _member !=
Value )
223 prepareSet(_sProperty, css::uno::Any(_member), css::uno::Any(
Value), &l);
234 css::uno::Reference< css::uno::XComponentContext >
m_xContext;
237 css::uno::Reference< css::chart2::XInternalDataProvider >
m_xInternal;
240 css::uno::Reference< css::task::XInteractionHandler>
m_xHandler;
mutable::osl::Mutex m_aMutex
void prepareSet(rtl::OUString const &propertyName, css::uno::Any const &oldValue, css::uno::Any const &newValue, BoundListeners *boundListeners)
css::uno::Reference< css::uno::XInterface > m_xParent
virtual void SAL_CALL setGroupBy(const OUString &_groupby) override
virtual void SAL_CALL setComplexColumnDescriptions(const css::uno::Sequence< css::uno::Sequence< OUString > > &aColumnDescriptions) override
virtual OUString SAL_CALL getFilter() override
virtual css::uno::Reference< css::sheet::XRangeSelection > SAL_CALL getRangeSelection() override
virtual void SAL_CALL setDataSourceName(const OUString &_datasourcename) override
css::uno::Sequence< OUString > m_MasterFields
virtual OUString SAL_CALL getOrder() override
virtual css::uno::Any SAL_CALL getPropertyValue(const OUString &PropertyName) override
virtual sal_Bool SAL_CALL rowUpdated() override
virtual void SAL_CALL setBoolean(sal_Int32 parameterIndex, sal_Bool x) override
virtual void SAL_CALL setMasterFields(const css::uno::Sequence< OUString > &the_value) override
virtual sal_Bool SAL_CALL getEscapeProcessing() override
virtual void SAL_CALL setArray(sal_Int32 parameterIndex, const css::uno::Reference< css::sdbc::XArray > &x) override
virtual void SAL_CALL setCommand(const OUString &the_value) override
virtual ~DatabaseDataProvider() override
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL getStatement() override
css::uno::Reference< css::uno::XComponentContext > m_xContext
virtual void SAL_CALL removeVetoableChangeListener(const OUString &PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &aListener) override
virtual void SAL_CALL setComplexRowDescriptions(const css::uno::Sequence< css::uno::Sequence< OUString > > &aRowDescriptions) override
virtual sal_Bool SAL_CALL absolute(sal_Int32 row) override
virtual void SAL_CALL setTime(sal_Int32 parameterIndex, const css::util::Time &x) override
virtual void SAL_CALL setDouble(sal_Int32 parameterIndex, double x) override
virtual css::uno::Sequence< OUString > SAL_CALL getDetailFields() override
std::map< OUString, css::uno::Any > m_aNumberFormats
virtual void SAL_CALL setShort(sal_Int32 parameterIndex, sal_Int16 x) override
virtual void SAL_CALL setCommandType(::sal_Int32 the_value) override
virtual css::uno::Reference< css::chart2::data::XDataSequence > SAL_CALL createDataSequenceByRangeRepresentation(const OUString &aRangeRepresentation) override
virtual css::uno::Sequence< css::uno::Sequence< double > > SAL_CALL getData() override
virtual void SAL_CALL acquire() noexcept override
virtual void SAL_CALL setObjectNull(sal_Int32 parameterIndex, sal_Int32 sqlType, const OUString &typeName) override
virtual void SAL_CALL setActiveConnection(const css::uno::Reference< css::sdbc::XConnection > &the_value) override
virtual void SAL_CALL addPropertyChangeListener(const OUString &aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &xListener) override
css::uno::Reference< css::sdbc::XRowSet > m_xRowSet
virtual OUString SAL_CALL getCommand() override
virtual css::uno::Sequence< OUString > SAL_CALL getMasterFields() override
virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo() override
virtual void SAL_CALL setBinaryStream(sal_Int32 parameterIndex, const css::uno::Reference< css::io::XInputStream > &x, sal_Int32 length) override
virtual void SAL_CALL setObject(sal_Int32 parameterIndex, const css::uno::Any &x) override
virtual sal_Bool SAL_CALL next() override
virtual void SAL_CALL setApplyFilter(sal_Bool _applyfilter) override
css::uno::Reference< css::uno::XAggregation > m_xAggregate
DatabaseDataProvider(DatabaseDataProvider const &)=delete
DatabaseDataProvider(css::uno::Reference< css::uno::XComponentContext > const &context)
virtual void SAL_CALL setInt(sal_Int32 parameterIndex, sal_Int32 x) override
virtual css::uno::Any SAL_CALL queryInterface(css::uno::Type const &type) override
css::uno::Reference< css::chart2::XInternalDataProvider > m_xInternal
css::uno::Sequence< OUString > m_DetailFields
virtual void SAL_CALL setBlob(sal_Int32 parameterIndex, const css::uno::Reference< css::sdbc::XBlob > &x) override
virtual void SAL_CALL setRowDescriptions(const css::uno::Sequence< OUString > &aRowDescriptions) override
virtual css::uno::Sequence< OUString > SAL_CALL getRowDescriptions() override
virtual void SAL_CALL setDate(sal_Int32 parameterIndex, const css::util::Date &x) override
virtual void SAL_CALL removeRowSetListener(const css::uno::Reference< css::sdbc::XRowSetListener > &_rxListener) override
virtual void SAL_CALL clearParameters() override
virtual void SAL_CALL setRowLimit(::sal_Int32 _rowlimit) override
virtual css::uno::Sequence< css::beans::PropertyValue > SAL_CALL detectArguments(const css::uno::Reference< css::chart2::data::XDataSource > &xDataSource) override
virtual void SAL_CALL initialize(const css::uno::Sequence< css::uno::Any > &aArguments) override
virtual void SAL_CALL beforeFirst() override
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL getParent() override
css::uno::Reference< css::beans::XPropertySet > m_xAggregateSet
virtual sal_Bool SAL_CALL previous() override
virtual void SAL_CALL setClob(sal_Int32 parameterIndex, const css::uno::Reference< css::sdbc::XClob > &x) override
virtual sal_Int32 SAL_CALL getRow() override
void impl_fillInternalDataProvider_throw(bool _bHasCategories, const css::uno::Sequence< OUString > &i_aColumnNames)
css::uno::Reference< css::chart::XComplexDescriptionAccess > m_xComplexDescriptionAccess
virtual void SAL_CALL setOrder(const OUString &_order) override
virtual void SAL_CALL setFloat(sal_Int32 parameterIndex, float x) override
virtual void SAL_CALL setFilter(const OUString &the_value) override
void set(const OUString &_sProperty, const T &Value, T &_member)
virtual void SAL_CALL setParent(const css::uno::Reference< css::uno::XInterface > &Parent) override
virtual void SAL_CALL execute() override
css::uno::Reference< css::task::XInteractionHandler > m_xHandler
virtual ::sal_Int32 SAL_CALL getCommandType() override
virtual void SAL_CALL disposing() override
virtual void SAL_CALL setTimestamp(sal_Int32 parameterIndex, const css::util::DateTime &x) override
virtual css::uno::Reference< css::sdbc::XConnection > SAL_CALL getActiveConnection() override
virtual OUString SAL_CALL convertRangeFromXML(const OUString &aXMLRange) override
virtual OUString SAL_CALL getImplementationName() override
bool impl_fillParameters_nothrow(::osl::ResettableMutexGuard &_rClearForNotifies)
virtual ::sal_Int32 SAL_CALL getRowLimit() override
virtual void SAL_CALL setCharacterStream(sal_Int32 parameterIndex, const css::uno::Reference< css::io::XInputStream > &x, sal_Int32 length) override
virtual css::uno::Sequence< OUString > SAL_CALL getColumnDescriptions() override
::dbtools::ParameterManager m_aParameterManager
virtual void SAL_CALL setRef(sal_Int32 parameterIndex, const css::uno::Reference< css::sdbc::XRef > &x) override
virtual void SAL_CALL setObjectWithInfo(sal_Int32 parameterIndex, const css::uno::Any &x, sal_Int32 targetSqlType, sal_Int32 scale) override
virtual sal_Bool SAL_CALL getApplyFilter() override
virtual sal_Bool SAL_CALL isBeforeFirst() override
virtual void SAL_CALL afterLast() override
virtual sal_Bool SAL_CALL isFirst() override
virtual void SAL_CALL setData(const css::uno::Sequence< css::uno::Sequence< double > > &aData) override
virtual void SAL_CALL addVetoableChangeListener(const OUString &PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &aListener) override
virtual sal_Bool SAL_CALL createDataSourcePossible(const css::uno::Sequence< css::beans::PropertyValue > &aArguments) override
virtual css::uno::Reference< css::chart2::data::XDataSource > SAL_CALL createDataSource(const css::uno::Sequence< css::beans::PropertyValue > &aArguments) override
virtual void SAL_CALL setByte(sal_Int32 parameterIndex, sal_Int8 x) override
virtual void SAL_CALL release() noexcept override
virtual void SAL_CALL removePropertyChangeListener(const OUString &aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &aListener) override
virtual sal_Bool SAL_CALL isLast() override
virtual sal_Bool SAL_CALL isAfterLast() override
virtual css::uno::Sequence< css::uno::Sequence< OUString > > SAL_CALL getComplexRowDescriptions() override
virtual void SAL_CALL setBytes(sal_Int32 parameterIndex, const css::uno::Sequence< sal_Int8 > &x) override
virtual OUString SAL_CALL getGroupBy() override
virtual void SAL_CALL setDetailFields(const css::uno::Sequence< OUString > &the_value) override
virtual void SAL_CALL setHavingClause(const OUString &_havingclause) override
virtual sal_Bool SAL_CALL isNotANumber(double nNumber) override
virtual void SAL_CALL setNull(sal_Int32 parameterIndex, sal_Int32 sqlType) override
virtual void SAL_CALL setLong(sal_Int32 parameterIndex, sal_Int64 x) override
virtual OUString SAL_CALL getDataSourceName() override
virtual void SAL_CALL setPropertyValue(const OUString &aPropertyName, const css::uno::Any &aValue) override
virtual css::uno::Sequence< css::uno::Sequence< OUString > > SAL_CALL getComplexColumnDescriptions() override
virtual OUString SAL_CALL getHavingClause() override
css::uno::Reference< css::chart2::data::XRangeXMLConversion > m_xRangeConversion
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
OUString m_DataSourceName
virtual void SAL_CALL setEscapeProcessing(sal_Bool the_value) override
::dbtools::FilterManager m_aFilterManager
virtual void SAL_CALL setColumnDescriptions(const css::uno::Sequence< OUString > &aColumnDescriptions) override
virtual sal_Bool SAL_CALL first() override
virtual OUString SAL_CALL convertRangeToXML(const OUString &aRangeRepresentation) override
virtual sal_Bool SAL_CALL createDataSequenceByRangeRepresentationPossible(const OUString &aRangeRepresentation) override
virtual sal_Bool SAL_CALL rowInserted() override
virtual void SAL_CALL refreshRow() override
virtual sal_Bool SAL_CALL last() override
DatabaseDataProvider & operator=(DatabaseDataProvider const &)=delete
virtual sal_Bool SAL_CALL relative(sal_Int32 rows) override
css::uno::Any impl_getNumberFormatKey_nothrow(const OUString &_sRangeRepresentation) const
void impl_fillRowSet_throw()
virtual sal_Bool SAL_CALL rowDeleted() override
css::uno::Reference< css::sdbc::XConnection > m_xActiveConnection
virtual void SAL_CALL removeChartDataChangeEventListener(const css::uno::Reference< css::chart::XChartDataChangeEventListener > &aListener) override
virtual void SAL_CALL addRowSetListener(const css::uno::Reference< css::sdbc::XRowSetListener > &_rxListener) override
virtual void SAL_CALL addChartDataChangeEventListener(const css::uno::Reference< css::chart::XChartDataChangeEventListener > &aListener) override
virtual css::uno::Reference< css::chart2::data::XDataSequence > SAL_CALL createDataSequenceByValueArray(const OUString &aRole, const OUString &aRangeRepresentation, const OUString &aRoleQualifier) override
virtual void SAL_CALL setString(sal_Int32 parameterIndex, const OUString &x) override
void impl_invalidateParameter_nothrow()
virtual double SAL_CALL getNotANumber() override
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
Sequence< PropertyValue > aArguments
::cppu::WeakComponentImplHelper< css::chart2::data::XDatabaseDataProvider, css::container::XChild, css::chart::XComplexDescriptionAccess, css::lang::XServiceInfo > TDatabaseDataProvider