1 package org.vamsas.client.simpleclient;
6 * Vamsas client is intialised with a path to create live session directories.
7 * This path may contain a vamsas.properties file
8 * that sets additional parameters (otherwise client
9 * just uses the one on the classpath).
11 * A vamsas session consists of :
12 * SessionDir - translates to urn of a live session.
13 * Contains: Vamsas Document (as a jar), Session client list file,
14 * both of which may be locked, and additional
15 * temporary versions of these files when write
16 * operations are taking place.
19 * - vamsasdocument.xml : core info
21 * - <applicationname>.version.sessionnumber.raw (string given in vamsasdocument.xml applicationData entry)
24 * - filename given in the vamsasdocument.xml. Should be checked for validity by any client and rewritten if necessary.
25 * The lockfile can point to the jar itself.
27 * Initially - documentHandler either:
28 * - creates a zip for a new session for the client
29 * - connect to an existing session zip
30 * 1. reads session urn file
32 * 3. examines session - decide whether to create new application data slice or connect to one stored in session.
33 * 4. writes info into session file
34 * 5. releases lock and generates local client events.
35 * 6. Creates Watcher thread to generate events.
38 * - Update watcher checks for file change -
42 public class VamsasSession {
44 * Holds the file handlers for a session.