User: kz      
Date: 2008-06-25 12:30:29+0000
Modified:
   dba/dbaccess/source/core/dataaccess/ModelImpl.cxx

Log:
 INTEGRATION: CWS dba30d (1.28.8); FILE MERGED
 2008/06/16 04:54:57 fs 1.28.8.5: +m_bHasMacroStorages / hasMacroStorages()
 2008/06/10 06:40:23 fs 1.28.8.4: RESYNC: (1.28-1.30); FILE MERGED
 2008/05/30 10:57:47 oj 1.28.8.3: #i78725# add new config entry
 2008/05/22 11:27:42 fs 1.28.8.2: slight refactoring during #i88576#
 2008/05/22 07:54:22 fs 1.28.8.1: #i88576# a data source which is registered 
should expose its registration name as Name property, not its URL

File Changes:

Directory: /dba/dbaccess/source/core/dataaccess/
================================================

File [changed]: ModelImpl.cxx
Url: 
http://dba.openoffice.org/source/browse/dba/dbaccess/source/core/dataaccess/ModelImpl.cxx?r1=1.30&r2=1.31
Delta lines:  +21 -13
---------------------
--- ModelImpl.cxx       2008-06-09 08:50:23+0000        1.30
+++ ModelImpl.cxx       2008-06-25 12:30:26+0000        1.31
@@ -298,9 +298,8 @@
 //============================================================
 DBG_NAME(ODatabaseModelImpl)
 //--------------------------------------------------------------------------
-ODatabaseModelImpl::ODatabaseModelImpl(const Reference< XMultiServiceFactory 
>& _rxFactory
-                                       , const Reference< XModel>& _xModel)
-            :m_xModel(_xModel)
+ODatabaseModelImpl::ODatabaseModelImpl( const Reference< XMultiServiceFactory 
>& _rxFactory, ODatabaseContext& _rDBContext )
+            :m_xModel()
             ,m_xDataSource()
             ,m_pStorageAccess( NULL )
             ,m_xMutex( new SharedMutex )
@@ -308,7 +307,9 @@
             ,m_aStorages()
             ,m_aMacroMode( *this )
                        ,m_nImposedMacroExecMode( MacroExecMode::NEVER_EXECUTE )
+                       ,m_pDBContext( &_rDBContext )
             ,m_bHasAnyObjectWithMacros( false )
+            ,m_bHasMacroStorages( false )
             ,m_bModificationLock( false )
                        ,m_aContext( _rxFactory )
                        ,m_nLoginTimeout(0)
@@ -318,7 +319,6 @@
                        ,m_bModified(sal_False)
                        ,m_bDocumentReadOnly(sal_False)
             ,m_bDisposingSubStorages( sal_False )
-                       ,m_pDBContext(NULL)
                        ,m_pSharedConnectionManager(NULL)
                        ,m_refCount(0)
                        ,m_nControllerLockCount(0)
@@ -335,7 +335,7 @@
 ODatabaseModelImpl::ODatabaseModelImpl(
                                        const ::rtl::OUString& 
_rRegistrationName,
                                        const Reference< XMultiServiceFactory 
>& _rxFactory,
-                                       ODatabaseContext* _pDBContext
+                                       ODatabaseContext& _rDBContext
                                        )
             :m_xModel()
             ,m_xDataSource()
@@ -345,7 +345,9 @@
             ,m_aStorages()
             ,m_aMacroMode( *this )
                        ,m_nImposedMacroExecMode( MacroExecMode::NEVER_EXECUTE )
+                       ,m_pDBContext( &_rDBContext )
             ,m_bHasAnyObjectWithMacros( false )
+            ,m_bHasMacroStorages( false )
             ,m_bModificationLock( false )
                        ,m_aContext( _rxFactory )
             ,m_sName(_rRegistrationName)
@@ -356,14 +358,11 @@
                        ,m_bModified(sal_False)
                        ,m_bDocumentReadOnly(sal_False)
             ,m_bDisposingSubStorages( sal_False )
-                       ,m_pDBContext(_pDBContext)
                        ,m_pSharedConnectionManager(NULL)
             ,m_refCount(0)
                        ,m_nControllerLockCount(0)
 {
        DBG_CTOR(ODatabaseModelImpl,NULL);
-       // adjust our readonly flag
-
        impl_construct_nothrow();
 }
 
@@ -1026,6 +1025,7 @@
         AsciiPropertyValue( "NoNameLengthLimit",          makeAny( 
(sal_Bool)sal_False ) ),
         AsciiPropertyValue( "AppendTableAliasName",       makeAny( 
(sal_Bool)sal_False ) ),
         AsciiPropertyValue( "GenerateASBeforeCorrelationName",  makeAny( 
(sal_Bool)sal_True ) ),
+        AsciiPropertyValue( "ColumnAliasInOrderBy",       makeAny( 
(sal_Bool)sal_True ) ),
         AsciiPropertyValue( "EnableSQL92Check",           makeAny( 
(sal_Bool)sal_False ) ),
         AsciiPropertyValue( "BooleanComparisonMode",      makeAny( 
BooleanComparisonMode::EQUAL_INTEGER ) ),
         AsciiPropertyValue( "TableTypeFilterMode",        makeAny( 
(sal_Int32)3 ) ),
@@ -1224,10 +1224,15 @@
                 m_pDBContext->registerPrivate( _rDocumentURL, this );
         }
 
+        // if we do not have a name, yet (i.e. are not registered at the 
database context),
+        // then use the URL as name
+        if ( !m_sName.getLength() )
+        {
                INetURLObject aURL( _rDocumentURL );
                if ( aURL.GetProtocol() != INET_PROT_NOT_VALID )
                        m_sName = _rDocumentURL;
        }
+       }
 
     // remember both
     m_sDocFileLocation = _rDocumentLocation.getLength() ? _rDocumentLocation : 
_rDocumentURL;
@@ -1309,7 +1314,10 @@
 {
     // does our root storage contain macros?
     if ( ::sfx2::DocumentMacroMode::storageHasMacros( m_xDocumentStorage ) )
+    {
+        const_cast< ODatabaseModelImpl* >( this )->m_bHasMacroStorages = true;
         return true;
+    }
 
     // do we have forms or reports with macros?
     if  (   lcl_hasObjectsWithMacros_nothrow( const_cast< ODatabaseModelImpl& 
>( *this ), E_FORM )




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

Reply via email to