+++ /dev/null
-/**
- * org.vamsas.client.Iclient
- *
- */
-package org.vamsas.client;
-
-import java.beans.EventHandler;
-import java.beans.PropertyChangeListener;
-import java.util.EventListener;
-
-/**
- * Defines the methods availabable to a vamsas
- * application for interacting with its Vorba agent
- * created by an IclientFactory instance for a particular session,
- * user, and application handle.
- * (it's VORBA, not CORBA!)
- */
-
-public interface Iclient {
-
- /**
- * Self-documenting/describing info for the application to present
- * to the user.
- * TODO: formalise this for describing VAMSAS system, a particular
- * Vorba client agent, and a particular session.
- * @returns string like VamsasClient v.1.1.1 (GPL) and whatever
- */
- String getAbout();
-
- /**
- * TODO: Is this not be the same as the SessionUrn ?
- * @return current SessionUrn
- */
- public String getSessionUrn();
- /**
- * Returns a valid URN for other applications to connect to
- * the vamsas session.
- * @return session handle for this session.
- */
- public SessionHandle getSessionHandle();
- /**
- * Included for applications with several ClientHandle
- * identities.
- * @return ClientHandle used to interact with
- * other Vamsas applications.
- */
- public ClientHandle getClientHandle();
- /**
- *
- * @return UserHandle used when interacting
- * with other Vamsas applications.
- */
- public UserHandle getUserHandle();
- /**
- * Method called by client application on exit.
- * Vorba will inform other clients if they exist.
- * If this is the last application in the session
- * then the session will be closed.
- * Note: The application should be ready to handle
- * 'RequestToCloseDocument' events from the Vorba
- * agent in the latter case and so prompt the user
- * to save the session locally.
- * TODO: pick a better name ?
- */
- void finalizeClient();
- /**
- * register handler for updates for the current session
- */
- void addDocumentUpdateHandler(EventListener evt);
- /**
- * get vamsas document with
- * user and app specific data
- */
- IClientDocument getClientDocument();
- /**
- * Queue new Vorba objects for storage and propagation
- * to other clients (via Event.DOCUMENT_UPDATE based
- * notification of document change)
- */
- void updateDocument(IClientDocument newdoc);
- /**
- * Any application may call storeDocument to
- * save a local copy of the current vamsas document
- * including all application specific entries.
- *
- * @param location to write zip file
- */
- void storeDocument(java.io.File location);
- /**
- * Add a listener to a particular event chain.
- * See org.vamsas.client.Events for allowed values for EventChain.
- * The EventChain value is passed as the propertyName in the java.bean.PropertyChangeEvent
- * TODO: build our own vamsas Event/Listener model.
- * @param EventChain Name of event. Blank/null registers handler for all events.
- * @param evt - event handler function.
- */
- void addVorbaEventHandler(String EventChain, PropertyChangeListener evt);
-}
+++ /dev/null
-/*
- * Created on 13-Sep-2005
- *
- * TODO To change the template for this generated file go to
- * Window - Preferences - Java - Code Style - Code Templates
- */
-package org.vamsas.client;
-
-/**
- * Defines methods for instantiating Vorba client application agents
- * @author jimp
- *
- * (it's VORBA, not CORBA!)
- */
-
- public interface IclientFactory {
-
- /**
- * Create a new Vorba Session
- * @param ApplicationHandle is the application's VAMSAS handle string
- */
- Iclient getIclient(ClientHandle ApplicationHandle);
- /**
- * returns new Vorba for a given session.
- * @param ApplicationHandle
- * @param SessionUrn locates the session that the client should attach to
- * @return
- */
- Iclient getIclient(ClientHandle ApplicationHandle, String SessionUrn);
- /**
- * returns new vorba for a given session acting as a particular identity
- * @param ApplicationHandle
- * @param UserId
- * @param SessionUrn
- * @return
- */
- Iclient getIclient(ClientHandle ApplicationHandle, UserHandle UserId, String SessionUrn);
- /**
- * New session for application and specific user
- * @param ApplicationHandle
- * @param UserId
- * @return
- */
- Iclient getIclient(ClientHandle ApplicationHandle, UserHandle UserId);
-
-
-}