Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JanosVM v0.6.0 Java API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## edu.utah.janosvm.sys
Class ExportManager

    java.lang.Object
      |
      +--edu.utah.janosvm.sys.ExportManager

public final class ExportManager
extends java.lang.Object

Tracks the importables associated with a single exportable. Each ExportManager is associated with exactly one Exportable. An exportable may have multiple ExportManagers (if it is exported under mutliple names, for example).

An ExportManager tracks the links between an exported object and its imports. This is required so that we can revoke any references when a team dies or the export is no longer available to other teams.

Author:
  Tim Stack, Utah Janos Team
See Also:
  `Importable`, `Exportable`

Inner Class Summary
`class` | `ExportManager.ImportEnumerator` The ImportEnumerator is used to traverse the list of importers of an export.

Method Summary
`void` | `addImporter(Importable im)` Add an Importable to the list of objects importing our export.
`ExportManager.ImportEnumerator` | `getEnumerator()`
`ExportManager.ImportEnumerator` | `imports()` Similar to the above except that it constructs a new ImportEnumerator and adds that to the list.
`boolean` | `imports(ExportManager.ImportEnumerator ie)` Setup the given ImportEnumerator to traverse the importers list.
`void` | `setExport(Exportable ex)` If this manager is empty you can fill in its export with this function.
`java.lang.String` | `toString()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Method Detail

### setExport

    public void setExport(Exportable ex)

  If this manager is empty you can fill in its export with this function.
  Parameters:
    `ex` - The exported object to be managed.
  Throws:
    Throws - a NullPointerException if ex is null.

### addImporter

    public void addImporter(Importable im)

  Add an Importable to the list of objects importing our export.
  Parameters:
    `im` - The Importable that wants a reference to our export.

### getEnumerator

    public ExportManager.ImportEnumerator getEnumerator()

  Returns:
    An ImportEnumerator for this ExportManager.

### imports

    public boolean imports(ExportManager.ImportEnumerator ie)

  Setup the given ImportEnumerator to traverse the importers list.
  Parameters:
    `ie` - The ImportEnumerator that will be inserted into the importers list.
  Returns:
    True if this manager is still valid and its importers can be traversed, false otherwise.

### imports

    public ExportManager.ImportEnumerator imports()

  Similar to the above except that it constructs a new ImportEnumerator and adds that to the list.
  Returns:
    A new ImportEnumerator ready to traverse the list or NULL if this manager is invalid.

### toString

    public java.lang.String toString()

  Overrides:
    toString in class java.lang.Object

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
| JanosVM v0.6.0 Java API
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

This documentation is Copyright (C) 2000-2002 The University of Utah. All Rights Reserved. See the documentation license for distribution terms and restrictions.
Documentation, software, and mailing lists for the JanosVM can be found at the Janos Project web page: http://www.cs.utah.edu/flux/janos/
Generated on Mar 17, 2002