applied LGPLv3 and source code formatting.
[vamsas.git] / src / uk / ac / vamsas / client / simpleclient / VamsasFile.java
index 1d3732b..e0c6f90 100644 (file)
@@ -1,4 +1,24 @@
-
+/*
+ * This file is part of the Vamsas Client version 0.1. 
+ * Copyright 2009 by Jim Procter, Iain Milne, Pierre Marguerite, 
+ *  Andrew Waterhouse and Dominik Lindner.
+ * 
+ * Earlier versions have also been incorporated into Jalview version 2.4 
+ * since 2008, and TOPALi version 2 since 2007.
+ * 
+ * The Vamsas Client is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *  
+ * The Vamsas Client is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with the Vamsas Client.  If not, see <http://www.gnu.org/licenses/>.
+ */
 package uk.ac.vamsas.client.simpleclient;
 
 import java.io.File;
@@ -15,18 +35,18 @@ import java.util.jar.JarInputStream;
 import java.util.jar.JarOutputStream;
 
 /**
- * low level vamsas document management routines
- * analogous to ClientsFile
- * Grew out of io tests on VamsasArchive class in uk.ac.vamsas.test.simpleclient.VamsasArchive
- * This class is not thread safe.
+ * low level vamsas document management routines analogous to ClientsFile Grew
+ * out of io tests on VamsasArchive class in
+ * uk.ac.vamsas.test.simpleclient.VamsasArchive This class is not thread safe.
+ * 
  * @author jimp
- *
+ * 
  */
 public class VamsasFile extends SessionFile {
   /**
    * 
-   * Connect to an existing Vamsas document in a given sessionDir
-   * or create a new one.
+   * Connect to an existing Vamsas document in a given sessionDir or create a
+   * new one.
    * 
    * @param sessionDir
    * @throws java.io.IOException
@@ -34,6 +54,7 @@ public class VamsasFile extends SessionFile {
   public VamsasFile(File sessionFile) throws java.io.IOException {
     super(sessionFile);
   }
+
   /**
    * 
    * @return the VamsasFile
@@ -41,34 +62,32 @@ public class VamsasFile extends SessionFile {
   public File getVamsasFile() {
     return sessionFile;
   }
+
   /**
    * Expand a previously stored session into the sessionDir
+   * 
    * @param sessionDir
    * @param storedSession
-   
-   public VamsasFile(File sessionDir, JarFile storedSession) throws IOException {
-    // check if sessionDir is live or not
-    if (!sessionDir.exists()) {
-      sessionDir.mkdir();
-    }
-    
-    {
-      // check its actually a writable directory
-    }
-    
-    File sfile = new File(sessionDir, "vamsas.jar");
-    VamsasFile(sfile);
-    // if live - try to merge storedSession with sessionDir
-    //  - will probably fail through duplicate Vobject references needing to be dereferenced.
-    // TODO: think of a way of specifying vorba_id scope for an application's references to allow merging of one vamsasDocument with another.
-    
-  }
-  */
+   *          public VamsasFile(File sessionDir, JarFile storedSession) throws
+   *          IOException { // check if sessionDir is live or not if
+   *          (!sessionDir.exists()) { sessionDir.mkdir(); }
+   * 
+   *          { // check its actually a writable directory }
+   * 
+   *          File sfile = new File(sessionDir, "vamsas.jar");
+   *          VamsasFile(sfile); // if live - try to merge storedSession with
+   *          sessionDir // - will probably fail through duplicate Vobject
+   *          references needing to be dereferenced. // TODO: think of a way of
+   *          specifying vorba_id scope for an application's references to allow
+   *          merging of one vamsasDocument with another.
+   * 
+   *          }
+   */
   /**
-   * public interface for getting a lock.
-   * The lock object is internally referenced 
-   * so the lock will persist even after the
-   * return value of the method goes out of scope.
+   * public interface for getting a lock. The lock object is internally
+   * referenced so the lock will persist even after the return value of the
+   * method goes out of scope.
+   * 
    * @return null if lock couldn't be got or a valid Lock object.
    */
   public Lock getLock() {
@@ -76,6 +95,7 @@ public class VamsasFile extends SessionFile {
       return fileLock;
     return null;
   }
+
   /**
    * 
    * @param extantLock
@@ -86,13 +106,13 @@ public class VamsasFile extends SessionFile {
       return fileLock;
     return null;
   }
+
   /**
-   * explicitly unlocks vamsas file.
-   * if you have called getLock() you *must* 
+   * explicitly unlocks vamsas file. if you have called getLock() you *must*
    * call this to release the lock.
    */
   public void unLock() {
     this.unlockFile();
   }
-  
+
 }