User: rt Date: 2007-11-09 08:18:56+0000 Modified: dba/dbaccess/source/filter/xml/xmlfilter.cxx
Log: INTEGRATION: CWS dbodf12import (1.16.32); FILE MERGED 2007/11/01 09:13:31 oj 1.16.32.1: #i83190# implement odf12 importer File Changes: Directory: /dba/dbaccess/source/filter/xml/ =========================================== File [changed]: xmlfilter.cxx Url: http://dba.openoffice.org/source/browse/dba/dbaccess/source/filter/xml/xmlfilter.cxx?r1=1.16&r2=1.17 Delta lines: +86 -32 --------------------- --- xmlfilter.cxx 2007-09-26 14:45:36+0000 1.16 +++ xmlfilter.cxx 2007-11-09 08:18:54+0000 1.17 @@ -129,6 +129,7 @@ #ifndef _TOOLKIT_HELPER_VCLUNOHELPER_HXX_ #include <toolkit/helper/vclunohelper.hxx> #endif +#include <tools/diagnose_ex.h> using namespace ::com::sun::star; @@ -304,6 +305,7 @@ ODBFilter::ODBFilter( const uno::Reference< XMultiServiceFactory >& _rxMSF ) :SvXMLImport(_rxMSF) + ,m_bNewFormat(false) { DBG_CTOR(ODBFilter,NULL); @@ -566,6 +568,8 @@ { XML_NAMESPACE_DB, XML_REPORTS, XML_TOK_REPORTS}, { XML_NAMESPACE_DB, XML_QUERIES, XML_TOK_QUERIES}, { XML_NAMESPACE_DB, XML_TABLES, XML_TOK_TABLES}, + { XML_NAMESPACE_DB, XML_TABLE_REPRESENTATIONS, XML_TOK_TABLES}, + { XML_NAMESPACE_DB, XML_SCHEMA_DEFINITION, XML_TOK_SCHEMA_DEFINITION}, XML_TOKEN_MAP_END }; m_pDatabaseElemTokenMap.reset(new SvXMLTokenMap( aElemTokenMap )); @@ -602,6 +606,21 @@ { XML_NAMESPACE_DB, XML_DELIMITER, XML_TOK_DELIMITER}, { XML_NAMESPACE_DB, XML_DATA_SOURCE_SETTINGS, XML_TOK_DATA_SOURCE_SETTINGS}, { XML_NAMESPACE_DB, XML_FONT_CHARSET, XML_TOK_FONT_CHARSET}, + // db odf 12 + { XML_NAMESPACE_DB, XML_CONNECTION_DATA, XML_TOK_CONNECTION_DATA}, + { XML_NAMESPACE_DB, XML_DATABASE_DESCRIPTION, XML_TOK_DATABASE_DESCRIPTION}, + { XML_NAMESPACE_DB, XML_COMPOUND_DATABASE, XML_TOK_COMPOUND_DATABASE}, + { XML_NAMESPACE_XLINK, XML_HREF, XML_TOK_DB_HREF}, + { XML_NAMESPACE_DB, XML_MEDIA_TYPE, XML_TOK_MEDIA_TYPE}, + { XML_NAMESPACE_DB, XML_TYPE, XML_TOK_DB_TYPE}, + { XML_NAMESPACE_DB, XML_HOSTNAME, XML_TOK_HOSTNAME}, + { XML_NAMESPACE_DB, XML_PORT, XML_TOK_PORT}, + { XML_NAMESPACE_DB, XML_LOCAL_SOCKET, XML_TOK_LOCAL_SOCKET}, + { XML_NAMESPACE_DB, XML_DATABASE_NAME, XML_TOK_DATABASE_NAME}, + { XML_NAMESPACE_DB, XML_DRIVER_SETTINGS, XML_TOK_DRIVER_SETTINGS}, + { XML_NAMESPACE_DB, XML_JAVA_CLASSPATH, XML_TOK_JAVA_CLASSPATH}, + { XML_NAMESPACE_DB, XML_CHARACTER_SET, XML_TOK_CHARACTER_SET}, + { XML_NAMESPACE_DB, XML_APPLICATION_CONNECTION_SETTINGS,XML_TOK_APPLICATION_CONNECTION_SETTINGS}, XML_TOKEN_MAP_END }; m_pDataSourceElemTokenMap.reset(new SvXMLTokenMap( aElemTokenMap )); @@ -617,6 +636,8 @@ { { XML_NAMESPACE_DB, XML_USER_NAME, XML_TOK_USER_NAME}, { XML_NAMESPACE_DB, XML_IS_PASSWORD_REQUIRED, XML_TOK_IS_PASSWORD_REQUIRED}, + { XML_NAMESPACE_DB, XML_USE_SYSTEM_USER, XML_TOK_USE_SYSTEM_USER}, + { XML_NAMESPACE_DB, XML_LOGIN_TIMEOUT, XML_TOK_LOGIN_TIMEOUT}, XML_TOKEN_MAP_END }; m_pLoginElemTokenMap.reset(new SvXMLTokenMap( aElemTokenMap )); @@ -624,6 +645,21 @@ return *m_pLoginElemTokenMap; } // ----------------------------------------------------------------------------- +const SvXMLTokenMap& ODBFilter::GetDatabaseDescriptionElemTokenMap() const +{ + if ( !m_pDatabaseDescriptionElemTokenMap.get() ) + { + static __FAR_DATA SvXMLTokenMapEntry aElemTokenMap[]= + { + { XML_NAMESPACE_DB, XML_FILE_BASED_DATABASE, XML_TOK_FILE_BASED_DATABASE}, + { XML_NAMESPACE_DB, XML_SERVER_DATABASE, XML_TOK_SERVER_DATABASE}, + XML_TOKEN_MAP_END + }; + m_pDatabaseDescriptionElemTokenMap.reset(new SvXMLTokenMap( aElemTokenMap )); + } + return *m_pDatabaseDescriptionElemTokenMap; +} +// ----------------------------------------------------------------------------- const SvXMLTokenMap& ODBFilter::GetDataSourceInfoElemTokenMap() const { if ( !m_pDataSourceInfoElemTokenMap.get() ) @@ -661,6 +697,7 @@ { XML_NAMESPACE_DB, XML_QUERY_COLLECTION, XML_TOK_QUERY_COLLECTION}, { XML_NAMESPACE_DB, XML_QUERY, XML_TOK_QUERY}, { XML_NAMESPACE_DB, XML_TABLE, XML_TOK_TABLE}, + { XML_NAMESPACE_DB, XML_TABLE_REPRESENTATION, XML_TOK_TABLE}, { XML_NAMESPACE_DB, XML_COLUMN, XML_TOK_COLUMN}, XML_TOKEN_MAP_END }; @@ -724,6 +761,7 @@ { XML_NAMESPACE_DB, XML_VISIBILITY, XML_TOK_COLUMN_VISIBILITY }, { XML_NAMESPACE_DB, XML_DEFAULT_VALUE, XML_TOK_COLUMN_DEFAULT_VALUE}, { XML_NAMESPACE_DB, XML_TYPE_NAME, XML_TOK_COLUMN_TYPE_NAME }, + { XML_NAMESPACE_DB, XML_VISIBLE, XML_TOK_COLUMN_VISIBLE }, XML_TOKEN_MAP_END }; m_pColumnElemTokenMap.reset(new SvXMLTokenMap( aElemTokenMap )); @@ -766,5 +804,21 @@ return m_xColumnStylesPropertySetMapper; } // ----------------------------------------------------------------------------- +void ODBFilter::setPropertyInfo() +{ + Reference<XPropertySet> xDataSource(getDataSource()); + if ( !m_aInfoSequence.empty() && xDataSource.is() ) + { + try + { + xDataSource->setPropertyValue(PROPERTY_INFO,makeAny(Sequence<PropertyValue>(&(*m_aInfoSequence.begin()),m_aInfoSequence.size()))); + } + catch(Exception) + { + DBG_UNHANDLED_EXCEPTION(); + } + } +} +// ----------------------------------------------------------------------------- }// dbaxml // ----------------------------------------------------------------------------- --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
