JanosVM v0.6.0 Java API Documentation: Class Team
JanosVM v0.6.0 Java API

edu.utah.janosvm.sys
Class Team

java.lang.Object
  |
  +--edu.utah.janosvm.sys.ListNode
        |
        +--edu.utah.janosvm.sys.Importable
              |
              +--edu.utah.janosvm.sys.TeamHandle
                    |
                    +--edu.utah.janosvm.sys.Team

public final class Team
extends TeamHandle

Peer object for a TeamBackEnd. An instance of a Team is created inside each team to contain that team's local data. Specifically, this class keeps track of the cross-team references coming from its team. Team objects are never created directly, they are created implicitly as part of 'Team.create()'.

The association with the TeamBackEnd in the kernel team is implicit (through TeamBackEnd.getCurrentTeam()).

Because this class extends TeamHandle, it is importable.

Author:
Tim Stack, Utah Janos Team
See Also:
TeamBackEnd, TeamHandle

Fields inherited from class edu.utah.janosvm.sys.TeamHandle
be
 
Fields inherited from class edu.utah.janosvm.sys.ListNode
pred, succ
 
Method Summary
 boolean addDependency(TeamHandle th)
          Add a dependency to this team.
static TeamHandle create()
           
static TeamHandle create(ResourceSpec[] specs)
           
static TeamHandle create(java.lang.String name)
           
static TeamHandle create(java.lang.String name, ResourceSpec[] specs)
           
static Team current()
           
 ExportManager exportAnonymousObject(Exportable ex)
           
 ExportManager exportObject(java.lang.Object id, Exportable ex)
           
static TeamHandle find(java.lang.String name)
          Get a handle on the Team with the given name.
 java.lang.Object getClassLocal(java.lang.Class cl)
           
static java.lang.Object getCurrentClassLocal(java.lang.Class cl)
           
 java.util.Vector getData()
           
 java.lang.String getDescription()
          Get the Team's description string.
 TeamHandle getKernelTeam()
          Get a handle on the kernel team.
 PortAuthority getPortAuthority()
          Get the ExportTable for the current team.
 void notifyOnFinish()
          Set the flag on the team object that indicates that the last non-daemon thread in the team should send out a TeamEvent.FINISHED event.
 ExportManager reserveExportID(java.lang.Object id)
           
 void revokeAnonymousObject(Exportable ex)
           
 void revokeObject(java.lang.Object id)
          XXX rename to revokeExport
 void setClassLocal(java.lang.Class cl, java.lang.Object obj)
          Store a per-team class local object.
static void setCurrentClassLocal(java.lang.Class cl, java.lang.Object obj)
           
 void setDescription(java.lang.String str)
           
 java.lang.String toString()
           
 
Methods inherited from class edu.utah.janosvm.sys.TeamHandle
bindTo, cancelImport, clone, equals, getID, getName, importObject, isTerminated, owns, popReservation, pushReservation, returnFrom, switchTo, terminate, unbindFrom
 
Methods inherited from class edu.utah.janosvm.sys.Importable
copy, finalize, revoke
 
Methods inherited from class edu.utah.janosvm.sys.ListNode
append, prepend, remove
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Method Detail

create

public static TeamHandle create(java.lang.String name,
                                ResourceSpec[] specs)
                         throws DuplicateExportException,
                                ResourceSpecException,
                                DeadTeamException

create

public static TeamHandle create(java.lang.String name)
                         throws DuplicateExportException,
                                ResourceSpecException,
                                DeadTeamException

create

public static TeamHandle create(ResourceSpec[] specs)
                         throws ResourceSpecException,
                                DeadTeamException

create

public static TeamHandle create()
                         throws ResourceSpecException,
                                DeadTeamException

current

public static Team current()
Returns:
The Team object for the current team.

find

public static TeamHandle find(java.lang.String name)
                       throws DeadTeamException,
                              TeamEjectionException,
                              NoSuchExportException
Get a handle on the Team with the given name. TeamHandles with the null name cannot be found this way.
Parameters:
name - The name of the TeamHandle to locate.
Returns:
A TeamHandle object that imports the TeamBackEnd with the given name.

setDescription

public void setDescription(java.lang.String str)
Parameters:
str - A string that describes this team.

getDescription

public java.lang.String getDescription()
Description copied from class: TeamHandle
Get the Team's description string.
Overrides:
getDescription in class TeamHandle
Returns:
A string that describes this team.

getKernelTeam

public TeamHandle getKernelTeam()
Get a handle on the kernel team.
Returns:
The cached kernel Team handle.

getPortAuthority

public PortAuthority getPortAuthority()
Get the ExportTable for the current team.
Returns:
The ExportTable for the current team.

reserveExportID

public ExportManager reserveExportID(java.lang.Object id)
                              throws DuplicateExportException

exportObject

public ExportManager exportObject(java.lang.Object id,
                                  Exportable ex)
                           throws DuplicateExportException

revokeObject

public void revokeObject(java.lang.Object id)
                  throws NoSuchExportException
XXX rename to revokeExport

exportAnonymousObject

public ExportManager exportAnonymousObject(Exportable ex)

revokeAnonymousObject

public void revokeAnonymousObject(Exportable ex)
                           throws NoSuchExportException

getData

public java.util.Vector getData()
Returns:
The local data vector for the current team.

setClassLocal

public void setClassLocal(java.lang.Class cl,
                          java.lang.Object obj)
Store a per-team class local object.
Parameters:
cl - The class the object should be stored with.
obj - The object to store with the class.

setCurrentClassLocal

public static void setCurrentClassLocal(java.lang.Class cl,
                                        java.lang.Object obj)

getClassLocal

public java.lang.Object getClassLocal(java.lang.Class cl)
Parameters:
cl - The class to retrieve the local object for.
Returns:
The Object associated with the class or null.

getCurrentClassLocal

public static java.lang.Object getCurrentClassLocal(java.lang.Class cl)

addDependency

public boolean addDependency(TeamHandle th)
Add a dependency to this team.
Parameters:
th - The team this one should depend on.
Returns:
True if the addition succeeded, false otherwise.

notifyOnFinish

public void notifyOnFinish()
Set the flag on the team object that indicates that the last non-daemon thread in the team should send out a TeamEvent.FINISHED event.

toString

public java.lang.String toString()
Overrides:
toString in class TeamHandle

JanosVM v0.6.0 Java API

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