diff options
author | Bjoern Michaelsen <bjoern.michaelsen@canonical.com> | 2013-04-18 18:26:28 +0200 |
---|---|---|
committer | Bjoern Michaelsen <bjoern.michaelsen@canonical.com> | 2013-04-23 22:20:31 +0200 |
commit | b9337e22ce1dbf2eba0e8c8db294ae99f4111f91 (patch) | |
tree | 53ee1bd3dfd213815a21579151983cb997922b05 /jvmaccess | |
parent | f4e1642a1761d5eab6ccdd89928869c2b2f1528a (diff) |
execute move of global headers
see https://gerrit.libreoffice.org/#/c/3367/
and Change-Id: I00c96fa77d04b33a6f8c8cd3490dfcd9bdc9e84a for details
Change-Id: I199a75bc4042af20817265d5ef85b1134a96ff5a
Diffstat (limited to 'jvmaccess')
-rw-r--r-- | jvmaccess/Module_jvmaccess.mk | 1 | ||||
-rw-r--r-- | jvmaccess/Package_inc.mk | 17 | ||||
-rw-r--r-- | jvmaccess/inc/jvmaccess/classpath.hxx | 139 | ||||
-rw-r--r-- | jvmaccess/inc/jvmaccess/jvmaccessdllapi.h | 24 | ||||
-rw-r--r-- | jvmaccess/inc/jvmaccess/unovirtualmachine.hxx | 104 | ||||
-rw-r--r-- | jvmaccess/inc/jvmaccess/virtualmachine.hxx | 151 |
6 files changed, 0 insertions, 436 deletions
diff --git a/jvmaccess/Module_jvmaccess.mk b/jvmaccess/Module_jvmaccess.mk index 61fe9be1aa9c..67e18f65e3b1 100644 --- a/jvmaccess/Module_jvmaccess.mk +++ b/jvmaccess/Module_jvmaccess.mk @@ -12,7 +12,6 @@ $(eval $(call gb_Module_Module,jvmaccess)) ifeq ($(SOLAR_JAVA),TRUE) $(eval $(call gb_Module_add_targets,jvmaccess,\ - Package_inc \ )) $(eval $(call gb_Module_add_targets,jvmaccess,\ diff --git a/jvmaccess/Package_inc.mk b/jvmaccess/Package_inc.mk deleted file mode 100644 index df362447eae6..000000000000 --- a/jvmaccess/Package_inc.mk +++ /dev/null @@ -1,17 +0,0 @@ -# -*- Mode: makefile-gmake; tab-width: 4; indent-tabs-mode: t -*- -# -# This file is part of the LibreOffice project. -# -# This Source Code Form is subject to the terms of the Mozilla Public -# License, v. 2.0. If a copy of the MPL was not distributed with this -# file, You can obtain one at http://mozilla.org/MPL/2.0/. -# - -$(eval $(call gb_Package_Package,jvmaccess_inc,$(SRCDIR)/jvmaccess/inc/jvmaccess)) - -$(eval $(call gb_Package_add_file,jvmaccess_inc,inc/jvmaccess/classpath.hxx,classpath.hxx)) -$(eval $(call gb_Package_add_file,jvmaccess_inc,inc/jvmaccess/jvmaccessdllapi.h,jvmaccessdllapi.h)) -$(eval $(call gb_Package_add_file,jvmaccess_inc,inc/jvmaccess/unovirtualmachine.hxx,unovirtualmachine.hxx)) -$(eval $(call gb_Package_add_file,jvmaccess_inc,inc/jvmaccess/virtualmachine.hxx,virtualmachine.hxx)) - -# vim:set noet sw=4 ts=4: diff --git a/jvmaccess/inc/jvmaccess/classpath.hxx b/jvmaccess/inc/jvmaccess/classpath.hxx deleted file mode 100644 index 1cc8d83ab348..000000000000 --- a/jvmaccess/inc/jvmaccess/classpath.hxx +++ /dev/null @@ -1,139 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_JVMACCESS_CLASSPATH_HXX -#define INCLUDED_JVMACCESS_CLASSPATH_HXX - -#include "jvmaccessdllapi.h" -#include "sal/config.h" -#include "com/sun/star/uno/Reference.hxx" - -#include "jni.h" - -namespace com { namespace sun { namespace star { namespace uno { - class XComponentContext; -} } } } - -namespace jvmaccess { - -/** - Helper functions for class path handling. -*/ -class JVMACCESS_DLLPUBLIC ClassPath { -public: - /** - translates a class path into a java.net.URL[] instance. - - @param context - a component context; must not be null. - - @param environment - a JNI environment; must not be null. - - @param classPath - a list of zero or more internal (see the - com.sun.star.uri.ExternalUriReferenceTranslator service) URI references, - where any space characters (U+0020) are ignored (and, in particular, - separate adjacent URI references). Any vnd.sun.star.expand URL - references in the list are expanded using the - com.sun.star.util.theMacroExpander singleton of the given context. - - @returns - a local reference to a java.net.URL[] instance containing the external - (see the com.sun.star.uri.ExternalUriReferenceTranslator service) - equivalents of all the URI references in the given classPath. If null, a - (still pending) JNI exception occurred. - - @throws com::sun::star::uno::RuntimeException - */ - static inline ::jobjectArray - translateToUrls( - ::com::sun::star::uno::Reference< - ::com::sun::star::uno::XComponentContext > const & context, - ::JNIEnv * environment, OUString const & classPath) - { - return - static_cast< ::jobjectArray >( - doTranslateToUrls(context, environment, classPath)); - } - - /** - loads a class via a java.net.URLClassLoader. - - @param context - a component context; must not be null. - - @param environment - a JNI environment; must not be null. - - @param classPath - a list of zero or more internal (see the - com.sun.star.uri.ExternalUriReferenceTranslator service) URI references, - where any space characters (U+0020) are ignored (and, in particular, - separate adjacent URI references). Any vnd.sun.star.expand URL - references in the list are expanded using the - com.sun.star.util.theMacroExpander singleton of the given context. - - @param name - the Java binary name of the class to load. - - @returns - a local reference to a java.lang.Class instance. If null, a (still - pending) JNI exception occurred. - - @throws com::sun::star::uno::RuntimeException - */ - static inline ::jclass loadClass( - ::com::sun::star::uno::Reference< - ::com::sun::star::uno::XComponentContext > const & context, - ::JNIEnv * environment, OUString const & classPath, - OUString const & name) - { - return - static_cast< ::jclass >( - doLoadClass(context, environment, classPath, name)); - } - -private: - ClassPath(); // not defined - ClassPath(ClassPath &); // not defined - ~ClassPath(); // not defined - void operator =(ClassPath &); // not defined - - // Functions that replace JNIEnv, jobjectArray, and jclass with void *, so - // that their mangled C++ names do not depend on the JDK version used at - // compile time: - - static void * doTranslateToUrls( - ::com::sun::star::uno::Reference< - ::com::sun::star::uno::XComponentContext > const & context, - void * environment, OUString const & classPath); - - static void * doLoadClass( - ::com::sun::star::uno::Reference< - ::com::sun::star::uno::XComponentContext > const & context, - void * environment, OUString const & classPath, - OUString const & name); -}; - -} - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/jvmaccess/inc/jvmaccess/jvmaccessdllapi.h b/jvmaccess/inc/jvmaccess/jvmaccessdllapi.h deleted file mode 100644 index 0f6651b5dbf8..000000000000 --- a/jvmaccess/inc/jvmaccess/jvmaccessdllapi.h +++ /dev/null @@ -1,24 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - */ - -#ifndef INCLUDED_JVMACCESS_JVMACCESSDLLAPI_H -#define INCLUDED_JVMACCESS_JVMACCESSDLLAPI_H - -#include <sal/types.h> - -#if defined JVMACCESS_DLLIMPLEMENTATION -# define JVMACCESS_DLLPUBLIC SAL_DLLPUBLIC_EXPORT -#else -# define JVMACCESS_DLLPUBLIC SAL_DLLPUBLIC_IMPORT -#endif -#define JVMACCESS_DLLPRIVATE SAL_DLLPRIVATE - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/jvmaccess/inc/jvmaccess/unovirtualmachine.hxx b/jvmaccess/inc/jvmaccess/unovirtualmachine.hxx deleted file mode 100644 index 4d618d14d863..000000000000 --- a/jvmaccess/inc/jvmaccess/unovirtualmachine.hxx +++ /dev/null @@ -1,104 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_JVMACCESS_UNOVIRTUALMACHINE_HXX -#define INCLUDED_JVMACCESS_UNOVIRTUALMACHINE_HXX - -#include "jvmaccessdllapi.h" -#include "sal/config.h" -#include "salhelper/simplereferenceobject.hxx" -#include "rtl/ref.hxx" - -namespace jvmaccess { - -class VirtualMachine; - -/** An encapsulating wrapper around a Java virtual machine and an appropriate - UNO class loader. - */ -class JVMACCESS_DLLPUBLIC UnoVirtualMachine: public salhelper::SimpleReferenceObject { -public: - /** An exception indicating failure to create a UnoVirtualMachine. - */ - class JVMACCESS_DLLPUBLIC CreationException - { - public: - CreationException(); - - CreationException(CreationException const &); - - virtual ~CreationException(); - - CreationException & operator =(CreationException const &); - }; - - /** Create a wrapper around a Java virtual machine and an appropriate UNO - class loader. - - @param virtualMachine - A Java virtual machine wrapper. Must not be null. - - @param classLoader - A local or global JNI reference, relative to the given virtualMachine, - to an appropriate UNO class loader instance. Must not be null. This - parameter should be of type jobject, not void *, but the exact - definition of jobject is different for different JDK versions, so that - the mangled C++ name of the constructor would depend on the JDK version - used at compile time. - - @exception CreationException - Thrown in case creation fails (due to a JNI problem). - */ - UnoVirtualMachine( - rtl::Reference< jvmaccess::VirtualMachine > const & virtualMachine, - void * classLoader); - - /** Get the Java virtual machine wrapper. - - @return - The Java virtual machine wrapper. Will never be null. - */ - rtl::Reference< jvmaccess::VirtualMachine > getVirtualMachine() const; - - /** Get the UNO class loader. - - @return - A global JNI reference to the UNO class loader. (The JNI reference must - not be deleted by client code.) Will never be null. This should be of - type jobject, not void *, but the exact definition of jobject is - different for different JDK versions, so that the mangled C++ name of - the function would depend on the JDK version used at compile time. - */ - void * getClassLoader() const; - -private: - UnoVirtualMachine(UnoVirtualMachine &); // not defined - void operator =(UnoVirtualMachine &); // not defined - - virtual ~UnoVirtualMachine(); - - rtl::Reference< jvmaccess::VirtualMachine > m_virtualMachine; - void * m_classLoader; -}; - -} - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/jvmaccess/inc/jvmaccess/virtualmachine.hxx b/jvmaccess/inc/jvmaccess/virtualmachine.hxx deleted file mode 100644 index 57ac5ead39f4..000000000000 --- a/jvmaccess/inc/jvmaccess/virtualmachine.hxx +++ /dev/null @@ -1,151 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_JVMACCESS_VIRTUALMACHINE_HXX -#define INCLUDED_JVMACCESS_VIRTUALMACHINE_HXX - -#include "jvmaccessdllapi.h" -#include "rtl/ref.hxx" -#include "salhelper/simplereferenceobject.hxx" - -#include "jni.h" - -namespace jvmaccess { - -/** An encapsulating wrapper around a Java virtual machine. - */ -class JVMACCESS_DLLPUBLIC VirtualMachine: public salhelper::SimpleReferenceObject -{ -public: - /** A helper to attach a thread to a Java virtual machine. - - @descr - Upon construction of a guard the current thread is attached to the - virtual machine, and upon destruction of the guard the thread is - detached again. For any one thread, multiple instances of this class - may be used in a stack-like fashion (care is taken to only really - detach the thread from the virtual machine upon destruction of the guard - at the bottom of the stack). - */ - class JVMACCESS_DLLPUBLIC AttachGuard - { - public: - /** An exception indicating failure to create an AttachGuard. - */ - class JVMACCESS_DLLPUBLIC CreationException - { - public: - CreationException(); - - CreationException(CreationException const &); - - virtual ~CreationException(); - - CreationException & operator =(CreationException const &); - }; - - /** Attach the current thread to a virtual machine. - - @param rMachine - The virtual machine to attach to. Must not be a null reference. - - @exception CreationException - Thrown in case attaching fails (due to a JNI problem). - */ - explicit AttachGuard(rtl::Reference< VirtualMachine > const & rMachine); - - /** Detach the current thread from the virtual machine again. - */ - ~AttachGuard(); - - /** Get a JNI environment pointer for the current thread. - - @return - A valid JNI environment pointer. Will never be null. - */ - inline JNIEnv * getEnvironment() const { return m_pEnvironment; } - - private: - AttachGuard(AttachGuard &); // not implemented - void operator =(AttachGuard); // not implemented - - rtl::Reference< VirtualMachine > m_xMachine; - JNIEnv * m_pEnvironment; - bool m_bDetach; - }; - - /** Create a wrapper around a Java virtual machine. - - @param pVm - A JNI pointer to virtual machine. Must not be null. - - @param nVersion - The JNI version of the virtual machine pointed to by pVm. Must be at - least JNI_VERSION_1_2. This parameter should be of type jint, not int, - but at least on some platforms the definition of jint changed from - JDK 1.3 (long) to JDK 1.4 (int), so that the mangled C++ name of the - constructor would depend on the JDK version used at compile time. - - @param bDestroy - Whether to destroy the virtual machine when destructing the wrapper - (i.e., whether the wrapper owns the virtual machine pointed to by pVm). - - @param pMainThreadEnv - A valid JNI environment pointer for the current thread; must not be - null. The current thread must be "initially attached" to the virtual - machine while this constructor is being called (i.e., it must be the - thread that has called JNI_CreateJavaVM in case the virtual machine has - been started via the JNI Invocation API, and it must not already have - called DetachCurrentThread; or it must be executing native code called - from a "primordial" virtual machine). This environment pointer was - formerly used to obtain a reference to the thread's current context - class loader (java.lang.Thread.getCurrentClassLoader; if later a native - thread was attached to the virtual machine, that thread's context class - loader would be null, so the AttachGuard first of all set it to the - saved value; this feature has been removed again for performance reasons - and because the default context class loader is often not useful, so - that code relying on a context class loader has to set one explicitly, - anyway). This parameter is currently unused (but may be used again in - the future). - */ - VirtualMachine(JavaVM * pVm, int nVersion, bool bDestroy, - JNIEnv * pMainThreadEnv); - -private: - VirtualMachine(VirtualMachine &); // not implemented - void operator =(VirtualMachine); // not implemented - - virtual ~VirtualMachine(); - - JNIEnv * attachThread(bool * pAttached) const; - - void detachThread() const; - - JavaVM * m_pVm; - jint m_nVersion; - bool m_bDestroy; - - friend class AttachGuard; // to access attachThread, detachThread -}; - -} - -#endif // INCLUDED_JVMACCESS_VIRTUALMACHINE_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |