X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fbinding%2FSequenceSet.java;h=eef0b9b5c404c81b3d2f8853d4eff4b1c6e58cf7;hb=ab43013b7e357b84b4abade0dba949668dfb2a0e;hp=4300c3951138022ebea8373e76a81051127bcae9;hpb=588042b69abf8e60bcc950b24c283933c7dd422f;p=jalview.git diff --git a/src/jalview/binding/SequenceSet.java b/src/jalview/binding/SequenceSet.java old mode 100755 new mode 100644 index 4300c39..eef0b9b --- a/src/jalview/binding/SequenceSet.java +++ b/src/jalview/binding/SequenceSet.java @@ -1,520 +1,561 @@ -/* - * This class was automatically generated with - * Castor 0.9.6, using an XML - * Schema. - * $Id$ - */ -/* -* Jalview - A Sequence Alignment Editor and Viewer -* Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle -* -* This program is free software; you can redistribute it and/or -* modify it under the terms of the GNU General Public License -* as published by the Free Software Foundation; either version 2 -* of the License, or (at your option) any later version. -* -* This program 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 General Public License for more details. -* -* You should have received a copy of the GNU General Public License -* along with this program; if not, write to the Free Software -* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA -*/ -package jalview.binding; - -import org.exolab.castor.xml.MarshalException; -import org.exolab.castor.xml.Marshaller; -import org.exolab.castor.xml.Unmarshaller; -import org.exolab.castor.xml.ValidationException; - -import org.xml.sax.ContentHandler; - -//---------------------------------/ -//- Imported classes and packages -/ -//---------------------------------/ -import java.io.IOException; -import java.io.Reader; -import java.io.Serializable; -import java.io.Writer; - -import java.util.Enumeration; -import java.util.Vector; - - -/** - * Class SequenceSet. - * - * @version $Revision$ $Date$ - */ -public class SequenceSet implements java.io.Serializable { - //--------------------------/ - //- Class/Member Variables -/ - //--------------------------/ - - /** - * Field _gapChar - */ - private java.lang.String _gapChar; - - /** - * Field _aligned - */ - private boolean _aligned; - - /** - * keeps track of state for field: _aligned - */ - private boolean _has_aligned; - - /** - * Field _sequenceList - */ - private java.util.Vector _sequenceList; - - /** - * Field _annotationList - */ - private java.util.Vector _annotationList; - - //----------------/ - //- Constructors -/ - //----------------/ - public SequenceSet() { - super(); - _sequenceList = new Vector(); - _annotationList = new Vector(); - } - //-- jalview.binding.SequenceSet() - //-----------/ - - public void addAnnotation(jalview.binding.Annotation vAnnotation) - throws java.lang.IndexOutOfBoundsException { - _annotationList.addElement(vAnnotation); - } - //-- void addAnnotation(jalview.binding.Annotation) - - /** - * Method addAnnotation - * - * - * - * @param index - * @param vAnnotation - */ - public void addAnnotation(int index, jalview.binding.Annotation vAnnotation) - throws java.lang.IndexOutOfBoundsException { - _annotationList.insertElementAt(vAnnotation, index); - } - //-- void addAnnotation(int, jalview.binding.Annotation) - - /** - * Method addSequence - * - * - * - * @param vSequence - */ - public void addSequence(jalview.binding.Sequence vSequence) - throws java.lang.IndexOutOfBoundsException { - _sequenceList.addElement(vSequence); - } - //-- void addSequence(jalview.binding.Sequence) - - /** - * Method addSequence - * - * - * - * @param index - * @param vSequence - */ - public void addSequence(int index, jalview.binding.Sequence vSequence) - throws java.lang.IndexOutOfBoundsException { - _sequenceList.insertElementAt(vSequence, index); - } - //-- void addSequence(int, jalview.binding.Sequence) - - /** - * Method deleteAligned - * - */ - public void deleteAligned() { - this._has_aligned = false; - } - //-- void deleteAligned() - - /** - * Method enumerateAnnotation - * - * - * - * @return Enumeration - */ - public java.util.Enumeration enumerateAnnotation() { - return _annotationList.elements(); - } - //-- java.util.Enumeration enumerateAnnotation() - - /** - * Method enumerateSequence - * - * - * - * @return Enumeration - */ - public java.util.Enumeration enumerateSequence() { - return _sequenceList.elements(); - } - //-- java.util.Enumeration enumerateSequence() - - /** - * Returns the value of field 'aligned'. - * - * @return boolean - * @return the value of field 'aligned'. - */ - public boolean getAligned() { - return this._aligned; - } - //-- boolean getAligned() - - /** - * Method getAnnotation - * - * - * - * @param index - * @return Annotation - */ - public jalview.binding.Annotation getAnnotation(int index) - throws java.lang.IndexOutOfBoundsException { - //-- check bounds for index - if ((index < 0) || (index > _annotationList.size())) { - throw new IndexOutOfBoundsException(); - } - - return (jalview.binding.Annotation) _annotationList.elementAt(index); - } - //-- jalview.binding.Annotation getAnnotation(int) - - /** - * Method getAnnotation - * - * - * - * @return Annotation - */ - public jalview.binding.Annotation[] getAnnotation() { - int size = _annotationList.size(); - jalview.binding.Annotation[] mArray = new jalview.binding.Annotation[size]; - - for (int index = 0; index < size; index++) { - mArray[index] = (jalview.binding.Annotation) _annotationList.elementAt(index); - } - - return mArray; - } - //-- jalview.binding.Annotation[] getAnnotation() - - /** - * Method getAnnotationCount - * - * - * - * @return int - */ - public int getAnnotationCount() { - return _annotationList.size(); - } - //-- int getAnnotationCount() - - /** - * Returns the value of field 'gapChar'. - * - * @return String - * @return the value of field 'gapChar'. - */ - public java.lang.String getGapChar() { - return this._gapChar; - } - //-- java.lang.String getGapChar() - - /** - * Method getSequence - * - * - * - * @param index - * @return Sequence - */ - public jalview.binding.Sequence getSequence(int index) - throws java.lang.IndexOutOfBoundsException { - //-- check bounds for index - if ((index < 0) || (index > _sequenceList.size())) { - throw new IndexOutOfBoundsException(); - } - - return (jalview.binding.Sequence) _sequenceList.elementAt(index); - } - //-- jalview.binding.Sequence getSequence(int) - - /** - * Method getSequence - * - * - * - * @return Sequence - */ - public jalview.binding.Sequence[] getSequence() { - int size = _sequenceList.size(); - jalview.binding.Sequence[] mArray = new jalview.binding.Sequence[size]; - - for (int index = 0; index < size; index++) { - mArray[index] = (jalview.binding.Sequence) _sequenceList.elementAt(index); - } - - return mArray; - } - //-- jalview.binding.Sequence[] getSequence() - - /** - * Method getSequenceCount - * - * - * - * @return int - */ - public int getSequenceCount() { - return _sequenceList.size(); - } - //-- int getSequenceCount() - - /** - * Method hasAligned - * - * - * - * @return boolean - */ - public boolean hasAligned() { - return this._has_aligned; - } - //-- boolean hasAligned() - - /** - * Method isValid - * - * - * - * @return boolean - */ - public boolean isValid() { - try { - validate(); - } catch (org.exolab.castor.xml.ValidationException vex) { - return false; - } - - return true; - } - //-- boolean isValid() - - /** - * Method marshal - * - * - * - * @param out - */ - public void marshal(java.io.Writer out) - throws org.exolab.castor.xml.MarshalException, - org.exolab.castor.xml.ValidationException { - Marshaller.marshal(this, out); - } - //-- void marshal(java.io.Writer) - - /** - * Method marshal - * - * - * - * @param handler - */ - public void marshal(org.xml.sax.ContentHandler handler) - throws java.io.IOException, org.exolab.castor.xml.MarshalException, - org.exolab.castor.xml.ValidationException { - Marshaller.marshal(this, handler); - } - //-- void marshal(org.xml.sax.ContentHandler) - - /** - * Method removeAllAnnotation - * - */ - public void removeAllAnnotation() { - _annotationList.removeAllElements(); - } - //-- void removeAllAnnotation() - - /** - * Method removeAllSequence - * - */ - public void removeAllSequence() { - _sequenceList.removeAllElements(); - } - //-- void removeAllSequence() - - /** - * Method removeAnnotation - * - * - * - * @param index - * @return Annotation - */ - public jalview.binding.Annotation removeAnnotation(int index) { - java.lang.Object obj = _annotationList.elementAt(index); - _annotationList.removeElementAt(index); - - return (jalview.binding.Annotation) obj; - } - //-- jalview.binding.Annotation removeAnnotation(int) - - /** - * Method removeSequence - * - * - * - * @param index - * @return Sequence - */ - public jalview.binding.Sequence removeSequence(int index) { - java.lang.Object obj = _sequenceList.elementAt(index); - _sequenceList.removeElementAt(index); - - return (jalview.binding.Sequence) obj; - } - //-- jalview.binding.Sequence removeSequence(int) - - /** - * Sets the value of field 'aligned'. - * - * @param aligned the value of field 'aligned'. - */ - public void setAligned(boolean aligned) { - this._aligned = aligned; - this._has_aligned = true; - } - //-- void setAligned(boolean) - - /** - * Method setAnnotation - * - * - * - * @param index - * @param vAnnotation - */ - public void setAnnotation(int index, jalview.binding.Annotation vAnnotation) - throws java.lang.IndexOutOfBoundsException { - //-- check bounds for index - if ((index < 0) || (index > _annotationList.size())) { - throw new IndexOutOfBoundsException(); - } - - _annotationList.setElementAt(vAnnotation, index); - } - //-- void setAnnotation(int, jalview.binding.Annotation) - - /** - * Method setAnnotation - * - * - * - * @param annotationArray - */ - public void setAnnotation(jalview.binding.Annotation[] annotationArray) { - //-- copy array - _annotationList.removeAllElements(); - - for (int i = 0; i < annotationArray.length; i++) { - _annotationList.addElement(annotationArray[i]); - } - } - //-- void setAnnotation(jalview.binding.Annotation) - - /** - * Sets the value of field 'gapChar'. - * - * @param gapChar the value of field 'gapChar'. - */ - public void setGapChar(java.lang.String gapChar) { - this._gapChar = gapChar; - } - //-- void setGapChar(java.lang.String) - - /** - * Method setSequence - * - * - * - * @param index - * @param vSequence - */ - public void setSequence(int index, jalview.binding.Sequence vSequence) - throws java.lang.IndexOutOfBoundsException { - //-- check bounds for index - if ((index < 0) || (index > _sequenceList.size())) { - throw new IndexOutOfBoundsException(); - } - - _sequenceList.setElementAt(vSequence, index); - } - //-- void setSequence(int, jalview.binding.Sequence) - - /** - * Method setSequence - * - * - * - * @param sequenceArray - */ - public void setSequence(jalview.binding.Sequence[] sequenceArray) { - //-- copy array - _sequenceList.removeAllElements(); - - for (int i = 0; i < sequenceArray.length; i++) { - _sequenceList.addElement(sequenceArray[i]); - } - } - //-- void setSequence(jalview.binding.Sequence) - - /** - * Method unmarshal - * - * - * - * @param reader - * @return Object - */ - public static java.lang.Object unmarshal(java.io.Reader reader) - throws org.exolab.castor.xml.MarshalException, - org.exolab.castor.xml.ValidationException { - return (jalview.binding.SequenceSet) Unmarshaller.unmarshal(jalview.binding.SequenceSet.class, - reader); - } - //-- java.lang.Object unmarshal(java.io.Reader) - - /** - * 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() -} +/* + * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2b1) + * Copyright (C) 2014 The Jalview Authors + * + * This file is part of Jalview. + * + * Jalview is free software: you can redistribute it and/or + * modify it under the terms of the GNU General Public License + * as published by the Free Software Foundation, either version 3 + * of the License, or (at your option) any later version. + * + * Jalview 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with Jalview. If not, see . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ +package jalview.binding; + +//---------------------------------/ +//- Imported classes and packages -/ +//---------------------------------/ + +import jalview.util.MessageManager; + +import org.exolab.castor.xml.Marshaller; +import org.exolab.castor.xml.Unmarshaller; + +/** + * Class SequenceSet. + * + * @version $Revision$ $Date$ + */ +public class SequenceSet implements java.io.Serializable +{ + + // --------------------------/ + // - Class/Member Variables -/ + // --------------------------/ + + /** + * Field _gapChar. + */ + private java.lang.String _gapChar; + + /** + * Field _aligned. + */ + private boolean _aligned; + + /** + * keeps track of state for field: _aligned + */ + private boolean _has_aligned; + + /** + * Field _sequenceList. + */ + private java.util.Vector _sequenceList; + + /** + * Field _annotationList. + */ + private java.util.Vector _annotationList; + + // ----------------/ + // - Constructors -/ + // ----------------/ + + public SequenceSet() + { + super(); + this._sequenceList = new java.util.Vector(); + this._annotationList = new java.util.Vector(); + } + + // -----------/ + // - Methods -/ + // -----------/ + + /** + * + * + * @param vAnnotation + * @throws java.lang.IndexOutOfBoundsException + * if the index given is outside the bounds of the collection + */ + public void addAnnotation(final jalview.binding.Annotation vAnnotation) + throws java.lang.IndexOutOfBoundsException + { + this._annotationList.addElement(vAnnotation); + } + + /** + * + * + * @param index + * @param vAnnotation + * @throws java.lang.IndexOutOfBoundsException + * if the index given is outside the bounds of the collection + */ + public void addAnnotation(final int index, + final jalview.binding.Annotation vAnnotation) + throws java.lang.IndexOutOfBoundsException + { + this._annotationList.add(index, vAnnotation); + } + + /** + * + * + * @param vSequence + * @throws java.lang.IndexOutOfBoundsException + * if the index given is outside the bounds of the collection + */ + public void addSequence(final jalview.binding.Sequence vSequence) + throws java.lang.IndexOutOfBoundsException + { + this._sequenceList.addElement(vSequence); + } + + /** + * + * + * @param index + * @param vSequence + * @throws java.lang.IndexOutOfBoundsException + * if the index given is outside the bounds of the collection + */ + public void addSequence(final int index, + final jalview.binding.Sequence vSequence) + throws java.lang.IndexOutOfBoundsException + { + this._sequenceList.add(index, vSequence); + } + + /** + */ + public void deleteAligned() + { + this._has_aligned = false; + } + + /** + * Method enumerateAnnotation. + * + * @return an Enumeration over all jalview.binding.Annotation elements + */ + public java.util.Enumeration enumerateAnnotation() + { + return this._annotationList.elements(); + } + + /** + * Method enumerateSequence. + * + * @return an Enumeration over all jalview.binding.Sequence elements + */ + public java.util.Enumeration enumerateSequence() + { + return this._sequenceList.elements(); + } + + /** + * Returns the value of field 'aligned'. + * + * @return the value of field 'Aligned'. + */ + public boolean getAligned() + { + return this._aligned; + } + + /** + * Method getAnnotation. + * + * @param index + * @throws java.lang.IndexOutOfBoundsException + * if the index given is outside the bounds of the collection + * @return the value of the jalview.binding.Annotation at the given index + */ + public jalview.binding.Annotation getAnnotation(final int index) + throws java.lang.IndexOutOfBoundsException + { + // check bounds for index + if (index < 0 || index >= this._annotationList.size()) + { + throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{ + "getAnnotation", + Integer.valueOf(index).toString(), + Integer.valueOf((this._annotationList.size() - 1)).toString() + })); + } + + return (jalview.binding.Annotation) _annotationList.get(index); + } + + /** + * Method getAnnotation.Returns the contents of the collection in an Array. + *

