JuggerNET Runtime Library

Codemesh.JuggerNET Namespace

Namespace hierarchy

Classes

Class Description
boolArray The proxy type for the Java type boolean[]
byteArray The proxy type for the Java type byte[]
charArray The proxy type for the Java type char[]
COMErrorHelper  
ConfigOptionAttribute An attribute used to signal that a property is a configuration setting.
DashDOptionType A type representing a -D option.
DashXOptionType A type representing a -X option.
Diagnostics This class provides facilities for the debugging of Java/.NET interoperability issues. It includes both a tracing and a memory debugging facility. Tracing can be controlled through a set of Switch instances that govern various groups of functionality.
doubleArray The proxy type for the Java type double[]
floatArray The proxy type for the Java type float[]
intArray The proxy type for the Java type int[]
JavaPeerAttribute An attribute used to signal that a type should be treated as a peer type.
JavaPeerValue Summary description for JavaPeerValue.
JavaProxyHelper A class that helps dealing with automatically converted .NET objects. We don't want to leak JNI references when passing .NET strings as arguments. In beta2, we correctly converted the System.String instances to Java strings, but nobody was responsible for the JNI handles and we created a nasty reference leak. This class helps by tracking such string instances and cleaning up the references when it is disposed of.
JavaProxyLockHolder Provides access to Java synchronization primitives. By declaring the instance in a using block, the .NET runtime will automatically and safely (in the presence of exceptions) enter and exit a critical section based on the specified Java object.
JavaProxyMonitor Provides access to Java synchronization primitives.
JuggerNETException The baseclass for all exceptions related to JuggerNET. This includes two major subhierarchies, framework exceptions and proxy exceptions. Among proxy excpetions, it makes sense to distinguish between errors and exceptions.
JuggerNETFrameworkException The baseclass for all exceptions occuring in the JuggerNET framework, posibly due to a misconfiguration or due to programmer error.
JuggerNETInitAttribute An attribute used to signal that a type should be resolved when it is encountered in an assembly that is being loaded into the process. This property should be used on user-written types that perform an initialization activity in the static class initializer, for example the registration of a configuration hook. It is resolved by calling its static Init() method.
JuggerNETProxyArray The baseclass for all array types that are proxy types for Java types.
JuggerNETProxyArray.Enumerator  
JuggerNETProxyException The baseclass for all exceptions that are proxy types for exceptions or errors thrown by the Java Runtime. This class cannot extend MarshalByRef because it has to be a descendent of Exception. As a consequence, we cannot really have a fully usable remote exception instance because invoking any Java methods will be meaningless in the remote context when the exception is passed there by value. To make it at least somewhat useful, we provide custom serialization/ deserialization methods that pass the stacktrace and the exception message to the other side.
JuggerNETProxyObject The baseclass for all non-exception types that are proxy types for Java types.
JuggerNETProxyTypeAttribute An attribute used to contain additional housekeeping information about the generated proxytype.
Jvm The default implementation for the IJvm interface. You are unlikely to ever have to use these methods explicitly, unless you want to control in detail how .NET threads are attached to the Java virtual machine.
JvmLoader The class that acts as a factory for JVM instances.
JvmLoaderConfigurationException The class representing all exceptions that are thrown when there is a problem in the JvmLoader configuration.
JvmLoaderException The baseclass for all exceptions that are thrown when there is a problem in the JvmLoader.
JvmLoaderFactory A factory class for JvmLoader instances to be used from COM.
longArray The proxy type for the Java type long[]
PeerManager A class that is used to manage PeerMarshallers.
PeerMarshalContext Summary description for PeerMarshalContext.
shortArray The proxy type for the Java type short[]

Interfaces

Interface Description
ICOMErrorHelper An interface granting access to extended error information.
IJvm The interface implemented by all JVMs.
IJvmLoader The interface for explicitly configuring or loading a JVM.
IJvmOptions An interface which defines the options that can be configured for a JVM.
IOptions An interface defining the framework options for JuggerNET.
IRemoteOptions An interface encapsulating the remote (shared JVM) options of JuggerNET.
JavaPeer The base interface for the .NET version of Java peer types.
JavaProxy An interface implemented by every type that is a proxy type for a Java type. It provides an abstraction layer for getting/setting Java object handles and for getting a duplicated object handle for the same object.

Structures

Structure Description
JNIHandle A value type used as an argument in framework constructors. We need to be able to create instances of proxy types from an existing JNI object reference. We could use an integer constructor, but then there might be a clash with a proxy constructor that takes integer arguments, so we use this type instead.

Delegates

Delegate Description
AbortCallback The callback for VM abortion.
ConfigurationHook  
ExitCallback The callback for VM exit.
GenericCallback The callback used for Java classes that have to call into .NET within the context of a .NET process.
TraceCallback The callback for tracing. You can register your own trace method with the framework as long as it has this signature.
VfprintfCallback The callback for redirecting all VM messages.

Enumerations

Enumeration Description
TraceFacility An enumeration of facilities that the runtime library can provide runtime information about. You can bitwise OR the values together.
TraceLevel An enumeration of levels at which the runtime library can provide runtime information about tracing facilities.
Verbosity The verbosity level of the JVM.
When Constants that are used by the ConfigurationHook delegate during JVM configuration. Each value represents a specific stage during the loader configuration.