INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES

indexing

title: "Access to JNI"
project: "Java Native Interface Support Library"
revision: "$Revision: 1.1 $"
copyright: "Copyright (C) 1996-2005 Object Tools Group"
license: "http://visual-eiffel.com/license"
cluster: jni_support
class JNI_SERVER
feature -- Access

jni: JNI_JAVA_NATIVE_INTERFACE
-- Access to JNI

to_internal_class_name (class_name: STRING): STRING
-- Converts "dot"ed class name to "slash"ed class name, e.g.
-- java.lang.String yields java/lang/String
require
non_void_class_name: class_name /= void
ensure
converted: not Result.has ('.')

mandatory_find_class (class_name: STRING): JNI_JCLASS
-- Returns object, representing Java class
-- Raises an exception if no class is found
require
non_void_class_name: class_name /= void
ensure
non_void_result: Result /= void

mandatory_get_method_id (jclass: JNI_JCLASS; method_name: STRING; method_signature: STRING): JNI_JMETHODID
-- Returns Java method identifier
-- Raises an exception if no method is found
require
non_void_jclass: jclass /= void
non_void_method_name: method_name /= void
non_void_method_signature: method_signature /= void
ensure
meaningful_result: Result /= void

mandatory_get_field_id (jclass: JNI_JCLASS; field_name: STRING; field_signature: STRING): JNI_JFIELDID
-- Returns Java field identifier
-- Raises an exception if no field is found
require
non_void_jclass: jclass /= void
non_void_field_name: field_name /= void
non_void_field_signature: field_signature /= void
ensure
meaningful_result: Result /= void

mandatory_get_static_field_id (jclass: JNI_JCLASS; field_name: STRING; field_signature: STRING): JNI_JFIELDID
-- Returns Java field identifier
-- Raises an exception if no field is found
require
non_void_jclass: jclass /= void
non_void_field_name: field_name /= void
non_void_field_signature: field_signature /= void
ensure
meaningful_result: Result /= void

create_string_from_CallObjectMethod (object: JNI_OBJECT; method_id: JNI_JMETHODID; args: ARRAY [ANY]): STRING
require
non_void_object: object /= void
valid_method_id: method_id /= void

create_string_from_GetObjectField (object: JNI_OBJECT; field_id: JNI_JFIELDID): STRING
require
non_void_object: object /= void
valid_field_id: field_id /= void

create_string_from_GetStaticObjectField (jclass: JNI_JCLASS; field_id: JNI_JFIELDID): STRING
require
non_void_jclass: jclass /= void
valid_field_id: field_id /= void

check_for_exception
-- Check whether there is no pending exception
-- Raise an Eiffel exception otherwise
ensure
no_pending_exception: jni /= void implies jni.exceptionoccurred = void
end -- class JNI_SERVER

INDEX CLUSTER FEATURES SHORT FRAMES NO FRAMES