diff options
author | Ocke Janssen <oj@openoffice.org> | 2000-12-06 12:43:08 +0000 |
---|---|---|
committer | Ocke Janssen <oj@openoffice.org> | 2000-12-06 12:43:08 +0000 |
commit | 91bdc3561367de15585e7f3ca46c821732d67b50 (patch) | |
tree | f14efb966d9dc051b5bc43840f6c1dd6e4d367c7 /connectivity/source | |
parent | 908f4915add618924e04a3f280e0974d47020beb (diff) |
#81395# instanciate the jvm only when needed
Diffstat (limited to 'connectivity/source')
-rw-r--r-- | connectivity/source/drivers/jdbc/JDriver.cxx | 19 | ||||
-rw-r--r-- | connectivity/source/drivers/jdbc/Object.cxx | 28 |
2 files changed, 25 insertions, 22 deletions
diff --git a/connectivity/source/drivers/jdbc/JDriver.cxx b/connectivity/source/drivers/jdbc/JDriver.cxx index 6da82a72f3..91627f5e28 100644 --- a/connectivity/source/drivers/jdbc/JDriver.cxx +++ b/connectivity/source/drivers/jdbc/JDriver.cxx @@ -2,9 +2,9 @@ * * $RCSfile: JDriver.cxx,v $ * - * $Revision: 1.5 $ + * $Revision: 1.6 $ * - * last change: $Author: oj $ $Date: 2000-11-27 09:25:22 $ + * last change: $Author: oj $ $Date: 2000-12-06 13:43:08 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -93,11 +93,11 @@ using namespace ::com::sun::star::lang; java_sql_Driver::java_sql_Driver(const Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxFactory) : java_lang_Object(_rxFactory) { - SDBThreadAttach t; OSL_ENSHURE(t.pEnv,"Java Enviroment gelöscht worden!"); - // this object is not the right one - if(t.pEnv) - t.pEnv->DeleteGlobalRef( object ); - object = 0; +// SDBThreadAttach t; OSL_ENSHURE(t.pEnv,"Java Enviroment gelöscht worden!"); +// // this object is not the right one +// if(t.pEnv) +// t.pEnv->DeleteGlobalRef( object ); +// object = 0; } // -------------------------------------------------------------------------------- jclass java_sql_Driver::theClass = 0; @@ -245,7 +245,10 @@ sal_Bool SAL_CALL java_sql_Driver::acceptsURL( const ::rtl::OUString& url ) thro // I feel responsible for all jdbc url's if(!url.compareTo(::rtl::OUString::createFromAscii("jdbc:"),5)) { - return sal_True; + SDBThreadAttach t; OSL_ENSHURE(t.pEnv,"Java Enviroment gelöscht worden!"); + if(!object) + object = java_sql_DriverManager::getDriver(url); + return object != NULL; } return sal_False; } diff --git a/connectivity/source/drivers/jdbc/Object.cxx b/connectivity/source/drivers/jdbc/Object.cxx index 3d6f68d6a1..56574801fa 100644 --- a/connectivity/source/drivers/jdbc/Object.cxx +++ b/connectivity/source/drivers/jdbc/Object.cxx @@ -2,9 +2,9 @@ * * $RCSfile: Object.cxx,v $ * - * $Revision: 1.2 $ + * $Revision: 1.3 $ * - * last change: $Author: oj $ $Date: 2000-11-22 14:44:26 $ + * last change: $Author: oj $ $Date: 2000-12-06 13:43:08 $ * * The Contents of this file are made available subject to the terms of * either of the following licenses @@ -285,18 +285,18 @@ jclass java_lang_Object::getMyClass() java_lang_Object::java_lang_Object(const Reference<XMultiServiceFactory >& _rxFactory) : object( 0 ),m_xFactory(_rxFactory) { - SDBThreadAttach t(m_xFactory); - if( !t.pEnv ) - return; - - // Java-Call fuer den Konstruktor absetzen - // temporaere Variable initialisieren - char * cSignature = "()V"; - jclass tempClass; - jmethodID mID = t.pEnv->GetMethodID( getMyClass(), "<init>", cSignature ); - tempClass = (jclass)t.pEnv->NewObjectA( getMyClass(), mID, NULL ); - saveRef( t.pEnv, tempClass ); - t.pEnv->DeleteLocalRef( tempClass ); +// SDBThreadAttach t(m_xFactory); +// if( !t.pEnv ) +// return; +// +// // Java-Call fuer den Konstruktor absetzen +// // temporaere Variable initialisieren +// char * cSignature = "()V"; +// jclass tempClass; +// jmethodID mID = t.pEnv->GetMethodID( getMyClass(), "<init>", cSignature ); +// tempClass = (jclass)t.pEnv->NewObjectA( getMyClass(), mID, NULL ); +// saveRef( t.pEnv, tempClass ); +// t.pEnv->DeleteLocalRef( tempClass ); } // der protected-Konstruktor fuer abgeleitete Klassen |