> & infos);
/** starts a Java Virtual Machine.
The caller should provide all essential JavaVMOptions, such as the
class path (-Djava.class.path=xxx). It is assumed that the caller
knows what JRE is used. Hence the implementation does not need to check
the options for validity. If a user configured the application to
use specific options, such as -X..., then it is in his responsibility to
ensure that the application works properly. The function may add or modify
properties. For example, it may add to the class path property.
The function must ensure, that the VM does not abort the process
during instantiation.
The function receives a JavaInfo object that was created
by the functions jfw_plugin_getJavaInfoByPath or
jfw_plugin_getAllJavaInfos from the same library. This can be
guaranteed if an application uses exactly one library for one vendor.
Therefore the functions which create the JavaInfo can store all
necessary information which are needed for starting the VM into that
structure.
@param pInfo
[in] the JavaInfo object with information about the JRE.
@param arOptions
[in] the options which are passed into the JNI_CreateJavaVM function.
Can be NULL.
@param nSizeOptions
[in] the number of elements in arOptions.
@param ppVM
[out] the JavaVM pointer of the created VM.
@param ppEnv
[out] the JNIEnv pointer of the created VM.
@return
javaPluginError::NONE the function ran successfully.
javaPluginError::Error an error occurred during execution.
JFW_PLUGIN_E_VM_CREATION_FAILED a VM could not be created. The error was caused
by the JRE.
*/
javaPluginError jfw_plugin_startJavaVirtualMachine(
const JavaInfo *pInfo,
const JavaVMOption *arOptions,
sal_Int32 nSizeOptions,
JavaVM ** ppVM,
JNIEnv ** ppEnv);
/** checks if the installation of the jre still exists.
This function checks if the JRE described by pInfo still
exists. The check must be very quick because it is called by javaldx
(Linux, Solaris) at start up.
@param pInfo
[in] the JavaInfo object with information about the JRE.
@param pp_exist
[out] the parameter is set to either sal_True or sal_False. The value is
only valid if the function returns JFW_E_NONE.
@return
javaPluginError::NONE the function ran successfully.
javaPluginError::Error an error occurred during execution.
javaPluginError::InvalidArg pInfo contains invalid data
*/
javaPluginError jfw_plugin_existJRE(const JavaInfo *pInfo, bool *exist);
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */