The reference Metis implementation supports Java bean
behavior, to
allow a natural mechanism for AFEs to interact within the workspace.
The Sun Microsystems reference implementation of the BeanBox is
the basis of the Metis workspace. The BeanBox provides
bean containment, and support for
property sheets, visual manipulation of beans, and state
storage.
At workspace startup, a logon process verifies the user
and creates the user profile object if the verification is successful.
This process includes showing a dialog box for user name and password
information and checking it against an authorized user list. The user
is also allowed
to use a ``smart card'' instead of providing
information directly to the logon dialog.
If the user passes verification, the VEM and
controller objects are instantiated.
In Metis, the workspace is populated with buttons, each showing the icon of the AFE. Each button contains the URL of an applet and an appletviewer instance with a reference to the applet. The appletviewer has been modified from the JDK implementation to separate the applet instantiation from its execution. When a button is selected, the appletviewer initiates the applet execution. The initial layout on the workspace is read from the user's configuration file, accessed from a data store.
The ToolBox has been completely rewritten from the BeanBox implementation. In our implementation, the ToolBox queries the directory server to get a list of AFEs that the user can access. It allows a user to add an AFE as a button to the workspace, and when the button is added the AFE loader downloads the AFE code from the Metis Code Server.