INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES

indexing

title: "Java Virtual Machine representation"
project: "Java Native Interface Library"
revision: "$Revision: 1.1 $"
copyright: "Copyright (C) 1996-2005 Object Tools Group"
license: "http://visual-eiffel.com/license"
cluster: jni
class JNI_JAVA_VIRTUAL_MACHINE
inherit

JNI_CONSTANTS
end

DYNAMIC_SYSTEM_LIBRARY
rename
make as make_jvm_library
redefine
dispose
end
creation

make,
make_special
feature {NONE}-- Creation

make
-- Create default JVM

make_special (version: INTEGER; path: STRING)
-- Create specific JVM using given `version' and `path'
require
valid_jni_version: version = jni_version_1_1 or else version = jni_version_1_2
valid_path: path /= void and then not path.is_empty
ensure
jni_version_set: jni_version = version
jvm_path_set: path /= void implies jvm_path = path
feature -- Status

jvm_path: STRING
-- Path to JVM

jni_version: INTEGER
-- JNI version to access JVM
feature -- Access

jni: JNI_JAVA_NATIVE_INTERFACE
-- New object representing JNI with default JVM arguments
-- Void if the JVM cannot be created

jni_special (jvm_args: JNI_JAVAVMINITARGS_HEADER): JNI_JAVA_NATIVE_INTERFACE
-- New object representing JNI created using default JVM arguments
-- Void if the JVM cannot be created
require
non_void_jvm_args: jvm_args /= void
feature -- Removal

dispose
feature -- Query

default_jvm_path: STRING
-- Default JVM path used to create JVM
ensure
non_void_result: Result /= void
non_empty_result: not Result.is_empty

default_jni_version: INTEGER
-- Default JNI version to access JVM
ensure
valid_result: Result = jni_version_1_1 or else Result = jni_version_1_2

default_jvm_args: JNI_JAVAVMINITARGS_HEADER

default_JNI_JDK1_1InitArgs: JNI_JDK1_1INITARGS
require
jni_version_1_1: jni_version = jni_version_1_1
end -- class JNI_JAVA_VIRTUAL_MACHINE

INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES