1caf5cd79SAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3caf5cd79SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4caf5cd79SAndrew Rist * or more contributor license agreements. See the NOTICE file 5caf5cd79SAndrew Rist * distributed with this work for additional information 6caf5cd79SAndrew Rist * regarding copyright ownership. The ASF licenses this file 7caf5cd79SAndrew Rist * to you under the Apache License, Version 2.0 (the 8caf5cd79SAndrew Rist * "License"); you may not use this file except in compliance 9caf5cd79SAndrew Rist * with the License. You may obtain a copy of the License at 10caf5cd79SAndrew Rist * 11caf5cd79SAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12caf5cd79SAndrew Rist * 13caf5cd79SAndrew Rist * Unless required by applicable law or agreed to in writing, 14caf5cd79SAndrew Rist * software distributed under the License is distributed on an 15caf5cd79SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16caf5cd79SAndrew Rist * KIND, either express or implied. See the License for the 17caf5cd79SAndrew Rist * specific language governing permissions and limitations 18caf5cd79SAndrew Rist * under the License. 19caf5cd79SAndrew Rist * 20caf5cd79SAndrew Rist *************************************************************/ 21caf5cd79SAndrew Rist 22caf5cd79SAndrew Rist 23cdf0e10cSrcweir #ifndef _CONNECTIVITY_PROPERTYIDS_HXX_ 24cdf0e10cSrcweir #define _CONNECTIVITY_PROPERTYIDS_HXX_ 25cdf0e10cSrcweir 26cdf0e10cSrcweir // this define has to be set to split the names into different dll's or so's 27cdf0e10cSrcweir // every dll has his own set of property names 28cdf0e10cSrcweir #include <rtl/ustring.hxx> 29cdf0e10cSrcweir #ifndef _MAP_ 30cdf0e10cSrcweir #include <map> 31cdf0e10cSrcweir #endif 32cdf0e10cSrcweir #include "connectivity/dbtoolsdllapi.hxx" 33cdf0e10cSrcweir 34cdf0e10cSrcweir namespace dbtools 35cdf0e10cSrcweir { 36cdf0e10cSrcweir class OOO_DLLPUBLIC_DBTOOLS OPropertyMap 37cdf0e10cSrcweir { 38cdf0e10cSrcweir ::std::map<sal_Int32 , rtl_uString*> m_aPropertyMap; 39cdf0e10cSrcweir 40cdf0e10cSrcweir ::rtl::OUString fillValue(sal_Int32 _nIndex); 41cdf0e10cSrcweir public: OPropertyMap()42cdf0e10cSrcweir OPropertyMap() 43cdf0e10cSrcweir { 44cdf0e10cSrcweir } 45cdf0e10cSrcweir ~OPropertyMap(); 46cdf0e10cSrcweir ::rtl::OUString getNameByIndex(sal_Int32 _nIndex) const; 47cdf0e10cSrcweir }; 48cdf0e10cSrcweir } 49cdf0e10cSrcweir 50cdf0e10cSrcweir namespace connectivity 51cdf0e10cSrcweir { 52cdf0e10cSrcweir namespace CONNECTIVITY_PROPERTY_NAME_SPACE 53cdf0e10cSrcweir { 54cdf0e10cSrcweir typedef const sal_Char* (*PVFN)(); 55cdf0e10cSrcweir 56cdf0e10cSrcweir struct OOO_DLLPUBLIC_DBTOOLS UStringDescription 57cdf0e10cSrcweir { 58cdf0e10cSrcweir const sal_Char* pZeroTerminatedName; 59cdf0e10cSrcweir sal_Int32 nLength; 60cdf0e10cSrcweir 61cdf0e10cSrcweir UStringDescription(PVFN _fCharFkt); operator ::rtl::OUStringconnectivity::CONNECTIVITY_PROPERTY_NAME_SPACE::UStringDescription62cdf0e10cSrcweir operator ::rtl::OUString() const { return ::rtl::OUString(pZeroTerminatedName,nLength,RTL_TEXTENCODING_ASCII_US); } 63cdf0e10cSrcweir ~UStringDescription(); 64cdf0e10cSrcweir private: 65cdf0e10cSrcweir UStringDescription(); 66cdf0e10cSrcweir }; 67cdf0e10cSrcweir } 68cdf0e10cSrcweir } 69cdf0e10cSrcweir 70cdf0e10cSrcweir 71cdf0e10cSrcweir //------------------------------------------------------------------------------ 72cdf0e10cSrcweir #define DECL_PROP1IMPL(varname, type) \ 73*bccc1572SDon Lewis pProperties[nPos++] = ::com::sun::star::beans::Property(::connectivity::OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_##varname), PROPERTY_ID_##varname, ::getCppuType(static_cast< type*>(NULL)), 74cdf0e10cSrcweir //------------------------------------------------------------------------------ 75cdf0e10cSrcweir #define DECL_PROP0(varname, type) \ 76cdf0e10cSrcweir DECL_PROP1IMPL(varname, type) 0) 77cdf0e10cSrcweir //------------------------------------------------------------------------------ 78cdf0e10cSrcweir #define DECL_BOOL_PROP1IMPL(varname) \ 79cdf0e10cSrcweir pProperties[nPos++] = ::com::sun::star::beans::Property(::connectivity::OMetaConnection::getPropMap().getNameByIndex(PROPERTY_ID_##varname), PROPERTY_ID_##varname, ::getBooleanCppuType(), 80cdf0e10cSrcweir //------------------------------------------------------------------------------ 81cdf0e10cSrcweir #define DECL_BOOL_PROP0(varname) \ 82cdf0e10cSrcweir DECL_BOOL_PROP1IMPL(varname) 0) 83cdf0e10cSrcweir 84cdf0e10cSrcweir 85cdf0e10cSrcweir #define PROPERTY_ID_QUERYTIMEOUT 1 86cdf0e10cSrcweir #define PROPERTY_ID_MAXFIELDSIZE 2 87cdf0e10cSrcweir #define PROPERTY_ID_MAXROWS 3 88cdf0e10cSrcweir #define PROPERTY_ID_CURSORNAME 4 89cdf0e10cSrcweir #define PROPERTY_ID_RESULTSETCONCURRENCY 5 90cdf0e10cSrcweir #define PROPERTY_ID_RESULTSETTYPE 6 91cdf0e10cSrcweir #define PROPERTY_ID_FETCHDIRECTION 7 92cdf0e10cSrcweir #define PROPERTY_ID_FETCHSIZE 8 93cdf0e10cSrcweir #define PROPERTY_ID_ESCAPEPROCESSING 9 94cdf0e10cSrcweir #define PROPERTY_ID_USEBOOKMARKS 10 95cdf0e10cSrcweir // Column 96cdf0e10cSrcweir #define PROPERTY_ID_NAME 11 97cdf0e10cSrcweir #define PROPERTY_ID_TYPE 12 98cdf0e10cSrcweir #define PROPERTY_ID_TYPENAME 13 99cdf0e10cSrcweir #define PROPERTY_ID_PRECISION 14 100cdf0e10cSrcweir #define PROPERTY_ID_SCALE 15 101cdf0e10cSrcweir #define PROPERTY_ID_ISNULLABLE 16 102cdf0e10cSrcweir #define PROPERTY_ID_ISAUTOINCREMENT 17 103cdf0e10cSrcweir #define PROPERTY_ID_ISROWVERSION 18 104cdf0e10cSrcweir #define PROPERTY_ID_DESCRIPTION 19 105cdf0e10cSrcweir #define PROPERTY_ID_DEFAULTVALUE 20 106cdf0e10cSrcweir 107cdf0e10cSrcweir #define PROPERTY_ID_REFERENCEDTABLE 21 108cdf0e10cSrcweir #define PROPERTY_ID_UPDATERULE 22 109cdf0e10cSrcweir #define PROPERTY_ID_DELETERULE 23 110cdf0e10cSrcweir #define PROPERTY_ID_CATALOG 24 111cdf0e10cSrcweir #define PROPERTY_ID_ISUNIQUE 25 112cdf0e10cSrcweir #define PROPERTY_ID_ISPRIMARYKEYINDEX 26 113cdf0e10cSrcweir #define PROPERTY_ID_ISCLUSTERED 27 114cdf0e10cSrcweir #define PROPERTY_ID_ISASCENDING 28 115cdf0e10cSrcweir #define PROPERTY_ID_SCHEMANAME 29 116cdf0e10cSrcweir #define PROPERTY_ID_CATALOGNAME 30 117cdf0e10cSrcweir 118cdf0e10cSrcweir #define PROPERTY_ID_COMMAND 31 119cdf0e10cSrcweir #define PROPERTY_ID_CHECKOPTION 32 120cdf0e10cSrcweir #define PROPERTY_ID_PASSWORD 33 121cdf0e10cSrcweir #define PROPERTY_ID_RELATEDCOLUMN 34 122cdf0e10cSrcweir 123cdf0e10cSrcweir #define PROPERTY_ID_FUNCTION 35 124cdf0e10cSrcweir #define PROPERTY_ID_TABLENAME 36 125cdf0e10cSrcweir #define PROPERTY_ID_REALNAME 37 126cdf0e10cSrcweir #define PROPERTY_ID_DBASEPRECISIONCHANGED 38 127cdf0e10cSrcweir #define PROPERTY_ID_ISCURRENCY 39 128cdf0e10cSrcweir #define PROPERTY_ID_ISBOOKMARKABLE 40 129cdf0e10cSrcweir 130cdf0e10cSrcweir #define PROPERTY_ID_INVALID_INDEX 41 131cdf0e10cSrcweir #define PROPERTY_ID_HY010 43 132cdf0e10cSrcweir #define PROPERTY_ID_LABEL 44 133cdf0e10cSrcweir #define PROPERTY_ID_DELIMITER 45 134cdf0e10cSrcweir #define PROPERTY_ID_FORMATKEY 46 135cdf0e10cSrcweir #define PROPERTY_ID_LOCALE 47 136cdf0e10cSrcweir #define PROPERTY_ID_IM001 48 137cdf0e10cSrcweir 138cdf0e10cSrcweir #define PROPERTY_ID_AUTOINCREMENTCREATION 49 139cdf0e10cSrcweir 140cdf0e10cSrcweir #define PROPERTY_ID_PRIVILEGES 50 141cdf0e10cSrcweir #define PROPERTY_ID_HAVINGCLAUSE 51 142cdf0e10cSrcweir 143cdf0e10cSrcweir #define PROPERTY_ID_ISSIGNED 52 144cdf0e10cSrcweir #define PROPERTY_ID_AGGREGATEFUNCTION 53 145cdf0e10cSrcweir #define PROPERTY_ID_ISSEARCHABLE 54 146cdf0e10cSrcweir 147cdf0e10cSrcweir #define PROPERTY_ID_APPLYFILTER 55 148cdf0e10cSrcweir #define PROPERTY_ID_FILTER 56 149cdf0e10cSrcweir #define PROPERTY_ID_MASTERFIELDS 57 150cdf0e10cSrcweir #define PROPERTY_ID_DETAILFIELDS 58 151cdf0e10cSrcweir #define PROPERTY_ID_FIELDTYPE 59 152cdf0e10cSrcweir #define PROPERTY_ID_VALUE 60 153cdf0e10cSrcweir #define PROPERTY_ID_ACTIVE_CONNECTION 61 154cdf0e10cSrcweir 155cdf0e10cSrcweir #endif // _CONNECTIVITY_PROPERTYIDS_HXX_ 156