summaryrefslogtreecommitdiff
path: root/javaunohelper/source/javaunohelper.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'javaunohelper/source/javaunohelper.cxx')
-rw-r--r--javaunohelper/source/javaunohelper.cxx91
1 files changed, 0 insertions, 91 deletions
diff --git a/javaunohelper/source/javaunohelper.cxx b/javaunohelper/source/javaunohelper.cxx
index 45c93926cbe3..c1afc4aba720 100644
--- a/javaunohelper/source/javaunohelper.cxx
+++ b/javaunohelper/source/javaunohelper.cxx
@@ -25,8 +25,6 @@
#include <uno/mapping.hxx>
#include <cppuhelper/factory.hxx>
-#include <cppuhelper/servicefactory.hxx>
-#include <cppuhelper/component_context.hxx>
#include <com/sun/star/beans/XPropertySet.hpp>
#include <com/sun/star/lang/XMultiServiceFactory.hpp>
@@ -241,93 +239,4 @@ Java_com_sun_star_comp_helper_SharedLibraryLoader_component_1getFactory(
return joSLL_cpp;
}
-/*
- * Class: com_sun_star_comp_helper_RegistryServiceFactory
- * Method: createRegistryServiceFactory
- * Signature: (Ljava/lang/String;Ljava/lang/String;Z)Ljava/lang/Object;
- */
-extern "C" SAL_JNI_EXPORT jobject JNICALL
-Java_com_sun_star_comp_helper_RegistryServiceFactory_createRegistryServiceFactory(
- JNIEnv * pJEnv, SAL_UNUSED_PARAMETER jclass, jstring jWriteRegFile,
- jstring jReadRegFile, jboolean jbReadOnly, jobject loader )
-{
- jobject joRegServiceFac = 0;
-
- try
- {
- OUString aWriteRegFile;
- OUString aReadRegFile;
-
- sal_Bool bReadOnly = jbReadOnly == JNI_FALSE ? sal_False : sal_True;
-
- if (jReadRegFile) {
- const jchar* pjReadRegFile = pJEnv->GetStringChars(jReadRegFile, NULL);
- aReadRegFile = OUString(pjReadRegFile);
- pJEnv->ReleaseStringChars(jReadRegFile, pjReadRegFile);
- }
-
- if (jWriteRegFile) {
- const jchar * pjWriteRegFile = pJEnv->GetStringChars(jWriteRegFile, NULL);
- aWriteRegFile = OUString(pjWriteRegFile);
- pJEnv->ReleaseStringChars(jWriteRegFile, pjWriteRegFile);
- }
-
- // bootstrap
- Reference< lang::XMultiServiceFactory > rMSFac;
- if (aReadRegFile.isEmpty())
- rMSFac = ::cppu::createRegistryServiceFactory( aWriteRegFile, bReadOnly);
- else
- rMSFac = ::cppu::createRegistryServiceFactory(aWriteRegFile, aReadRegFile, bReadOnly);
-
- Reference< beans::XPropertySet > xProps(
- rMSFac, UNO_QUERY_THROW );
- Reference< XComponentContext > xContext(
- xProps->getPropertyValue( OUSTR("DefaultContext") ), UNO_QUERY_THROW );
-
- // create vm access
- ::rtl::Reference< ::jvmaccess::UnoVirtualMachine > vm_access(
- ::javaunohelper::create_vm_access( pJEnv, loader ) );
- // wrap vm singleton entry
- xContext = ::javaunohelper::install_vm_singleton( xContext, vm_access );
- rMSFac.set( xContext->getServiceManager(), UNO_QUERY_THROW );
-
- // get uno envs
- OUString aCurrentEnv(RTL_CONSTASCII_USTRINGPARAM(CPPU_CURRENT_LANGUAGE_BINDING_NAME));
- OUString java_env_name = OUSTR(UNO_LB_JAVA);
- Environment java_env, curr_env;
- uno_getEnvironment((uno_Environment **)&curr_env, aCurrentEnv.pData, NULL);
- uno_getEnvironment( (uno_Environment **)&java_env, java_env_name.pData, vm_access.get() );
-
- Mapping curr_java(curr_env.get(), java_env.get());
- if (! curr_java.is())
- {
- throw RuntimeException(
- OUSTR("no C++ <-> Java mapping available!"), Reference< XInterface >() );
- }
-
- jobject joGlobalRegServiceFac =
- (jobject)curr_java.mapInterface(
- rMSFac.get(),
- getCppuType((Reference< lang::XMultiServiceFactory > *)0) );
- joRegServiceFac = pJEnv->NewLocalRef( joGlobalRegServiceFac );
- pJEnv->DeleteGlobalRef(joGlobalRegServiceFac);
- }
- catch (Exception & exc)
- {
- jclass c = pJEnv->FindClass( "com/sun/star/uno/RuntimeException" );
- if (0 != c)
- {
- OString cstr( ::rtl::OUStringToOString(
- exc.Message, RTL_TEXTENCODING_JAVA_UTF8 ) );
- OSL_TRACE( __FILE__": forwarding Exception: %s", cstr.getStr() );
- pJEnv->ThrowNew( c, cstr.getStr() );
- }
- return 0;
- }
-
- OSL_TRACE("javaunohelper.cxx: object %i", joRegServiceFac);
-
- return joRegServiceFac;
-}
-
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */