937084bf40
2006/12/05 09:46:56 fs 1.10.70.1: copying the fix for #i72252# from CWS dba22b to dba22ui - intended for the latter, but wrongly checked in into the former
219 lines
11 KiB
C++
219 lines
11 KiB
C++
/*************************************************************************
|
|
*
|
|
* OpenOffice.org - a multi-platform office productivity suite
|
|
*
|
|
* $RCSfile: staticdbtools_s.hxx,v $
|
|
*
|
|
* $Revision: 1.11 $
|
|
*
|
|
* last change: $Author: kz $ $Date: 2006-12-13 16:27:29 $
|
|
*
|
|
* The Contents of this file are made available subject to
|
|
* the terms of GNU Lesser General Public License Version 2.1.
|
|
*
|
|
*
|
|
* GNU Lesser General Public License Version 2.1
|
|
* =============================================
|
|
* Copyright 2005 by Sun Microsystems, Inc.
|
|
* 901 San Antonio Road, Palo Alto, CA 94303, USA
|
|
*
|
|
* This library is free software; you can redistribute it and/or
|
|
* modify it under the terms of the GNU Lesser General Public
|
|
* License version 2.1, as published by the Free Software Foundation.
|
|
*
|
|
* This library 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 for more details.
|
|
*
|
|
* You should have received a copy of the GNU Lesser General Public
|
|
* License along with this library; if not, write to the Free Software
|
|
* Foundation, Inc., 59 Temple Place, Suite 330, Boston,
|
|
* MA 02111-1307 USA
|
|
*
|
|
************************************************************************/
|
|
|
|
#ifndef CONNECTIVITY_STATIC_DBTOOLS_SIMPLE_HXX
|
|
#define CONNECTIVITY_STATIC_DBTOOLS_SIMPLE_HXX
|
|
|
|
#ifndef CONNECTIVITY_VIRTUAL_DBTOOLS_HXX
|
|
#include <connectivity/virtualdbtools.hxx>
|
|
#endif
|
|
#ifndef CONNECTIVITY_DBTOOLS_REFBASE_HXX
|
|
#include "refbase.hxx"
|
|
#endif
|
|
|
|
//........................................................................
|
|
namespace connectivity
|
|
{
|
|
//........................................................................
|
|
|
|
//================================================================
|
|
//= ODataAccessStaticTools
|
|
//================================================================
|
|
class ODataAccessStaticTools
|
|
:public simple::IDataAccessTypeConversion
|
|
,public simple::IDataAccessTools
|
|
,public ORefBase
|
|
{
|
|
public:
|
|
ODataAccessStaticTools();
|
|
|
|
// IDataAccessTypeConversion
|
|
// ------------------------------------------------
|
|
virtual ::com::sun::star::util::Date getStandardDate() const;
|
|
|
|
// ------------------------------------------------
|
|
virtual double getValue(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XColumn>& _rxVariant,
|
|
const ::com::sun::star::util::Date& rNullDate,
|
|
sal_Int16 nKeyType) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual ::rtl::OUString getValue(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdb::XColumn >& _rxColumn,
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter >& _rxFormatter,
|
|
const ::com::sun::star::util::Date& _rNullDate,
|
|
sal_Int32 _nKey,
|
|
sal_Int16 _nKeyType) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual ::rtl::OUString getValue(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _rxColumn,
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatter>& _rxFormatter,
|
|
const ::com::sun::star::lang::Locale& _rLocale,
|
|
const ::com::sun::star::util::Date& _rNullDate
|
|
) const;
|
|
|
|
// IDataAccessTools
|
|
// ------------------------------------------------
|
|
virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection> getConnection_withFeedback(
|
|
const ::rtl::OUString& _rDataSourceName,
|
|
const ::rtl::OUString& _rUser,
|
|
const ::rtl::OUString& _rPwd,
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory>& _rxFactory
|
|
) const SAL_THROW ( (::com::sun::star::sdbc::SQLException) );
|
|
|
|
// ------------------------------------------------
|
|
virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection> connectRowset(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XRowSet>& _rxRowSet,
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory>& _rxFactory,
|
|
sal_Bool _bSetAsActiveConnection
|
|
) const SAL_THROW ( ( ::com::sun::star::sdbc::SQLException
|
|
, ::com::sun::star::lang::WrappedTargetException
|
|
, ::com::sun::star::uno::RuntimeException ) );
|
|
|
|
// ------------------------------------------------
|
|
virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection> getRowSetConnection(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XRowSet>& _rxRowSet)
|
|
const SAL_THROW ( (::com::sun::star::uno::RuntimeException) );
|
|
|
|
// ------------------------------------------------
|
|
::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatsSupplier> getNumberFormats(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection>& _rxConn,
|
|
sal_Bool _bAllowDefault
|
|
) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual sal_Int32 getDefaultNumberFormat(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet >& _rxColumn,
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::util::XNumberFormatTypes >& _rxTypes,
|
|
const ::com::sun::star::lang::Locale& _rLocale
|
|
) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual void TransferFormComponentProperties(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _rxOld,
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _rxNew,
|
|
const ::com::sun::star::lang::Locale& _rLocale
|
|
) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual ::rtl::OUString quoteName(
|
|
const ::rtl::OUString& _rQuote,
|
|
const ::rtl::OUString& _rName
|
|
) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual ::rtl::OUString composeTableNameForSelect(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection,
|
|
const ::rtl::OUString& _rCatalog,
|
|
const ::rtl::OUString& _rSchema,
|
|
const ::rtl::OUString& _rName
|
|
) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual ::rtl::OUString composeTableNameForSelect(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection,
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _xTable
|
|
) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual ::com::sun::star::sdb::SQLContext prependContextInfo(
|
|
::com::sun::star::sdbc::SQLException& _rException,
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _rxContext,
|
|
const ::rtl::OUString& _rContextDescription,
|
|
const ::rtl::OUString& _rContextDetails
|
|
) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XDataSource > getDataSource(
|
|
const ::rtl::OUString& _rsRegisteredName,
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory>& _rxFactory
|
|
) const;
|
|
|
|
// ------------------------------------------------
|
|
/** check if the property "Privileges" supports ::com::sun::star::sdbcx::Privilege::INSERT
|
|
@param _rxCursorSet the property set
|
|
*/
|
|
virtual sal_Bool canInsert(const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _rxCursorSet) const;
|
|
|
|
// ------------------------------------------------
|
|
/** check if the property "Privileges" supports ::com::sun::star::sdbcx::Privilege::UPDATE
|
|
@param _rxCursorSet the property set
|
|
*/
|
|
virtual sal_Bool canUpdate(const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _rxCursorSet) const;
|
|
|
|
// ------------------------------------------------
|
|
/** check if the property "Privileges" supports ::com::sun::star::sdbcx::Privilege::DELETE
|
|
@param _rxCursorSet the property set
|
|
*/
|
|
virtual sal_Bool canDelete(const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertySet>& _rxCursorSet) const;
|
|
|
|
// ------------------------------------------------
|
|
virtual ::com::sun::star::uno::Reference< ::com::sun::star::container::XNameAccess >
|
|
getFieldsByCommandDescriptor(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection,
|
|
const sal_Int32 _nCommandType,
|
|
const ::rtl::OUString& _rCommand,
|
|
::com::sun::star::uno::Reference< ::com::sun::star::lang::XComponent >& _rxKeepFieldsAlive,
|
|
::dbtools::SQLExceptionInfo* _pErrorInfo = NULL
|
|
) SAL_THROW( ( ) );
|
|
|
|
// ------------------------------------------------
|
|
virtual ::com::sun::star::uno::Sequence< ::rtl::OUString >
|
|
getFieldNamesByCommandDescriptor(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxConnection,
|
|
const sal_Int32 _nCommandType,
|
|
const ::rtl::OUString& _rCommand,
|
|
::dbtools::SQLExceptionInfo* _pErrorInfo = NULL
|
|
) SAL_THROW( ( ) );
|
|
|
|
// ------------------------------------------------
|
|
virtual bool isEmbeddedInDatabase(
|
|
const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface >& _rxComponent,
|
|
::com::sun::star::uno::Reference< ::com::sun::star::sdbc::XConnection >& _rxActualConnection
|
|
);
|
|
|
|
// disambiguate IReference
|
|
// ------------------------------------------------
|
|
virtual oslInterlockedCount SAL_CALL acquire();
|
|
virtual oslInterlockedCount SAL_CALL release();
|
|
};
|
|
|
|
//........................................................................
|
|
} // namespace connectivity
|
|
//........................................................................
|
|
|
|
#endif // CONNECTIVITY_STATIC_DBTOOLS_SIMPLE_HXX
|
|
|