+ All Categories
Home > Documents > Environmental Molecular Sciences Laboratory Collaborative Research Environment Application...

Environmental Molecular Sciences Laboratory Collaborative Research Environment Application...

Date post: 27-Dec-2015
Category:
Upload: ruby-cameron
View: 220 times
Download: 0 times
Share this document with a friend
17
Environmental Molecular Sciences Laboratory Collaborative Research Environment Application Programming Interface Deborah A. Payne 5/5/98 Environmental Molecular Sciences Laboratory Computing & Information Sciences Pacific Northwest National Laboratory
Transcript

Environmental Molecular Sciences Laboratory

Collaborative Research Environment Application Programming Interface

Deborah A. Payne

5/5/98

Environmental Molecular Sciences LaboratoryComputing & Information Sciences

Pacific Northwest National Laboratory

Environmental Molecular Sciences Laboratory

Overview

• Background

• Approach

• Java conversion rules

• Hello World Example

Environmental Molecular Sciences Laboratory

Projects

• Collaboration Management (ANL, PNNL): Real-Time Session Management from both a session based metaphor and a space based metaphor.

• Electronic Notebooks (LBNL, ORNL, PNNL): We’re developing an Electronic Notebook system to provide a shareable, multimedia version of the traditional paper scientific notebook.

• Collaboratory Interoperability Framework (ANL, LBNL, PNNL, SNL): Technologies to allow scientific instruments, notebooks, and real-time collaboration tools to work together.

Structural Biology LDRD Researchers collaborating electronically to perform NMR experiments.

DOE2000

EMSL Operations Use of the Collaboratory tool suite as a portion of the EMSL Research Facility.

Environmental Molecular Sciences Laboratory

EMSL Collaborative Research Environment CORE2000

real-time electronicJavamulti-platform (Unix, PC, Mac)extends NCSA’s Habanero extensible

(NOTE: I am covering the API for the CORE2000 version C2K2.0 due for release on 6/5/98. This does not match the current version available on our download site. If you are ready to addyour own application via this API come see me for a pre-release version.)

Environmental Molecular Sciences Laboratory

Collaborative Engine• communication• security• floor control• record and playback• session information

Suite of Tools• audio/video conferencing (vic, vat, CUSeeMe)• whiteboard• shared screen viewers (TeleViewer)• Chat• Voting Tool

Extensible• remote operation of an instrument• data analysis tool

CORE2000 Provides:

Environmental Molecular Sciences Laboratory

Two Types of Tools

• 3rd Party – startup

– shutdown

• Java Hablet– converted from Java

Applet or Application

– integral part of system

Environmental Molecular Sciences Laboratory

Example of a Collaborative Application

Environmental Molecular Sciences Laboratory

CORE2000Client 3

CORE2000Client 2

CORE2000Client 1

EMSL Collaborative Environment

Client 1Hablet A

Client 3Hablet AClient 2

Hablet A

CORE2000Server

Hablet A Arbitrator Hablet B Arbitrator

Client 1Hablet B

Client 3Hablet B

Client 2Hablet B

Environmental Molecular Sciences Laboratory

Conversion Rules:

• Imports:– import ncsa.habanero.*;

– import ncsa.habanero.streams.*;

– import java.io.IOException;

• Applet vs. Application– applets extend Hablet

– applications implement ncsa.habanero.Wrapped, and java.io.Externalizable

Environmental Molecular Sciences Laboratory

Conversion Rules:

• Transfer the State– At Tool Startup for Clients already in a session

– Clients Joining Late

» Hablet methods: • protected void writeHablet (MarshallOutputStream out) throws IOException

• protected void readHablet (MarshallInputStream in) throws IOException

» Wrapped, Externalizable methods:• public void writeExternal (java.io.ObjectOutput out) throws IOException

• public void readExternal (java.io.ObjectInput in) throws IOException

• Setup– startInFrame(MirrorFrame m) is the method called from the CORE2000 environment at

startup. Override this method and include any startup code.

– If hablet call init() and start()

– Set default windows parameters

Environmental Molecular Sciences Laboratory

Conversion Rules:

• Event Handling– for java.awt.Event handling:

» static public void addSharedEventType(Class eventType, Mirrorable m)

» static public void addSharedEventType(Class eventType, int id, Mirrorable m) where id is a java.awt.Event ID

» example: addSharedEventType(Class.forName(“java.awt.event.MouseEvent”),MOUSE_DOWN,this);

» Put this call in your startInFrame method

– for User Defined Events:

» Habanero.sendEvent(myEvent) where myEvent is a user defined event class that extends ncsa.habanero.ComponentAction

» receiving class must have a processEvent(AWTEvent evt) method to catch the event

Environmental Molecular Sciences Laboratory

Conversion Rules:• Install Hablet into CORE2000 Environment

– GIF 32 x 32 pixels in rsc/env/co_images of CORE2000 installation

– create directory under apps with the same name as the package name for the hablet

– place all hablet files in this directory

– create a new file in habanero.rsc/toolsDir that tells CORE200 the name, picture, classname, version, and options help URL of the new tool

• Arbitrators– Central Arbitrator - passes everything it receives (default arbitrator)

– Limit Arbitrator - provides locking

tool.name=Hellotool.picture=hello.giftool.classname=helloworld.Hellotool.version=1.0tool.help=http:/www.emsl.pnl.gov:2080/docs/collab

Environmental Molecular Sciences Laboratory

Hello.java Standalone Application

Environmental Molecular Sciences Laboratory

CORE2000 Hello.java Hablet

Environmental Molecular Sciences Laboratory

See Java Hello.java standalone codeand Hello.java hablet.

Environmental Molecular Sciences Laboratory

Current Team Members

EMSL Collaboratory Details

Deborah A. PayneShelly Harris

Shawn Merriman

James D. MyersElena Mendoza

Ken Yates

Kelly A. KeatingRay A. BairBrett DidierTom Valdez

http://www.emsl.pnl.gov:2080/docs/collabWeb Address

Environmental Molecular Sciences Laboratory

Acknowledgments

• U.S. Department of Energy– Mathematical, Information and Computational Sciences Division of the Office of

Energy Research

– Office of Biological & Environmental Research of the Office of Energy Research

– Pacific Northwest National Laboratory (PNNL) Laboratory Directed Research and Development (LDRD)

Pacific Northwest National Laboratory is a multiprogram national laboratory operated by Battelle Memorial Institute for the U.S. Department of Energy under Contract DE-AC06-76RLO 1830.


Recommended