finished the Appdata/ClientDocument update mechanism. Untested!
[vamsas.git] / src / org / vamsas / client / simpleclient / SessionUrn.java
index dc4d522..13b6f23 100644 (file)
@@ -1,6 +1,7 @@
 package org.vamsas.client.simpleclient;
 
 import java.io.File;
+import java.net.MalformedURLException;
 
 /**
  * SessionUrn for simpleclient sessions:
@@ -13,10 +14,27 @@ public class SessionUrn extends org.vamsas.client.SessionUrn {
    * a simple client session urn prefix
    */
   public static final String SIMPLECLIENT="simpleclient";
+  public static String VAMSASDOCUMENT="vdoc";
   static {
-    TYPES.add(SIMPLECLIENT);
+    TYPES.put(SIMPLECLIENT, SessionUrn.class);
+    TYPES.put(SessionUrn.VAMSASDOCUMENT, SessionUrn.class);
   }
-  public SessionUrn(File sessionLocation) {
-    super(SIMPLECLIENT, sessionLocation);
+  
+  public SessionUrn(File sessionLocation) throws MalformedURLException {
+  // TODO: LATER: implement switch to have vamsas document or simpleclient sessions for same constructor
+    super(SIMPLECLIENT, sessionLocation.getAbsoluteFile().toURL());
+    //else
+      // super(VAMSASDOCUMENT, sessionLocation);
   }
+  public SessionUrn(VamsasSession session) throws MalformedURLException {
+    super(SIMPLECLIENT, session.sessionDir.getAbsoluteFile().toURL());
+  }
+  /**
+   * TODO: LATER: think about this again.
+   * @return File(urn.getPath())
+   */
+  public File asFile() {
+    return new File(urn.getPath());
+  }
+  // TODO: add abstract 'handler' methods for resolving the URN to a particular class
 }