1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: CRowSetColumn.hxx,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef DBACCESS_CORE_API_CROWSETCOLUMN_HXX
31 #define DBACCESS_CORE_API_CROWSETCOLUMN_HXX
33 #ifndef DBACCESS_CORE_API_ROWSETROW_HXX
34 #include "RowSetRow.hxx"
36 #ifndef _CONNECTIVITY_COMMONTOOLS_HXX_
37 #include <connectivity/CommonTools.hxx>
39 #ifndef _COMPHELPER_PROPERTY_ARRAY_HELPER_HXX_
40 #include <comphelper/proparrhlp.hxx>
42 #ifndef DBACCESS_CORE_API_CROWSETDATACOLUMN_HXX
43 #include "CRowSetDataColumn.hxx"
49 typedef ::comphelper::OPropertyArrayUsageHelper
<ORowSetColumn
> ORowSetColumn_PROP
;
51 // -------------------------------------------------------------------------
52 class ORowSetColumn
: public ORowSetColumn_PROP
,
53 public ORowSetDataColumn
56 ORowSetColumn( const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XResultSetMetaData
>& _xMetaData
,
57 const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XRow
>& _xRow
,
59 const ::com::sun::star::uno::Reference
< ::com::sun::star::sdbc::XDatabaseMetaData
>& _rxDBMeta
,
60 const ::rtl::OUString
& _rDescription
,
61 ORowSetCacheIterator
& _rColumnValue
)
62 : ORowSetDataColumn(_xMetaData
,_xRow
,NULL
,_nPos
,_rxDBMeta
,_rDescription
,_rColumnValue
)
66 // com::sun::star::lang::XTypeProvider
67 virtual ::com::sun::star::uno::Sequence
< ::com::sun::star::uno::Type
> SAL_CALL
getTypes() throw (::com::sun::star::uno::RuntimeException
);
69 // com::sun::star::uno::XInterface
70 virtual ::com::sun::star::uno::Any SAL_CALL
queryInterface( const ::com::sun::star::uno::Type
& rType
) throw (::com::sun::star::uno::RuntimeException
);
72 // comphelper::OPropertyArrayUsageHelper
73 virtual ::cppu::IPropertyArrayHelper
* createArrayHelper( ) const;
75 // cppu::OPropertySetHelper
76 virtual ::cppu::IPropertyArrayHelper
& SAL_CALL
getInfoHelper();
78 virtual sal_Bool SAL_CALL
convertFastPropertyValue( ::com::sun::star::uno::Any
& rConvertedValue
,
79 ::com::sun::star::uno::Any
& rOldValue
,
81 const ::com::sun::star::uno::Any
& rValue
) throw (::com::sun::star::lang::IllegalArgumentException
);
82 virtual void SAL_CALL
getFastPropertyValue( ::com::sun::star::uno::Any
& rValue
, sal_Int32 nHandle
) const;
83 virtual void SAL_CALL
setFastPropertyValue_NoBroadcast(sal_Int32 nHandle
,const ::com::sun::star::uno::Any
& rValue
)throw (::com::sun::star::uno::Exception
);
86 using ORowSetDataColumn::getFastPropertyValue
;
90 #endif // DBACCESS_CORE_API_CROWSETCOLUMN_HXX