1*9b5730f6SAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3*9b5730f6SAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*9b5730f6SAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*9b5730f6SAndrew Rist  * distributed with this work for additional information
6*9b5730f6SAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*9b5730f6SAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*9b5730f6SAndrew Rist  * "License"); you may not use this file except in compliance
9*9b5730f6SAndrew Rist  * with the License.  You may obtain a copy of the License at
10*9b5730f6SAndrew Rist  *
11*9b5730f6SAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12*9b5730f6SAndrew Rist  *
13*9b5730f6SAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*9b5730f6SAndrew Rist  * software distributed under the License is distributed on an
15*9b5730f6SAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*9b5730f6SAndrew Rist  * KIND, either express or implied.  See the License for the
17*9b5730f6SAndrew Rist  * specific language governing permissions and limitations
18*9b5730f6SAndrew Rist  * under the License.
19*9b5730f6SAndrew Rist  *
20*9b5730f6SAndrew Rist  *************************************************************/
21*9b5730f6SAndrew Rist 
22*9b5730f6SAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir // MARKER(update_precomp.py): autogen include statement, do not remove
25cdf0e10cSrcweir #include "precompiled_connectivity.hxx"
26cdf0e10cSrcweir #include "file/FDatabaseMetaData.hxx"
27cdf0e10cSrcweir #include "FDatabaseMetaDataResultSet.hxx"
28cdf0e10cSrcweir #include <com/sun/star/sdbc/DataType.hpp>
29cdf0e10cSrcweir #include <com/sun/star/sdbc/ResultSetType.hpp>
30cdf0e10cSrcweir #include <com/sun/star/sdbc/ResultSetConcurrency.hpp>
31cdf0e10cSrcweir #include <com/sun/star/ucb/SearchRecursion.hpp>
32cdf0e10cSrcweir #include <com/sun/star/ucb/SearchCommandArgument.hpp>
33cdf0e10cSrcweir #include <com/sun/star/ucb/XSortedDynamicResultSetFactory.hpp>
34cdf0e10cSrcweir #include <com/sun/star/ucb/XContentProvider.hpp>
35cdf0e10cSrcweir #include <com/sun/star/lang/XUnoTunnel.hpp>
36cdf0e10cSrcweir #include <tools/urlobj.hxx>
37cdf0e10cSrcweir #include "file/FDriver.hxx"
38cdf0e10cSrcweir #include "file/FTable.hxx"
39cdf0e10cSrcweir #include <comphelper/extract.hxx>
40cdf0e10cSrcweir #include <ucbhelper/content.hxx>
41cdf0e10cSrcweir #include <ucbhelper/contentbroker.hxx>
42cdf0e10cSrcweir #include <tools/debug.hxx>
43cdf0e10cSrcweir #include <rtl/logfile.hxx>
44cdf0e10cSrcweir 
45cdf0e10cSrcweir 
46cdf0e10cSrcweir using namespace com::sun::star::ucb;
47cdf0e10cSrcweir using namespace connectivity::file;
48cdf0e10cSrcweir using namespace connectivity;
49cdf0e10cSrcweir using namespace com::sun::star::uno;
50cdf0e10cSrcweir using namespace com::sun::star::lang;
51cdf0e10cSrcweir using namespace com::sun::star::beans;
52cdf0e10cSrcweir using namespace com::sun::star::sdbc;
53cdf0e10cSrcweir using namespace com::sun::star::sdbcx;
54cdf0e10cSrcweir using namespace com::sun::star::lang;
55cdf0e10cSrcweir using namespace com::sun::star::container;
56cdf0e10cSrcweir 
DBG_NAME(file_ODatabaseMetaData)57cdf0e10cSrcweir DBG_NAME( file_ODatabaseMetaData )
58cdf0e10cSrcweir ODatabaseMetaData::ODatabaseMetaData(OConnection* _pCon) : ::connectivity::ODatabaseMetaDataBase(_pCon,_pCon->getConnectionInfo())
59cdf0e10cSrcweir 						,m_pConnection(_pCon)
60cdf0e10cSrcweir {
61cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ODatabaseMetaData" );
62cdf0e10cSrcweir 	DBG_CTOR( file_ODatabaseMetaData, NULL );
63cdf0e10cSrcweir }
64cdf0e10cSrcweir // -------------------------------------------------------------------------
~ODatabaseMetaData()65cdf0e10cSrcweir ODatabaseMetaData::~ODatabaseMetaData()
66cdf0e10cSrcweir {
67cdf0e10cSrcweir 	DBG_DTOR( file_ODatabaseMetaData, NULL );
68cdf0e10cSrcweir }
69cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_getTypeInfo_throw()70cdf0e10cSrcweir Reference< XResultSet > ODatabaseMetaData::impl_getTypeInfo_throw(  )
71cdf0e10cSrcweir {
72cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getTypeInfo_throw" );
73cdf0e10cSrcweir     return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTypeInfo );
74cdf0e10cSrcweir }
75cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_getCatalogSeparator_throw()76cdf0e10cSrcweir ::rtl::OUString ODatabaseMetaData::impl_getCatalogSeparator_throw(  )
77cdf0e10cSrcweir {
78cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getCatalogSeparator_throw" );
79cdf0e10cSrcweir 	return ::rtl::OUString();
80cdf0e10cSrcweir }
81cdf0e10cSrcweir // -------------------------------------------------------------------------
getColumns(const Any &,const::rtl::OUString &,const::rtl::OUString &,const::rtl::OUString &)82cdf0e10cSrcweir Reference< XResultSet > SAL_CALL ODatabaseMetaData::getColumns(
83cdf0e10cSrcweir         const Any& /*catalog*/, const ::rtl::OUString& /*schemaPattern*/, const ::rtl::OUString& /*tableNamePattern*/,
84cdf0e10cSrcweir         const ::rtl::OUString& /*columnNamePattern*/ ) throw(SQLException, RuntimeException)
85cdf0e10cSrcweir {
86cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getColumns" );
87cdf0e10cSrcweir 	OSL_ENSURE(0,"Should be overloaded!");
88cdf0e10cSrcweir     return new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eColumns );
89cdf0e10cSrcweir }
90cdf0e10cSrcweir 
91cdf0e10cSrcweir // -------------------------------------------------------------------------
92cdf0e10cSrcweir namespace
93cdf0e10cSrcweir {
isCaseSensitiveParentFolder(const String & _rFolderOrDoc,const String & _rDocName)94cdf0e10cSrcweir 	sal_Int16 isCaseSensitiveParentFolder( const String& _rFolderOrDoc, const String& _rDocName )
95cdf0e10cSrcweir 	{
96cdf0e10cSrcweir 		sal_Int16 nIsCS = 1;
97cdf0e10cSrcweir 		try
98cdf0e10cSrcweir 		{
99cdf0e10cSrcweir 			// first get the real content for the URL
100cdf0e10cSrcweir 			INetURLObject aContentURL( _rFolderOrDoc );
101cdf0e10cSrcweir 			::ucbhelper::Content aContent1;
102cdf0e10cSrcweir 			{
103cdf0e10cSrcweir 				::ucbhelper::Content aFolderOrDoc( _rFolderOrDoc, Reference< XCommandEnvironment >() );
104cdf0e10cSrcweir 				if ( aFolderOrDoc.isDocument() )
105cdf0e10cSrcweir 					aContent1 = aFolderOrDoc;
106cdf0e10cSrcweir 				else
107cdf0e10cSrcweir 				{
108cdf0e10cSrcweir 					aContentURL = INetURLObject( _rFolderOrDoc, INetURLObject::WAS_ENCODED );
109cdf0e10cSrcweir 					aContentURL.Append( _rDocName );
110cdf0e10cSrcweir 					aContent1 = ::ucbhelper::Content( aContentURL.GetMainURL( INetURLObject::NO_DECODE ), Reference< XCommandEnvironment >() );
111cdf0e10cSrcweir 				}
112cdf0e10cSrcweir 			}
113cdf0e10cSrcweir 
114cdf0e10cSrcweir 			// get two extensions which differ by case only
115cdf0e10cSrcweir 			String sExtension1 = aContentURL.getExtension();
116cdf0e10cSrcweir 			String sExtension2( sExtension1 );
117cdf0e10cSrcweir 			sExtension2.ToLowerAscii();
118cdf0e10cSrcweir 			if ( sExtension2 == sExtension1 )
119cdf0e10cSrcweir 				// the extension was already in lower case
120cdf0e10cSrcweir 				sExtension2.ToUpperAscii();
121cdf0e10cSrcweir 
122cdf0e10cSrcweir 			// the complete URL for the second extension
123cdf0e10cSrcweir 			INetURLObject aURL2( aContentURL );
124cdf0e10cSrcweir 			if ( sExtension2.Len() )
125cdf0e10cSrcweir 				aURL2.SetExtension( sExtension2 );
126cdf0e10cSrcweir 			if ( aURL2.GetMainURL(INetURLObject::NO_DECODE) == aContentURL.GetMainURL(INetURLObject::NO_DECODE) )
127cdf0e10cSrcweir 				return -1;
128cdf0e10cSrcweir 
129cdf0e10cSrcweir 			// the second context
130cdf0e10cSrcweir 			sal_Bool bCanAccess = sal_False;
131cdf0e10cSrcweir 			::ucbhelper::Content aContent2;
132cdf0e10cSrcweir 			try
133cdf0e10cSrcweir 			{
134cdf0e10cSrcweir 				aContent2 = ::ucbhelper::Content( aURL2.GetMainURL( INetURLObject::NO_DECODE ), Reference< XCommandEnvironment >() );
135cdf0e10cSrcweir 				bCanAccess = aContent2.isDocument();
136cdf0e10cSrcweir 			}
137cdf0e10cSrcweir 			catch( const Exception& )
138cdf0e10cSrcweir 			{
139cdf0e10cSrcweir 			}
140cdf0e10cSrcweir 
141cdf0e10cSrcweir 			if ( bCanAccess )
142cdf0e10cSrcweir 			{
143cdf0e10cSrcweir 				// here we have two contents whose URLs differ by case only.
144cdf0e10cSrcweir 				// Now let's check if both really refer to the same object ....
145cdf0e10cSrcweir 				Reference< XContent > xContent1 = aContent1.get();
146cdf0e10cSrcweir 				Reference< XContent > xContent2 = aContent2.get();
147cdf0e10cSrcweir 				OSL_ENSURE( xContent1.is() && xContent2.is(), "isCaseSensitiveParentFolder: invalid content interfaces!" );
148cdf0e10cSrcweir 				if ( xContent1.is() && xContent2.is() )
149cdf0e10cSrcweir 				{
150cdf0e10cSrcweir 					Reference< XContentIdentifier > xID1 = xContent1->getIdentifier();
151cdf0e10cSrcweir 					Reference< XContentIdentifier > xID2 = xContent2->getIdentifier();
152cdf0e10cSrcweir 					OSL_ENSURE( xID1.is() && xID2.is(), "isCaseSensitiveParentFolder: invalid ID interfaces!" );
153cdf0e10cSrcweir 					if ( xID1.is() && xID2.is() )
154cdf0e10cSrcweir 					{
155cdf0e10cSrcweir 						// get a generic content provider
156cdf0e10cSrcweir 						::ucbhelper::ContentBroker* pBroker = ::ucbhelper::ContentBroker::get();
157cdf0e10cSrcweir 						Reference< XContentProvider > xProvider;
158cdf0e10cSrcweir 						if ( pBroker )
159cdf0e10cSrcweir 							xProvider = pBroker->getContentProviderInterface();
160cdf0e10cSrcweir 						OSL_ENSURE( xProvider.is(), "isCaseSensitiveParentFolder: invalid content broker!" );
161cdf0e10cSrcweir 						if ( xProvider.is() )
162cdf0e10cSrcweir 						{
163cdf0e10cSrcweir 							if ( 0 == xProvider->compareContentIds( xID1, xID2 ) )
164cdf0e10cSrcweir 								// finally, we know that the folder is not case-sensitive ....
165cdf0e10cSrcweir 								nIsCS = 0;
166cdf0e10cSrcweir 						}
167cdf0e10cSrcweir 					}
168cdf0e10cSrcweir 				}
169cdf0e10cSrcweir 			}
170cdf0e10cSrcweir 		}
171cdf0e10cSrcweir 		catch( const Exception& )
172cdf0e10cSrcweir 		{
173cdf0e10cSrcweir 			OSL_ENSURE( sal_False, "isCaseSensitiveParentFolder: caught an unexpected exception!" );
174cdf0e10cSrcweir 		}
175cdf0e10cSrcweir 
176cdf0e10cSrcweir 		return nIsCS;
177cdf0e10cSrcweir 	}
178cdf0e10cSrcweir }
179cdf0e10cSrcweir 
180cdf0e10cSrcweir // -------------------------------------------------------------------------
getTables(const Any &,const::rtl::OUString &,const::rtl::OUString & tableNamePattern,const Sequence<::rtl::OUString> & types)181cdf0e10cSrcweir Reference< XResultSet > SAL_CALL ODatabaseMetaData::getTables(
182cdf0e10cSrcweir         const Any& /*catalog*/, const ::rtl::OUString& /*schemaPattern*/,
183cdf0e10cSrcweir         const ::rtl::OUString& tableNamePattern, const Sequence< ::rtl::OUString >& types ) throw(SQLException, RuntimeException)
184cdf0e10cSrcweir {
185cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTables" );
186cdf0e10cSrcweir 	::osl::MutexGuard aGuard( m_aMutex );
187cdf0e10cSrcweir 
188cdf0e10cSrcweir 
189cdf0e10cSrcweir     ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTables );
190cdf0e10cSrcweir     Reference< XResultSet > xRef = pResult;
191cdf0e10cSrcweir 
192cdf0e10cSrcweir 	// check if any type is given
193cdf0e10cSrcweir 	// when no types are given then we have to return all tables e.g. TABLE
194cdf0e10cSrcweir 
195cdf0e10cSrcweir 	static const ::rtl::OUString aTable(::rtl::OUString::createFromAscii("TABLE"));
196cdf0e10cSrcweir 
197cdf0e10cSrcweir 	sal_Bool bTableFound = sal_True;
198cdf0e10cSrcweir 	sal_Int32 nLength = types.getLength();
199cdf0e10cSrcweir 	if(nLength)
200cdf0e10cSrcweir 	{
201cdf0e10cSrcweir 		bTableFound = sal_False;
202cdf0e10cSrcweir 
203cdf0e10cSrcweir 		const ::rtl::OUString* pBegin = types.getConstArray();
204cdf0e10cSrcweir 		const ::rtl::OUString* pEnd	= pBegin + nLength;
205cdf0e10cSrcweir 		for(;pBegin != pEnd;++pBegin)
206cdf0e10cSrcweir 		{
207cdf0e10cSrcweir 			if(*pBegin == aTable)
208cdf0e10cSrcweir 			{
209cdf0e10cSrcweir 				bTableFound = sal_True;
210cdf0e10cSrcweir 				break;
211cdf0e10cSrcweir 			}
212cdf0e10cSrcweir 		}
213cdf0e10cSrcweir 	}
214cdf0e10cSrcweir 	if(!bTableFound)
215cdf0e10cSrcweir 		return xRef;
216cdf0e10cSrcweir 
217cdf0e10cSrcweir 	Reference<XDynamicResultSet> xContent = m_pConnection->getDir();
218cdf0e10cSrcweir 	Reference < XSortedDynamicResultSetFactory > xSRSFac(
219cdf0e10cSrcweir 				m_pConnection->getDriver()->getFactory()->createInstance( ::rtl::OUString::createFromAscii("com.sun.star.ucb.SortedDynamicResultSetFactory") ), UNO_QUERY );
220cdf0e10cSrcweir 
221cdf0e10cSrcweir 	Sequence< NumberedSortingInfo > aSortInfo( 1 );
222cdf0e10cSrcweir 	NumberedSortingInfo* pInfo = aSortInfo.getArray();
223cdf0e10cSrcweir 	pInfo[ 0 ].ColumnIndex = 1;
224cdf0e10cSrcweir 	pInfo[ 0 ].Ascending   = sal_True;
225cdf0e10cSrcweir 
226cdf0e10cSrcweir 	Reference < XAnyCompareFactory > xFactory;
227cdf0e10cSrcweir 	Reference< XDynamicResultSet > xDynamicResultSet;
228cdf0e10cSrcweir 	xDynamicResultSet = xSRSFac->createSortedDynamicResultSet( xContent, aSortInfo, xFactory );
229cdf0e10cSrcweir 	Reference<XResultSet> xResultSet = xDynamicResultSet->getStaticResultSet();
230cdf0e10cSrcweir 
231cdf0e10cSrcweir 	Reference<XRow> xRow(xResultSet,UNO_QUERY);
232cdf0e10cSrcweir 
233cdf0e10cSrcweir 	String aFilenameExtension = m_pConnection->getExtension();
234cdf0e10cSrcweir 	String sThisContentExtension;
235cdf0e10cSrcweir 	ODatabaseMetaDataResultSet::ORows aRows;
236cdf0e10cSrcweir 	// scan the directory for tables
237cdf0e10cSrcweir 	::rtl::OUString aName;
238cdf0e10cSrcweir 	INetURLObject aURL;
239cdf0e10cSrcweir 	xResultSet->beforeFirst();
240cdf0e10cSrcweir 
241cdf0e10cSrcweir 	sal_Bool bKnowCaseSensivity = sal_False;
242cdf0e10cSrcweir 	sal_Bool bCaseSensitiveDir = sal_True;
243cdf0e10cSrcweir 	sal_Bool bCheckEnabled = m_pConnection->isCheckEnabled();
244cdf0e10cSrcweir 
245cdf0e10cSrcweir 	while(xResultSet->next())
246cdf0e10cSrcweir 	{
247cdf0e10cSrcweir 		aName = xRow->getString(1);
248cdf0e10cSrcweir 		aURL.SetSmartProtocol(INET_PROT_FILE);
249cdf0e10cSrcweir 		String sUrl = m_pConnection->getURL() + ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("/")) + aName;
250cdf0e10cSrcweir 		aURL.SetSmartURL( sUrl );
251cdf0e10cSrcweir 		sThisContentExtension = aURL.getExtension();
252cdf0e10cSrcweir 
253cdf0e10cSrcweir 		ODatabaseMetaDataResultSet::ORow aRow(3);
254cdf0e10cSrcweir 		aRow.reserve(6);
255cdf0e10cSrcweir 		sal_Bool bNewRow = sal_False;
256cdf0e10cSrcweir 
257cdf0e10cSrcweir 		if ( !bKnowCaseSensivity )
258cdf0e10cSrcweir 		{
259cdf0e10cSrcweir 			bKnowCaseSensivity = sal_True;
260cdf0e10cSrcweir 			sal_Int16 nCase = isCaseSensitiveParentFolder( m_pConnection->getURL(), aURL.getName() );
261cdf0e10cSrcweir 			switch( nCase )
262cdf0e10cSrcweir 			{
263cdf0e10cSrcweir 				case 1:
264cdf0e10cSrcweir 					bCaseSensitiveDir = sal_True;
265cdf0e10cSrcweir 					break;
266cdf0e10cSrcweir 				case -1:
267cdf0e10cSrcweir 					bKnowCaseSensivity = sal_False;
268cdf0e10cSrcweir 					/** run through */
269cdf0e10cSrcweir 				case 0:
270cdf0e10cSrcweir 					bCaseSensitiveDir = sal_False;
271cdf0e10cSrcweir 			}
272cdf0e10cSrcweir 			if ( bKnowCaseSensivity )
273cdf0e10cSrcweir 			{
274cdf0e10cSrcweir 				m_pConnection->setCaseSensitiveExtension( bCaseSensitiveDir, OConnection::GrantAccess() );
275cdf0e10cSrcweir 				if ( !bCaseSensitiveDir )
276cdf0e10cSrcweir 					aFilenameExtension.ToLowerAscii();
277cdf0e10cSrcweir 			}
278cdf0e10cSrcweir 		}
279cdf0e10cSrcweir 
280cdf0e10cSrcweir 		if (aFilenameExtension.Len())
281cdf0e10cSrcweir 		{
282cdf0e10cSrcweir 			if ( !bCaseSensitiveDir )
283cdf0e10cSrcweir 				sThisContentExtension.ToLowerAscii();
284cdf0e10cSrcweir 
285cdf0e10cSrcweir 			if ( sThisContentExtension == aFilenameExtension )
286cdf0e10cSrcweir 			{
287cdf0e10cSrcweir 				aName = aName.replaceAt(aName.getLength()-(aFilenameExtension.Len()+1),aFilenameExtension.Len()+1,::rtl::OUString());
288cdf0e10cSrcweir 				sal_Unicode nChar = aName.toChar();
289cdf0e10cSrcweir 				if ( match(tableNamePattern,aName.getStr(),'\0') && ( !bCheckEnabled || ( bCheckEnabled && ((nChar < '0' || nChar > '9')))) )
290cdf0e10cSrcweir 				{
291cdf0e10cSrcweir 					aRow.push_back(new ORowSetValueDecorator(aName));
292cdf0e10cSrcweir 					bNewRow = sal_True;
293cdf0e10cSrcweir 				}
294cdf0e10cSrcweir 			}
295cdf0e10cSrcweir 		}
296cdf0e10cSrcweir 		else // no extension, filter myself
297cdf0e10cSrcweir 		{
298cdf0e10cSrcweir 			sal_Bool bErg = sal_False;
299cdf0e10cSrcweir 			do
300cdf0e10cSrcweir 			{
301cdf0e10cSrcweir 				if (!aURL.getExtension().getLength())
302cdf0e10cSrcweir 				{
303cdf0e10cSrcweir 					sal_Unicode nChar = aURL.getBase().getStr()[0];
304cdf0e10cSrcweir 					if(match(tableNamePattern,aURL.getBase().getStr(),'\0') && ( !bCheckEnabled || ( bCheckEnabled && ((nChar < '0' || nChar > '9')))) )
305cdf0e10cSrcweir 					{
306cdf0e10cSrcweir 						aRow.push_back(new ORowSetValueDecorator(::rtl::OUString(aURL.getBase())));
307cdf0e10cSrcweir 						bNewRow = sal_True;
308cdf0e10cSrcweir 					}
309cdf0e10cSrcweir 					break;
310cdf0e10cSrcweir 				}
311cdf0e10cSrcweir 				else if ( ( bErg = xResultSet->next() ) != sal_False )
312cdf0e10cSrcweir 				{
313cdf0e10cSrcweir 					aName = xRow->getString(1);
314cdf0e10cSrcweir 					aURL.SetSmartURL(aName);
315cdf0e10cSrcweir 				}
316cdf0e10cSrcweir 			} while (bErg);
317cdf0e10cSrcweir 		}
318cdf0e10cSrcweir 		if(bNewRow)
319cdf0e10cSrcweir 		{
320cdf0e10cSrcweir 			aRow.push_back(new ORowSetValueDecorator(aTable));
321cdf0e10cSrcweir 			aRow.push_back(ODatabaseMetaDataResultSet::getEmptyValue());
322cdf0e10cSrcweir 
323cdf0e10cSrcweir 			aRows.push_back(aRow);
324cdf0e10cSrcweir 		}
325cdf0e10cSrcweir 	}
326cdf0e10cSrcweir 
327cdf0e10cSrcweir 	pResult->setRows(aRows);
328cdf0e10cSrcweir 
329cdf0e10cSrcweir 	return xRef;
330cdf0e10cSrcweir }
331cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxBinaryLiteralLength()332cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxBinaryLiteralLength(  ) throw(SQLException, RuntimeException)
333cdf0e10cSrcweir {
334cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxBinaryLiteralLength" );
335cdf0e10cSrcweir 	return 0;
336cdf0e10cSrcweir }
337cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxRowSize()338cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxRowSize(  ) throw(SQLException, RuntimeException)
339cdf0e10cSrcweir {
340cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxRowSize" );
341cdf0e10cSrcweir 	return 0;
342cdf0e10cSrcweir }
343cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxCatalogNameLength()344cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxCatalogNameLength(  ) throw(SQLException, RuntimeException)
345cdf0e10cSrcweir {
346cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxCatalogNameLength" );
347cdf0e10cSrcweir 	return 0;
348cdf0e10cSrcweir }
349cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxCharLiteralLength()350cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxCharLiteralLength(  ) throw(SQLException, RuntimeException)
351cdf0e10cSrcweir {
352cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxCharLiteralLength" );
353cdf0e10cSrcweir 	return STRING_MAXLEN;
354cdf0e10cSrcweir }
355cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxColumnNameLength()356cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnNameLength(  ) throw(SQLException, RuntimeException)
357cdf0e10cSrcweir {
358cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnNameLength" );
359cdf0e10cSrcweir 	return 0;
360cdf0e10cSrcweir }
361cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxColumnsInIndex()362cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInIndex(  ) throw(SQLException, RuntimeException)
363cdf0e10cSrcweir {
364cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInIndex" );
365cdf0e10cSrcweir 	return 0;
366cdf0e10cSrcweir }
367cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxCursorNameLength()368cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxCursorNameLength(  ) throw(SQLException, RuntimeException)
369cdf0e10cSrcweir {
370cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxCursorNameLength" );
371cdf0e10cSrcweir 	return 0;
372cdf0e10cSrcweir }
373cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxConnections()374cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxConnections(  ) throw(SQLException, RuntimeException)
375cdf0e10cSrcweir {
376cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxConnections" );
377cdf0e10cSrcweir 	return 0;
378cdf0e10cSrcweir }
379cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxColumnsInTable()380cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInTable(  ) throw(SQLException, RuntimeException)
381cdf0e10cSrcweir {
382cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInTable" );
383cdf0e10cSrcweir 	return 0;
384cdf0e10cSrcweir }
385cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_getMaxStatements_throw()386cdf0e10cSrcweir sal_Int32 ODatabaseMetaData::impl_getMaxStatements_throw(  )
387cdf0e10cSrcweir {
388cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getMaxStatements_throw" );
389cdf0e10cSrcweir 	return 0;
390cdf0e10cSrcweir }
391cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxTableNameLength()392cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxTableNameLength(  ) throw(SQLException, RuntimeException)
393cdf0e10cSrcweir {
394cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxTableNameLength" );
395cdf0e10cSrcweir 	return 0;
396cdf0e10cSrcweir }
397cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_getMaxTablesInSelect_throw()398cdf0e10cSrcweir sal_Int32 ODatabaseMetaData::impl_getMaxTablesInSelect_throw(  )
399cdf0e10cSrcweir {
400cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getMaxTablesInSelect_throw" );
401cdf0e10cSrcweir 	return 1;
402cdf0e10cSrcweir }
403cdf0e10cSrcweir // -------------------------------------------------------------------------
getTablePrivileges(const Any &,const::rtl::OUString &,const::rtl::OUString & tableNamePattern)404cdf0e10cSrcweir Reference< XResultSet > SAL_CALL ODatabaseMetaData::getTablePrivileges(
405cdf0e10cSrcweir         const Any& /*catalog*/, const ::rtl::OUString& /*schemaPattern*/, const ::rtl::OUString& tableNamePattern ) throw(SQLException, RuntimeException)
406cdf0e10cSrcweir {
407cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTablePrivileges" );
408cdf0e10cSrcweir 	::osl::MutexGuard aGuard( m_aMutex );
409cdf0e10cSrcweir 
410cdf0e10cSrcweir     ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTablePrivileges );
411cdf0e10cSrcweir     Reference< XResultSet > xRef = pResult;
412cdf0e10cSrcweir 	ODatabaseMetaDataResultSet::ORows aRows;
413cdf0e10cSrcweir 
414cdf0e10cSrcweir 
415cdf0e10cSrcweir 	Reference< XTablesSupplier > xTabSup = m_pConnection->createCatalog();
416cdf0e10cSrcweir 	if(	xTabSup.is())
417cdf0e10cSrcweir 	{
418cdf0e10cSrcweir 		Reference< XNameAccess> xNames		= xTabSup->getTables();
419cdf0e10cSrcweir 		Sequence< ::rtl::OUString > aNames	= xNames->getElementNames();
420cdf0e10cSrcweir 		const ::rtl::OUString* pBegin = aNames.getConstArray();
421cdf0e10cSrcweir 		const ::rtl::OUString* pEnd = pBegin + aNames.getLength();
422cdf0e10cSrcweir 		for(;pBegin != pEnd;++pBegin)
423cdf0e10cSrcweir 		{
424cdf0e10cSrcweir 			if(match(tableNamePattern,pBegin->getStr(),'\0'))
425cdf0e10cSrcweir 			{
426cdf0e10cSrcweir 				static ODatabaseMetaDataResultSet::ORow aRow(8);
427cdf0e10cSrcweir 
428cdf0e10cSrcweir 				aRow[2] = new ORowSetValueDecorator(*pBegin);
429cdf0e10cSrcweir 				aRow[6] = ODatabaseMetaDataResultSet::getSelectValue();
430cdf0e10cSrcweir 				aRow[7] = new ORowSetValueDecorator(::rtl::OUString::createFromAscii("NO"));
431cdf0e10cSrcweir 				aRows.push_back(aRow);
432cdf0e10cSrcweir 
433cdf0e10cSrcweir 				Reference< XPropertySet> xTable;
434cdf0e10cSrcweir 				::cppu::extractInterface(xTable,xNames->getByName(*pBegin));
435cdf0e10cSrcweir 				if(xTable.is())
436cdf0e10cSrcweir 				{
437cdf0e10cSrcweir 					Reference<XUnoTunnel> xTunnel(xTable,UNO_QUERY);
438cdf0e10cSrcweir 					if(xTunnel.is())
439cdf0e10cSrcweir 					{
440cdf0e10cSrcweir 						OFileTable* pTable = reinterpret_cast< OFileTable* >( xTunnel->getSomething(OFileTable::getUnoTunnelImplementationId()) );
441cdf0e10cSrcweir 						if(pTable)
442cdf0e10cSrcweir 						{
443cdf0e10cSrcweir 							if(!pTable->isReadOnly())
444cdf0e10cSrcweir 							{
445cdf0e10cSrcweir 								aRow[6] = ODatabaseMetaDataResultSet::getInsertValue();
446cdf0e10cSrcweir 								aRows.push_back(aRow);
447cdf0e10cSrcweir 								if(!m_pConnection->showDeleted())
448cdf0e10cSrcweir 								{
449cdf0e10cSrcweir 									aRow[6] = ODatabaseMetaDataResultSet::getDeleteValue();
450cdf0e10cSrcweir 									aRows.push_back(aRow);
451cdf0e10cSrcweir 								}
452cdf0e10cSrcweir 								aRow[6] = ODatabaseMetaDataResultSet::getUpdateValue();
453cdf0e10cSrcweir 								aRows.push_back(aRow);
454cdf0e10cSrcweir 								aRow[6] = ODatabaseMetaDataResultSet::getCreateValue();
455cdf0e10cSrcweir 								aRows.push_back(aRow);
456cdf0e10cSrcweir 								aRow[6] = ODatabaseMetaDataResultSet::getReadValue();
457cdf0e10cSrcweir 								aRows.push_back(aRow);
458cdf0e10cSrcweir 								aRow[6] = ODatabaseMetaDataResultSet::getAlterValue();
459cdf0e10cSrcweir 								aRows.push_back(aRow);
460cdf0e10cSrcweir 								aRow[6] = ODatabaseMetaDataResultSet::getDropValue();
461cdf0e10cSrcweir 								aRows.push_back(aRow);
462cdf0e10cSrcweir 							}
463cdf0e10cSrcweir 						}
464cdf0e10cSrcweir 					}
465cdf0e10cSrcweir 				}
466cdf0e10cSrcweir 			}
467cdf0e10cSrcweir 		}
468cdf0e10cSrcweir 	}
469cdf0e10cSrcweir 
470cdf0e10cSrcweir 	pResult->setRows(aRows);
471cdf0e10cSrcweir 	return xRef;
472cdf0e10cSrcweir }
473cdf0e10cSrcweir // -------------------------------------------------------------------------
doesMaxRowSizeIncludeBlobs()474cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::doesMaxRowSizeIncludeBlobs(  ) throw(SQLException, RuntimeException)
475cdf0e10cSrcweir {
476cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::doesMaxRowSizeIncludeBlobs" );
477cdf0e10cSrcweir 	return sal_True;
478cdf0e10cSrcweir }
479cdf0e10cSrcweir // -------------------------------------------------------------------------
storesLowerCaseQuotedIdentifiers()480cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::storesLowerCaseQuotedIdentifiers(  ) throw(SQLException, RuntimeException)
481cdf0e10cSrcweir {
482cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesLowerCaseQuotedIdentifiers" );
483cdf0e10cSrcweir 	return sal_False;
484cdf0e10cSrcweir }
485cdf0e10cSrcweir // -------------------------------------------------------------------------
storesLowerCaseIdentifiers()486cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::storesLowerCaseIdentifiers(  ) throw(SQLException, RuntimeException)
487cdf0e10cSrcweir {
488cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesLowerCaseIdentifiers" );
489cdf0e10cSrcweir 	return sal_False;
490cdf0e10cSrcweir }
491cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_storesMixedCaseQuotedIdentifiers_throw()492cdf0e10cSrcweir sal_Bool ODatabaseMetaData::impl_storesMixedCaseQuotedIdentifiers_throw(  )
493cdf0e10cSrcweir {
494cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_storesMixedCaseQuotedIdentifiers_throw" );
495cdf0e10cSrcweir 	return sal_False;
496cdf0e10cSrcweir }
497cdf0e10cSrcweir // -------------------------------------------------------------------------
storesMixedCaseIdentifiers()498cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::storesMixedCaseIdentifiers(  ) throw(SQLException, RuntimeException)
499cdf0e10cSrcweir {
500cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesMixedCaseIdentifiers" );
501cdf0e10cSrcweir 	return sal_False;
502cdf0e10cSrcweir }
503cdf0e10cSrcweir // -------------------------------------------------------------------------
storesUpperCaseQuotedIdentifiers()504cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::storesUpperCaseQuotedIdentifiers(  ) throw(SQLException, RuntimeException)
505cdf0e10cSrcweir {
506cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesUpperCaseQuotedIdentifiers" );
507cdf0e10cSrcweir 	return sal_False;
508cdf0e10cSrcweir }
509cdf0e10cSrcweir // -------------------------------------------------------------------------
storesUpperCaseIdentifiers()510cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::storesUpperCaseIdentifiers(  ) throw(SQLException, RuntimeException)
511cdf0e10cSrcweir {
512cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::storesUpperCaseIdentifiers" );
513cdf0e10cSrcweir 	return sal_False;
514cdf0e10cSrcweir }
515cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_supportsAlterTableWithAddColumn_throw()516cdf0e10cSrcweir sal_Bool ODatabaseMetaData::impl_supportsAlterTableWithAddColumn_throw(  )
517cdf0e10cSrcweir {
518cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsAlterTableWithAddColumn_throw" );
519cdf0e10cSrcweir 	return sal_False;
520cdf0e10cSrcweir }
521cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_supportsAlterTableWithDropColumn_throw()522cdf0e10cSrcweir sal_Bool ODatabaseMetaData::impl_supportsAlterTableWithDropColumn_throw(  )
523cdf0e10cSrcweir {
524cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsAlterTableWithDropColumn_throw" );
525cdf0e10cSrcweir 	return sal_False;
526cdf0e10cSrcweir }
527cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxIndexLength()528cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxIndexLength(  ) throw(SQLException, RuntimeException)
529cdf0e10cSrcweir {
530cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxIndexLength" );
531cdf0e10cSrcweir 	return 0;
532cdf0e10cSrcweir }
533cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsNonNullableColumns()534cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsNonNullableColumns(  ) throw(SQLException, RuntimeException)
535cdf0e10cSrcweir {
536cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsNonNullableColumns" );
537cdf0e10cSrcweir 	return sal_False;
538cdf0e10cSrcweir }
539cdf0e10cSrcweir // -------------------------------------------------------------------------
getCatalogTerm()540cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getCatalogTerm(  ) throw(SQLException, RuntimeException)
541cdf0e10cSrcweir {
542cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getCatalogTerm" );
543cdf0e10cSrcweir 	return ::rtl::OUString();
544cdf0e10cSrcweir }
545cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_getIdentifierQuoteString_throw()546cdf0e10cSrcweir ::rtl::OUString ODatabaseMetaData::impl_getIdentifierQuoteString_throw(  )
547cdf0e10cSrcweir {
548cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_getIdentifierQuoteString_throw" );
549cdf0e10cSrcweir 	static const ::rtl::OUString sQuote = ::rtl::OUString::createFromAscii("\"");
550cdf0e10cSrcweir 	return sQuote;
551cdf0e10cSrcweir }
552cdf0e10cSrcweir // -------------------------------------------------------------------------
getExtraNameCharacters()553cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getExtraNameCharacters(  ) throw(SQLException, RuntimeException)
554cdf0e10cSrcweir {
555cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getExtraNameCharacters" );
556cdf0e10cSrcweir 	return ::rtl::OUString();
557cdf0e10cSrcweir }
558cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsDifferentTableCorrelationNames()559cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsDifferentTableCorrelationNames(  ) throw(SQLException, RuntimeException)
560cdf0e10cSrcweir {
561cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsDifferentTableCorrelationNames" );
562cdf0e10cSrcweir 	return sal_True;
563cdf0e10cSrcweir }
564cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_isCatalogAtStart_throw()565cdf0e10cSrcweir sal_Bool ODatabaseMetaData::impl_isCatalogAtStart_throw(  )
566cdf0e10cSrcweir {
567cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_isCatalogAtStart_throw" );
568cdf0e10cSrcweir 	return sal_True;
569cdf0e10cSrcweir }
570cdf0e10cSrcweir // -------------------------------------------------------------------------
dataDefinitionIgnoredInTransactions()571cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::dataDefinitionIgnoredInTransactions(  ) throw(SQLException, RuntimeException)
572cdf0e10cSrcweir {
573cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::dataDefinitionIgnoredInTransactions" );
574cdf0e10cSrcweir 	return sal_True;
575cdf0e10cSrcweir }
576cdf0e10cSrcweir // -------------------------------------------------------------------------
dataDefinitionCausesTransactionCommit()577cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::dataDefinitionCausesTransactionCommit(  ) throw(SQLException, RuntimeException)
578cdf0e10cSrcweir {
579cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::dataDefinitionCausesTransactionCommit" );
580cdf0e10cSrcweir 	return sal_True;
581cdf0e10cSrcweir }
582cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsDataManipulationTransactionsOnly()583cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsDataManipulationTransactionsOnly(  ) throw(SQLException, RuntimeException)
584cdf0e10cSrcweir {
585cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsDataManipulationTransactionsOnly" );
586cdf0e10cSrcweir 	return sal_False;
587cdf0e10cSrcweir }
588cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsDataDefinitionAndDataManipulationTransactions()589cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsDataDefinitionAndDataManipulationTransactions(  ) throw(SQLException, RuntimeException)
590cdf0e10cSrcweir {
591cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsDataDefinitionAndDataManipulationTransactions" );
592cdf0e10cSrcweir 	return sal_False;
593cdf0e10cSrcweir }
594cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsPositionedDelete()595cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsPositionedDelete(  ) throw(SQLException, RuntimeException)
596cdf0e10cSrcweir {
597cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsPositionedDelete" );
598cdf0e10cSrcweir 	return sal_False;
599cdf0e10cSrcweir }
600cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsPositionedUpdate()601cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsPositionedUpdate(  ) throw(SQLException, RuntimeException)
602cdf0e10cSrcweir {
603cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsPositionedUpdate" );
604cdf0e10cSrcweir 	return sal_False;
605cdf0e10cSrcweir }
606cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsOpenStatementsAcrossRollback()607cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsOpenStatementsAcrossRollback(  ) throw(SQLException, RuntimeException)
608cdf0e10cSrcweir {
609cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenStatementsAcrossRollback" );
610cdf0e10cSrcweir 	return sal_False;
611cdf0e10cSrcweir }
612cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsOpenStatementsAcrossCommit()613cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsOpenStatementsAcrossCommit(  ) throw(SQLException, RuntimeException)
614cdf0e10cSrcweir {
615cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenStatementsAcrossCommit" );
616cdf0e10cSrcweir 	return sal_False;
617cdf0e10cSrcweir }
618cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsOpenCursorsAcrossCommit()619cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsOpenCursorsAcrossCommit(  ) throw(SQLException, RuntimeException)
620cdf0e10cSrcweir {
621cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenCursorsAcrossCommit" );
622cdf0e10cSrcweir 	return sal_False;
623cdf0e10cSrcweir }
624cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsOpenCursorsAcrossRollback()625cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsOpenCursorsAcrossRollback(  ) throw(SQLException, RuntimeException)
626cdf0e10cSrcweir {
627cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOpenCursorsAcrossRollback" );
628cdf0e10cSrcweir 	return sal_False;
629cdf0e10cSrcweir }
630cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsTransactionIsolationLevel(sal_Int32)631cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsTransactionIsolationLevel( sal_Int32 /*level*/ ) throw(SQLException, RuntimeException)
632cdf0e10cSrcweir {
633cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTransactionIsolationLevel" );
634cdf0e10cSrcweir 	return sal_False;
635cdf0e10cSrcweir }
636cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_supportsSchemasInDataManipulation_throw()637cdf0e10cSrcweir sal_Bool ODatabaseMetaData::impl_supportsSchemasInDataManipulation_throw(  )
638cdf0e10cSrcweir {
639cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsSchemasInDataManipulation_throw" );
640cdf0e10cSrcweir 	return sal_False;
641cdf0e10cSrcweir }
642cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsANSI92FullSQL()643cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsANSI92FullSQL(  ) throw(SQLException, RuntimeException)
644cdf0e10cSrcweir {
645cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsANSI92FullSQL" );
646cdf0e10cSrcweir 	return sal_False;
647cdf0e10cSrcweir }
648cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsANSI92EntryLevelSQL()649cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsANSI92EntryLevelSQL(  ) throw(SQLException, RuntimeException)
650cdf0e10cSrcweir {
651cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsANSI92EntryLevelSQL" );
652cdf0e10cSrcweir 	return sal_False;
653cdf0e10cSrcweir }
654cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsIntegrityEnhancementFacility()655cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsIntegrityEnhancementFacility(  ) throw(SQLException, RuntimeException)
656cdf0e10cSrcweir {
657cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsIntegrityEnhancementFacility" );
658cdf0e10cSrcweir 	return sal_False;
659cdf0e10cSrcweir }
660cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsSchemasInIndexDefinitions()661cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsSchemasInIndexDefinitions(  ) throw(SQLException, RuntimeException)
662cdf0e10cSrcweir {
663cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSchemasInIndexDefinitions" );
664cdf0e10cSrcweir 	return sal_False;
665cdf0e10cSrcweir }
666cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_supportsSchemasInTableDefinitions_throw()667cdf0e10cSrcweir sal_Bool ODatabaseMetaData::impl_supportsSchemasInTableDefinitions_throw(  )
668cdf0e10cSrcweir {
669cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsSchemasInTableDefinitions_throw" );
670cdf0e10cSrcweir 	return sal_False;
671cdf0e10cSrcweir }
672cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_supportsCatalogsInTableDefinitions_throw()673cdf0e10cSrcweir sal_Bool ODatabaseMetaData::impl_supportsCatalogsInTableDefinitions_throw(  )
674cdf0e10cSrcweir {
675cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsCatalogsInTableDefinitions_throw" );
676cdf0e10cSrcweir 	return sal_False;
677cdf0e10cSrcweir }
678cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsCatalogsInIndexDefinitions()679cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsCatalogsInIndexDefinitions(  ) throw(SQLException, RuntimeException)
680cdf0e10cSrcweir {
681cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCatalogsInIndexDefinitions" );
682cdf0e10cSrcweir 	return sal_False;
683cdf0e10cSrcweir }
684cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_supportsCatalogsInDataManipulation_throw()685cdf0e10cSrcweir sal_Bool ODatabaseMetaData::impl_supportsCatalogsInDataManipulation_throw(  )
686cdf0e10cSrcweir {
687cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsCatalogsInDataManipulation_throw" );
688cdf0e10cSrcweir 	return sal_False;
689cdf0e10cSrcweir }
690cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsOuterJoins()691cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsOuterJoins(  ) throw(SQLException, RuntimeException)
692cdf0e10cSrcweir {
693cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOuterJoins" );
694cdf0e10cSrcweir 	return sal_False;
695cdf0e10cSrcweir }
696cdf0e10cSrcweir // -------------------------------------------------------------------------
getTableTypes()697cdf0e10cSrcweir Reference< XResultSet > SAL_CALL ODatabaseMetaData::getTableTypes(  ) throw(SQLException, RuntimeException)
698cdf0e10cSrcweir {
699cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTableTypes" );
700cdf0e10cSrcweir 	::osl::MutexGuard aGuard( m_aMutex );
701cdf0e10cSrcweir 
702cdf0e10cSrcweir     ODatabaseMetaDataResultSet* pResult = new ODatabaseMetaDataResultSet( ODatabaseMetaDataResultSet::eTableTypes );
703cdf0e10cSrcweir     Reference< XResultSet > xRef = pResult;
704cdf0e10cSrcweir 	static ODatabaseMetaDataResultSet::ORows aRows;
705cdf0e10cSrcweir 	if(aRows.empty())
706cdf0e10cSrcweir 	{
707cdf0e10cSrcweir 		ODatabaseMetaDataResultSet::ORow aRow;
708cdf0e10cSrcweir 		aRow.push_back(ODatabaseMetaDataResultSet::getEmptyValue());
709cdf0e10cSrcweir 		aRow.push_back(new ORowSetValueDecorator(::rtl::OUString::createFromAscii("TABLE")));
710cdf0e10cSrcweir 		aRows.push_back(aRow);
711cdf0e10cSrcweir 	}
712cdf0e10cSrcweir 	pResult->setRows(aRows);
713cdf0e10cSrcweir 	return xRef;
714cdf0e10cSrcweir }
715cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxStatementLength()716cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxStatementLength(  ) throw(SQLException, RuntimeException)
717cdf0e10cSrcweir {
718cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxStatementLength" );
719cdf0e10cSrcweir 	return 0;
720cdf0e10cSrcweir }
721cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxProcedureNameLength()722cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxProcedureNameLength(  ) throw(SQLException, RuntimeException)
723cdf0e10cSrcweir {
724cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxProcedureNameLength" );
725cdf0e10cSrcweir 	return 0;
726cdf0e10cSrcweir }
727cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxSchemaNameLength()728cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxSchemaNameLength(  ) throw(SQLException, RuntimeException)
729cdf0e10cSrcweir {
730cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxSchemaNameLength" );
731cdf0e10cSrcweir 	return 0;
732cdf0e10cSrcweir }
733cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsTransactions()734cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsTransactions(  ) throw(SQLException, RuntimeException)
735cdf0e10cSrcweir {
736cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTransactions" );
737cdf0e10cSrcweir 	return sal_False;
738cdf0e10cSrcweir }
739cdf0e10cSrcweir // -------------------------------------------------------------------------
allProceduresAreCallable()740cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::allProceduresAreCallable(  ) throw(SQLException, RuntimeException)
741cdf0e10cSrcweir {
742cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::allProceduresAreCallable" );
743cdf0e10cSrcweir 	return sal_False;
744cdf0e10cSrcweir }
745cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsStoredProcedures()746cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsStoredProcedures(  ) throw(SQLException, RuntimeException)
747cdf0e10cSrcweir {
748cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsStoredProcedures" );
749cdf0e10cSrcweir 	return sal_False;
750cdf0e10cSrcweir }
751cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsSelectForUpdate()752cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsSelectForUpdate(  ) throw(SQLException, RuntimeException)
753cdf0e10cSrcweir {
754cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSelectForUpdate" );
755cdf0e10cSrcweir 	return sal_False;
756cdf0e10cSrcweir }
757cdf0e10cSrcweir // -------------------------------------------------------------------------
allTablesAreSelectable()758cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::allTablesAreSelectable(  ) throw(SQLException, RuntimeException)
759cdf0e10cSrcweir {
760cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::allTablesAreSelectable" );
761cdf0e10cSrcweir 	return sal_True;
762cdf0e10cSrcweir }
763cdf0e10cSrcweir // -------------------------------------------------------------------------
isReadOnly()764cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::isReadOnly(  ) throw(SQLException, RuntimeException)
765cdf0e10cSrcweir {
766cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::isReadOnly" );
767cdf0e10cSrcweir 	return sal_True;
768cdf0e10cSrcweir }
769cdf0e10cSrcweir // -------------------------------------------------------------------------
usesLocalFiles()770cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::usesLocalFiles(  ) throw(SQLException, RuntimeException)
771cdf0e10cSrcweir {
772cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::usesLocalFiles" );
773cdf0e10cSrcweir 	return sal_True;
774cdf0e10cSrcweir }
775cdf0e10cSrcweir // -------------------------------------------------------------------------
usesLocalFilePerTable()776cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::usesLocalFilePerTable(  ) throw(SQLException, RuntimeException)
777cdf0e10cSrcweir {
778cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::usesLocalFilePerTable" );
779cdf0e10cSrcweir 	return sal_True;
780cdf0e10cSrcweir }
781cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsTypeConversion()782cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsTypeConversion(  ) throw(SQLException, RuntimeException)
783cdf0e10cSrcweir {
784cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTypeConversion" );
785cdf0e10cSrcweir 	return sal_False;
786cdf0e10cSrcweir }
787cdf0e10cSrcweir // -------------------------------------------------------------------------
nullPlusNonNullIsNull()788cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::nullPlusNonNullIsNull(  ) throw(SQLException, RuntimeException)
789cdf0e10cSrcweir {
790cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullPlusNonNullIsNull" );
791cdf0e10cSrcweir 	return sal_True;
792cdf0e10cSrcweir }
793cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsColumnAliasing()794cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsColumnAliasing(  ) throw(SQLException, RuntimeException)
795cdf0e10cSrcweir {
796cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsColumnAliasing" );
797cdf0e10cSrcweir 	return sal_True;
798cdf0e10cSrcweir }
799cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsTableCorrelationNames()800cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsTableCorrelationNames(  ) throw(SQLException, RuntimeException)
801cdf0e10cSrcweir {
802cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsTableCorrelationNames" );
803cdf0e10cSrcweir 	return sal_True;
804cdf0e10cSrcweir }
805cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsConvert(sal_Int32,sal_Int32)806cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsConvert( sal_Int32 /*fromType*/, sal_Int32 /*toType*/ ) throw(SQLException, RuntimeException)
807cdf0e10cSrcweir {
808cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsConvert" );
809cdf0e10cSrcweir 	return sal_False;
810cdf0e10cSrcweir }
811cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsExpressionsInOrderBy()812cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsExpressionsInOrderBy(  ) throw(SQLException, RuntimeException)
813cdf0e10cSrcweir {
814cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsExpressionsInOrderBy" );
815cdf0e10cSrcweir 	return sal_False;
816cdf0e10cSrcweir }
817cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsGroupBy()818cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsGroupBy(  ) throw(SQLException, RuntimeException)
819cdf0e10cSrcweir {
820cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsGroupBy" );
821cdf0e10cSrcweir 	return sal_False;
822cdf0e10cSrcweir }
823cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsGroupByBeyondSelect()824cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsGroupByBeyondSelect(  ) throw(SQLException, RuntimeException)
825cdf0e10cSrcweir {
826cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsGroupByBeyondSelect" );
827cdf0e10cSrcweir 	return sal_False;
828cdf0e10cSrcweir }
829cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsGroupByUnrelated()830cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsGroupByUnrelated(  ) throw(SQLException, RuntimeException)
831cdf0e10cSrcweir {
832cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsGroupByUnrelated" );
833cdf0e10cSrcweir 	return sal_False;
834cdf0e10cSrcweir }
835cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsMultipleTransactions()836cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsMultipleTransactions(  ) throw(SQLException, RuntimeException)
837cdf0e10cSrcweir {
838cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMultipleTransactions" );
839cdf0e10cSrcweir 	return sal_False;
840cdf0e10cSrcweir }
841cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsMultipleResultSets()842cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsMultipleResultSets(  ) throw(SQLException, RuntimeException)
843cdf0e10cSrcweir {
844cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMultipleResultSets" );
845cdf0e10cSrcweir 	return sal_False;
846cdf0e10cSrcweir }
847cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsLikeEscapeClause()848cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsLikeEscapeClause(  ) throw(SQLException, RuntimeException)
849cdf0e10cSrcweir {
850cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsLikeEscapeClause" );
851cdf0e10cSrcweir 	return sal_False;
852cdf0e10cSrcweir }
853cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsOrderByUnrelated()854cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsOrderByUnrelated(  ) throw(SQLException, RuntimeException)
855cdf0e10cSrcweir {
856cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsOrderByUnrelated" );
857cdf0e10cSrcweir 	return sal_True;
858cdf0e10cSrcweir }
859cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsUnion()860cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsUnion(  ) throw(SQLException, RuntimeException)
861cdf0e10cSrcweir {
862cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsUnion" );
863cdf0e10cSrcweir 	return sal_False;
864cdf0e10cSrcweir }
865cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsUnionAll()866cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsUnionAll(  ) throw(SQLException, RuntimeException)
867cdf0e10cSrcweir {
868cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsUnionAll" );
869cdf0e10cSrcweir 	return sal_False;
870cdf0e10cSrcweir }
871cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsMixedCaseIdentifiers()872cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsMixedCaseIdentifiers(  ) throw(SQLException, RuntimeException)
873cdf0e10cSrcweir {
874cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMixedCaseIdentifiers" );
875cdf0e10cSrcweir 	return sal_True;
876cdf0e10cSrcweir }
877cdf0e10cSrcweir // -------------------------------------------------------------------------
impl_supportsMixedCaseQuotedIdentifiers_throw()878cdf0e10cSrcweir sal_Bool ODatabaseMetaData::impl_supportsMixedCaseQuotedIdentifiers_throw(  )
879cdf0e10cSrcweir {
880cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::impl_supportsMixedCaseQuotedIdentifiers_throw" );
881cdf0e10cSrcweir 	return sal_False;
882cdf0e10cSrcweir }
883cdf0e10cSrcweir // -------------------------------------------------------------------------
nullsAreSortedAtEnd()884cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::nullsAreSortedAtEnd(  ) throw(SQLException, RuntimeException)
885cdf0e10cSrcweir {
886cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedAtEnd" );
887cdf0e10cSrcweir 	return sal_False;
888cdf0e10cSrcweir }
889cdf0e10cSrcweir // -------------------------------------------------------------------------
nullsAreSortedAtStart()890cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::nullsAreSortedAtStart(  ) throw(SQLException, RuntimeException)
891cdf0e10cSrcweir {
892cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedAtStart" );
893cdf0e10cSrcweir 	return sal_True;
894cdf0e10cSrcweir }
895cdf0e10cSrcweir // -------------------------------------------------------------------------
nullsAreSortedHigh()896cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::nullsAreSortedHigh(  ) throw(SQLException, RuntimeException)
897cdf0e10cSrcweir {
898cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedHigh" );
899cdf0e10cSrcweir 	return sal_False;
900cdf0e10cSrcweir }
901cdf0e10cSrcweir // -------------------------------------------------------------------------
nullsAreSortedLow()902cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::nullsAreSortedLow(  ) throw(SQLException, RuntimeException)
903cdf0e10cSrcweir {
904cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::nullsAreSortedLow" );
905cdf0e10cSrcweir 	return sal_True;
906cdf0e10cSrcweir }
907cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsSchemasInProcedureCalls()908cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsSchemasInProcedureCalls(  ) throw(SQLException, RuntimeException)
909cdf0e10cSrcweir {
910cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSchemasInProcedureCalls" );
911cdf0e10cSrcweir 	return sal_False;
912cdf0e10cSrcweir }
913cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsSchemasInPrivilegeDefinitions()914cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsSchemasInPrivilegeDefinitions(  ) throw(SQLException, RuntimeException)
915cdf0e10cSrcweir {
916cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSchemasInPrivilegeDefinitions" );
917cdf0e10cSrcweir 	return sal_False;
918cdf0e10cSrcweir }
919cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsCatalogsInProcedureCalls()920cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsCatalogsInProcedureCalls(  ) throw(SQLException, RuntimeException)
921cdf0e10cSrcweir {
922cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCatalogsInProcedureCalls" );
923cdf0e10cSrcweir 	return sal_False;
924cdf0e10cSrcweir }
925cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsCatalogsInPrivilegeDefinitions()926cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsCatalogsInPrivilegeDefinitions(  ) throw(SQLException, RuntimeException)
927cdf0e10cSrcweir {
928cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCatalogsInPrivilegeDefinitions" );
929cdf0e10cSrcweir 	return sal_False;
930cdf0e10cSrcweir }
931cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsCorrelatedSubqueries()932cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsCorrelatedSubqueries(  ) throw(SQLException, RuntimeException)
933cdf0e10cSrcweir {
934cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCorrelatedSubqueries" );
935cdf0e10cSrcweir 	return sal_False;
936cdf0e10cSrcweir }
937cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsSubqueriesInComparisons()938cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsSubqueriesInComparisons(  ) throw(SQLException, RuntimeException)
939cdf0e10cSrcweir {
940cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInComparisons" );
941cdf0e10cSrcweir 	return sal_False;
942cdf0e10cSrcweir }
943cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsSubqueriesInExists()944cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsSubqueriesInExists(  ) throw(SQLException, RuntimeException)
945cdf0e10cSrcweir {
946cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInExists" );
947cdf0e10cSrcweir 	return sal_False;
948cdf0e10cSrcweir }
949cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsSubqueriesInIns()950cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsSubqueriesInIns(  ) throw(SQLException, RuntimeException)
951cdf0e10cSrcweir {
952cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInIns" );
953cdf0e10cSrcweir 	return sal_False;
954cdf0e10cSrcweir }
955cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsSubqueriesInQuantifieds()956cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsSubqueriesInQuantifieds(  ) throw(SQLException, RuntimeException)
957cdf0e10cSrcweir {
958cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsSubqueriesInQuantifieds" );
959cdf0e10cSrcweir 	return sal_False;
960cdf0e10cSrcweir }
961cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsANSI92IntermediateSQL()962cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsANSI92IntermediateSQL(  ) throw(SQLException, RuntimeException)
963cdf0e10cSrcweir {
964cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsANSI92IntermediateSQL" );
965cdf0e10cSrcweir 	return sal_False;
966cdf0e10cSrcweir }
967cdf0e10cSrcweir // -------------------------------------------------------------------------
getURL()968cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getURL(  ) throw(SQLException, RuntimeException)
969cdf0e10cSrcweir {
970cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getURL" );
971cdf0e10cSrcweir 	static const ::rtl::OUString aValue = ::rtl::OUString::createFromAscii("sdbc:file:");
972cdf0e10cSrcweir 	return aValue;
973cdf0e10cSrcweir }
974cdf0e10cSrcweir // -------------------------------------------------------------------------
getUserName()975cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getUserName(  ) throw(SQLException, RuntimeException)
976cdf0e10cSrcweir {
977cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getUserName" );
978cdf0e10cSrcweir 	return ::rtl::OUString();
979cdf0e10cSrcweir }
980cdf0e10cSrcweir // -------------------------------------------------------------------------
getDriverName()981cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getDriverName(  ) throw(SQLException, RuntimeException)
982cdf0e10cSrcweir {
983cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverName" );
984cdf0e10cSrcweir 	return ::rtl::OUString();
985cdf0e10cSrcweir }
986cdf0e10cSrcweir // -------------------------------------------------------------------------
getDriverVersion()987cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getDriverVersion(  ) throw(SQLException, RuntimeException)
988cdf0e10cSrcweir {
989cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverVersion" );
990cdf0e10cSrcweir 	return ::rtl::OUString::valueOf((sal_Int32)1);
991cdf0e10cSrcweir }
992cdf0e10cSrcweir // -------------------------------------------------------------------------
getDatabaseProductVersion()993cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getDatabaseProductVersion(  ) throw(SQLException, RuntimeException)
994cdf0e10cSrcweir {
995cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDatabaseProductVersion" );
996cdf0e10cSrcweir 	return ::rtl::OUString::valueOf((sal_Int32)0);
997cdf0e10cSrcweir }
998cdf0e10cSrcweir // -------------------------------------------------------------------------
getDatabaseProductName()999cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getDatabaseProductName(  ) throw(SQLException, RuntimeException)
1000cdf0e10cSrcweir {
1001cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDatabaseProductName" );
1002cdf0e10cSrcweir 	return ::rtl::OUString();
1003cdf0e10cSrcweir }
1004cdf0e10cSrcweir // -------------------------------------------------------------------------
getProcedureTerm()1005cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getProcedureTerm(  ) throw(SQLException, RuntimeException)
1006cdf0e10cSrcweir {
1007cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getProcedureTerm" );
1008cdf0e10cSrcweir 	return ::rtl::OUString();
1009cdf0e10cSrcweir }
1010cdf0e10cSrcweir // -------------------------------------------------------------------------
getSchemaTerm()1011cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getSchemaTerm(  ) throw(SQLException, RuntimeException)
1012cdf0e10cSrcweir {
1013cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSchemaTerm" );
1014cdf0e10cSrcweir 	return ::rtl::OUString();
1015cdf0e10cSrcweir }
1016cdf0e10cSrcweir // -------------------------------------------------------------------------
getDriverMajorVersion()1017cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getDriverMajorVersion(  ) throw(RuntimeException)
1018cdf0e10cSrcweir {
1019cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverMajorVersion" );
1020cdf0e10cSrcweir 	return 0;
1021cdf0e10cSrcweir }
1022cdf0e10cSrcweir // -------------------------------------------------------------------------
getDefaultTransactionIsolation()1023cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getDefaultTransactionIsolation(  ) throw(SQLException, RuntimeException)
1024cdf0e10cSrcweir {
1025cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDefaultTransactionIsolation" );
1026cdf0e10cSrcweir 	return 0;
1027cdf0e10cSrcweir }
1028cdf0e10cSrcweir // -------------------------------------------------------------------------
getDriverMinorVersion()1029cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getDriverMinorVersion(  ) throw(RuntimeException)
1030cdf0e10cSrcweir {
1031cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getDriverMinorVersion" );
1032cdf0e10cSrcweir 	return 0;
1033cdf0e10cSrcweir }
1034cdf0e10cSrcweir // -------------------------------------------------------------------------
getSQLKeywords()1035cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getSQLKeywords(  ) throw(SQLException, RuntimeException)
1036cdf0e10cSrcweir {
1037cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSQLKeywords" );
1038cdf0e10cSrcweir 	return ::rtl::OUString();
1039cdf0e10cSrcweir }
1040cdf0e10cSrcweir // -------------------------------------------------------------------------
getSearchStringEscape()1041cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getSearchStringEscape(  ) throw(SQLException, RuntimeException)
1042cdf0e10cSrcweir {
1043cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSearchStringEscape" );
1044cdf0e10cSrcweir 	return ::rtl::OUString();
1045cdf0e10cSrcweir }
1046cdf0e10cSrcweir // -------------------------------------------------------------------------
getStringFunctions()1047cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getStringFunctions(  ) throw(SQLException, RuntimeException)
1048cdf0e10cSrcweir {
1049cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getStringFunctions" );
1050cdf0e10cSrcweir 	return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("UCASE,LCASE,ASCII,LENGTH,OCTET_LENGTH,CHAR_LENGTH,CHARACTER_LENGTH,CHAR,CONCAT,LOCATE,SUBSTRING,LTRIM,RTRIM,SPACE,REPLACE,REPEAT,INSERT,LEFT,RIGHT"));
1051cdf0e10cSrcweir }
1052cdf0e10cSrcweir // -------------------------------------------------------------------------
getTimeDateFunctions()1053cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getTimeDateFunctions(  ) throw(SQLException, RuntimeException)
1054cdf0e10cSrcweir {
1055cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getTimeDateFunctions" );
1056cdf0e10cSrcweir 	return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("DAYOFWEEK,DAYOFMONTH,DAYOFYEAR,MONTH,DAYNAME,MONTHNAME,QUARTER,WEEK,YEAR,HOUR,MINUTE,SECOND,CURDATE,CURTIME,NOW"));
1057cdf0e10cSrcweir }
1058cdf0e10cSrcweir // -------------------------------------------------------------------------
getSystemFunctions()1059cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getSystemFunctions(  ) throw(SQLException, RuntimeException)
1060cdf0e10cSrcweir {
1061cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getSystemFunctions" );
1062cdf0e10cSrcweir 	return ::rtl::OUString();
1063cdf0e10cSrcweir }
1064cdf0e10cSrcweir // -------------------------------------------------------------------------
getNumericFunctions()1065cdf0e10cSrcweir ::rtl::OUString SAL_CALL ODatabaseMetaData::getNumericFunctions(  ) throw(SQLException, RuntimeException)
1066cdf0e10cSrcweir {
1067cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getNumericFunctions" );
1068cdf0e10cSrcweir 	return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ABS,SIGN,MOD,FLOOR,CEILING,ROUND,EXP,LN,LOG,LOG10,POWER,SQRT,PI,COS,SIN,TAN,ACOS,ASIN,ATAN,ATAN2,DEGREES,RADIANS"));
1069cdf0e10cSrcweir }
1070cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsExtendedSQLGrammar()1071cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsExtendedSQLGrammar(  ) throw(SQLException, RuntimeException)
1072cdf0e10cSrcweir {
1073cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsExtendedSQLGrammar" );
1074cdf0e10cSrcweir 	return sal_False;
1075cdf0e10cSrcweir }
1076cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsCoreSQLGrammar()1077cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsCoreSQLGrammar(  ) throw(SQLException, RuntimeException)
1078cdf0e10cSrcweir {
1079cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsCoreSQLGrammar" );
1080cdf0e10cSrcweir 	return sal_False;
1081cdf0e10cSrcweir }
1082cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsMinimumSQLGrammar()1083cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsMinimumSQLGrammar(  ) throw(SQLException, RuntimeException)
1084cdf0e10cSrcweir {
1085cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsMinimumSQLGrammar" );
1086cdf0e10cSrcweir 	return sal_True;
1087cdf0e10cSrcweir }
1088cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsFullOuterJoins()1089cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsFullOuterJoins(  ) throw(SQLException, RuntimeException)
1090cdf0e10cSrcweir {
1091cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsFullOuterJoins" );
1092cdf0e10cSrcweir 	return sal_False;
1093cdf0e10cSrcweir }
1094cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsLimitedOuterJoins()1095cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsLimitedOuterJoins(  ) throw(SQLException, RuntimeException)
1096cdf0e10cSrcweir {
1097cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsLimitedOuterJoins" );
1098cdf0e10cSrcweir 	return sal_False;
1099cdf0e10cSrcweir }
1100cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxColumnsInGroupBy()1101cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInGroupBy(  ) throw(SQLException, RuntimeException)
1102cdf0e10cSrcweir {
1103cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInGroupBy" );
1104cdf0e10cSrcweir 	return 0;
1105cdf0e10cSrcweir }
1106cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxColumnsInOrderBy()1107cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInOrderBy(  ) throw(SQLException, RuntimeException)
1108cdf0e10cSrcweir {
1109cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInOrderBy" );
1110cdf0e10cSrcweir 	return 0;
1111cdf0e10cSrcweir }
1112cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxColumnsInSelect()1113cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxColumnsInSelect(  ) throw(SQLException, RuntimeException)
1114cdf0e10cSrcweir {
1115cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxColumnsInSelect" );
1116cdf0e10cSrcweir 	return 0;
1117cdf0e10cSrcweir }
1118cdf0e10cSrcweir // -------------------------------------------------------------------------
getMaxUserNameLength()1119cdf0e10cSrcweir sal_Int32 SAL_CALL ODatabaseMetaData::getMaxUserNameLength(  ) throw(SQLException, RuntimeException)
1120cdf0e10cSrcweir {
1121cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getMaxUserNameLength" );
1122cdf0e10cSrcweir 	return 0;
1123cdf0e10cSrcweir }
1124cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsResultSetType(sal_Int32 setType)1125cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsResultSetType( sal_Int32 setType ) throw(SQLException, RuntimeException)
1126cdf0e10cSrcweir {
1127cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsResultSetType" );
1128cdf0e10cSrcweir 	switch(setType)
1129cdf0e10cSrcweir 	{
1130cdf0e10cSrcweir         case ResultSetType::FORWARD_ONLY:
1131cdf0e10cSrcweir 			return sal_True;
1132cdf0e10cSrcweir         case ResultSetType::SCROLL_INSENSITIVE:
1133cdf0e10cSrcweir         case ResultSetType::SCROLL_SENSITIVE:
1134cdf0e10cSrcweir 			break;
1135cdf0e10cSrcweir 	}
1136cdf0e10cSrcweir 	return sal_False;
1137cdf0e10cSrcweir }
1138cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsResultSetConcurrency(sal_Int32 setType,sal_Int32)1139cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsResultSetConcurrency( sal_Int32 setType, sal_Int32 /*concurrency*/ ) throw(SQLException, RuntimeException)
1140cdf0e10cSrcweir {
1141cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsResultSetConcurrency" );
1142cdf0e10cSrcweir 	switch(setType)
1143cdf0e10cSrcweir 	{
1144cdf0e10cSrcweir         case ResultSetType::FORWARD_ONLY:
1145cdf0e10cSrcweir 			return sal_True;
1146cdf0e10cSrcweir         case ResultSetType::SCROLL_INSENSITIVE:
1147cdf0e10cSrcweir         case ResultSetType::SCROLL_SENSITIVE:
1148cdf0e10cSrcweir 			break;
1149cdf0e10cSrcweir 	}
1150cdf0e10cSrcweir 	return sal_False;
1151cdf0e10cSrcweir }
1152cdf0e10cSrcweir // -------------------------------------------------------------------------
ownUpdatesAreVisible(sal_Int32)1153cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::ownUpdatesAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException)
1154cdf0e10cSrcweir {
1155cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ownUpdatesAreVisible" );
1156cdf0e10cSrcweir 	return sal_True;
1157cdf0e10cSrcweir }
1158cdf0e10cSrcweir // -------------------------------------------------------------------------
ownDeletesAreVisible(sal_Int32)1159cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::ownDeletesAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException)
1160cdf0e10cSrcweir {
1161cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ownDeletesAreVisible" );
1162cdf0e10cSrcweir 	return sal_True;
1163cdf0e10cSrcweir }
1164cdf0e10cSrcweir // -------------------------------------------------------------------------
ownInsertsAreVisible(sal_Int32)1165cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::ownInsertsAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException)
1166cdf0e10cSrcweir {
1167cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::ownInsertsAreVisible" );
1168cdf0e10cSrcweir 	return sal_True;
1169cdf0e10cSrcweir }
1170cdf0e10cSrcweir // -------------------------------------------------------------------------
othersUpdatesAreVisible(sal_Int32)1171cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::othersUpdatesAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException)
1172cdf0e10cSrcweir {
1173cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::othersUpdatesAreVisible" );
1174cdf0e10cSrcweir 	return sal_True;
1175cdf0e10cSrcweir }
1176cdf0e10cSrcweir // -------------------------------------------------------------------------
othersDeletesAreVisible(sal_Int32)1177cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::othersDeletesAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException)
1178cdf0e10cSrcweir {
1179cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::othersDeletesAreVisible" );
1180cdf0e10cSrcweir 	return sal_True;
1181cdf0e10cSrcweir }
1182cdf0e10cSrcweir // -------------------------------------------------------------------------
othersInsertsAreVisible(sal_Int32)1183cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::othersInsertsAreVisible( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException)
1184cdf0e10cSrcweir {
1185cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::othersInsertsAreVisible" );
1186cdf0e10cSrcweir 	return sal_True;
1187cdf0e10cSrcweir }
1188cdf0e10cSrcweir // -------------------------------------------------------------------------
updatesAreDetected(sal_Int32)1189cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::updatesAreDetected( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException)
1190cdf0e10cSrcweir {
1191cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::updatesAreDetected" );
1192cdf0e10cSrcweir 	return sal_False;
1193cdf0e10cSrcweir }
1194cdf0e10cSrcweir // -------------------------------------------------------------------------
deletesAreDetected(sal_Int32)1195cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::deletesAreDetected( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException)
1196cdf0e10cSrcweir {
1197cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::deletesAreDetected" );
1198cdf0e10cSrcweir 	return sal_False;
1199cdf0e10cSrcweir }
1200cdf0e10cSrcweir // -------------------------------------------------------------------------
insertsAreDetected(sal_Int32)1201cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::insertsAreDetected( sal_Int32 /*setType*/ ) throw(SQLException, RuntimeException)
1202cdf0e10cSrcweir {
1203cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::insertsAreDetected" );
1204cdf0e10cSrcweir 	return sal_False;
1205cdf0e10cSrcweir }
1206cdf0e10cSrcweir // -------------------------------------------------------------------------
supportsBatchUpdates()1207cdf0e10cSrcweir sal_Bool SAL_CALL ODatabaseMetaData::supportsBatchUpdates(  ) throw(SQLException, RuntimeException)
1208cdf0e10cSrcweir {
1209cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::supportsBatchUpdates" );
1210cdf0e10cSrcweir 	return sal_False;
1211cdf0e10cSrcweir }
1212cdf0e10cSrcweir // -------------------------------------------------------------------------
getUDTs(const Any &,const::rtl::OUString &,const::rtl::OUString &,const Sequence<sal_Int32> &)1213cdf0e10cSrcweir Reference< XResultSet > SAL_CALL ODatabaseMetaData::getUDTs( const Any& /*catalog*/, const ::rtl::OUString& /*schemaPattern*/, const ::rtl::OUString& /*typeNamePattern*/, const Sequence< sal_Int32 >& /*types*/ ) throw(SQLException, RuntimeException)
1214cdf0e10cSrcweir {
1215cdf0e10cSrcweir     RTL_LOGFILE_CONTEXT_AUTHOR( aLogger, "file", "Ocke.Janssen@sun.com", "ODatabaseMetaData::getUDTs" );
1216cdf0e10cSrcweir 	return NULL;
1217cdf0e10cSrcweir }
1218cdf0e10cSrcweir 
1219cdf0e10cSrcweir 
1220