1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef INCLUDED_DBACCESS_SOURCE_CORE_INC_DATABASEDATAPROVIDER_HXX
20 #define INCLUDED_DBACCESS_SOURCE_CORE_INC_DATABASEDATAPROVIDER_HXX
22 #include "sal/config.h"
24 #include "com/sun/star/uno/XComponentContext.hpp"
25 #include "com/sun/star/lang/XServiceInfo.hpp"
26 #include "com/sun/star/chart2/data/XDatabaseDataProvider.hpp"
27 #include "com/sun/star/chart2/XInternalDataProvider.hpp"
28 #include <com/sun/star/chart/XComplexDescriptionAccess.hpp>
29 #include <com/sun/star/sdbc/XRowSet.hpp>
30 #include <com/sun/star/sdbc/XParameters.hpp>
31 #include <com/sun/star/container/XChild.hpp>
33 #include "cppuhelper/compbase4.hxx"
34 #include "cppuhelper/basemutex.hxx"
35 #include "cppuhelper/propertysetmixin.hxx"
36 #include <cppuhelper/implementationentry.hxx>
38 #include <comphelper/sequence.hxx>
40 #include "connectivity/parameters.hxx"
41 #include "connectivity/filtermanager.hxx"
47 typedef ::cppu::WeakComponentImplHelper4
< ::com::sun::star::chart2::data::XDatabaseDataProvider
48 , ::com::sun::star::container::XChild
49 , ::com::sun::star::chart::XComplexDescriptionAccess
50 , ::com::sun::star::lang::XServiceInfo
> TDatabaseDataProvider
;
52 class DatabaseDataProvider
: private ::cppu::BaseMutex
,
53 public TDatabaseDataProvider
,
54 public ::cppu::PropertySetMixin
< ::com::sun::star::chart2::data::XDatabaseDataProvider
>
57 explicit DatabaseDataProvider(::com::sun::star::uno::Reference
< ::com::sun::star::uno::XComponentContext
> const & context
);
59 // ::com::sun::star::lang::XServiceInfo - static methods
60 static ::com::sun::star::uno::Sequence
< OUString
> getSupportedServiceNames_Static() throw( ::com::sun::star::uno::RuntimeException
);
61 static OUString
getImplementationName_Static() throw( ::com::sun::star::uno::RuntimeException
);
62 static ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
>
63 SAL_CALL
Create(::com::sun::star::uno::Reference
< ::com::sun::star::uno::XComponentContext
> const & context
);
66 // ::com::sun::star::uno::XInterface:
67 virtual ::com::sun::star::uno::Any SAL_CALL
queryInterface(::com::sun::star::uno::Type
const & type
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
68 virtual void SAL_CALL
acquire() throw () SAL_OVERRIDE
69 { TDatabaseDataProvider::acquire(); }
70 virtual void SAL_CALL
release() throw () SAL_OVERRIDE
71 { TDatabaseDataProvider::release(); }
73 // ::com::sun::star::lang::XServiceInfo
74 virtual OUString SAL_CALL
getImplementationName( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
75 virtual sal_Bool SAL_CALL
supportsService( const OUString
& ServiceName
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
76 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getSupportedServiceNames( ) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
78 // ::com::sun::star::chart2::data::XDataProvider:
79 virtual sal_Bool SAL_CALL
createDataSourcePossible(const ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
> & aArguments
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
80 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::data::XDataSource
> SAL_CALL
createDataSource(const ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
> & aArguments
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::lang::IllegalArgumentException
, std::exception
) SAL_OVERRIDE
;
81 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::beans::PropertyValue
> SAL_CALL
detectArguments(const ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::data::XDataSource
> & xDataSource
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
82 virtual sal_Bool SAL_CALL
createDataSequenceByRangeRepresentationPossible(const OUString
& aRangeRepresentation
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
83 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::data::XDataSequence
> SAL_CALL
createDataSequenceByRangeRepresentation(const OUString
& aRangeRepresentation
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::lang::IllegalArgumentException
, std::exception
) SAL_OVERRIDE
;
85 virtual css::uno::Reference
<css::chart2::data::XDataSequence
> SAL_CALL
86 createDataSequenceByValueArray(
87 const OUString
& aRole
, const OUString
& aRangeRepresentation
)
88 throw (css::uno::RuntimeException
, css::lang::IllegalArgumentException
, std::exception
) SAL_OVERRIDE
;
90 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::sheet::XRangeSelection
> SAL_CALL
getRangeSelection() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
92 // ::com::sun::star::chart2::data::XRangeXMLConversion:
93 virtual OUString SAL_CALL
convertRangeToXML(const OUString
& aRangeRepresentation
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::lang::IllegalArgumentException
, std::exception
) SAL_OVERRIDE
;
94 virtual OUString SAL_CALL
convertRangeFromXML(const OUString
& aXMLRange
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::lang::IllegalArgumentException
, std::exception
) SAL_OVERRIDE
;
96 // ::com::sun::star::lang::XInitialization:
97 virtual void SAL_CALL
initialize(const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Any
> & aArguments
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::uno::Exception
, std::exception
) SAL_OVERRIDE
;
99 // ::com::sun::star::beans::XPropertySet:
100 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySetInfo
> SAL_CALL
getPropertySetInfo() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
101 virtual void SAL_CALL
setPropertyValue(const OUString
& aPropertyName
, const ::com::sun::star::uno::Any
& aValue
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::beans::PropertyVetoException
, ::com::sun::star::lang::IllegalArgumentException
, ::com::sun::star::lang::WrappedTargetException
, std::exception
) SAL_OVERRIDE
;
102 virtual ::com::sun::star::uno::Any SAL_CALL
getPropertyValue(const OUString
& PropertyName
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, std::exception
) SAL_OVERRIDE
;
103 virtual void SAL_CALL
addPropertyChangeListener(const OUString
& aPropertyName
, const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertyChangeListener
> & xListener
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, std::exception
) SAL_OVERRIDE
;
104 virtual void SAL_CALL
removePropertyChangeListener(const OUString
& aPropertyName
, const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertyChangeListener
> & aListener
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, std::exception
) SAL_OVERRIDE
;
105 virtual void SAL_CALL
addVetoableChangeListener(const OUString
& PropertyName
, const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XVetoableChangeListener
> & aListener
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, std::exception
) SAL_OVERRIDE
;
106 virtual void SAL_CALL
removeVetoableChangeListener(const OUString
& PropertyName
, const ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XVetoableChangeListener
> & aListener
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::lang::WrappedTargetException
, std::exception
) SAL_OVERRIDE
;
108 // ::com::sun::star::chart2::data::XDatabaseDataProvider:
109 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getMasterFields() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
110 virtual void SAL_CALL
setMasterFields(const ::com::sun::star::uno::Sequence
< OUString
> & the_value
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
111 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getDetailFields() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
112 virtual void SAL_CALL
setDetailFields(const ::com::sun::star::uno::Sequence
< OUString
> & the_value
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
113 virtual OUString SAL_CALL
getCommand() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
114 virtual void SAL_CALL
setCommand(const OUString
& the_value
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
115 virtual ::sal_Int32 SAL_CALL
getCommandType() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
116 virtual void SAL_CALL
setCommandType(::sal_Int32 the_value
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
117 virtual OUString SAL_CALL
getFilter() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
118 virtual void SAL_CALL
setFilter(const OUString
& the_value
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
119 virtual sal_Bool SAL_CALL
getApplyFilter() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
120 virtual void SAL_CALL
setApplyFilter( sal_Bool _applyfilter
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
121 virtual OUString SAL_CALL
getHavingClause() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
122 virtual void SAL_CALL
setHavingClause( const OUString
& _havingclause
) throw (::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
123 virtual OUString SAL_CALL
getGroupBy() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
124 virtual void SAL_CALL
setGroupBy( const OUString
& _groupby
) throw (::com::sun::star::beans::UnknownPropertyException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
125 virtual OUString SAL_CALL
getOrder() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
126 virtual void SAL_CALL
setOrder( const OUString
& _order
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
127 virtual sal_Bool SAL_CALL
getEscapeProcessing() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
128 virtual void SAL_CALL
setEscapeProcessing(sal_Bool the_value
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
129 virtual ::sal_Int32 SAL_CALL
getRowLimit() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
130 virtual void SAL_CALL
setRowLimit( ::sal_Int32 _rowlimit
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
131 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XConnection
> SAL_CALL
getActiveConnection() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
132 virtual void SAL_CALL
setActiveConnection(const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XConnection
> & the_value
) throw (::com::sun::star::uno::RuntimeException
, ::com::sun::star::lang::IllegalArgumentException
, std::exception
) SAL_OVERRIDE
;
133 virtual OUString SAL_CALL
getDataSourceName() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
134 virtual void SAL_CALL
setDataSourceName( const OUString
& _datasourcename
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
136 // com::sun::star::sdbc::XParameters
137 virtual void SAL_CALL
setNull(sal_Int32 parameterIndex
, sal_Int32 sqlType
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
138 virtual void SAL_CALL
setObjectNull(sal_Int32 parameterIndex
, sal_Int32 sqlType
, const OUString
& typeName
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
139 virtual void SAL_CALL
setBoolean(sal_Int32 parameterIndex
, sal_Bool x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
140 virtual void SAL_CALL
setByte(sal_Int32 parameterIndex
, sal_Int8 x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
141 virtual void SAL_CALL
setShort(sal_Int32 parameterIndex
, sal_Int16 x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
142 virtual void SAL_CALL
setInt(sal_Int32 parameterIndex
, sal_Int32 x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
143 virtual void SAL_CALL
setLong(sal_Int32 parameterIndex
, sal_Int64 x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
144 virtual void SAL_CALL
setFloat(sal_Int32 parameterIndex
, float x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
145 virtual void SAL_CALL
setDouble(sal_Int32 parameterIndex
, double x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
146 virtual void SAL_CALL
setString(sal_Int32 parameterIndex
, const OUString
& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
147 virtual void SAL_CALL
setBytes(sal_Int32 parameterIndex
, const ::com::sun::star::uno::Sequence
< sal_Int8
>& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
148 virtual void SAL_CALL
setDate(sal_Int32 parameterIndex
, const ::com::sun::star::util::Date
& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
149 virtual void SAL_CALL
setTime(sal_Int32 parameterIndex
, const ::com::sun::star::util::Time
& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
150 virtual void SAL_CALL
setTimestamp(sal_Int32 parameterIndex
, const ::com::sun::star::util::DateTime
& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
151 virtual void SAL_CALL
setBinaryStream(sal_Int32 parameterIndex
, const ::com::sun::star::uno::Reference
< ::com::sun::star::io::XInputStream
>& x
, sal_Int32 length
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
152 virtual void SAL_CALL
setCharacterStream(sal_Int32 parameterIndex
, const ::com::sun::star::uno::Reference
< ::com::sun::star::io::XInputStream
>& x
, sal_Int32 length
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
153 virtual void SAL_CALL
setObject(sal_Int32 parameterIndex
, const ::com::sun::star::uno::Any
& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
154 virtual void SAL_CALL
setObjectWithInfo(sal_Int32 parameterIndex
, const ::com::sun::star::uno::Any
& x
, sal_Int32 targetSqlType
, sal_Int32 scale
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
155 virtual void SAL_CALL
setRef(sal_Int32 parameterIndex
, const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XRef
>& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
156 virtual void SAL_CALL
setBlob(sal_Int32 parameterIndex
, const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XBlob
>& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
157 virtual void SAL_CALL
setClob(sal_Int32 parameterIndex
, const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XClob
>& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
158 virtual void SAL_CALL
setArray(sal_Int32 parameterIndex
, const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XArray
>& x
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
159 virtual void SAL_CALL
clearParameters() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
161 // com::sun::star::sdbc::XRowSet
162 virtual void SAL_CALL
execute() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
163 virtual void SAL_CALL
addRowSetListener(const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XRowSetListener
>& _rxListener
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
164 virtual void SAL_CALL
removeRowSetListener(const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XRowSetListener
>& _rxListener
) throw(::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
166 // com::sun::star::sdbc::XResultSet
167 virtual sal_Bool SAL_CALL
next() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
168 virtual sal_Bool SAL_CALL
isBeforeFirst() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
169 virtual sal_Bool SAL_CALL
isAfterLast() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
170 virtual sal_Bool SAL_CALL
isFirst() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
171 virtual sal_Bool SAL_CALL
isLast() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
172 virtual void SAL_CALL
beforeFirst() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
173 virtual void SAL_CALL
afterLast() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
174 virtual sal_Bool SAL_CALL
first() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
175 virtual sal_Bool SAL_CALL
last() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
176 virtual sal_Int32 SAL_CALL
getRow() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
177 virtual sal_Bool SAL_CALL
absolute(sal_Int32 row
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
178 virtual sal_Bool SAL_CALL
relative(sal_Int32 rows
) throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
179 virtual sal_Bool SAL_CALL
previous() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
180 virtual void SAL_CALL
refreshRow() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
181 virtual sal_Bool SAL_CALL
rowUpdated() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
182 virtual sal_Bool SAL_CALL
rowInserted() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
183 virtual sal_Bool SAL_CALL
rowDeleted() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
184 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
> SAL_CALL
getStatement() throw(::com::sun::star::sdbc::SQLException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
187 virtual ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
> SAL_CALL
getParent( ) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
188 virtual void SAL_CALL
setParent( const ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
>& Parent
) throw (::com::sun::star::lang::NoSupportException
, ::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
190 // ____ XComplexDescriptionAccess ____
191 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Sequence
< OUString
> > SAL_CALL
getComplexRowDescriptions() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
192 virtual void SAL_CALL
setComplexRowDescriptions( const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Sequence
< OUString
> >& aRowDescriptions
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
193 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Sequence
< OUString
> > SAL_CALL
getComplexColumnDescriptions() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
194 virtual void SAL_CALL
setComplexColumnDescriptions( const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Sequence
< OUString
> >& aColumnDescriptions
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
196 // ____ XChartDataArray (base of XComplexDescriptionAccess) ____
197 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Sequence
< double > > SAL_CALL
getData() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
198 virtual void SAL_CALL
setData( const ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Sequence
< double > >& aData
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
199 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getRowDescriptions() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
200 virtual void SAL_CALL
setRowDescriptions( const ::com::sun::star::uno::Sequence
< OUString
>& aRowDescriptions
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
201 virtual ::com::sun::star::uno::Sequence
< OUString
> SAL_CALL
getColumnDescriptions() throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
202 virtual void SAL_CALL
setColumnDescriptions( const ::com::sun::star::uno::Sequence
< OUString
>& aColumnDescriptions
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
204 // ____ XChartData (base of XChartDataArray) ____
205 virtual void SAL_CALL
addChartDataChangeEventListener(const ::com::sun::star::uno::Reference
< ::com::sun::star::chart::XChartDataChangeEventListener
>& aListener
) throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
206 virtual void SAL_CALL
removeChartDataChangeEventListener(const ::com::sun::star::uno::Reference
< ::com::sun::star::chart::XChartDataChangeEventListener
>& aListener
)throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
207 virtual double SAL_CALL
getNotANumber()throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
208 virtual sal_Bool SAL_CALL
isNotANumber(double nNumber
)throw (::com::sun::star::uno::RuntimeException
, std::exception
) SAL_OVERRIDE
;
210 DatabaseDataProvider(DatabaseDataProvider
&) SAL_DELETED_FUNCTION
;
211 void operator =(DatabaseDataProvider
&) SAL_DELETED_FUNCTION
;
213 virtual ~DatabaseDataProvider() {}
215 // This function is called upon disposing the component,
216 // if your component needs special work when it becomes
217 // disposed, do it here.
218 virtual void SAL_CALL
disposing() SAL_OVERRIDE
;
220 void impl_fillRowSet_throw();
221 void impl_executeRowSet_throw(::osl::ResettableMutexGuard
& _rClearForNotifies
);
222 bool impl_fillParameters_nothrow( ::osl::ResettableMutexGuard
& _rClearForNotifies
);
223 void impl_fillInternalDataProvider_throw(bool _bHasCategories
,const ::com::sun::star::uno::Sequence
< OUString
>& i_aColumnNames
);
224 void impl_invalidateParameter_nothrow();
225 ::com::sun::star::uno::Any
impl_getNumberFormatKey_nothrow(const OUString
& _sRangeRepresentation
) const;
227 template <typename T
> void set( const OUString
& _sProperty
233 ::osl::MutexGuard
aGuard(m_aMutex
);
234 if ( _member
!= _Value
)
236 prepareSet(_sProperty
, ::com::sun::star::uno::makeAny(_member
), ::com::sun::star::uno::makeAny(_Value
), &l
);
243 ::dbtools::ParameterManager m_aParameterManager
;
244 ::dbtools::FilterManager m_aFilterManager
;
245 ::std::map
< OUString
, ::com::sun::star::uno::Any
> m_aNumberFormats
;
247 ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XComponentContext
> m_xContext
;
248 ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XConnection
> m_xActiveConnection
;
249 ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XRowSet
> m_xRowSet
;
250 ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::XInternalDataProvider
> m_xInternal
;
251 ::com::sun::star::uno::Reference
< ::com::sun::star::chart::XComplexDescriptionAccess
> m_xComplexDescriptionAccess
;
252 ::com::sun::star::uno::Reference
< ::com::sun::star::chart2::data::XRangeXMLConversion
> m_xRangeConversion
;
253 ::com::sun::star::uno::Reference
< ::com::sun::star::task::XInteractionHandler
> m_xHandler
;
254 // the object doin' most of the work - an SDB-rowset
255 ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XAggregation
> m_xAggregate
;
256 ::com::sun::star::uno::Reference
< ::com::sun::star::beans::XPropertySet
> m_xAggregateSet
;
257 ::com::sun::star::uno::Reference
< ::com::sun::star::uno::XInterface
> m_xParent
;
258 ::com::sun::star::uno::Sequence
< OUString
> m_MasterFields
;
259 ::com::sun::star::uno::Sequence
< OUString
> m_DetailFields
;
262 OUString m_DataSourceName
;
263 sal_Int32 m_CommandType
;
264 sal_Int32 m_RowLimit
;
266 OUString m_HavingClause
;
269 bool m_EscapeProcessing
;
273 } // namespace dbaccess
275 #endif // INCLUDED_DBACCESS_SOURCE_CORE_INC_DATABASEDATAPROVIDER_HXX
277 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */