renamed base class for all vamsas document objects (now org.vamsas.client.Vobject)
[vamsas.git] / src / org / vamsas / objects / core / VamsasDocument.java
index e553715..cbf50ba 100644 (file)
@@ -28,7 +28,7 @@ import org.xml.sax.ContentHandler;
  * 
  * @version $Revision$ $Date$
  */
-public class VamsasDocument extends org.vamsas.client.object 
+public class VamsasDocument extends org.vamsas.client.Vobject 
 implements java.io.Serializable
 {
 
@@ -58,9 +58,9 @@ implements java.io.Serializable
     private java.util.Vector _VAMSASList;
 
     /**
-     * Field _applicationData
+     * Field _applicationDataList
      */
-    private ApplicationData _applicationData;
+    private java.util.Vector _applicationDataList;
 
 
       //----------------/
@@ -71,6 +71,7 @@ implements java.io.Serializable
      {
         super();
         _VAMSASList = new Vector();
+        _applicationDataList = new Vector();
     } //-- org.vamsas.objects.core.VamsasDocument()
 
 
@@ -79,6 +80,33 @@ implements java.io.Serializable
     //-----------/
 
     /**
+     * Method addApplicationData
+     * 
+     * 
+     * 
+     * @param vApplicationData
+     */
+    public void addApplicationData(ApplicationData vApplicationData)
+        throws java.lang.IndexOutOfBoundsException
+    {
+        _applicationDataList.addElement(vApplicationData);
+    } //-- void addApplicationData(ApplicationData) 
+
+    /**
+     * Method addApplicationData
+     * 
+     * 
+     * 
+     * @param index
+     * @param vApplicationData
+     */
+    public void addApplicationData(int index, ApplicationData vApplicationData)
+        throws java.lang.IndexOutOfBoundsException
+    {
+        _applicationDataList.insertElementAt(vApplicationData, index);
+    } //-- void addApplicationData(int, ApplicationData) 
+
+    /**
      * Method addVAMSAS
      * 
      * 
@@ -106,6 +134,18 @@ implements java.io.Serializable
     } //-- void addVAMSAS(int, VAMSAS) 
 
     /**
+     * Method enumerateApplicationData
+     * 
+     * 
+     * 
+     * @return Enumeration
+     */
+    public java.util.Enumeration enumerateApplicationData()
+    {
+        return _applicationDataList.elements();
+    } //-- java.util.Enumeration enumerateApplicationData() 
+
+    /**
      * Method enumerateVAMSAS
      * 
      * 
@@ -162,12 +202,12 @@ implements java.io.Serializable
             }
             else if (temp._VAMSASList != null)
                 return false;
-            if (this._applicationData != null) {
-                if (temp._applicationData == null) return false;
-                else if (!(this._applicationData.equals(temp._applicationData))) 
+            if (this._applicationDataList != null) {
+                if (temp._applicationDataList == null) return false;
+                else if (!(this._applicationDataList.equals(temp._applicationDataList))) 
                     return false;
             }
-            else if (temp._applicationData != null)
+            else if (temp._applicationDataList != null)
                 return false;
             return true;
         }
@@ -175,15 +215,52 @@ implements java.io.Serializable
     } //-- boolean equals(java.lang.Object) 
 
     /**
-     * Returns the value of field 'applicationData'.
+     * Method getApplicationData
+     * 
+     * 
+     * 
+     * @param index
+     * @return ApplicationData
+     */
+    public ApplicationData getApplicationData(int index)
+        throws java.lang.IndexOutOfBoundsException
+    {
+        //-- check bounds for index
+        if ((index < 0) || (index > _applicationDataList.size())) {
+            throw new IndexOutOfBoundsException("getApplicationData: Index value '"+index+"' not in range [0.."+_applicationDataList.size()+ "]");
+        }
+        
+        return (ApplicationData) _applicationDataList.elementAt(index);
+    } //-- ApplicationData getApplicationData(int) 
+
+    /**
+     * Method getApplicationData
+     * 
+     * 
      * 
      * @return ApplicationData
-     * @return the value of field 'applicationData'.
      */
-    public ApplicationData getApplicationData()
+    public ApplicationData[] getApplicationData()
     {
-        return this._applicationData;
-    } //-- ApplicationData getApplicationData() 
+        int size = _applicationDataList.size();
+        ApplicationData[] mArray = new ApplicationData[size];
+        for (int index = 0; index < size; index++) {
+            mArray[index] = (ApplicationData) _applicationDataList.elementAt(index);
+        }
+        return mArray;
+    } //-- ApplicationData[] getApplicationData() 
+
+    /**
+     * Method getApplicationDataCount
+     * 
+     * 
+     * 
+     * @return int
+     */
+    public int getApplicationDataCount()
+    {
+        return _applicationDataList.size();
+    } //-- int getApplicationDataCount() 
 
     /**
      * Returns the value of field 'lockFile'.
@@ -315,6 +392,15 @@ implements java.io.Serializable
     } //-- void marshal(org.xml.sax.ContentHandler) 
 
     /**
+     * Method removeAllApplicationData
+     * 
+     */
+    public void removeAllApplicationData()
+    {
+        _applicationDataList.removeAllElements();
+    } //-- void removeAllApplicationData() 
+
+    /**
      * Method removeAllVAMSAS
      * 
      */
@@ -324,6 +410,21 @@ implements java.io.Serializable
     } //-- void removeAllVAMSAS() 
 
     /**
+     * Method removeApplicationData
+     * 
+     * 
+     * 
+     * @param index
+     * @return ApplicationData
+     */
+    public ApplicationData removeApplicationData(int index)
+    {
+        java.lang.Object obj = _applicationDataList.elementAt(index);
+        _applicationDataList.removeElementAt(index);
+        return (ApplicationData) obj;
+    } //-- ApplicationData removeApplicationData(int) 
+
+    /**
      * Method removeVAMSAS
      * 
      * 
@@ -339,13 +440,37 @@ implements java.io.Serializable
     } //-- VAMSAS removeVAMSAS(int) 
 
     /**
-     * Sets the value of field 'applicationData'.
+     * Method setApplicationData
+     * 
+     * 
+     * 
+     * @param index
+     * @param vApplicationData
+     */
+    public void setApplicationData(int index, ApplicationData vApplicationData)
+        throws java.lang.IndexOutOfBoundsException
+    {
+        //-- check bounds for index
+        if ((index < 0) || (index > _applicationDataList.size())) {
+            throw new IndexOutOfBoundsException("setApplicationData: Index value '"+index+"' not in range [0.."+_applicationDataList.size()+ "]");
+        }
+        _applicationDataList.setElementAt(vApplicationData, index);
+    } //-- void setApplicationData(int, ApplicationData) 
+
+    /**
+     * Method setApplicationData
+     * 
+     * 
      * 
-     * @param applicationData the value of field 'applicationData'.
+     * @param applicationDataArray
      */
-    public void setApplicationData(ApplicationData applicationData)
+    public void setApplicationData(ApplicationData[] applicationDataArray)
     {
-        this._applicationData = applicationData;
+        //-- copy array
+        _applicationDataList.removeAllElements();
+        for (int i = 0; i < applicationDataArray.length; i++) {
+            _applicationDataList.addElement(applicationDataArray[i]);
+        }
     } //-- void setApplicationData(ApplicationData) 
 
     /**