/* * This class was automatically generated with * Castor 0.9.9M2, using an XML * Schema. * $Id$ */ package org.vamsas.objects.core; //---------------------------------/ //- Imported classes and packages -/ //---------------------------------/ import java.io.Reader; import java.io.Serializable; import java.io.Writer; import java.util.Enumeration; import java.util.Vector; import org.exolab.castor.xml.Marshaller; import org.exolab.castor.xml.Unmarshaller; import org.exolab.castor.xml.ValidationException; /** * Specify an ordered set of positions and/or regions on the * principle * dimension of some associated vamsas object Keeping to jaxb-1.0 * specification for the moment - this choice should * become a substitution group when we use jaxb-2.0 capable * bindings * * * @version $Revision$ $Date$ */ public abstract class RangeType extends org.vamsas.client.Vobject implements java.io.Serializable { //--------------------------/ //- Class/Member Variables -/ //--------------------------/ /** * Internal choice value storage */ private java.lang.Object _choiceValue; /** * a position within the associated object's coordinate system * */ private java.util.Vector _posList; /** * a region from start to end, with flag for inclusivity of * terminii */ private java.util.Vector _segList; //----------------/ //- Constructors -/ //----------------/ public RangeType() { super(); _posList = new Vector(); _segList = new Vector(); } //-- org.vamsas.objects.core.RangeType() //-----------/ //- Methods -/ //-----------/ /** * Method addPos * * * * @param vPos */ public void addPos(org.vamsas.objects.core.Pos vPos) throws java.lang.IndexOutOfBoundsException { _posList.addElement(vPos); } //-- void addPos(org.vamsas.objects.core.Pos) /** * Method addPos * * * * @param index * @param vPos */ public void addPos(int index, org.vamsas.objects.core.Pos vPos) throws java.lang.IndexOutOfBoundsException { _posList.insertElementAt(vPos, index); } //-- void addPos(int, org.vamsas.objects.core.Pos) /** * Method addSeg * * * * @param vSeg */ public void addSeg(org.vamsas.objects.core.Seg vSeg) throws java.lang.IndexOutOfBoundsException { _segList.addElement(vSeg); } //-- void addSeg(org.vamsas.objects.core.Seg) /** * Method addSeg * * * * @param index * @param vSeg */ public void addSeg(int index, org.vamsas.objects.core.Seg vSeg) throws java.lang.IndexOutOfBoundsException { _segList.insertElementAt(vSeg, index); } //-- void addSeg(int, org.vamsas.objects.core.Seg) /** * Method enumeratePos * * * * @return Enumeration */ public java.util.Enumeration enumeratePos() { return _posList.elements(); } //-- java.util.Enumeration enumeratePos() /** * Method enumerateSeg * * * * @return Enumeration */ public java.util.Enumeration enumerateSeg() { return _segList.elements(); } //-- java.util.Enumeration enumerateSeg() /** * Note: hashCode() has not been overriden * * @param obj * @return boolean */ public boolean equals(java.lang.Object obj) { if ( this == obj ) return true; if (super.equals(obj)==false) return false; if (obj instanceof RangeType) { RangeType temp = (RangeType)obj; if (this._choiceValue != null) { if (temp._choiceValue == null) return false; else if (!(this._choiceValue.equals(temp._choiceValue))) return false; } else if (temp._choiceValue != null) return false; if (this._posList != null) { if (temp._posList == null) return false; else if (!(this._posList.equals(temp._posList))) return false; } else if (temp._posList != null) return false; if (this._segList != null) { if (temp._segList == null) return false; else if (!(this._segList.equals(temp._segList))) return false; } else if (temp._segList != null) return false; return true; } return false; } //-- boolean equals(java.lang.Object) /** * Returns the value of field 'choiceValue'. The field * 'choiceValue' has the following description: Internal choice * value storage * * @return Object * @return the value of field 'choiceValue'. */ public java.lang.Object getChoiceValue() { return this._choiceValue; } //-- java.lang.Object getChoiceValue() /** * Method getPos * * * * @param index * @return Pos */ public org.vamsas.objects.core.Pos getPos(int index) throws java.lang.IndexOutOfBoundsException { //-- check bounds for index if ((index < 0) || (index > _posList.size())) { throw new IndexOutOfBoundsException("getPos: Index value '"+index+"' not in range [0.."+_posList.size()+ "]"); } return (org.vamsas.objects.core.Pos) _posList.elementAt(index); } //-- org.vamsas.objects.core.Pos getPos(int) /** * Method getPos * * * * @return Pos */ public org.vamsas.objects.core.Pos[] getPos() { int size = _posList.size(); org.vamsas.objects.core.Pos[] mArray = new org.vamsas.objects.core.Pos[size]; for (int index = 0; index < size; index++) { mArray[index] = (org.vamsas.objects.core.Pos) _posList.elementAt(index); } return mArray; } //-- org.vamsas.objects.core.Pos[] getPos() /** * Method getPosCount * * * * @return int */ public int getPosCount() { return _posList.size(); } //-- int getPosCount() /** * Method getSeg * * * * @param index * @return Seg */ public org.vamsas.objects.core.Seg getSeg(int index) throws java.lang.IndexOutOfBoundsException { //-- check bounds for index if ((index < 0) || (index > _segList.size())) { throw new IndexOutOfBoundsException("getSeg: Index value '"+index+"' not in range [0.."+_segList.size()+ "]"); } return (org.vamsas.objects.core.Seg) _segList.elementAt(index); } //-- org.vamsas.objects.core.Seg getSeg(int) /** * Method getSeg * * * * @return Seg */ public org.vamsas.objects.core.Seg[] getSeg() { int size = _segList.size(); org.vamsas.objects.core.Seg[] mArray = new org.vamsas.objects.core.Seg[size]; for (int index = 0; index < size; index++) { mArray[index] = (org.vamsas.objects.core.Seg) _segList.elementAt(index); } return mArray; } //-- org.vamsas.objects.core.Seg[] getSeg() /** * Method getSegCount * * * * @return int */ public int getSegCount() { return _segList.size(); } //-- int getSegCount() /** * Method isValid * * * * @return boolean */ public boolean isValid() { try { validate(); } catch (org.exolab.castor.xml.ValidationException vex) { return false; } return true; } //-- boolean isValid() /** * Method removeAllPos * */ public void removeAllPos() { _posList.removeAllElements(); } //-- void removeAllPos() /** * Method removeAllSeg * */ public void removeAllSeg() { _segList.removeAllElements(); } //-- void removeAllSeg() /** * Method removePos * * * * @param index * @return Pos */ public org.vamsas.objects.core.Pos removePos(int index) { java.lang.Object obj = _posList.elementAt(index); _posList.removeElementAt(index); return (org.vamsas.objects.core.Pos) obj; } //-- org.vamsas.objects.core.Pos removePos(int) /** * Method removeSeg * * * * @param index * @return Seg */ public org.vamsas.objects.core.Seg removeSeg(int index) { java.lang.Object obj = _segList.elementAt(index); _segList.removeElementAt(index); return (org.vamsas.objects.core.Seg) obj; } //-- org.vamsas.objects.core.Seg removeSeg(int) /** * Method setPos * * * * @param index * @param vPos */ public void setPos(int index, org.vamsas.objects.core.Pos vPos) throws java.lang.IndexOutOfBoundsException { //-- check bounds for index if ((index < 0) || (index > _posList.size())) { throw new IndexOutOfBoundsException("setPos: Index value '"+index+"' not in range [0.."+_posList.size()+ "]"); } _posList.setElementAt(vPos, index); } //-- void setPos(int, org.vamsas.objects.core.Pos) /** * Method setPos * * * * @param posArray */ public void setPos(org.vamsas.objects.core.Pos[] posArray) { //-- copy array _posList.removeAllElements(); for (int i = 0; i < posArray.length; i++) { _posList.addElement(posArray[i]); } } //-- void setPos(org.vamsas.objects.core.Pos) /** * Method setSeg * * * * @param index * @param vSeg */ public void setSeg(int index, org.vamsas.objects.core.Seg vSeg) throws java.lang.IndexOutOfBoundsException { //-- check bounds for index if ((index < 0) || (index > _segList.size())) { throw new IndexOutOfBoundsException("setSeg: Index value '"+index+"' not in range [0.."+_segList.size()+ "]"); } _segList.setElementAt(vSeg, index); } //-- void setSeg(int, org.vamsas.objects.core.Seg) /** * Method setSeg * * * * @param segArray */ public void setSeg(org.vamsas.objects.core.Seg[] segArray) { //-- copy array _segList.removeAllElements(); for (int i = 0; i < segArray.length; i++) { _segList.addElement(segArray[i]); } } //-- void setSeg(org.vamsas.objects.core.Seg) /** * Method validate * */ public void validate() throws org.exolab.castor.xml.ValidationException { org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator(); validator.validate(this); } //-- void validate() }