+ * Note: Just in case the collection contents are changing in another thread, + * we pass a 0-length Array of the correct type into the API call. This way we + * know that the Array returned is of exactly the correct length. + * + * @return this collection as an Array + */ + public jalview.binding.Annotation[] getAnnotation() + { + jalview.binding.Annotation[] array = new jalview.binding.Annotation[0]; + return (jalview.binding.Annotation[]) this._annotationList + .toArray(array); + } + + /** + * Method getAnnotationCount. + * + * @return the size of this collection + */ + public int getAnnotationCount() + { + return this._annotationList.size(); + } + + /** + * Returns the value of field 'gapChar'. + * + * @return the value of field 'GapChar'. + */ + public java.lang.String getGapChar() + { + return this._gapChar; + } + + /** + * Method getSequence. + * + * @param index + * @throws java.lang.IndexOutOfBoundsException + * if the index given is outside the bounds of the collection + * @return the value of the jalview.binding.Sequence at the given index + */ + public jalview.binding.Sequence getSequence(final int index) + throws java.lang.IndexOutOfBoundsException + { + // check bounds for index + if (index < 0 || index >= this._sequenceList.size()) + { + throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{ + "getSequence", + Integer.valueOf(index).toString(), + Integer.valueOf((this._sequenceList.size() - 1)).toString() + })); + } + + return (jalview.binding.Sequence) _sequenceList.get(index); + } + + /** + * Method getSequence.Returns the contents of the collection in an Array. + *

+ * Note: Just in case the collection contents are changing in another thread, + * we pass a 0-length Array of the correct type into the API call. This way we + * know that the Array returned is of exactly the correct length. + * + * @return this collection as an Array + */ + public jalview.binding.Sequence[] getSequence() + { + jalview.binding.Sequence[] array = new jalview.binding.Sequence[0]; + return (jalview.binding.Sequence[]) this._sequenceList.toArray(array); + } + + /** + * Method getSequenceCount. + * + * @return the size of this collection + */ + public int getSequenceCount() + { + return this._sequenceList.size(); + } + + /** + * Method hasAligned. + * + * @return true if at least one Aligned has been added + */ + public boolean hasAligned() + { + return this._has_aligned; + } + + /** + * Returns the value of field 'aligned'. + * + * @return the value of field 'Aligned'. + */ + public boolean isAligned() + { + return this._aligned; + } + + /** + * Method isValid. + * + * @return true if this object is valid according to the schema + */ + public boolean isValid() + { + try + { + validate(); + } catch (org.exolab.castor.xml.ValidationException vex) + { + return false; + } + return true; + } + + /** + * + * + * @param out + * @throws org.exolab.castor.xml.MarshalException + * if object is null or if any SAXException is thrown during + * marshaling + * @throws org.exolab.castor.xml.ValidationException + * if this object is an invalid instance according to the schema + */ + public void marshal(final java.io.Writer out) + throws org.exolab.castor.xml.MarshalException, + org.exolab.castor.xml.ValidationException + { + Marshaller.marshal(this, out); + } + + /** + * + * + * @param handler + * @throws java.io.IOException + * if an IOException occurs during marshaling + * @throws org.exolab.castor.xml.ValidationException + * if this object is an invalid instance according to the schema + * @throws org.exolab.castor.xml.MarshalException + * if object is null or if any SAXException is thrown during + * marshaling + */ + public void marshal(final org.xml.sax.ContentHandler handler) + throws java.io.IOException, + org.exolab.castor.xml.MarshalException, + org.exolab.castor.xml.ValidationException + { + Marshaller.marshal(this, handler); + } + + /** + */ + public void removeAllAnnotation() + { + this._annotationList.clear(); + } + + /** + */ + public void removeAllSequence() + { + this._sequenceList.clear(); + } + + /** + * Method removeAnnotation. + * + * @param vAnnotation + * @return true if the object was removed from the collection. + */ + public boolean removeAnnotation( + final jalview.binding.Annotation vAnnotation) + { + boolean removed = _annotationList.remove(vAnnotation); + return removed; + } + + /** + * Method removeAnnotationAt. + * + * @param index + * @return the element removed from the collection + */ + public jalview.binding.Annotation removeAnnotationAt(final int index) + { + java.lang.Object obj = this._annotationList.remove(index); + return (jalview.binding.Annotation) obj; + } + + /** + * Method removeSequence. + * + * @param vSequence + * @return true if the object was removed from the collection. + */ + public boolean removeSequence(final jalview.binding.Sequence vSequence) + { + boolean removed = _sequenceList.remove(vSequence); + return removed; + } + + /** + * Method removeSequenceAt. + * + * @param index + * @return the element removed from the collection + */ + public jalview.binding.Sequence removeSequenceAt(final int index) + { + java.lang.Object obj = this._sequenceList.remove(index); + return (jalview.binding.Sequence) obj; + } + + /** + * Sets the value of field 'aligned'. + * + * @param aligned + * the value of field 'aligned'. + */ + public void setAligned(final boolean aligned) + { + this._aligned = aligned; + this._has_aligned = true; + } + + /** + * + * + * @param index + * @param vAnnotation + * @throws java.lang.IndexOutOfBoundsException + * if the index given is outside the bounds of the collection + */ + public void setAnnotation(final int index, + final jalview.binding.Annotation vAnnotation) + throws java.lang.IndexOutOfBoundsException + { + // check bounds for index + if (index < 0 || index >= this._annotationList.size()) + { + throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{ + "setAnnotation", + Integer.valueOf(index).toString(), + Integer.valueOf((this._annotationList.size() - 1)).toString() + })); + } + + this._annotationList.set(index, vAnnotation); + } + + /** + * + * + * @param vAnnotationArray + */ + public void setAnnotation( + final jalview.binding.Annotation[] vAnnotationArray) + { + // -- copy array + _annotationList.clear(); + + for (int i = 0; i < vAnnotationArray.length; i++) + { + this._annotationList.add(vAnnotationArray[i]); + } + } + + /** + * Sets the value of field 'gapChar'. + * + * @param gapChar + * the value of field 'gapChar'. + */ + public void setGapChar(final java.lang.String gapChar) + { + this._gapChar = gapChar; + } + + /** + * + * + * @param index + * @param vSequence + * @throws java.lang.IndexOutOfBoundsException + * if the index given is outside the bounds of the collection + */ + public void setSequence(final int index, + final jalview.binding.Sequence vSequence) + throws java.lang.IndexOutOfBoundsException + { + // check bounds for index + if (index < 0 || index >= this._sequenceList.size()) + { + throw new IndexOutOfBoundsException(MessageManager.formatMessage("exception.index_value_not_in_range", new String[]{ + "setSequence", + Integer.valueOf(index).toString(), + Integer.valueOf((this._sequenceList.size() - 1)).toString() + })); + } + + this._sequenceList.set(index, vSequence); + } + + /** + * + * + * @param vSequenceArray + */ + public void setSequence(final jalview.binding.Sequence[] vSequenceArray) + { + // -- copy array + _sequenceList.clear(); + + for (int i = 0; i < vSequenceArray.length; i++) + { + this._sequenceList.add(vSequenceArray[i]); + } + } + + /** + * Method unmarshal. + * + * @param reader + * @throws org.exolab.castor.xml.MarshalException + * if object is null or if any SAXException is thrown during + * marshaling + * @throws org.exolab.castor.xml.ValidationException + * if this object is an invalid instance according to the schema + * @return the unmarshaled jalview.binding.SequenceSet + */ + public static jalview.binding.SequenceSet unmarshal( + final java.io.Reader reader) + throws org.exolab.castor.xml.MarshalException, + org.exolab.castor.xml.ValidationException + { + return (jalview.binding.SequenceSet) Unmarshaller.unmarshal( + jalview.binding.SequenceSet.class, reader); + } + + /** + * + * + * @throws org.exolab.castor.xml.ValidationException + * if this object is an invalid instance according to the schema + */ + public void validate() throws org.exolab.castor.xml.ValidationException + { + org.exolab.castor.xml.Validator validator = new org.exolab.castor.xml.Validator(); + validator.validate(this); + } + +}