Metagnostic
home

JNIPort for Dolphin Smalltalk

Overview

Contents

Players

Layers

Examples

Configuration

InFAQ

Changes

Licence


Back to Goodies

JNIPort Documentation

This page is just an index of all the JNIPort documentation. The order is arbitrary; someday I may impose some more useful structure on the list, but not today…

None of this documentation is detailed or definitive; it is just a collection of introductions, examples, and overviews of the bits of JNIPort. As always with Smalltalk, you are invited to read the code (liberally commented — mostly — in open defiance of the current fad) for the details and the complete story.

Page Description
Additional Wrapper Classes A quick survey of the extra wrapper classes provided in the 'CU Java Additional Wrappers' package.
Calling from Java into Smalltalk Description of JNIPort's facility for allowing Java to call back into Smalltalk.
An Example of Using Callbacks This section is an example of using callbacks from Java into Smalltalk.
Examples A summary of the examples included in this documentation.
Ghost Classes Ghost classes are light-weight wrapper classes that are generated on demand, and then discarded when the Java runtime shuts down.
Documentation This page!
Infrequently Asked Questions A miscellany of observations and explanations that don't seem to fit anywhere else.
Example of Basic JNIPort An example of using the lower-level facilities of Java Base to read a file from a ZIP archive.
Basic JNIPort Discusses the fundamental concepts of JNIPort, which are implemented in package 'CU Java Base'.
The JNIHelper DLL An external DLL that helps circumvent problems caused by the use of native threads in the Java runtime.
Type Names and Signatures A description of the names used by low-level JNI and the JVM for types, methods, and fields. Not relevant if you are using the high level wrappers.
The Java Native Interface (JNI) The lowest level of JNIPort which wraps, but does not embellish, the raw JNI APIs.
JVMs Notes on which Java runtimes JNIPort has been tested with, and any JVM-specific problems.
Layers A description of JNIPort in terms of the layers of software, with brief introductions to the function of each component.
Names of Generated Wrapper Methods The wrapper generator uses a fixed naming convention for the methods it generates; this section describes the convention.
Overview An overview of JNIPort, including a very simple example.
Players Introduces the main players in the community of JNIPort objects and tries to explain something of how they interact.
Problems and Limitations Notes on what I see as the weaknesses of JNIPort.
Configuring JNIPort An over-brief description of the configuration options for JNIPort.
The Status Monitor A GUI tool for displaying the status and activity of the Java runtime and JNIPort.
The Status Monitor's Status Page A plug-in page for the Status Monitor that shows statistics about JNIPort.
The Status Monitor's Classes Page A plug-in page for the Status Monitor that shows information about the Java classes that JNIPort has loaded.
The Status Monitor's History Page A plug-in page for the Status Monitor that displays a histogram of JNIPort activity.
The Status Monitor's Console Page A plug-in page for the Status Monitor that displays whatever text is sent to the Java console streams.
The Status Monitor's JVM Debug Page A plug-in page for the Status Monitor that displays a trace of any debugging output from the Java runtime
The Problems with Threads The problems caused by the mismatch between the ways that the Java runtime and Dolphin use operating system threads
A Walkthrough with JNIPort A walkthrough of installing JNIPort and setting up couple of simple configurations.
Static Wrapper Classes A short description of how to use custom wrapper classes.
Wrapper-class Example An example of using ghost classes, or the statically-generated wrapper classes, to read a file from a ZIP archive.
Ghost Class Example An example of using ghost classes to create and display a Swing window.
The Wrapper Wizard The Wrapper Wizard is a GUI tool to help create wrapper classes.
Change History A probably incomplete list of changes to the code.

Copyright © Chris Uppal, 2003-2005

Java, JNI (probably), JVM (possibly), and God knows what else, are trademarks of Sun Microsystems, Inc.