Initial revision
[vamsas.git] / src / org / vamsas / client / Iclient.java
1 /**
2  * org.vamsas.client.Iclient
3  * 
4  */
5 package org.vamsas.client;
6 Interface Iclient {
7     /**
8      * Define the methods availabable to a vamsas
9      * application for interacting with the vamsas 
10      * object broker
11      * (it's VORBA, not CORBA!)
12      */
13     /**
14      * static methods for returning a new instance 
15      * of vorba with or without a session urn. 
16      */
17     Iclient getVorba(String ApplicationHandle);
18     Iclient getVorba(String ApplicationHandle, String SessionUrn);
19     /**
20      * Extend to multi-user. By default is to use current username
21      *
22      * Iclient getVorba(String ApplicationHandle, String UserUrn);
23      */
24
25     /**
26      * Instance methods
27      */
28     /**
29      *  Return current SessionUrni
30      */
31     String getSessionUrn();
32     /**
33      * get vamsas document with app specific data
34      */
35     VamsasClientDocument getDocument();
36     /**
37      * register handler for updates for the current session
38      */
39     void addDocumentUpdateHandler(java.util.EventHandler evt);
40     /**
41      * Self-documenting/describing info for presenting to user
42      * returns string like VamsasClient v.1.1.1 (GPL) and whatever
43      */
44     String getAboutVamsasClient();
45
46     void closeVamsasDocument();
47
48 }