User: kz      
Date: 2008-04-03 16:50:07+0000
Modified:
   dba/dbaccess/source/ui/misc/dsntypes.cxx

Log:
 INTEGRATION: CWS dbodf11 (1.38.20); FILE MERGED
 2008/04/01 11:11:50 oj 1.38.20.2: RESYNC: (1.38-1.39); FILE MERGED
 2008/01/31 07:47:46 oj 1.38.20.1: #i85757# as odf 1.2 form

File Changes:

Directory: /dba/dbaccess/source/ui/misc/
========================================

File [changed]: dsntypes.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/dbaccess/source/ui/misc/dsntypes.cxx?r1=1.39&r2=1.40
Delta lines:  +51 -1
--------------------
--- dsntypes.cxx        2008-03-05 17:05:49+0000        1.39
+++ dsntypes.cxx        2008-04-03 16:50:04+0000        1.40
@@ -70,6 +70,7 @@
 #ifndef _DBAUI_MODULE_DBU_HXX_
 #include "moduledbu.hxx"
 #endif
+#include <comphelper/documentconstants.hxx>
 //.........................................................................
 namespace dbaui
 {
@@ -251,6 +252,55 @@
        return _rDsn.Copy(sPrefix.Len());
 }
 // 
-----------------------------------------------------------------------------
+String ODsnTypeCollection::getMediaType(DATASOURCE_TYPE _eType) const
+{
+    String sRet;
+    switch (_eType)
+       {
+               case DST_DBASE:
+            sRet = 
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("application/dbase"));
+            break;
+               case DST_FLAT:
+            sRet = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("text/csv"));
+            break;
+               case DST_CALC:
+            sRet = MIMETYPE_OASIS_OPENDOCUMENT_SPREADSHEET;
+            break;
+               case DST_MSACCESS:
+        case DST_MSACCESS_2007:
+            sRet = 
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("application/msaccess"));
+                       break;
+        default:
+            break;
+    }
+    return sRet;
+}
+// 
-----------------------------------------------------------------------------
+String ODsnTypeCollection::getDatasourcePrefixFromMediaType(const String& 
_sMediaType,const String& _sExtension)
+{
+    ::rtl::OUString sURL(RTL_CONSTASCII_USTRINGPARAM("sdbc:"));
+    if ( _sMediaType.EqualsIgnoreCaseAscii( "text/csv" ) )
+    {
+        sURL += ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("flat:"));
+    }
+    else if ( _sMediaType.EqualsIgnoreCaseAscii( "application/dbase" ) )
+    {
+        sURL += ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("dbase:"));
+    }
+    else if ( _sMediaType.EqualsIgnoreCaseAscii( 
MIMETYPE_OASIS_OPENDOCUMENT_SPREADSHEET_ASCII ) )
+    {
+        sURL += ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("calc:"));
+    }
+    else if ( _sMediaType.EqualsIgnoreCaseAscii( "application/msaccess" ) )
+    {
+        if ( _sExtension.EqualsIgnoreCaseAscii( "mdb" ) )
+            sURL += 
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ado:access:PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA
 SOURCE="));
+        else
+            sURL += 
::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("ado:access:Provider=Microsoft.ACE.OLEDB.12.0;DATA
 SOURCE="));
+    }
+    return sURL;
+}
+// 
-----------------------------------------------------------------------------
 void ODsnTypeCollection::extractHostNamePort(const String& _rDsn,String& 
_sDatabaseName,String& _rsHostname,sal_Int32& _nPortNumber) const
 {
        DATASOURCE_TYPE eType = getType(_rDsn);
@@ -566,7 +616,7 @@
 // 
-----------------------------------------------------------------------------
 String ODsnTypeCollection::getTypeExtension(DATASOURCE_TYPE _eType) const
 {
-       StringVector::size_type nPos = 
static_cast<sal_Int16>(_eType-DST_USERDEFINE1);
+       StringVector::size_type nPos = 
static_cast<sal_uInt16>(_eType-DST_USERDEFINE1);
        return nPos < m_aUserExtensions.size() ? m_aUserExtensions[nPos] : 
String();
 }
 //-------------------------------------------------------------------------




---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to