buildTests
buildextclients
buildindices
-castorbinding
clean
clean-site
compile-site
eclipse-install
help
init
+jaxb-bindings
linkcheck
makeApplet
makedist
<classpathentry kind="lib" path="lib/saaj.jar"/>
<classpathentry kind="lib" path="lib/wsdl4j.jar"/>
<classpathentry kind="lib" path="lib/xercesImpl.jar"/>
- <classpathentry kind="lib" path="lib/castor-1.1-cycle-xml.jar" sourcepath="C:/Documents and Settings/JimP/workspace-3.3/castor/src/main/java"/>
<classpathentry kind="lib" path="lib/JGoogleAnalytics_0.3.jar" sourcepath="/JGoogleAnalytics/src/main/java"/>
<classpathentry kind="lib" path="lib/vamsas-client.jar"/>
<classpathentry kind="lib" path="lib/commons-logging-1.1.1.jar"/>
<classpathentry kind="lib" path="lib/miglayout-4.0-swing.jar"/>
<classpathentry kind="lib" path="lib/jswingreader-0.3.jar" sourcepath="/jswingreader"/>
<classpathentry kind="lib" path="lib/commons-codec-1.3.jar"/>
- <classpathentry kind="lib" path="lib/spring-core-3.0.5.RELEASE.jar"/>
- <classpathentry kind="lib" path="lib/spring-web-3.0.5.RELEASE.jar"/>
<classpathentry kind="lib" path="lib/jabaws-min-client-2.2.0.jar" sourcepath="/clustengine"/>
<classpathentry kind="lib" path="lib/json_simple-1.1.jar" sourcepath="/Users/jimp/Downloads/json_simple-1.1-all.zip"/>
<classpathentry kind="lib" path="lib/slf4j-api-1.7.7.jar"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry exported="true" kind="con" path="GROOVY_DSL_SUPPORT"/>
<classpathentry kind="lib" path="lib/Jmol-14.29.17.jar"/>
+ <classpathentry kind="lib" path="lib/intervalstore-v0.4.jar"/>
<classpathentry kind="output" path="classes"/>
</classpath>
-.project
+/*.project
+.classpath
/dist
/clover
/classes
/tests
/test-reports
/test-output
-.externalToolBuilders/Jalview Release indices [Builder].launch
+.externalToolBuilders/*
+.settings/*
/.DS_Store
.DS_Store
/.com.apple.timemachine.supported
min-jaba-client.jar
regex.jar
saaj.jar
-spring-core-3.0.5.RELEASE.jar : Apache License: jdas runtime dependencies retrieved via maven - TODO: JAL-3035 remove if no longer needed ?
-spring-web-3.0.5.RELEASE.jar : Apache License: jdas runtime dependencies retrieved via maven - TODO: JAL-3035 remove if no longer needed ?
vamsas-client.jar
wsdl4j.jar
xercesImpl.jar
<delete file="in.jar" />
</target>
-<target name="castorbinding" depends="init" description="Generate Java bindings to supported Jalview XML models.">
- <taskdef name="castor-srcgen" classname="org.castor.anttask.CastorCodeGenTask" classpathref="build.classpath" />
+<target name="jaxb-bindings" depends="init" description="Generates JAXB bindings for supported Jalview XML models (needs xjc on the path)">
<delete>
- <fileset dir="${sourceDir}/jalview/schemabinding/version2">
+ <fileset dir="${sourceDir}/jalview/xml/binding/jalview">
<include name="*.java" />
- <include name="descriptors/*.java" />
</fileset>
</delete>
- <castor-srcgen file="${schemaDir}/vamsas.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
- <castor-srcgen file="${schemaDir}/JalviewUserColours.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
- <castor-srcgen file="${schemaDir}/JalviewWsParamSet.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
- <castor-srcgen file="${schemaDir}/jalview.xsd" todir="${sourceDir}" package="jalview.schemabinding.version2" warnings="false" nodesc="false" verbose="true" properties="${schemaDir}/jalview.properties" />
- <!--
- now build the jalview.binding package with the old schema set
- -->
+ <exec executable="xjc">
+ <arg value="${schemaDir}/jalview.xsd"/>
+ <arg value="-d"/>
+ <arg value="${sourceDir}"/>
+ <arg value="-p"/>
+ <arg value="jalview.xml.binding.jalview"/>
+ </exec>
+ <delete>
+ <fileset dir="${sourceDir}/jalview/xml/binding/embl">
+ <include name="*.java" />
+ </fileset>
+ </delete>
+
+ <exec executable="xjc">
+ <arg value="${schemaDir}/embl.xsd"/>
+ <arg value="-d"/>
+ <arg value="${sourceDir}"/>
+ <arg value="-b"/>
+ <arg value="${schemaDir}/embl_bindings.xml"/>
+ <arg value="-p"/>
+ <arg value="jalview.xml.binding.embl"/>
+ </exec>
+
<delete>
- <fileset dir="${sourceDir}/jalview/binding/">
- <include name="**" />
+ <fileset dir="${sourceDir}/jalview/xml/binding/uniprot">
+ <include name="*.java" />
</fileset>
</delete>
- <castor-srcgen file="${schemaDir}/vamsasJvV1.xsd" todir="${sourceDir}" package="jalview.binding" warnings="false" nodesc="true" verbose="true" properties="${schemaDir}/jalview.nodesc.properties" />
- <castor-srcgen file="${schemaDir}/JalviewUserColours.xsd" todir="${sourceDir}" package="jalview.binding" warnings="false" nodesc="true" verbose="true" properties="${schemaDir}/jalview.nodesc.properties" />
- <castor-srcgen file="${schemaDir}/jalviewJvV1.xsd" todir="${sourceDir}" package="jalview.binding" warnings="false" nodesc="true" verbose="true" properties="${schemaDir}/jalview.nodesc.properties" />
+
+ <exec executable="xjc">
+ <arg value="${schemaDir}/uniprot.xsd"/>
+ <arg value="-d"/>
+ <arg value="${sourceDir}"/>
+ <arg value="-p"/>
+ <arg value="jalview.xml.binding.uniprot"/>
+ </exec>
</target>
+
<target name="sourcedist" description="create jalview source distribution" depends="init">
<delete file="${source.dist.name}" />
<!-- temporary copy of source to update timestamps -->
--- /dev/null
+>BACKUP_FILES/1-6 backupfiles
+AAAARG
import jalview.datamodel.AnnotatedCollectionI
import jalview.datamodel.SequenceI
import jalview.datamodel.SequenceCollectionI
+import jalview.api.AlignViewportI
import jalview.util.Comparison
/*
/*
* to make a new instance for each alignment view
*/
- getInstance: { AnnotatedCollectionI coll, Map<SequenceI, SequenceCollectionI> map -> conserved() },
+ getInstance: { AlignViewportI view, AnnotatedCollectionI coll, Map<SequenceI, SequenceCollectionI> map -> conserved() },
/*
* method only needed if colour scheme has to recalculate
import jalview.datamodel.AnnotatedCollectionI;
import jalview.datamodel.SequenceI;
import jalview.datamodel.SequenceCollectionI;
+import jalview.api.AlignViewportI
/*
* Example script that registers two new alignment colour schemes
/*
* to make a new instance for each alignment view
*/
- getInstance: { AnnotatedCollectionI coll, Map<SequenceI, SequenceCollectionI> map -> candy() },
+ getInstance: { AlignViewportI view, AnnotatedCollectionI coll, Map<SequenceI, SequenceCollectionI> map -> candy() },
/*
* method only needed if colour scheme has to recalculate
import jalview.datamodel.AnnotatedCollectionI
import jalview.datamodel.SequenceI
import jalview.datamodel.SequenceCollectionI
+import jalview.api.AlignViewportI
import jalview.util.Comparison
/*
<mapID target="biojson" url="html/features/bioJsonFormat.html" />
<mapID target="pdbfetcher" url="html/features/pdbsequencefetcher.html" />
+ <mapID target="pdbfts" url="html/features/pdbsequencefetcher.html#pdbfts" />
<mapID target="siftsmapping" url="html/features/siftsmapping.html" />
<mapID target="pdbchooser" url="html/features/structurechooser.html" />
<mapID target="selectcolbyannot" url="html/features/columnFilterByAnnotation.html" />
<mapID target="ensemblfetch" url="html/features/ensemblsequencefetcher.html" />
<mapID target="uniprotfetcher" url="html/features/uniprotsequencefetcher.html" />
+ <mapID target="uniprotfts" url="html/features/uniprotsequencefetcher.html#uniprotfts" />
<mapID target="urllinks" url="html/webServices/urllinks.html" />
<mapID target="linksprefs" url="html/features/preferences.html#links" />
<em>Calculating PCAs for aligned sequences</em><br />Jalview can
perform PCA analysis on both proteins and nucleotide sequence
alignments. In both cases, components are generated by an
- eigenvector decomposition of the matrix formed from the sum of
- substitution matrix scores at each aligned position between each
- pair of sequences - computed with one of the available score
- matrices, such as <a href="scorematrices.html#blosum62">BLOSUM62</a>,
+ eigenvector decomposition of the matrix formed from pairwise similarity
+ scores between each pair of sequences. The similarity score model is
+ selected on the <a href="calculations.html">calculations dialog</a>, and
+ may use one of the available score matrices, such as
+ <a href="scorematrices.html#blosum62">BLOSUM62</a>,
<a href="scorematrices.html#pam250">PAM250</a>, or the <a
href="scorematrices.html#simplenucleotide">simple single
- nucleotide substitution matrix</a>. The options available for
- calculation are given in the <strong><em>Change
- Parameters</em></strong> menu.
+ nucleotide substitution matrix</a>, or by sequence percentage identity,
+ or sequence feature similarity.
</p>
<img src="pcaviewer.gif">
<p>
</p>
<p>
<strong><em>Selecting Sequence Leaf Nodes</em></strong><br>
- Selecting sequence ids at the leaves of the tree selects the
+ Selecting sequence IDs at the leaves of the tree selects the
corresponding sequences in the original alignment. These selections
are also reflected in any other analysis windows associated with the
alignment, such as another tree viewer.
</p>
<p>
- <strong><em>Grouping sequences by partitioning the
- tree at a particular distanec</em></strong><br> Clicking anywhere along
+ <strong><em><a name="partitioning">Grouping sequences by partitioning</a> the
+ tree at a particular distance</em></strong><br> Clicking anywhere along
the extent of the tree (but not on a leaf or internal node) defines
a tree 'partition', by cutting every branch of the tree spanning the
depth where the mouse-click occurred. Groups are created containing
sequences at the leaves of each connected sub tree. These groups are
each given a different colour, which are reflected in other windows
- in the same way as if the sequence ids were selected, and can be
+ in the same way as if the sequence IDs were selected, and can be
edited in the same way as user defined sequence groups.
</p>
<p>
identifying specific patterns of conservation and mutation
corresponding to the overall phylogenetic structure, when combined
with the <a href="../colourSchemes/conservation.html">conservation
- based colour scheme</a>.
+ based colour scheme</a>.To distinguish parts of the alignment assigned
+ to different groups, you may also enable the Sequence ID colour
+ scheme via the <a href="../menus/alwcolour.html">Alignment
+ window's Colours menu</a> (<em>Since 2.11</em>).
</p>
<p>
<strong><em>Selecting Subtrees and changing the branch
<p>
<strong>Colour schemes</strong>
</p>
- <p>Jalview allows the user to set a background colour for the
+ <p>Jalview allows the user to set a colour scheme for the
whole alignment view or for each group defined on regions within it.</p>
- <p>To change the background colour, simply select the colour from
+ <p>To change the colour for a view, simply select a new colour scheme from
the "Colour" menu.</p>
<p>To change the colour of a group, right click on any residue
within a group and use the popup menu to define the group colour.</p>
- <p>At the top of the "Colour" menu the tick box
- "Apply Background Colour to all groups". This is ticked by
+ <p>At the top of the "Colour" menu you'll see a tick box
+ "Apply Colour to all groups". This is ticked by
default so that a chosen colour scheme will be applied to all
existing groups. If you wish to maintain the colour scheme for
- defined groups, make sure you deselect this option before changing
- the background colour.</p>
+ defined groups, make sure you deselect this option before selecting
+ a new scheme in the Colour menu.</p>
<p>
The <strong>"Colour→<a
href="../colourSchemes/textcolour.html">Colour Text...</a>"
alt="PDB sequence fetcher (introduced in Jalview 2.9)" />
<p>
- <strong>Searching the PDB Database</strong>
+ <a name="pdbfts"><strong>Searching the PDB Database</strong></a>
</p>
<p>To search the PDB, begin typing in the text box. If the
'autosearch' checkbox is enabled, then the results of your query
sequence alignments and EPS files.
</li>
<li>The <a href="#editing"><strong>"Editing"</strong>
- Preferences</a> tab contains settings affecting the export of
- sequence alignments and EPS files.
+ Preferences</a> tab contains settings affecting behaviour when editing alignments.
</li>
<li>The <a href="../webServices/webServicesPrefs.html"><strong>"Web
Service"</strong> Preferences</a> tab allows you to configure the <a
the backbone atoms in the PDB file will be extracted as annotation
lines shown on the alignment.
<p>
- <em>Default structure viewer</em> - choose JMOL or CHIMERA for
+ <em>Default structure viewer</em> - choose Jmol or CHIMERA for
viewing 3D structures.
<p>
<em>Path to Chimera program</em> - Optional, as Jalview will search
Preferences tab</strong></a>
</p>
<p>
- <em>Default Browser (Unix)</em><br> Its difficult in Java to
+ <em>Default Browser (Unix)</em><br> It's difficult in Java to
detect the default web browser for Unix users. If Jalview can't find
your default web browser, enter the name or full path to your web
browser application.
just those you have configured yourself <em>via</em> the <em>Edit
Links</em> buttons. Press <em>Show all</em> to clear any filters.
</p>
- <p>The links table is prepoulated with persistent URLs for many common
+ <p>The links table is prepopulated with persistent URLs for many common
bioinformatics databases (since 2.10.2). These links are downloaded by Jalview from
the <em>identifiers.org</em> website, and the names and URLs are not
user editable.
allows the user to set a default rendering style for EPS export:
<ul>
<li>"Prompt each time"<br> Choose this to be
- asked select between Lineart and Text each time you make an EPS
+ asked to select between Lineart and Text each time you make an EPS
file.
</li>
<li>"Lineart"<br> EPS files will accurately
ignored if <em>"Automatically set ID width"</em> is set.
</p>
<p>
- <em>Sequence//Start-End Numbering</em><br> The output tab also
+ <em>Sequence/Start-End Numbering</em><br> The output tab also
has a group of checkboxes for each file format. If these are ticked,
then Jalview will write files with the start and end sequence
positions appended to each sequence id:
</p>
<p>
- <strong>Searching the UniProt Database</strong>
+ <a name="uniprotfts"><strong>Searching the UniProt Database</strong></a>
</p>
<p>To search UniProt, simply begin typing in the text box. If the
'autosearch' check box is enabled, then after a short delay (about
</strong> <em>See <a href="../colourSchemes/index.html">colours</a>
for a description of all colour schemes.
</em><br></li>
- <li><strong>By Conservation<br>
+ <li><strong>Sequence ID<br></strong><em>Shades
+ sequences using their Sequence ID colour. Useful when
+ performing <a
+ href="../calculations/treeviewer.html#partitioning">tree
+ based subfamily analysis</a>.
+ </em></li>
+ <li><strong>By Conservation<br>
</strong><em>See <a href="../colourSchemes/conservation.html">Colouring
by Conservation</a>.
</em><br></li>
a description of all colour schemes.
</em><br>
</li>
+ <li><strong>Sequence ID<br></strong><em>Shades
+ sequences using their Sequence ID colour. Useful when performing
+ <a href="../calculations/treeviewer.html#partitioning">tree
+ based subfamily analysis</a>.
+ </em></li>
<li><strong>By Conservation<br>
</strong><em>See <a href="../colourSchemes/conservation.html">Colouring
by Conservation</a>.
--- /dev/null
+# source: IUPAC codes as per http://www.insdc.org/documents/feature_table.html#7.4.1
+DNA
+R AG
+Y TC
+W AT
+S GC
+M AC
+K GT
+H ATC
+B GTC
+V GAC
+D GAT
+N GATC
--- /dev/null
+-- source: ftp://ftp.ncbi.nih.gov/entrez/misc/data/gc.prt (19th March 2018)
+-- SGC3 name edited slightly so as to fit all on one line
+--**************************************************************************
+-- This is the NCBI genetic code table
+-- Initial base data set from Andrzej Elzanowski while at PIR International
+-- Addition of Eubacterial and Alternative Yeast by J.Ostell at NCBI
+-- Base 1-3 of each codon have been added as comments to facilitate
+-- readability at the suggestion of Peter Rice, EMBL
+-- Later additions by Taxonomy Group staff at NCBI
+--
+-- Version 4.2
+-- Added Karyorelict nuclear genetic code 27
+-- Added Condylostoma nuclear genetic code 28
+-- Added Mesodinium nuclear genetic code 29
+-- Added Peritrich nuclear genetic code 30
+-- Added Blastocrithidia nuclear genetic code 31
+--
+-- Version 4.1
+-- Added Pachysolen tannophilus nuclear genetic code 26
+--
+-- Version 4.0
+-- Updated version to reflect numerous undocumented changes:
+-- Corrected start codons for genetic code 25
+-- Name of new genetic code is Candidate Division SR1 and Gracilibacteria
+-- Added candidate division SR1 nuclear genetic code 25
+-- Added GTG as start codon for genetic code 24
+-- Corrected Pterobranchia Mitochondrial genetic code (24)
+-- Added genetic code 24, Pterobranchia Mitochondrial
+-- Genetic code 11 is now Bacterial, Archaeal and Plant Plastid
+-- Fixed capitalization of mitochondrial in codes 22 and 23
+-- Added GTG, ATA, and TTG as alternative start codons to code 13
+--
+-- Version 3.9
+-- Code 14 differs from code 9 only by translating UAA to Tyr rather than
+-- STOP. A recent study (Telford et al, 2000) has found no evidence that
+-- the codon UAA codes for Tyr in the flatworms, but other opinions exist.
+-- There are very few GenBank records that are translated with code 14,
+-- but a test translation shows that retranslating these records with code
+-- 9 can cause premature terminations. Therefore, GenBank will maintain
+-- code 14 until further information becomes available.
+--
+-- Version 3.8
+-- Added GTG start to Echinoderm mitochondrial code, code 9
+--
+-- Version 3.7
+-- Added code 23 Thraustochytrium mitochondrial code
+-- formerly OGMP code 93
+-- submitted by Gertraude Berger, Ph.D.
+--
+-- Version 3.6
+-- Added code 22 TAG-Leu, TCA-stop
+-- found in mitochondrial DNA of Scenedesmus obliquus
+-- submitted by Gertraude Berger, Ph.D.
+-- Organelle Genome Megasequencing Program, Univ Montreal
+--
+-- Version 3.5
+-- Added code 21, Trematode Mitochondrial
+-- (as deduced from: Garey & Wolstenholme,1989; Ohama et al, 1990)
+-- Added code 16, Chlorophycean Mitochondrial
+-- (TAG can translated to Leucine instaed to STOP in chlorophyceans
+-- and fungi)
+--
+-- Version 3.4
+-- Added CTG,TTG as allowed alternate start codons in Standard code.
+-- Prats et al. 1989, Hann et al. 1992
+--
+-- Version 3.3 - 10/13/95
+-- Added alternate intiation codon ATC to code 5
+-- based on complete mitochondrial genome of honeybee
+-- Crozier and Crozier (1993)
+--
+-- Version 3.2 - 6/24/95
+-- Code Comments
+-- 10 Alternative Ciliate Macronuclear renamed to Euplotid Macro...
+-- 15 Blepharisma Macro.. code added
+-- 5 Invertebrate Mito.. GTG allowed as alternate initiator
+-- 11 Eubacterial renamed to Bacterial as most alternate starts
+-- have been found in Archea
+--
+--
+-- Version 3.1 - 1995
+-- Updated as per Andrzej Elzanowski at NCBI
+-- Complete documentation in NCBI toolkit documentation
+-- Note: 2 genetic codes have been deleted
+--
+-- Old id Use id - Notes
+--
+-- id 7 id 4 - Kinetoplast code now merged in code id 4
+-- id 8 id 1 - all plant chloroplast differences due to RNA edit
+--
+--*************************************************************************
+
+Genetic-code-table ::= {
+ {
+ name "Standard" ,
+ name "SGC0" ,
+ id 1 ,
+ ncbieaa "FFLLSSSSYY**CC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "---M------**--*----M---------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Vertebrate Mitochondrial" ,
+ name "SGC1" ,
+ id 2 ,
+ ncbieaa "FFLLSSSSYY**CCWWLLLLPPPPHHQQRRRRIIMMTTTTNNKKSS**VVVVAAAADDEEGGGG",
+ sncbieaa "----------**--------------------MMMM----------**---M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Yeast Mitochondrial" ,
+ name "SGC2" ,
+ id 3 ,
+ ncbieaa "FFLLSSSSYY**CCWWTTTTPPPPHHQQRRRRIIMMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "----------**----------------------MM----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Mold / Protozoan / Coelenterate Mitochondrial; Mycoplasma; Spiroplasma" ,
+ name "SGC3" ,
+ id 4 ,
+ ncbieaa "FFLLSSSSYY**CCWWLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "--MM------**-------M------------MMMM---------------M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Invertebrate Mitochondrial" ,
+ name "SGC4" ,
+ id 5 ,
+ ncbieaa "FFLLSSSSYY**CCWWLLLLPPPPHHQQRRRRIIMMTTTTNNKKSSSSVVVVAAAADDEEGGGG",
+ sncbieaa "---M------**--------------------MMMM---------------M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Ciliate Nuclear; Dasycladacean Nuclear; Hexamita Nuclear" ,
+ name "SGC5" ,
+ id 6 ,
+ ncbieaa "FFLLSSSSYYQQCC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "--------------*--------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Echinoderm Mitochondrial; Flatworm Mitochondrial" ,
+ name "SGC8" ,
+ id 9 ,
+ ncbieaa "FFLLSSSSYY**CCWWLLLLPPPPHHQQRRRRIIIMTTTTNNNKSSSSVVVVAAAADDEEGGGG",
+ sncbieaa "----------**-----------------------M---------------M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Euplotid Nuclear" ,
+ name "SGC9" ,
+ id 10 ,
+ ncbieaa "FFLLSSSSYY**CCCWLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "----------**-----------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Bacterial, Archaeal and Plant Plastid" ,
+ id 11 ,
+ ncbieaa "FFLLSSSSYY**CC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "---M------**--*----M------------MMMM---------------M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Alternative Yeast Nuclear" ,
+ id 12 ,
+ ncbieaa "FFLLSSSSYY**CC*WLLLSPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "----------**--*----M---------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Ascidian Mitochondrial" ,
+ id 13 ,
+ ncbieaa "FFLLSSSSYY**CCWWLLLLPPPPHHQQRRRRIIMMTTTTNNKKSSGGVVVVAAAADDEEGGGG",
+ sncbieaa "---M------**----------------------MM---------------M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ },
+ {
+ name "Alternative Flatworm Mitochondrial" ,
+ id 14 ,
+ ncbieaa "FFLLSSSSYYY*CCWWLLLLPPPPHHQQRRRRIIIMTTTTNNNKSSSSVVVVAAAADDEEGGGG",
+ sncbieaa "-----------*-----------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Blepharisma Macronuclear" ,
+ id 15 ,
+ ncbieaa "FFLLSSSSYY*QCC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "----------*---*--------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Chlorophycean Mitochondrial" ,
+ id 16 ,
+ ncbieaa "FFLLSSSSYY*LCC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "----------*---*--------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Trematode Mitochondrial" ,
+ id 21 ,
+ ncbieaa "FFLLSSSSYY**CCWWLLLLPPPPHHQQRRRRIIMMTTTTNNNKSSSSVVVVAAAADDEEGGGG",
+ sncbieaa "----------**-----------------------M---------------M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Scenedesmus obliquus Mitochondrial" ,
+ id 22 ,
+ ncbieaa "FFLLSS*SYY*LCC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "------*---*---*--------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Thraustochytrium Mitochondrial" ,
+ id 23 ,
+ ncbieaa "FF*LSSSSYY**CC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "--*-------**--*-----------------M--M---------------M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Pterobranchia Mitochondrial" ,
+ id 24 ,
+ ncbieaa "FFLLSSSSYY**CCWWLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSSKVVVVAAAADDEEGGGG",
+ sncbieaa "---M------**-------M---------------M---------------M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Candidate Division SR1 and Gracilibacteria" ,
+ id 25 ,
+ ncbieaa "FFLLSSSSYY**CCGWLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "---M------**-----------------------M---------------M------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Pachysolen tannophilus Nuclear" ,
+ id 26 ,
+ ncbieaa "FFLLSSSSYY**CC*WLLLAPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "----------**--*----M---------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Karyorelict Nuclear" ,
+ id 27 ,
+ ncbieaa "FFLLSSSSYYQQCCWWLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "--------------*--------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Condylostoma Nuclear" ,
+ id 28 ,
+ ncbieaa "FFLLSSSSYYQQCCWWLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "----------**--*--------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Mesodinium Nuclear" ,
+ id 29 ,
+ ncbieaa "FFLLSSSSYYYYCC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "--------------*--------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Peritrich Nuclear" ,
+ id 30 ,
+ ncbieaa "FFLLSSSSYYEECC*WLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "--------------*--------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ } ,
+ {
+ name "Blastocrithidia Nuclear" ,
+ id 31 ,
+ ncbieaa "FFLLSSSSYYEECCWWLLLLPPPPHHQQRRRRIIIMTTTTNNKKSSRRVVVVAAAADDEEGGGG",
+ sncbieaa "----------**-----------------------M----------------------------"
+ -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ }
+}
+++ /dev/null
-<?xml version="1.0"?>
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-<mapping xmlns="http://castor.exolab.org/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://castor.exolab.org/ ../schemas/castor-mapping.xsd">
-<!--
- History: Originally created from EMBL_common_V1.0
- Updated on 24th April 2007 for WsDBFetch Service move to EMBL_Services_V1.1.xsd
- Updated May 2016 for EMBL XML 1.2 JAL-2113 JAL-2114
- see ftp://ftp.sra.ebi.ac.uk/meta/xsd/sra_1_5/ENA.embl.xsd
- see http://www.ebi.ac.uk/ena/submit/data-formats
- -->
- <class name="jalview.datamodel.xdb.embl.EmblFile">
- <map-to xml="ROOT"/>
- <field name="text" type="string">
- <bind-xml node="text"/>
- </field>
- <field name="entries" type="jalview.datamodel.xdb.embl.EmblEntry" collection="vector">
- <bind-xml name="entry"/>
- </field>
- <field name="errors" type="jalview.datamodel.xdb.embl.EmblError" collection="vector">
- <bind-xml name="Error"/>
- </field>
- </class>
- <class name="jalview.datamodel.xdb.embl.EmblEntry">
- <field name="accession" type="string">
- <bind-xml name="accession" node="attribute"/>
- </field>
- <!--
- in EMBL XML 1.2 sequence/@version became entry/version
- entry/@version became entry/@entryVersion
- -->
- <field name="sequenceVersion" type="string">
- <bind-xml name="version" node="attribute"/>
- </field>
- <field name="entryVersion" type="string">
- <bind-xml name="entryVersion" node="attribute"/>
- </field>
- <field name="dataClass" type="string">
- <bind-xml name="dataClass" node="attribute"/>
- </field>
- <field name="taxonomicDivision" type="string">
- <bind-xml name="taxonomicDivision" node="attribute"/>
- </field>
- <field name="moleculeType" type="string">
- <bind-xml name="moleculeType" node="attribute"/>
- </field>
- <field name="sequenceLength" type="string">
- <bind-xml name="sequenceLength" node="attribute"/>
- </field>
- <field name="topology" type="string">
- <bind-xml name="topology" node="attribute" location="type"/>
- </field>
- <field name="firstPublicDate" type="string">
- <bind-xml name="firstPublic" node="attribute"/>
- </field>
- <field name="firstPublicRelease" type="string">
- <bind-xml name="firstPublicRelease" node="attribute"/>
- </field>
- <field name="lastUpdatedDate" type="string">
- <bind-xml name="lastUpdated" node="attribute"/>
- </field>
- <field name="lastUpdatedRelease" type="string">
- <bind-xml name="lastUpdatedRelease" node="attribute"/>
- </field>
- <field name="description" type="string">
- <bind-xml name="description" node="element"/>
- </field>
- <field name="keywords" type="string" collection="vector">
- <bind-xml name="keyword" node="element"/>
- </field>
- <field name="features" type="jalview.datamodel.xdb.embl.EmblFeature" collection="vector">
- <bind-xml name="feature"/>
- </field>
- <field name="dbRefs" type="jalview.datamodel.DBRefEntry" collection="vector">
- <bind-xml name="xref" />
- </field>
- <field name="sequence" type="jalview.datamodel.xdb.embl.EmblSequence">
- <bind-xml name="sequence"/>
- </field>
- </class>
- <class name="jalview.datamodel.xdb.embl.EmblSequence">
- <field name="sequence" type="string">
- <bind-xml node="text"/>
- </field>
- </class>
- <class name="jalview.datamodel.xdb.embl.EmblFeature" verify-constructable="false">
- <field name="name" type="string">
- <bind-xml name="name" node="attribute"/>
- </field>
- <field name="location" type="string">
- <bind-xml name="location" node="attribute"/>
- </field>
- <field name="dbRefs" type="jalview.datamodel.DBRefEntry" collection="vector">
- <bind-xml name="xref" node="element"/>
- </field>
- <field name="qualifiers" type="jalview.datamodel.xdb.embl.Qualifier" collection="vector">
- <bind-xml name="qualifier"/>
- </field>
- </class>
- <class name="jalview.datamodel.DBRefEntry" verify-constructable="false">
- <field name="accessionId" type="java.lang.String">
- <bind-xml name="id" node="attribute"/>
- </field>
- <field name="source" type="java.lang.String">
- <bind-xml name="db" node="attribute"/>
- </field>
- <field name="version" type="string">
- <bind-xml name="secondaryId" node="attribute"/>
- </field>
- </class>
- <class name="jalview.datamodel.xdb.embl.Qualifier" verify-constructable="false">
- <field name="name">
- <bind-xml name="name" node="attribute"/>
- </field>
- <field name="evidence" type="string" collection="array">
- <bind-xml name="evidence" node="element"/>
- </field>
- <field name="values" type="string" collection="array">
- <bind-xml name="value" node="element"/>
- </field>
- </class>
-</mapping>
action.close_all = Close all
action.load_project = Load Project
action.save_project = Save Project
+action.save_project_as = Save Project as...
action.quit = Quit
action.expand_views = Expand Views
action.gather_views = Gather Views
action.new_view = New View
action.close = Close
action.add = Add
-action.save_as_default = Save as default
action.save_as = Save as...
action.save = Save
-action.cancel_fetch = Cancel Fetch
action.change_font = Change Font
action.change_font_tree_panel = Change Font (Tree Panel)
action.colour = Colour
action.view_flanking_regions = Show flanking regions
label.view_flanking_regions = Show sequence data either side of the subsequences involved in this alignment
label.structures_manager = Structures Manager
-label.nickname = Nickname:
label.url = URL
label.url\: = URL:
label.input_file_url = Enter URL or Input File
label.service_action = Service Action:
label.post_url = POST URL:
label.url_suffix = URL Suffix
-label.sequence_source = Sequence Source
label.per_seq = per Sequence
label.result_vertically_separable = Results are vertically separable
label.amend = Amend
label.average_distance_identity = Average Distance Using % Identity
label.neighbour_joining_identity = Neighbour Joining Using % Identity
label.choose_calculation = Choose Calculation
-label.treecalc_title = {0} Using {1}
+label.calc_title = {0} Using {1}
label.tree_calc_av = Average Distance
label.tree_calc_nj = Neighbour Joining
-label.select_score_model = Select score model
label.score_model_pid = % Identity
label.score_model_blosum62 = BLOSUM62
label.score_model_pam250 = PAM 250
label.colourScheme_nucleotide = Nucleotide
label.colourScheme_t-coffee_scores = T-Coffee Scores
label.colourScheme_rna_helices = By RNA Helices
+label.colourScheme_sequence_id = Sequence ID Colour
label.blc = BLC
label.fasta = Fasta
label.msf = MSF
label.channels = Channels
label.channel_title_item_count = {0} ({1})
label.blog_item_published_on_date = {0} {1}
-label.select_das_service_from_table = Select a DAS service from the table to read a full description here.</font></html>
label.session_update = Session Update
label.new_vamsas_session = New Vamsas Session
action.load_vamsas_session = Load Vamsas Session...
label.save_colours = Save Colours
label.load_colours_tooltip = Load feature colours and filters from file
label.save_colours_tooltip = Save feature colours and filters to file
-label.fetch_das_features = Fetch DAS Features
label.selected_database_to_fetch_from = Selected {0} database {1} to fetch from {2}
label.database_param = Database: {0}
label.example = Example
label.no_pdb_id_in_file = No PDB Id in File
label.couldnt_read_pasted_text = Couldn't read the pasted text {0}
label.error_parsing_text = Error parsing text
-label.enter_local_das_source = Enter Nickname & URL of Local DAS Source
-label.you_can_only_edit_or_remove_local_das_sources = You can only edit or remove local DAS Sources!
-label.public_das_source = Public DAS source - not editable
label.input_alignment_from_url = Input Alignment From URL
label.input_alignment = Input Alignment
label.couldnt_import_as_vamsas_session = Couldn't import {0} as a new vamsas session.
label.error_loading_file = Error loading file
label.problems_opening_file = Encountered problems opening {0}!!
label.file_open_error = File open error
-label.no_das_sources_selected_warn = No das sources were selected.\nPlease select some sources and\ntry again.
-label.no_das_sources_selected_title = No DAS Sources Selected
label.colour_scheme_exists_overwrite = Colour scheme {0} exists.\nContinue saving colour scheme as {1}?"
label.duplicate_scheme_name = Duplicate scheme name
label.jalview_new_questionnaire = There is a new Questionnaire available. Would you like to complete it now ?\n
label.create_sequence_feature = Create Sequence Feature...
label.edit_sequence = Edit Sequence
label.edit_sequences = Edit Sequences
+label.insert_gap = Insert 1 gap
+label.insert_gaps = Insert {0} gaps
+label.delete_gap = Delete 1 gap
+label.delete_gaps = Delete {0} gaps
label.sequence_details = Sequence Details
label.jmol_help = Jmol Help
label.chimera_help = Chimera Help
label.connections = Connections
label.output = Output
label.editing = Editing
-label.das_settings = DAS Settings
label.web_services = Web Services
label.right_click_to_edit_currently_selected_parameter = Right click to edit currently selected parameter.
label.let_jmol_manage_structure_colours = Let Jmol manage structure colours
label.details = Details
label.options = Options
label.parameters = Parameters
-label.available_das_sources = Available DAS Sources
-label.full_details = Full Details
-label.authority = Authority
-label.type = Type
label.proxy_server = Proxy Server
label.file_output = File Output
label.select_input_type = Select input type
label.add_sequences = Add Sequences
label.new_window = New Window
label.split_window = Split Window
-label.refresh_available_sources = Refresh Available Sources
-label.use_registry = Use Registry
-label.add_local_source = Add Local Source
label.set_as_default = Set as Default
label.show_labels = Show labels
action.background_colour = Background Colour...
label.view_and_change_parameters_before_running_calculation = View and change parameters before running calculation
label.view_documentation = View documentation
label.select_return_type = Select return type
-label.translation_of_params = Translation of {0}
+label.translation_of_params = Translation of {0} (Table {1})
label.features_for_params = Features for - {0}
label.annotations_for_params = Annotations for - {0}
label.generating_features_for_params = Generating features for - {0}
label.unable_start_web_service_analysis = Unable to start web service analysis
label.job_couldnt_be_started_check_input = The Job couldn't be started. Please check your input, and the Jalview console for any warning messages.
label.prompt_each_time = Prompt each time
-label.use_source = Use Source
label.couldnt_save_project = Couldn't save project
label.error_whilst_saving_current_state_to = Error whilst saving current state to {0}
label.error_whilst_loading_project_from = Error whilst loading project from {0}
label.save_alignment_to_file = Save Alignment to file
label.save_features_to_file = Save Features to File
label.save_annotation_to_file = Save Annotation to File
-label.no_features_on_alignment = No features found on alignment
label.save_pdb_file = Save PDB File
label.save_text_to_file = Save Text to File
label.save_state = Save State
exception.invocation_target_calling_url = InvocationTargetException while calling openURL: {0}
exception.illegal_access_calling_url = IllegalAccessException while calling openURL: {0}
exception.interrupted_launching_browser = InterruptedException while launching browser: {0}
-exception.das_source_doesnt_support_sequence_command = Source {0} does not support the sequence command.
-exception.invalid_das_source = Invalid das source: {0}
exception.ebiembl_retrieval_failed_on = EBI EMBL XML retrieval failed on {0}:{1}
exception.no_pdb_records_for_chain = No PDB Records for {0} chain {1}
exception.unexpected_handling_rnaml_translation_for_pdb = Unexpected exception when handling RNAML translation of PDB data
status.processing = Processing...
status.refreshing_web_service_menus = Refreshing Web Service Menus
status.collecting_job_results = Collecting job results.
-status.fetching_das_sequence_features = Fetching DAS Sequence Features
-status.no_das_sources_active = No DAS Sources Active
-status.das_feature_fetching_cancelled = DAS Feature Fetching Cancelled
-status.das_feature_fetching_complete = DAS Feature Fetching Complete
status.fetching_db_refs = Fetching db refs
status.loading_cached_pdb_entries = Loading Cached PDB Entries
status.searching_for_pdb_structures = Searching for PDB Structures
warn.urls_no_jaba = URLs without any JABA Services
info.validate_jabaws_server = Validate JabaWS Server ?\n(Look in console output for results)
label.test_server = Test Server?
-info.you_want_jalview_to_find_uniprot_accessions = Do you want Jalview to find\nUniprot Accession ids for given sequence names?
-label.find_uniprot_accession_ids = Find Uniprot Accession Ids
label.new_sequence_fetcher = New Sequence Fetcher
label.additional_sequence_fetcher = Additional Sequence Fetcher
label.select_database_retrieval_source = Select Database Retrieval Source
warn.name_cannot_be_duplicate = User-defined URL names must be unique and cannot be MIRIAM ids
label.output_seq_details = Output Sequence Details to list all database references
label.urllinks = Links
-label.default_cache_size = Default Cache Size
action.clear_cached_items = Clear Cached Items
label.togglehidden = Show hidden regions
label.quality_descr = Alignment Quality based on Blosum62 scores
label.pca = PCA
label.create_image_of = Create {0} image of {1}
label.click_to_edit = Click to edit, right-click for menu
+label.backupfiles_confirm_delete = Confirm delete
+label.backupfiles_confirm_delete_old_files = Delete the following older backup files? (see the Backups tab in Preferences for more options)
+label.backupfiles_confirm_save_file = Confirm save file
+label.backupfiles_confirm_save_file_backupfiles_roll_wrong = Something possibly went wrong with the backups of this file.
+label.backupfiles_confirm_save_new_saved_file_ok = The new saved file seems okay.
+label.backupfiles_confirm_save_new_saved_file_not_ok = The new saved file might not be okay.
+label.backups = Backups
+label.backup = Backup
+label.backup_files = Backup Files
+label.enable_backupfiles = Enable backup files
+label.backup_filename_strategy = Backup filename strategy
+label.append_to_filename = Append to filename (%n is replaced by the backup number)
+label.append_to_filename_tooltip = %n in the text will be replaced by the backup number. The text will appear after the filename. See the summary box above.
+label.index_digits = Number of digits to use for the backup number (%n)
+label.summary_of_backups_scheme = Summary of backup scheme
+label.increment_index = Increase appended text numbers - newest file has largest number.
+label.reverse_roll = "Roll" appended text numbers - newest backup file is always number 1.
+label.keep_files = Deleting old backup files
+label.keep_all_backup_files = Do not delete old backup files
+label.keep_only_this_number_of_backup_files = Keep only this number of most recent backup files
+label.autodelete_old_backup_files = Autodelete old backup files:
+label.always_ask = Always ask
+label.auto_delete = Automatically delete
+label.filename = filename
+label.braced_oldest = (oldest)
+label.braced_newest = (most recent)
label.configuration = Configuration
label.configure_feature_tooltip = Click to configure variable colour or filters
+label.schemes = Schemes
+label.customise = Customise
+label.default = Default
+label.single_file = Single backup
+label.keep_all_versions = Keep all versions
+label.rolled_backups = Rolled backup files
+label.previously_saved_scheme = Previously saved scheme
+label.no_backup_files = NO BACKUP FILES
+label.include_backup_files = Include backup files
+label.cancel_changes = Cancel changes
+label.warning_confirm_change_reverse = Warning!\nIf you change the increment/decrement of the backup filename number, without changing the suffix or number of digits,\nthis may cause loss of backup files created with the previous backup filename scheme.\nAre you sure you wish to do this?
+label.change_increment_decrement = Change increment/decrement?
+label.was_previous = was {0}
+label.newerdelete_replacement_line = Backup file\n''{0}''\t(modified {2}, size {4})\nis to be deleted and replaced by apparently older file\n''{1}''\t(modified {3}, size {5}).
+label.confirm_deletion_or_rename = Confirm deletion of ''{0}'' or rename to ''{1}''?
+label.newerdelete_line = Backup file\n''{0}''\t(modified {2}, size {4})\nis to be deleted but is newer than the oldest remaining backup file\n''{1}''\t(modified {3}, size {5}).
+label.confirm_deletion = Confirm deletion of ''{0}''?
+label.delete = Delete
+label.rename = Rename
+label.keep = Keep
+label.file_info = (modified {0}, size {1})
+label.annotation_name = Annotation Name
+label.annotation_description = Annotation Description
+label.edit_annotation_name_description = Edit Annotation Name/Description
+label.alignment = alignment
+label.pca = PCA
+label.create_image_of = Create {0} image of {1}
+label.click_to_edit = Click to edit, right-click for menu
+label.by_annotation_tooltip = Annotation Colour is configured from the main Colour menu
action.close_all = Cerrar todo
action.load_project = Cargar proyecto
action.save_project = Guardar proyecto
+action.save_project_as = Guardar proyecto como...
action.quit = Salir
action.expand_views = Expandir vistas
action.gather_views = Capturar vistas
action.new_view = Nueva vista
action.close = Cerrar
action.add = Añadir
-action.save_as_default = Guardar como por defecto
action.save_as = Guardar como
action.save = Guardar
-action.cancel_fetch = Cancelar búsqueda
action.change_font = Cambiar Fuente
action.change_font_tree_panel = Cambiar fuente (panel del árbol)
action.colour = Color
action.view_flanking_regions = Mostrar flancos
label.view_flanking_regions = Mostrar los datos de la secuencia a ambos lados de las subsecuencias implicadas en este alineamiento
label.structures_manager = Administrar estructuras
-label.nickname = Sobrenombre:
label.url\: = URL:
label.url = URL
label.input_file_url = Introducir URL en el fichero de entrada
label.service_action = Acción de servicio:
label.post_url = POST URL:
label.url_suffix = URL Sufijo
-label.sequence_source = Fuente de la secuencia
label.per_seq = por secuencia
label.result_vertically_separable = Los resultados son separables verticalmente
label.amend = Modificar
label.average_distance_identity = Distancia Media Usando % de Identidad
label.neighbour_joining_identity = Unir vecinos utilizando % de Identidad
label.choose_calculation = Elegir el cálculo
-label.treecalc_title = {0} utilizando {1}
+label.calc_title = {0} utilizando {1}
label.tree_calc_av = Distancia media
label.tree_calc_nj = Unir vecinos
-label.select_score_model = Selecciones modelo de puntuación
label.score_model_pid = % Identidad
label.score_model_blosum62 = BLOSUM62
label.score_model_pam250 = PAM 250
label.colourScheme_nucleotide = Nucleótido
label.colourScheme_t-coffee_scores = Puntuación del T-Coffee
label.colourScheme_rna_helices = Por hélices de RNA
+label.colourScheme_sequence_id = Color de ID de secuencia
label.blc = BLC
label.fasta = Fasta
label.msf = MSF
label.channels = Canales
label.channel_title_item_count = {0} ({1})
label.blog_item_published_on_date = {0} {1}
-label.select_das_service_from_table = Seleccionar servicio DAS de la tabla para leer una descripción completa aquÃ.
label.session_update = Actualizar sesión
label.new_vamsas_session = Nueva sesión Vamsas
action.save_vamsas_session = Guardar Sesión Vamsas
label.save_colours = Guardar colores
label.load_colours_tooltip = Cargar colores y filtros desde fichero
label.save_colours_tooltip = Guardar colores y filtros en fichero
-label.fetch_das_features = Recuperar funciones DAS
label.selected_database_to_fetch_from = Seleccionada {0} Base de datos {1} para buscar de {2}
label.database_param = Base de datos: {0}
label.example = Ejemplo
label.no_pdb_id_in_file = No hay un Id PDB en el fichero
label.couldnt_read_pasted_text = No se pudo leer el texto pegado {0}
label.error_parsing_text = Error analizando el texto
-label.enter_local_das_source = Intruduzca el Nickname & URL de la fuente DAS local
-label.you_can_only_edit_or_remove_local_das_sources = Sólo puedes editar o eliminar fuentes DAS locales!
-label.public_das_source = Fuente pública DAS - no editable
label.input_alignment_from_url = Alineamiento de entrada desde URL
label.input_alignment = Alineamiento de entrada
label.couldnt_import_as_vamsas_session = No se pudo importar {0} como una nueva sesión Vamsas.
label.error_loading_file = Error al cargar el fichero
label.problems_opening_file = Encontrados problemas al abrir el fichero {0}!!
label.file_open_error = Error al abrir el fichero
-label.no_das_sources_selected_warn = No han sido seleccionadas fuentes DAS.\nPor favor, seleccione algunas fuentes y\npruebe de nuevo.
-label.no_das_sources_selected_title = No han sido seleccionadas fuentes DAS
label.colour_scheme_exists_overwrite = El esquema de colores {0} ya existe.\nContinuar guardando el esquema de colores como {1}?
label.duplicate_scheme_name = Duplicar nombre de esquema
label.jalview_new_questionnaire = Hay un nuevo cuestionario disponible. Querr\u00EDa completarlo ahora ?\n
label.create_sequence_feature = Crear función de secuencia
label.edit_sequence = Editar secuencia
label.edit_sequences = Editar secuencias
+label.insert_gap = Insertar 1 hueco
+label.insert_gaps = Insertar {0} huecos
+label.delete_gap = Borrar 1 hueco
+label.delete_gaps = Borrar {0} huecos
label.sequence_details = Detalles de la secuencia
label.jmol_help = Ayuda de Jmol
# Todos/Todas is gender-sensitive, but currently only used for feminine (cadena / anotación)!
label.connections = Conexiones
label.output = Salida
label.editing = Edición
-label.das_settings = Configuración DAS
label.web_services = Servicios web
label.right_click_to_edit_currently_selected_parameter = Haga clic en el botón derecho para editar el parámetro seleccionado actualmente.
label.let_jmol_manage_structure_colours = Permitir que Jmol gestione la estructuras cromáticas
label.details = Detalles
label.options = Opciones
label.parameters = Paramétros
-label.available_das_sources = Fuentes DAS disponibles
-label.full_details = Detalles completos
-label.authority = Autoridad
-label.type = Tipo
label.proxy_server = Servidor proxy
label.file_output = Fichero de salida
label.select_input_type = Seleccionar el tipo de entrada
label.sort_alignment_new_tree = Alinear el alineamiento con el nuevo árbol
label.add_sequences = Añadir secuencias
label.new_window = Nueva ventana
-label.refresh_available_sources = Refrescar las fuentes disponibles
-label.use_registry = Utilizar el registro
-label.add_local_source = Añadir fuente local
label.set_as_default = Establecer por defecto
label.show_labels = Mostrar etiquetas
label.associate_nodes_with = Asociar nodos con
label.view_and_change_parameters_before_running_calculation = Ver y cambiar los parámetros antes de lanzar el cálculo
label.view_documentation = Ver documentación
label.select_return_type = Seleccionar el tipo de retorno
-label.translation_of_params = Traducción de {0}
+label.translation_of_params = Traducción de {0} (Tabla {1})
label.features_for_params = CaracterÃsticas de - {0}
label.annotations_for_params = Anotaciones de - {0}
label.generating_features_for_params = Generando caracterÃsticas de - {0}
label.unable_start_web_service_analysis = No es posible iniciar el servicio web de análisis
label.job_couldnt_be_started_check_input = El trabajo no puede arrancarse. Por favor, compruebe los parámetros de entrada y los mensajes de advertencia de la consola de Jalview.
label.prompt_each_time = Preguntar siempre
-label.use_source = Fuente
label.couldnt_save_project = No es posible guardar el proyecto
label.error_whilst_saving_current_state_to = Error mientras se guardaba el estado a {0}
label.error_whilst_loading_project_from = Error cargando el proyecto desde {0}
label.save_alignment_to_file = Guardar Alineamiento en fichero
label.save_features_to_file = Guardar CaracterÃsticas en un fichero
label.save_annotation_to_file = Guardar Anotación en un fichero
-label.no_features_on_alignment = No se han encontrado caracterÃsticas en el alineamiento
label.save_pdb_file = Guardar fichero PDB
label.save_text_to_file = Guardar Texto en un fichero
label.save_state = Guardar estado
exception.invocation_target_calling_url = InvocationTargetException mientras se invocaba openURL: {0}
exception.illegal_access_calling_url = IllegalAccessException mientras se invocaba openURL: {0}
exception.interrupted_launching_browser = InterruptedException mientras se lanzaba el navegador: {0}
-exception.das_source_doesnt_support_sequence_command = La fuente {0} no soporta el comando sequence.
-exception.invalid_das_source = Fuente DAS no válida: {0}
exception.ebiembl_retrieval_failed_on = La recuperación de datos EBI EMBL XML ha fallado en {0}:{1}
exception.no_pdb_records_for_chain = No se han encontrado registros {0} para la cadena {1}
exception.unexpected_handling_rnaml_translation_for_pdb = Excepcion inesperada cuando se traducÃan a RNAML los datos PDB
status.processing = Procesando...
status.refreshing_web_service_menus = Refrescando los menús de servicios web
status.collecting_job_results = Recolectando los resultados de los trabajos.
-status.fetching_das_sequence_features = Recuperando las caracterÃsticas DAS de las secuencias
-status.no_das_sources_active = No existe ninguna fuente DAS activa
-status.das_feature_fetching_cancelled = Recuperación de caracterÃsticas DAS cancelada
-status.das_feature_fetching_complete = Recuperación de caracterÃsticas DAS completada
status.fetching_db_refs = Recuperando db refs
label.font_doesnt_have_letters_defined = La fuente no tiene letras definidas\npor lo que no puede emplease\ncon datos de alineamientos
label.font_too_small = Tamaño de la letra es demasiado pequeña
warn.url_must_contain = La URL de la secuencia debe contener $SEQUENCE_ID$, $DB_ACCESSION$ o un regex
info.validate_jabaws_server = \u00BFValidar el servidor JabaWS?\n(Consulte la consola de salida para obtener los resultados)
label.test_server = ¿Probar servidor?
-info.you_want_jalview_to_find_uniprot_accessions = \u00BFDesea que Jalview encuentre\nUniprot Accession ids para los nombres de secuencias dados?
-label.find_uniprot_accession_ids = Buscar Uniprot Accession Ids
label.new_sequence_fetcher = Añadir recuperador de secuencias
label.additional_sequence_fetcher = Recuperador de secuencia adicional
label.select_database_retrieval_source = Seleccionar fuente de recuperación de bases de datos
warn.name_cannot_be_duplicate = Los nombres URL definidos por el usuario deben ser únicos y no pueden ser ids de MIRIAM
label.output_seq_details = Seleccionar Detalles de la secuencia para ver todas
label.urllinks = Enlaces
-label.default_cache_size = Tamaño del caché por defecto
action.clear_cached_items = Borrar elementos en caché
label.quality_descr = Calidad de alineamiento basándose en puntuación Blosum62
label.conservation_descr = Conservación del alineamiento total menos de {0}% huecos
label.pca = ACP
label.create_image_of = Crear imagen {0} de {1}
label.click_to_edit = Haga clic para editar, clic en el botón derecho para ver el menú
+label.backupfiles_confirm_delete = Confirmar borrar
+label.backupfiles_confirm_delete_old_files = ¿Borrar los siguientes archivos? (ver la pestaña 'Copias' de la ventana de Preferencias para más opciones)
+label.backupfiles_confirm_save_file = Confirmar guardar archivo
+label.backupfiles_confirm_save_file_backupfiles_roll_wrong = Posiblemente algo está mal con los archivos de respaldos.
+label.backupfiles_confirm_save_new_saved_file_ok = El nuevo archivo guardado parece estar bien.
+label.backupfiles_confirm_save_new_saved_file_not_ok = El nuevo archivo guardado podrÃa no estar bien.
+label.backups = Respaldos
+label.backup = Respaldo
+label.backup_files = Archivos de respaldos
+label.enable_backupfiles = Habilitar archivos de respaldos
+label.backup_filename_strategy = Estrategia de nombres de archivo de respaldos
+label.append_to_filename = Adjuntar texto (%n es reemplazado por el número de respaldo)
+label.append_to_filename_tooltip = %n en el texto será reemplazado por el número de respaldo. El texto será después del nombre del archivo. Vea el cuadro de resumen arriba.
+label.index_digits = Número de dÃgitos a utilizar para el número de respaldo.
+label.summary_of_backups_scheme = Resumen del esquema de copias de seguridad
+label.increment_index = Aumente los números de texto adjuntos: el archivo más nuevo tiene el número más grande
+label.reverse_roll = Ciclos de texto adjuntos: el respaldo más reciente es siempre el número 1
+label.keep_files = Borrando los respaldos antiguos
+label.keep_all_backup_files = No borrar respaldos antiguas
+label.keep_only_this_number_of_backup_files = Mantenga solo este número de respaldos más recientes
+label.autodelete_old_backup_files = Borrer automáticamente respaldos antiguos:
+label.always_ask = Pregunta siempre
+label.auto_delete = Borrer automáticamente
+label.filename = nombre_de_archivo
+label.braced_oldest = (mas antiguo)
+label.braced_newest = (mas nuevo)
label.configuration = Configuración
label.configure_feature_tooltip = Haga clic para configurar el color o los filtros
+label.schemes = Esquemas
+label.customise = Personalizado
+label.default = Defecto
+label.single_file = Solo uno respaldo
+label.keep_all_versions = Mantener todas las versiones
+label.rolled_backups = Ciclos respaldos
+label.previously_saved_scheme = Esquema previamente guardado
+label.no_backup_files = NO ARCHIVOS DE RESPALDOS
+label.include_backup_files = Incluir archivos de respaldos
+label.cancel_changes = Cancelar cambios
+label.warning_confirm_change_reverse = ¡Advertencia!\nSi cambia el incremento/decremento del número de archivos de respaldos, sin cambiar el sufijo o número de dÃgitos,\nesto puede causar la pérdida de los archivos de respaldos creados con el esquema anterior de nombre de archivo de respaldos.\n¿Está seguro de que desea hacer esto?
+label.change_increment_decrement = ¿Cambiar de incremento/decremento?
+label.was_previous = era {0}
+label.newerdelete_replacement_line = El archivo de respaldo\n''{0}''\t(modificado {2}, tamaño {4})\nserá borrado y reemplazarse por un archivo aparentemente más antiguo\n''{1}''\t(modificado {3}, tamaño {5}).
+label.confirm_deletion_or_rename = Confirmar borrar ''{0}'', o cambiar el nombre a ''{1}''?
+label.newerdelete_line = El archivo de respaldo\n''{0}''\t(modificado {2}, tamaño {4})\nserá borrado pero es mas nuevo que el archivo de respaldo restante más antiguo\n''{1}''\t(modified {3}, size {5}).
+label.confirm_deletion = Confirmar eliminar ''{0}''?
+label.delete = Borrar
+label.rename = Cambiar
+label.keep = Mantener
+label.file_info = (modificado {0}, tamaño {1})
+label.annotation_name = Nombre de la anotación
+label.annotation_description = Descripción de la anotación
+label.edit_annotation_name_description = Editar el nombre/descripción de la anotación
+label.alignment = alineamiento
+label.pca = ACP
+label.create_image_of = Crear imagen {0} de {1}
+label.click_to_edit = Haga clic para editar, clic en el botón derecho para ver el menú
+label.by_annotation_tooltip = El color de anotación se configura desde el menú principal de colores
+++ /dev/null
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
--->
-<!--DOCTYPE schema PUBLIC "-//W3C/DTD XML Schema Version 1.0//EN"
- "http://www.w3.org/TR/2000/WD-xmlschema-1-20000225/structures.dtd"-->
- <!--
- Castor Object Mapping XML Schema
-
- Namespace: http://castor.exolab.org/
- System: http://castor.exolab.org/mapping.xsd
- Public: -//EXOLAB/Castor Object Mapping Schema Version 1.0//EN
-
- *Note*: This schema is under evolution and subject to change.
-
- -->
- <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- targetNamespace="http://castor.exolab.org/"
- xmlns="http://castor.exolab.org/"
- version="0.9.4">
-
- <xsd:element name="mapping">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0" maxOccurs="1" />
- <xsd:element ref="include" minOccurs="0" maxOccurs="unbounded" />
- <xsd:element ref="class" minOccurs="0" maxOccurs="unbounded" />
- <xsd:element ref="key-generator" minOccurs="0" maxOccurs="unbounded" />
- </xsd:sequence>
- </xsd:complexType>
- </xsd:element>
-
- <xsd:element name="include">
- <xsd:complexType>
- <xsd:attribute name="href" type="xsd:string" use="required"/>
- </xsd:complexType>
- </xsd:element>
-
- <xsd:element name="class">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0" maxOccurs="1" />
- <xsd:element ref="cache-type" minOccurs="0" maxOccurs="1" />
- <xsd:element ref="map-to" minOccurs="0" maxOccurs="1" />
- <xsd:choice minOccurs="1">
- <xsd:element ref="field" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element ref="container" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:ID" use="required"/>
- <xsd:attribute name="extends" type="xsd:IDREF" use="optional"/>
- <xsd:attribute name="depends" type="xsd:IDREF" use="optional"/>
- <xsd:attribute name="identity" type="xsd:NMTOKENS" use="optional"/>
- <xsd:attribute name="access" default="shared" use="optional">
- <xsd:simpleType>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="read-only"/>
- <xsd:enumeration value="shared"/>
- <xsd:enumeration value="exclusive"/>
- <xsd:enumeration value="db-locked"/>
- </xsd:restriction>
- </xsd:simpleType>
- </xsd:attribute>
- <xsd:attribute name="key-generator" type="xsd:string" use="optional"/>
- <xsd:attribute name="auto-complete" type="xsd:boolean" use="optional" default="false"/>
- <xsd:attribute name="verify-constructable" type="xsd:boolean" use="optional" default="true"/>
- </xsd:complexType>
- </xsd:element>
-
- <xsd:element name="map-to">
- <xsd:complexType>
- <xsd:attribute name="table" type="xsd:NMTOKEN" use="optional"/>
- <xsd:attribute name="xml" type="xsd:string" use="optional"/>
- <xsd:attribute name="ns-uri" type="xsd:string" use="optional"/>
- <xsd:attribute name="ns-prefix" type="xsd:NMTOKEN" use="optional"/>
- <xsd:attribute name="ldap-dn" type="xsd:string" use="optional"/>
- <xsd:attribute name="ldap-oc" type="xsd:string" use="optional"/>
- </xsd:complexType>
- </xsd:element>
-
- <xsd:element name="field">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0" maxOccurs="1" />
- <xsd:element ref="sql" minOccurs="0" maxOccurs="1"/>
- <xsd:element ref="bind-xml" minOccurs="0" maxOccurs="1"/>
- <xsd:element ref="ldap" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
-
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="type" type="xsd:string" use="optional"/>
- <xsd:attribute name="required" type="xsd:boolean" use="optional" default="false"/>
- <xsd:attribute name="transient" type="xsd:boolean" use="optional" default="false"/>
- <xsd:attribute name="direct" type="xsd:boolean" use="optional" default="false"/>
- <xsd:attribute name="lazy" type="xsd:boolean" use="optional" default="false"/>
- <xsd:attribute name="container" type="xsd:boolean" use="optional"/>
- <xsd:attribute name="get-method" type="xsd:string" use="optional"/>
- <xsd:attribute name="has-method" type="xsd:string" use="optional"/>
- <xsd:attribute name="set-method" type="xsd:string" use="optional"/>
- <xsd:attribute name="create-method" type="xsd:string" use="optional"/>
- <xsd:attribute name="handler" type="xsd:string" use="optional"/>
- <xsd:attribute name="collection" use="optional">
- <xsd:simpleType>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="array"/>
- <xsd:enumeration value="vector"/>
- <xsd:enumeration value="arraylist"/>
- <xsd:enumeration value="hashtable"/>
- <xsd:enumeration value="collection"/>
- <xsd:enumeration value="set"/>
- <xsd:enumeration value="map"/>
- <xsd:enumeration value="enumerate"/>
- </xsd:restriction>
- </xsd:simpleType>
- </xsd:attribute>
- </xsd:complexType>
- </xsd:element>
-
- <xsd:element name="container">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element name="description" type="xsd:string" minOccurs="0" maxOccurs="1" />
- <xsd:element ref="field" minOccurs="1"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:NMTOKEN" use="required"/>
- <xsd:attribute name="type" type="xsd:NMTOKEN" use="optional"/>
- <xsd:attribute name="required" type="xsd:boolean" use="optional" default="false"/>
- <xsd:attribute name="direct" type="xsd:boolean" use="optional" default="false"/>
- <xsd:attribute name="get-method" type="xsd:NMTOKEN" use="optional"/>
- <xsd:attribute name="set-method" type="xsd:NMTOKEN" use="optional"/>
- <xsd:attribute name="create-method" type="xsd:NMTOKEN" use="optional"/>
- </xsd:complexType>
- </xsd:element>
-
- <xsd:element name="sql">
- <xsd:complexType>
- <xsd:attribute name="name" type="xsd:NMTOKENS" use="optional"/>
- <xsd:attribute name="type" type="xsd:string" use="optional"/>
- <xsd:attribute name="many-table" type="xsd:NMTOKEN" use="optional"/>
- <xsd:attribute name="many-key" type="xsd:NMTOKENS" use="optional"/>
- <xsd:attribute name="read-only" type="xsd:boolean" use="optional" default="false"/>
-
- <!-- signals that this field is transient for database mapping (ie should be ignored) -->
- <xsd:attribute name="transient" type="xsd:boolean" use="optional"/>
-
-
- <xsd:attribute name="dirty" default="check" use="optional">
- <xsd:simpleType>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="check"/>
- <xsd:enumeration value="ignore"/>
- </xsd:restriction>
- </xsd:simpleType>
- </xsd:attribute>
- </xsd:complexType>
- </xsd:element>
-
- <!--
- The 'bind-xml' element is used for specifying XML specific databinding
- properties and behavior for a specific field. 'bind-xml' may only appear
- as a child of a 'field' element.
- -->
- <xsd:element name="bind-xml">
- <xsd:annotation>
- <xsd:documentation>
- The 'bind-xml' element is used for specifying XML specific databinding
- properties and behavior for a specific field. 'bind-xml' may only appear
- as a child of a 'field' element.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexType>
-
- <xsd:sequence>
- <xsd:element ref="class" minOccurs="0" maxOccurs="1"/>
- <xsd:element name="property" type="propertyType" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
-
- <!--
- An optional attribute used for specifying the XML name for the
- field associated with the 'bind-xml' element.
- -->
- <xsd:attribute name="name" type="xsd:QName" use="optional">
- <xsd:annotation>
- <xsd:documentation>
- An optional attribute used for specifying the XML name for the
- field associated with the 'bind-xml' element.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
-
- <xsd:attribute name="type" type="xsd:NMTOKEN" use="optional"/>
-
- <!--
- Allows specifying how Castor should automatically determines
- the XML name of this field when no name has been specified.
- -->
- <xsd:attribute name="auto-naming" use="optional">
- <xsd:annotation>
- <xsd:documentation>
- Allows specifying how Castor should automatically determines
- the XML name of this field when no name has been specified.
- In most cases the XML name is determined by using the field name,
- but in some cases the user may want to use the Class name of
- the field type. This attribute allows choosing between the
- two approaches. If this attribute is not specified, the field
- name is used as the XML name.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:simpleType>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="deriveByClass"/>
- <xsd:enumeration value="deriveByField"/>
- </xsd:restriction>
- </xsd:simpleType>
- </xsd:attribute>
-
- <!--
- Allows specifying a nested location path for this field,
- the value should just be a simplified XPath like value
- where names are separated by "/".
- -->
- <xsd:attribute name="location" type="xsd:string" use="optional">
- <xsd:annotation>
- <xsd:documentation>
- Allows specifying a nested location path for this field,
- the value should just be a simplified XPath like value
- where names are separated by "/".
- </xsd:documentation>
- </xsd:annotation>
- </xsd:attribute>
-
- <!-- Allows overriding the matching rule -->
- <xsd:attribute name="matches" type="xsd:string" use="optional"/>
-
-
- <!-- Signal that this field should be marshalled as a reference -->
- <xsd:attribute name="reference" type="xsd:boolean" use="optional"/>
-
- <!-- NodeType for the XML node -->
- <xsd:attribute name="node" use="optional">
- <xsd:simpleType>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="attribute"/>
- <xsd:enumeration value="element"/>
- <xsd:enumeration value="namespace"/>
- <xsd:enumeration value="text"/>
- </xsd:restriction>
- </xsd:simpleType>
- </xsd:attribute>
-
- <xsd:attribute name="QName-prefix" type="xsd:NMTOKEN" use="optional"/>
-
- <!-- Signal that this field is transient for XML (ie should be ignored) -->
- <xsd:attribute name="transient" type="xsd:boolean" use="optional"/>
-
- </xsd:complexType>
- </xsd:element>
-
-
-
- <xsd:element name="ldap">
- <xsd:complexType>
- <xsd:attribute name="name" type="xsd:NMTOKEN" use="optional"/>
- </xsd:complexType>
- </xsd:element>
-
- <xsd:element name="key-generator">
- <xsd:complexType>
- <xsd:sequence>
- <xsd:element ref="param" minOccurs="0" maxOccurs="unbounded" />
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd:ID" use="required"/>
- <xsd:attribute name="alias" type="xsd:string" use="optional"/>
- </xsd:complexType>
- </xsd:element>
-
- <xsd:element name="cache-type">
- <xsd:complexType>
- <xsd:attribute name="type" type="xsd:string" use="optional" default="count-limited" />
- <xsd:attribute name="capacity" type="xsd:integer" use="optional"/>
- </xsd:complexType>
- </xsd:element>
-
- <xsd:element name="param">
- <xsd:complexType>
- <xsd:attribute name="name" type="xsd:string" use="required"/>
- <xsd:attribute name="value" type="xsd:string" use="required"/>
- </xsd:complexType>
- </xsd:element>
-
-
- <xsd:complexType name="propertyType">
- <xsd:sequence>
- <xsd:element name="name" type="xsd:string"/>
- <xsd:element name="value" type="xsd:string"/>
- </xsd:sequence>
- </xsd:complexType>
-
-
- </xsd:schema>
</xs:annotation>
</xs:attribute>
<xs:attributeGroup ref="jv:swingwindow" />
+ <xs:attribute name="linkToAllViews" use="optional" default="false" type="xs:boolean" />
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="PcaViewer" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="sequencePoint" minOccurs="1" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:attribute name="sequenceRef" type="xs:string" />
+ <xs:attributeGroup ref="jv:position" />
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="axis" minOccurs="3" maxOccurs="3">
+ <xs:annotation>
+ <xs:documentation>
+ endpoints of X, Y and Z axes in that order
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:attributeGroup ref="jv:position" />
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="seqPointMin">
+ <xs:complexType>
+ <xs:attributeGroup ref="jv:position" />
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="seqPointMax">
+ <xs:complexType>
+ <xs:attributeGroup ref="jv:position" />
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="pcaData" type="jv:PcaDataType" />
+ </xs:sequence>
+ <xs:attribute name="title" type="xs:string" />
+ <xs:attribute name="scoreModelName" type="xs:string" />
+ <xs:attribute name="xDim" type="xs:int" />
+ <xs:attribute name="yDim" type="xs:int" />
+ <xs:attribute name="zDim" type="xs:int" />
+ <xs:attribute name="bgColour" type="xs:int" />
+ <xs:attribute name="scaleFactor" type="xs:float" />
+ <xs:attribute name="showLabels" type="xs:boolean" />
+ <xs:attribute name="linkToAllViews" type="xs:boolean" />
+ <xs:attributeGroup ref="jv:SimilarityParams" />
+ <xs:attributeGroup ref="jv:swingwindow" />
</xs:complexType>
</xs:element>
<xs:element name="FeatureSettings" minOccurs="0">
<xs:attribute name="predefinedColours" type="xs:boolean"
use="optional" />
</xs:complexType>
-
+ <xs:attributeGroup name="SimilarityParams">
+ <xs:annotation>
+ <xs:documentation>
+ parameters that condition a similarity score calculation
+ </xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="includeGaps" type="xs:boolean" />
+ <xs:attribute name="matchGaps" type="xs:boolean" />
+ <xs:attribute name="includeGappedColumns" type="xs:boolean" />
+ <xs:attribute name="denominateByShortestLength" type="xs:boolean" />
+ </xs:attributeGroup>
+ <xs:attributeGroup name="position">
+ <xs:attribute name="xPos" type="xs:float" />
+ <xs:attribute name="yPos" type="xs:float" />
+ <xs:attribute name="zPos" type="xs:float" />
+ </xs:attributeGroup>
+ <xs:complexType name="PcaDataType">
+ <xs:annotation>
+ <xs:documentation>
+ The results of a PCA calculation
+ </xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element name="pairwiseMatrix" type="jv:DoubleMatrix" />
+ <xs:element name="tridiagonalMatrix" type="jv:DoubleMatrix" />
+ <xs:element name="eigenMatrix" type="jv:DoubleMatrix" />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="DoubleVector">
+ <xs:sequence>
+ <xs:element name="v" type="xs:double" minOccurs="0" maxOccurs="unbounded" />
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="DoubleMatrix">
+ <xs:sequence>
+ <xs:element name="row" type="jv:DoubleVector" minOccurs="0" maxOccurs="unbounded" />
+ <xs:element name="D" minOccurs="0" type="jv:DoubleVector" />
+ <xs:element name="E" minOccurs="0" type="jv:DoubleVector" />
+ </xs:sequence>
+ <xs:attribute name="rows" type="xs:int" />
+ <xs:attribute name="columns" type="xs:int" />
+ </xs:complexType>
</xs:schema>
+++ /dev/null
-###############################################################################
-# Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
-# Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
-# The Jalview Authors are detailed in the 'AUTHORS' file.
-###############################################################################
-# THE CASTOR PROPERTIES FILE
-# This file specifies values for Castor run-time which may be configured
-# by the user.
-# $Id$
-
-# This section defines Backwards compatibility switches.
-#
-# Hashtable/Map default mapping.
-# For backward compatibility with 0.9.5.2 and earlier.
-#
-#org.exolab.castor.xml.saveMapKeys=false
-
-# Defines the default XML parser to be used by Castor.
-# The parser must implement org.xml.sax.Parser.
-#
-org.exolab.castor.parser=org.apache.xerces.parsers.SAXParser
-
-# Defines the (default) XML serializer factory to use by Castor, which must
-# implement org.exolab.castor.xml.SerializerFactory; default is
-# org.exolab.castor.xml.XercesXMLSerializerFactory
-#
-# When using Castor XML with JDK 5.0, you may switch to the XercesJDK5XMLSerializerFactory
-# which will use the Xerces instance as shipped with the JDK itself; this avoids
-# having to download another Xerces instance and installing it.
-org.exolab.castor.xml.serializer.factory=org.exolab.castor.xml.XercesXMLSerializerFactory
-#org.exolab.castor.xml.serializer.factory=org.exolab.castor.xml.XercesJDK5XMLSerializerFactory
-
-# Defines the NodeType for use with Java primitive types (int, long, boolean,
-# etc). This value is only used by the Introspector. Valid values are either
-# "attribute" or "element". By default, all primitives are marshaled as
-# attributes. Uncomment the following line to change the NodeType to element.
-#
-#org.exolab.castor.xml.introspector.primitive.nodetype=element
-
-# Defines the Naming "style" or conventions to use when creating XML names
-# from Java class or field names.
-# Valid values are as follows:
-# -----------------------------------------------------------------
-# lower (default) | All names are lowercase with hyphens
-# | separating words.
-# |
-# | Example: personInfo = person-info
-# -----------------------------------------------------------------
-# mixed | All names are mixed case, with Uppercase
-# | character as the first letter of a new word.
-# |
-# | Example: personInfo = personInfo
-# | Example: FooBar = fooBar
-# -----------------------------------------------------------------
-# {Any ClassName} | Any Class which implements
-# | org.exolab.castor.xml.XMLNaming
-# -----------------------------------------------------------------
-#
-# By default, all names are treated as the "lower" option. To preserve the
-# Java mixed-case conventions, uncomment the following line.
-#
-#org.exolab.castor.xml.naming=mixed
-
-###############################
-# REGULAR EXPRESSION EVALUATORS
-#
-# Defines the Regular Expression Evaluator to be used by Castor.
-# The evaluator must implement org.exolab.castor.util.RegExpEvaluator.
-#
-# Uncomment the following to basically suppress Regular expressions evaluation:
-#org.exolab.castor.regexp=org.exolab.castor.xml.util.AlwaysTrueRegExpEvaluator
-#
-# An implementation which uses the Jakarta RegExp library:
-#org.exolab.castor.regexp=org.exolab.castor.util.JakartaRegExpEvaluator
-#
-# An implementation which uses the Jakarta ORO library:
-org.exolab.castor.regexp=org.exolab.castor.util.JakartaOroEvaluator
-
-# True if all documents should be indented on output by default.
-# Defaults to false.
-#
-#org.exolab.castor.indent=true
-
-# True if xml documents should be validated by the SAX Parser
-# Defaults to false.
-#
-org.exolab.castor.parser.validation=false
-
-# True for parser to support Namespaces.
-# Defaults to false.
-#
-org.exolab.castor.parser.namespaces=false
-
-# True if all documents should be validated by the marshaling framework
-# Defaults to true.
-#
-org.exolab.castor.marshalling.validation=true
-
-# Comma separated list of SAX 2 features that should be enabled for the
-# default parser.
-#
-#org.exolab.castor.sax.features=
-
-# Comma separated list of SAX 2 features that should be disabled for the
-# default parser.
-#
-#org.exolab.castor.sax.features-to-disable
-
-# True if debugging output should be generated.
-# Defaults to false.
-#
-org.exolab.castor.debug=false
-
-# List of collection handlers for Java 1.1 and Java 1.2 run-times:
-#
-org.exolab.castor.mapping.collections=\
- org.exolab.castor.mapping.loader.J1CollectionHandlers,\
- org.exolab.castor.mapping.loader.J2CollectionHandlers
-
-# List of persistence factories for the supported database servers:
-#
-org.exolab.castor.jdo.engines=\
- org.exolab.castor.jdo.drivers.OracleFactory,\
- org.exolab.castor.jdo.drivers.PostgreSQLFactory,\
- org.exolab.castor.jdo.drivers.SybaseFactory,\
- org.exolab.castor.jdo.drivers.SQLServerFactory,\
- org.exolab.castor.jdo.drivers.DB2Factory,\
- org.exolab.castor.jdo.drivers.InformixFactory,\
- org.exolab.castor.jdo.drivers.HsqlFactory,\
- org.exolab.castor.jdo.drivers.InstantDBFactory,\
- org.exolab.castor.jdo.drivers.InterbaseFactory,\
- org.exolab.castor.jdo.drivers.MySQLFactory,\
- org.exolab.castor.jdo.drivers.SapDbFactory,\
- org.exolab.castor.jdo.drivers.GenericFactory,\
- org.exolab.castor.jdo.drivers.DerbyFactory,\
- org.castor.jdo.drivers.PointbaseFactory,\
- org.castor.jdo.drivers.ProgressFactory
-
-# List of key generator factories:
-#
-org.exolab.castor.jdo.keyGeneratorFactories=\
- org.exolab.castor.jdo.keygen.MaxKeyGeneratorFactory,\
- org.exolab.castor.jdo.keygen.HighLowKeyGeneratorFactory,\
- org.exolab.castor.jdo.keygen.IdentityKeyGeneratorFactory,\
- org.exolab.castor.jdo.keygen.SequenceKeyGeneratorFactory,\
- org.exolab.castor.jdo.keygen.UUIDKeyGeneratorFactory
-
-# Collection handlers for the source code generator:
-#
-org.exolab.castor.builder.type.j2=\
- org.exolab.castor.builder.FieldInfoFactoryJ2
-org.exolab.castor.builder.type.j1=\
- org.exolab.castor.builder.FieldInfoFactory
-org.exolab.castor.builder.type.odmg=\
- org.exolab.castor.builder.FieldInfoFactoryODMG30
-
-# Configures the default time zone to apply to dates/times fetched from
-# database fields (if not already part of the data). Specify same format as
-# in java.util.TimeZone.getTimeZone, or the empty string to use the computer's
-# local time zone. Please see http://de.wikipedia.org/wiki/Zeitzone for
-# detailed information about time zones.
-#
-org.exolab.castor.jdo.defaultTimeZone=
-#org.exolab.castor.jdo.defaultTimeZone=GMT-8:00
-
-# List of TxSynchronizeable implementations:
-#
-#org.exolab.castor.persist.TxSynchronizable=
-
-# Sets the buffer size in bytes for fetching LOBs (this is dependent upon
-# the JDBC driver implementation). The value below == 5k.
-#
-org.exolab.castor.jdo.lobBufferSize=5120
-
-# True if database configuration should be initalization
-# when loading it (default: true).
-#
-#org.exolab.castor.jdo.DatabaseInitializeAtLoad=true
-
-# True if proxy classes should be used for JDBC connections and
-# prepared statements.
-# Defaults to true.
-#
-org.exolab.castor.persist.useProxies=false
-
-# MappingLoader implementations:
-#
-org.castor.mapping.loaderFactories=\
- org.castor.mapping.JDOMappingLoaderFactory,\
- org.castor.mapping.XMLMappingLoaderFactory
-
-# Cache implementations:
-#
-org.castor.cache.Factories=\
- org.castor.cache.simple.NoCacheFactory,\
- org.castor.cache.simple.TimeLimitedFactory,\
- org.castor.cache.simple.CountLimitedFactory,\
- org.castor.cache.simple.UnlimitedFactory,\
- org.castor.cache.distributed.FKCacheFactory,\
- org.castor.cache.distributed.JcsCacheFactory,\
- org.castor.cache.distributed.JCacheFactory,\
- org.castor.cache.distributed.CoherenceCacheFactory,\
- org.castor.cache.distributed.OsCacheFactory,\
- org.castor.cache.hashbelt.FIFOHashbeltFactory,\
- org.castor.cache.hashbelt.LRUHashbeltFactory,\
- org.castor.cache.distributed.EHCacheFactory,\
- org.castor.cache.distributed.GigaspacesCacheFactory
-
-# TransactionManagerFactory implementations:
-#
-org.castor.transactionmanager.Factories=\
- org.castor.transactionmanager.WebSphereTransactionManagerFactory,\
- org.castor.transactionmanager.WebSphere5TransactionManagerFactory,\
- org.castor.transactionmanager.WebSphere51TransactionManagerFactory,\
- org.castor.transactionmanager.LocalTransactionManagerFactory,\
- org.castor.transactionmanager.JNDIENCTransactionManagerFactory,\
- org.castor.transactionmanager.JOTMTransactionManagerFactory
-
-# Selects whether the TransactionManager should be initialized at registration,
-# or lazily when requested for the first time.
-# Defaults to false.
-#
-org.castor.transactionmanager.InitializeAtRegistration=false
-
-# Instructs Castor JDO to use the JDBC 3.0-specific features to obtain
-# the generated value of an identity column.
-# Defaults to false.
-#
-org.castor.jdo.use.jdbc30=false
-
-# Specifies whether to use ANSI-compliant SQL for MS SQL Server.
-# Defaults to false.
-#
-org.exolab.castor.jdo.sqlserver.ansi-compliant=false
-
-# Specifyies whether the ClassDescriptorResolver should (automatically) search
-# for and consult with package mapping files (.castor.xml) to retrieve class
-# descriptor information; on by default.
-# Defaults to true.
-#
-#org.exolab.castor.xml.loadPackageMappings=false
}
/**
+ * Translates cDNA using the specified code table
*
* @return
*/
- public AlignmentI translateCdna()
+ public AlignmentI translateCdna(GeneticCodeI codeTable)
{
AlignedCodonFrame acf = new AlignedCodonFrame();
for (s = 0; s < sSize; s++)
{
SequenceI newseq = translateCodingRegion(selection.get(s),
- seqstring[s], acf, pepseqs);
+ seqstring[s], acf, pepseqs, codeTable);
if (newseq != null)
{
* @param acf
* Definition of global ORF alignment reference frame
* @param proteinSeqs
+ * @param codeTable
* @return sequence ready to be added to alignment.
*/
protected SequenceI translateCodingRegion(SequenceI selection,
String seqstring, AlignedCodonFrame acf,
- List<SequenceI> proteinSeqs)
+ List<SequenceI> proteinSeqs, GeneticCodeI codeTable)
{
List<int[]> skip = new ArrayList<>();
int[] skipint = null;
/*
* Filled up a reading frame...
*/
- AlignedCodon alignedCodon = new AlignedCodon(cdp[0], cdp[1],
- cdp[2]);
- String aa = ResidueProperties.codonTranslate(new String(codon));
+ AlignedCodon alignedCodon = new AlignedCodon(cdp[0], cdp[1], cdp[2]);
+ String aa = codeTable.translate(new String(codon));
rf = 0;
final String gapString = String.valueOf(gapChar);
if (aa == null)
*/
package jalview.analysis;
+import jalview.api.AlignViewportI;
+import jalview.api.FinderI;
import jalview.datamodel.AlignmentI;
+import jalview.datamodel.Range;
import jalview.datamodel.SearchResultMatchI;
import jalview.datamodel.SearchResults;
import jalview.datamodel.SearchResultsI;
import jalview.datamodel.SequenceGroup;
import jalview.datamodel.SequenceI;
+import jalview.datamodel.VisibleContigsIterator;
import jalview.util.Comparison;
-import java.util.ArrayList;
import java.util.List;
import java.util.Vector;
import com.stevesoft.pat.Regex;
-public class Finder
+/**
+ * Implements the search algorithm for the Find dialog
+ */
+public class Finder implements FinderI
{
- /**
- * Implements the search algorithms for the Find dialog box.
+ /*
+ * matched residue locations
*/
- SearchResultsI searchResults;
+ private SearchResultsI searchResults;
- AlignmentI alignment;
+ /*
+ * sequences matched by id or description
+ */
+ private Vector<SequenceI> idMatches;
- SequenceGroup selection = null;
+ /*
+ * the viewport to search over
+ */
+ private AlignViewportI viewport;
- Vector<SequenceI> idMatch = null;
+ /*
+ * sequence index in alignment to search from
+ */
+ private int sequenceIndex;
- boolean caseSensitive = false;
+ /*
+ * column position in sequence to search from, base 0
+ * - absolute column number including any hidden columns
+ * (position after start of last match for a repeat search)
+ */
+ private int columnIndex;
- private boolean includeDescription = false;
+ /**
+ * Constructor for searching a viewport
+ *
+ * @param av
+ */
+ public Finder(AlignViewportI av)
+ {
+ this.viewport = av;
+ this.sequenceIndex = 0;
+ this.columnIndex = -1;
+ }
- boolean findAll = false;
+ @Override
+ public void findAll(String theSearchString, boolean matchCase,
+ boolean searchDescription)
+ {
+ /*
+ * search from the start
+ */
+ sequenceIndex = 0;
+ columnIndex = -1;
- Regex regex = null;
+ doFind(theSearchString, matchCase, searchDescription, true);
- /**
- * holds last-searched position between calls to find(false)
- */
- int seqIndex = 0, resIndex = -1;
+ /*
+ * reset to start for next search
+ */
+ sequenceIndex = 0;
+ columnIndex = -1;
+ }
- public Finder(AlignmentI alignment, SequenceGroup selection)
+ @Override
+ public void findNext(String theSearchString, boolean matchCase,
+ boolean searchDescription)
{
- this.alignment = alignment;
- this.selection = selection;
+ doFind(theSearchString, matchCase, searchDescription, false);
+
+ if (searchResults.isEmpty() && idMatches.isEmpty())
+ {
+ /*
+ * search failed - reset to start for next search
+ */
+ sequenceIndex = 0;
+ columnIndex = -1;
+ }
}
/**
- * restart search at given sequence and residue on alignment and (optionally)
- * contained in selection
+ * Performs a 'find next' or 'find all'
*
- * @param alignment
- * @param selectionGroup
- * @param seqIndex
- * @param resIndex
+ * @param theSearchString
+ * @param matchCase
+ * @param searchDescription
+ * @param findAll
*/
- public Finder(AlignmentI alignment, SequenceGroup selectionGroup,
- int seqIndex, int resIndex)
+ protected void doFind(String theSearchString, boolean matchCase,
+ boolean searchDescription, boolean findAll)
{
- this(alignment, selectionGroup);
- this.seqIndex = seqIndex;
- this.resIndex = resIndex;
- }
+ String searchString = matchCase ? theSearchString
+ : theSearchString.toUpperCase();
+ Regex searchPattern = new Regex(searchString);
+ searchPattern.setIgnoreCase(!matchCase);
- public boolean find(String searchString)
- {
- boolean hasResults = false;
- if (!caseSensitive)
- {
- searchString = searchString.toUpperCase();
- }
- regex = new Regex(searchString);
- regex.setIgnoreCase(!caseSensitive);
searchResults = new SearchResults();
- idMatch = new Vector<SequenceI>();
- String item = null;
- boolean found = false;
- int end = alignment.getHeight();
+ idMatches = new Vector<>();
- // /////////////////////////////////////////////
-
- if (selection != null)
+ SequenceGroup selection = viewport.getSelectionGroup();
+ if (selection != null && selection.getSize() < 1)
{
- if ((selection.getSize() < 1)
- || ((selection.getEndRes() - selection.getStartRes()) < 2))
- {
- selection = null;
- }
+ selection = null; // ? ignore column-only selection
}
- SearchResultMatchI lastm = null;
- while (!found && (seqIndex < end))
- {
- SequenceI seq = alignment.getSequenceAt(seqIndex);
+ AlignmentI alignment = viewport.getAlignment();
+ int end = alignment.getHeight();
- if ((selection != null && selection.getSize() > 0)
- && !selection.getSequences(null).contains(seq))
+ while (sequenceIndex < end)
+ {
+ SequenceI seq = alignment.getSequenceAt(sequenceIndex);
+ boolean found = findNextMatch(seq, searchString, searchPattern,
+ searchDescription);
+ if (found && !findAll)
{
- seqIndex++;
- resIndex = -1;
-
- continue;
+ return;
}
- if (resIndex < 0)
+ if (!found)
{
- resIndex = 0;
- // test for one off matches - sequence position and sequence ID
- // //// is the searchString a residue number?
- try
- {
- int res = Integer.parseInt(searchString);
- // possibly a residue number - check if valid for seq
- if (seq.getEnd() >= res)
- {
- searchResults.addResult(seq, res, res);
- hasResults = true;
- // resIndex=seq.getLength();
- // seqIndex++;
- if (!findAll)
- {
- found = true;
- break;
- }
- }
- } catch (NumberFormatException ex)
- {
- }
-
- if (regex.search(seq.getName()) && !idMatch.contains(seq))
- {
- idMatch.addElement(seq);
- hasResults = true;
- if (!findAll)
- {
- // stop and return the match
- found = true;
- break;
- }
- }
-
- if (isIncludeDescription() && seq.getDescription() != null
- && regex.search(seq.getDescription())
- && !idMatch.contains(seq))
- {
- idMatch.addElement(seq);
- hasResults = true;
- if (!findAll)
- {
- // stop and return the match
- found = true;
- break;
- }
- }
+ sequenceIndex++;
+ columnIndex = -1;
}
- item = seq.getSequenceAsString();
+ }
+ }
- if ((selection != null)
- && (selection.getEndRes() < alignment.getWidth() - 1))
- {
- item = item.substring(0, selection.getEndRes() + 1);
- }
+ /**
+ * Answers the start-end column range of the visible region of
+ * <code>sequence</code> starting at or after the given <code>column</code>.
+ * If there are no hidden columns, this just returns the remaining width of
+ * the sequence. The range is restricted to the current <code>selection</code>
+ * if there is one. Answers null if there are no visible columns at or after
+ * <code>column</code>.
+ */
+ protected Range getNextVisibleSequenceRegion(SequenceI sequence,
+ int column)
+ {
+ int seqColStart = column;
+ int seqColEnd = sequence.getLength() - 1;
- // /Shall we ignore gaps???? - JBPNote: Add Flag for forcing this or not
- StringBuilder noGapsSB = new StringBuilder();
- int insertCount = 0;
- List<Integer> spaces = new ArrayList<Integer>();
+ /*
+ * restrict search to (next) visible column region,
+ * in case there are hidden columns
+ */
+ AlignmentI alignment = viewport.getAlignment();
+ VisibleContigsIterator visibleRegions = alignment.getHiddenColumns()
+ .getVisContigsIterator(column, alignment.getWidth(),
+ false);
+ int[] visible = visibleRegions.hasNext() ? visibleRegions.next() : null;
+ if (visible == null)
+ {
+ columnIndex = seqColEnd + 1;
+ return null;
+ }
+ seqColStart = Math.max(seqColStart, visible[0]);
+ seqColEnd = Math.min(seqColEnd, visible[1]);
- for (int j = 0; j < item.length(); j++)
+ /*
+ * restrict search to selected region if there is one
+ */
+ SequenceGroup selection = viewport.getSelectionGroup();
+ if (selection != null)
+ {
+ int selectionStart = selection.getStartRes();
+ int selectionEnd = selection.getEndRes();
+ if (selectionStart > seqColEnd || selectionEnd < seqColStart)
{
- if (!Comparison.isGap(item.charAt(j)))
- {
- noGapsSB.append(item.charAt(j));
- spaces.add(Integer.valueOf(insertCount));
- }
- else
- {
- insertCount++;
- }
+ /*
+ * sequence region doesn't overlap selection region
+ */
+ columnIndex = seqColEnd + 1;
+ return null;
}
+ seqColStart = Math.max(seqColStart, selectionStart);
+ seqColEnd = Math.min(seqColEnd, selectionEnd);
+ }
- String noGaps = noGapsSB.toString();
- for (int r = resIndex; r < noGaps.length(); r++)
- {
+ return new Range(seqColStart, seqColEnd);
+ }
- if (regex.searchFrom(noGaps, r))
- {
- resIndex = regex.matchedFrom();
-
- if ((selection != null && selection.getSize() > 0) && (resIndex
- + spaces.get(resIndex) < selection.getStartRes()))
- {
- continue;
- }
- // if invalid string used, then regex has no matched to/from
- int sres = seq.findPosition(resIndex + spaces.get(resIndex));
- int eres = seq.findPosition(regex.matchedTo() - 1
- + (spaces.get(regex.matchedTo() - 1)));
- // only add result if not contained in previous result
- if (lastm == null || (lastm.getSequence() != seq
- || (!(lastm.getStart() <= sres
- && lastm.getEnd() >= eres))))
- {
- lastm = searchResults.addResult(seq, sres, eres);
- }
- hasResults = true;
- if (!findAll)
- {
- // thats enough, break and display the result
- found = true;
- resIndex++;
-
- break;
- }
-
- r = resIndex;
- }
- else
- {
- break;
- }
- }
+ /**
+ * Finds the next match in the given sequence, starting at column at
+ * <code>columnIndex</code>. Answers true if a match is found, else false. If
+ * a match is found, <code>columnIndex</code> is advanced to the column after
+ * the start of the matched region, ready for a search from the next position.
+ *
+ * @param seq
+ * @param searchString
+ * @param searchPattern
+ * @param matchDescription
+ * @return
+ */
+ protected boolean findNextMatch(SequenceI seq, String searchString,
+ Regex searchPattern, boolean matchDescription)
+ {
+ SequenceGroup selection = viewport.getSelectionGroup();
+ if (selection != null && !selection.contains(seq))
+ {
+ /*
+ * this sequence is not in the selection - advance to next sequence
+ */
+ return false;
+ }
- if (!found)
+ if (columnIndex < 0)
+ {
+ /*
+ * at start of sequence; try find by residue number, in sequence id,
+ * or (optionally) in sequence description
+ */
+ if (doNonMotifSearches(seq, searchString, searchPattern,
+ matchDescription))
{
- seqIndex++;
- resIndex = -1;
+ return true;
}
}
- /**
- * We now search the Id string in the main search loop. for (int id = 0; id
- * < alignment.getHeight(); id++) { if
- * (regex.search(alignment.getSequenceAt(id).getName())) {
- * idMatch.addElement(alignment.getSequenceAt(id)); hasResults = true; } }
+ /*
+ * search for next match in sequence string
*/
- return hasResults;
- }
-
- /**
- * @return the alignment
- */
- public AlignmentI getAlignment()
- {
- return alignment;
+ int end = seq.getLength();
+ while (columnIndex < end)
+ {
+ if (searchNextVisibleRegion(seq, searchPattern))
+ {
+ return true;
+ }
+ }
+ return false;
}
/**
- * @param alignment
- * the alignment to set
+ * Searches the sequence, starting from <code>columnIndex</code>, and adds the
+ * next match (if any) to <code>searchResults</code>. The search is restricted
+ * to the next visible column region, and to the <code>selection</code> region
+ * if there is one. Answers true if a match is added, else false.
+ *
+ * @param seq
+ * @param searchPattern
+ * @return
*/
- public void setAlignment(AlignmentI alignment)
+ protected boolean searchNextVisibleRegion(SequenceI seq, Regex searchPattern)
{
- this.alignment = alignment;
- }
+ Range visible = getNextVisibleSequenceRegion(seq, columnIndex);
+ if (visible == null)
+ {
+ return false;
+ }
+ String seqString = seq.getSequenceAsString(visible.start, visible.end + 1);
+ String noGaps = AlignSeq.extractGaps(Comparison.GapChars, seqString);
- /**
- * @return the caseSensitive
- */
- public boolean isCaseSensitive()
- {
- return caseSensitive;
- }
+ if (searchPattern.search(noGaps))
+ {
+ int sequenceStartPosition = seq.findPosition(visible.start);
+ recordMatch(seq, searchPattern, sequenceStartPosition);
+ return true;
+ }
+ else
+ {
+ /*
+ * no match - advance columnIndex past this visible region
+ * so the next visible region (if any) is searched next
+ */
+ columnIndex = visible.end + 1;
+ }
- /**
- * @param caseSensitive
- * the caseSensitive to set
- */
- public void setCaseSensitive(boolean caseSensitive)
- {
- this.caseSensitive = caseSensitive;
+ return false;
}
/**
- * @return the findAll
+ * Adds the match held in the <code>searchPattern</code> Regex to the
+ * <code>searchResults</code>, unless it is a subregion of the last match
+ * recorded. <code>columnIndex</code> is advanced to the position after the
+ * start of the matched region, ready for the next search. Answers true if a
+ * match was added, else false.
+ *
+ * @param seq
+ * @param searchPattern
+ * @param firstResiduePosition
+ * @return
*/
- public boolean isFindAll()
+ protected boolean recordMatch(SequenceI seq, Regex searchPattern,
+ int firstResiduePosition)
{
- return findAll;
- }
+ /*
+ * get start/end of the match in sequence coordinates
+ */
+ int offset = searchPattern.matchedFrom();
+ int matchStartPosition = firstResiduePosition + offset;
+ int matchEndPosition = matchStartPosition
+ + searchPattern.charsMatched() - 1;
+
+ /*
+ * update columnIndex to next column after the start of the match
+ * (findIndex returns a value base 1, columnIndex is held base 0)
+ */
+ columnIndex = seq.findIndex(matchStartPosition);
- /**
- * @param findAll
- * the findAll to set
- */
- public void setFindAll(boolean findAll)
- {
- this.findAll = findAll;
- }
+ /*
+ * check that this match is not a subset of the previous one (JAL-2302)
+ */
+ List<SearchResultMatchI> matches = searchResults.getResults();
+ SearchResultMatchI lastMatch = matches.isEmpty() ? null
+ : matches.get(matches.size() - 1);
- /**
- * @return the selection
- */
- public jalview.datamodel.SequenceGroup getSelection()
- {
- return selection;
- }
+ if (lastMatch == null || !lastMatch.contains(seq, matchStartPosition,
+ matchEndPosition))
+ {
+ searchResults.addResult(seq, matchStartPosition, matchEndPosition);
+ return true;
+ }
- /**
- * @param selection
- * the selection to set
- */
- public void setSelection(jalview.datamodel.SequenceGroup selection)
- {
- this.selection = selection;
+ return false;
}
/**
- * Returns the (possibly empty) list of matching sequences (when search
- * includes searching sequence names)
+ * Does searches other than for residue patterns. Currently this includes
+ * <ul>
+ * <li>find residue by position (if search string is a number)</li>
+ * <li>match search string to sequence id</li>
+ * <li>match search string to sequence description (optional)</li>
+ * </ul>
+ * Answers true if a match is found, else false.
*
+ * @param seq
+ * @param searchString
+ * @param searchPattern
+ * @param includeDescription
* @return
*/
- public Vector<SequenceI> getIdMatch()
+ protected boolean doNonMotifSearches(SequenceI seq, String searchString,
+ Regex searchPattern, boolean includeDescription)
{
- return idMatch;
- }
+ /*
+ * position sequence search to start of sequence
+ */
+ columnIndex = 0;
- /**
- * @return the regex
- */
- public com.stevesoft.pat.Regex getRegex()
- {
- return regex;
+ if (searchForResidueNumber(seq, searchString))
+ {
+ return true;
+ }
+ if (searchSequenceName(seq, searchPattern))
+ {
+ return true;
+ }
+ if (includeDescription && searchSequenceDescription(seq, searchPattern))
+ {
+ return true;
+ }
+ return false;
}
/**
- * @return the searchResults
+ * Searches for a match with the sequence description, and if found, adds the
+ * sequence to the list of match ids (but not as a duplicate). Answers true if
+ * a match was added, else false.
+ *
+ * @param seq
+ * @param searchPattern
+ * @return
*/
- public SearchResultsI getSearchResults()
+ protected boolean searchSequenceDescription(SequenceI seq, Regex searchPattern)
{
- return searchResults;
+ String desc = seq.getDescription();
+ if (desc != null && searchPattern.search(desc) && !idMatches.contains(seq))
+ {
+ idMatches.addElement(seq);
+ return true;
+ }
+ return false;
}
/**
- * @return the resIndex
+ * Searches for a match with the sequence name, and if found, adds the
+ * sequence to the list of match ids (but not as a duplicate). Answers true if
+ * a match was added, else false.
+ *
+ * @param seq
+ * @param searchPattern
+ * @return
*/
- public int getResIndex()
+ protected boolean searchSequenceName(SequenceI seq, Regex searchPattern)
{
- return resIndex;
+ if (searchPattern.search(seq.getName()) && !idMatches.contains(seq))
+ {
+ idMatches.addElement(seq);
+ return true;
+ }
+ return false;
}
/**
- * @param resIndex
- * the resIndex to set
+ * Tries to interpret the search string as a residue position, and if valid,
+ * adds the position to the search results and returns true, else answers
+ * false
*/
- public void setResIndex(int resIndex)
+ protected boolean searchForResidueNumber(SequenceI seq, String searchString)
{
- this.resIndex = resIndex;
+ try
+ {
+ int res = Integer.parseInt(searchString);
+ if (seq.getStart() <= res && seq.getEnd() >= res)
+ {
+ searchResults.addResult(seq, res, res);
+ return true;
+ }
+ } catch (NumberFormatException ex)
+ {
+ }
+ return false;
}
- /**
- * @return the seqIndex
+ /* (non-Javadoc)
+ * @see jalview.analysis.FinderI#getIdMatch()
*/
- public int getSeqIndex()
+ @Override
+ public Vector<SequenceI> getIdMatches()
{
- return seqIndex;
+ return idMatches;
}
- /**
- * @param seqIndex
- * the seqIndex to set
+ /* (non-Javadoc)
+ * @see jalview.analysis.FinderI#getSearchResults()
*/
- public void setSeqIndex(int seqIndex)
- {
- this.seqIndex = seqIndex;
- }
-
- public boolean isIncludeDescription()
- {
- return includeDescription;
- }
-
- public void setIncludeDescription(boolean includeDescription)
+ @Override
+ public SearchResultsI getSearchResults()
{
- this.includeDescription = includeDescription;
+ return searchResults;
}
}
--- /dev/null
+package jalview.analysis;
+
+public interface GeneticCodeI
+{
+ /**
+ * Answers the single letter amino acid code (e.g. "D") for the given codon
+ * (e.g. "GAC"), or "*" for a stop codon, or null for an unknown input. The
+ * codon is not case-sensitive, the return value is upper case.
+ * <p>
+ * If the codon includes any of the standard ambiguity codes
+ * <ul>
+ * <li>if all possible translations are the same, returns that value</li>
+ * <li>else returns null</li>
+ * </ul>
+ *
+ * @param codon
+ * @return
+ */
+ String translate(String codon);
+
+ /**
+ * Answers the single letter amino acid code (e.g. "D") for the given codon
+ * (e.g. "GAC"), or "*" for a stop codon, or null for an unknown input. The
+ * codon is not case-sensitive, the return value is upper case. If the codon
+ * includes any of the standard ambiguity codes, this method returns null.
+ *
+ * @param codon
+ * @return
+ */
+ String translateCanonical(String codon);
+
+ /**
+ * Answers a unique identifier for the genetic code (using the numbering
+ * system as on NCBI)
+ *
+ * @return
+ */
+ String getId();
+
+ /**
+ * Answers a display name suitable for use in menus, reports etc
+ *
+ * @return
+ */
+ String getName();
+}
--- /dev/null
+package jalview.analysis;
+
+import jalview.bin.Cache;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.StringTokenizer;
+
+/**
+ * A singleton that provides instances of genetic code translation tables
+ *
+ * @author gmcarstairs
+ * @see https://www.ncbi.nlm.nih.gov/Taxonomy/Utils/wprintgc.cgi
+ */
+public final class GeneticCodes
+{
+ private static final int CODON_LENGTH = 3;
+
+ private static final String QUOTE = "\"";
+
+ /*
+ * nucleotides as ordered in data file
+ */
+ private static final String NUCS = "TCAG";
+
+ private static final int NUCS_COUNT = NUCS.length();
+
+ private static final int NUCS_COUNT_SQUARED = NUCS_COUNT * NUCS_COUNT;
+
+ private static final int NUCS_COUNT_CUBED = NUCS_COUNT * NUCS_COUNT
+ * NUCS_COUNT;
+
+ private static final String AMBIGUITY_CODES_FILE = "/AmbiguityCodes.dat";
+
+ private static final String RESOURCE_FILE = "/GeneticCodes.dat";
+
+ private static GeneticCodes instance = new GeneticCodes();
+
+ private Map<String, String> ambiguityCodes;
+
+ /*
+ * loaded code tables, with keys in order of loading
+ */
+ private Map<String, GeneticCodeI> codeTables;
+
+ /**
+ * Private constructor enforces singleton
+ */
+ private GeneticCodes()
+ {
+ if (instance == null)
+ {
+ ambiguityCodes = new HashMap<>();
+
+ /*
+ * LinkedHashMap preserves order of addition of entries,
+ * so we can assume the Standard Code Table is the first
+ */
+ codeTables = new LinkedHashMap<>();
+ loadAmbiguityCodes(AMBIGUITY_CODES_FILE);
+ loadCodes(RESOURCE_FILE);
+ }
+ };
+
+ /**
+ * Returns the singleton instance of this class
+ *
+ * @return
+ */
+ public static GeneticCodes getInstance()
+ {
+ return instance;
+ }
+
+ /**
+ * Returns the known code tables, in order of loading.
+ *
+ * @return
+ */
+ public Iterable<GeneticCodeI> getCodeTables()
+ {
+ return codeTables.values();
+ }
+
+ /**
+ * Answers the code table with the given id
+ *
+ * @param id
+ * @return
+ */
+ public GeneticCodeI getCodeTable(String id)
+ {
+ return codeTables.get(id);
+ }
+
+ /**
+ * A convenience method that returns the standard code table (table 1). As
+ * implemented, this has to be the first table defined in the data file.
+ *
+ * @return
+ */
+ public GeneticCodeI getStandardCodeTable()
+ {
+ return codeTables.values().iterator().next();
+ }
+
+ /**
+ * Loads the code tables from a data file
+ */
+ protected void loadCodes(String fileName)
+ {
+ try
+ {
+ InputStream is = getClass().getResourceAsStream(fileName);
+ BufferedReader dataIn = new BufferedReader(new InputStreamReader(is));
+
+ /*
+ * skip comments and start of table
+ */
+ String line = "";
+ while (line != null && !line.startsWith("Genetic-code-table"))
+ {
+ line = readLine(dataIn);
+ }
+ line = readLine(dataIn);
+
+ while (line.startsWith("{"))
+ {
+ line = loadOneTable(dataIn);
+ }
+ } catch (IOException | NullPointerException e)
+ {
+ Cache.log.error(
+ "Error reading genetic codes data file: "
+ + e.getMessage());
+ }
+ }
+
+ /**
+ * Reads and saves Nucleotide ambiguity codes from a data file. The file may
+ * include comment lines (starting with #), a header 'DNA', and one line per
+ * ambiguity code, for example:
+ * <p>
+ * R<tab>AG
+ * <p>
+ * means that R is an ambiguity code meaning "A or G"
+ *
+ * @param fileName
+ */
+ protected void loadAmbiguityCodes(String fileName)
+ {
+ try
+ {
+ InputStream is = getClass().getResourceAsStream(fileName);
+ BufferedReader dataIn = new BufferedReader(new InputStreamReader(is));
+ String line = "";
+ while (line != null)
+ {
+ line = readLine(dataIn);
+ if (line != null && !"DNA".equals(line.toUpperCase()))
+ {
+ String[] tokens = line.split("\\t");
+ ambiguityCodes.put(tokens[0].toUpperCase(),
+ tokens[1].toUpperCase());
+ }
+ }
+ } catch (IOException e)
+ {
+ Cache.log.error(
+ "Error reading nucleotide ambiguity codes data file: "
+ + e.getMessage());
+ }
+ }
+
+ /**
+ * Reads up to and returns the next non-comment line, trimmed. Comment lines
+ * start with a #. Returns null at end of file.
+ *
+ * @param dataIn
+ * @return
+ * @throws IOException
+ */
+ protected String readLine(BufferedReader dataIn) throws IOException
+ {
+ String line = dataIn.readLine();
+ while (line != null && line.startsWith("#"))
+ {
+ line = readLine(dataIn);
+ }
+ return line == null ? null : line.trim();
+ }
+
+ /**
+ * Reads the lines of the data file describing one translation table, and
+ * creates and stores an instance of GeneticCodeI. Returns the '{' line
+ * starting the next table, or the '}' line at end of all tables. Data format
+ * is
+ *
+ * <pre>
+ * {
+ * name "Vertebrate Mitochondrial" ,
+ * name "SGC1" ,
+ * id 2 ,
+ * ncbieaa "FFLLSSSSYY**CCWWLLLLPPPPHHQQRRRRIIMMTTTTNNKKSS**VVVVAAAADDEEGGGG",
+ * sncbieaa "----------**--------------------MMMM----------**---M------------"
+ * -- Base1 TTTTTTTTTTTTTTTTCCCCCCCCCCCCCCCCAAAAAAAAAAAAAAAAGGGGGGGGGGGGGGGG
+ * -- Base2 TTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGGTTTTCCCCAAAAGGGG
+ * -- Base3 TCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAGTCAG
+ * },
+ * </pre>
+ *
+ * of which we parse the first name, the id, and the ncbieaa translations for
+ * codons as ordered by the Base1/2/3 lines. Note Base1/2/3 are included for
+ * readability and are in a fixed order, these are not parsed. The sncbieaa
+ * line marks alternative start codons, these are not parsed.
+ *
+ * @param dataIn
+ * @return
+ * @throws IOException
+ */
+ protected String loadOneTable(BufferedReader dataIn) throws IOException
+ {
+ String name = null;
+ String id = null;
+ Map<String, String> codons = new HashMap<>();
+
+ String line = readLine(dataIn);
+
+ while (line != null && !line.startsWith("}"))
+ {
+ if (line.startsWith("name") && name == null)
+ {
+ name = line.substring(line.indexOf(QUOTE) + 1,
+ line.lastIndexOf(QUOTE));
+ }
+ else if (line.startsWith("id"))
+ {
+ id = new StringTokenizer(line.substring(2)).nextToken();
+ }
+ else if (line.startsWith("ncbieaa"))
+ {
+ String aminos = line.substring(line.indexOf(QUOTE) + 1,
+ line.lastIndexOf(QUOTE));
+ if (aminos.length() != NUCS_COUNT_CUBED) // 4 * 4 * 4 combinations
+ {
+ Cache.log.error("wrong data length in code table: " + line);
+ }
+ else
+ {
+ for (int i = 0; i < aminos.length(); i++)
+ {
+ String peptide = String.valueOf(aminos.charAt(i));
+ char codon1 = NUCS.charAt(i / NUCS_COUNT_SQUARED);
+ char codon2 = NUCS
+ .charAt((i % NUCS_COUNT_SQUARED) / NUCS_COUNT);
+ char codon3 = NUCS.charAt(i % NUCS_COUNT);
+ String codon = new String(
+ new char[]
+ { codon1, codon2, codon3 });
+ codons.put(codon, peptide);
+ }
+ }
+ }
+ line = readLine(dataIn);
+ }
+
+ registerCodeTable(id, name, codons);
+ return readLine(dataIn);
+ }
+
+ /**
+ * Constructs and registers a GeneticCodeI instance with the codon
+ * translations as defined in the data file. For all instances except the
+ * first, any undeclared translations default to those in the standard code
+ * table.
+ *
+ * @param id
+ * @param name
+ * @param codons
+ */
+ protected void registerCodeTable(final String id, final String name,
+ final Map<String, String> codons)
+ {
+ codeTables.put(id, new GeneticCodeI()
+ {
+ /*
+ * map of ambiguous codons to their 'product'
+ * (null if not all possible translations match)
+ */
+ Map<String, String> ambiguous = new HashMap<>();
+
+ @Override
+ public String translateCanonical(String codon)
+ {
+ return codons.get(codon.toUpperCase());
+ }
+
+ @Override
+ public String translate(String codon)
+ {
+ String upper = codon.toUpperCase();
+ String peptide = translateCanonical(upper);
+
+ /*
+ * if still not translated, check for ambiguity codes
+ */
+ if (peptide == null)
+ {
+ peptide = getAmbiguousTranslation(upper, ambiguous, this);
+ }
+ return peptide;
+ }
+
+ @Override
+ public String getId()
+ {
+ return id;
+ }
+
+ @Override
+ public String getName()
+ {
+ return name;
+ }
+ });
+ }
+
+ /**
+ * Computes all possible translations of a codon including one or more
+ * ambiguity codes, and stores and returns the result (null if not all
+ * translations match). If the codon includes no ambiguity codes, simply
+ * returns null.
+ *
+ * @param codon
+ * @param ambiguous
+ * @param codeTable
+ * @return
+ */
+ protected String getAmbiguousTranslation(String codon,
+ Map<String, String> ambiguous, GeneticCodeI codeTable)
+ {
+ if (codon.length() != CODON_LENGTH)
+ {
+ return null;
+ }
+
+ boolean isAmbiguous = false;
+
+ char[][] expanded = new char[CODON_LENGTH][];
+ for (int i = 0; i < CODON_LENGTH; i++)
+ {
+ String base = String.valueOf(codon.charAt(i));
+ if (ambiguityCodes.containsKey(base))
+ {
+ isAmbiguous = true;
+ base = ambiguityCodes.get(base);
+ }
+ expanded[i] = base.toCharArray();
+ }
+
+ if (!isAmbiguous)
+ {
+ // no ambiguity code involved here
+ return null;
+ }
+
+ /*
+ * generate and translate all permutations of the ambiguous codon
+ * only return the translation if they all agree, else null
+ */
+ String peptide = null;
+ for (char c1 : expanded[0])
+ {
+ for (char c2 : expanded[1])
+ {
+ for (char c3 : expanded[2])
+ {
+ char[] cdn = new char[] { c1, c2, c3 };
+ String possibleCodon = String.valueOf(cdn);
+ String pep = codeTable.translate(possibleCodon);
+ if (pep == null || (peptide != null && !pep.equals(peptide)))
+ {
+ ambiguous.put(codon, null);
+ return null;
+ }
+ peptide = pep;
+ }
+ }
+ }
+
+ /*
+ * all translations of ambiguous codons matched!
+ */
+ ambiguous.put(codon, peptide);
+ return peptide;
+ }
+}
import jalview.api.analysis.ScoreModelI;
import jalview.api.analysis.SimilarityParamsI;
+import jalview.bin.Cache;
import jalview.datamodel.AlignmentView;
+import jalview.datamodel.Point;
import jalview.math.MatrixI;
import java.io.PrintStream;
*/
public class PCA implements Runnable
{
- MatrixI symm;
-
- double[] eigenvalue;
+ /*
+ * inputs
+ */
+ final private AlignmentView seqs;
- MatrixI eigenvector;
+ final private ScoreModelI scoreModel;
- StringBuilder details = new StringBuilder(1024);
+ final private SimilarityParamsI similarityParams;
- final private AlignmentView seqs;
+ /*
+ * outputs
+ */
+ private MatrixI pairwiseScores;
- private ScoreModelI scoreModel;
+ private MatrixI tridiagonal;
- private SimilarityParamsI similarityParams;
+ private MatrixI eigenMatrix;
- public PCA(AlignmentView s, ScoreModelI sm, SimilarityParamsI options)
+ /**
+ * Constructor given the sequences to compute for, the similarity model to
+ * use, and a set of parameters for sequence comparison
+ *
+ * @param sequences
+ * @param sm
+ * @param options
+ */
+ public PCA(AlignmentView sequences, ScoreModelI sm, SimilarityParamsI options)
{
- this.seqs = s;
- this.similarityParams = options;
+ this.seqs = sequences;
this.scoreModel = sm;
-
- details.append("PCA calculation using " + sm.getName()
- + " sequence similarity matrix\n========\n\n");
+ this.similarityParams = options;
}
/**
*/
public double getEigenvalue(int i)
{
- return eigenvector.getD()[i];
+ return eigenMatrix.getD()[i];
}
/**
*
* @return DOCUMENT ME!
*/
- public float[][] getComponents(int l, int n, int mm, float factor)
+ public Point[] getComponents(int l, int n, int mm, float factor)
{
- float[][] out = new float[getHeight()][3];
+ Point[] out = new Point[getHeight()];
for (int i = 0; i < getHeight(); i++)
{
- out[i][0] = (float) component(i, l) * factor;
- out[i][1] = (float) component(i, n) * factor;
- out[i][2] = (float) component(i, mm) * factor;
+ float x = (float) component(i, l) * factor;
+ float y = (float) component(i, n) * factor;
+ float z = (float) component(i, mm) * factor;
+ out[i] = new Point(x, y, z);
}
return out;
{
double out = 0.0;
- for (int i = 0; i < symm.width(); i++)
+ for (int i = 0; i < pairwiseScores.width(); i++)
{
- out += (symm.getValue(row, i) * eigenvector.getValue(i, n));
+ out += (pairwiseScores.getValue(row, i) * eigenMatrix.getValue(i, n));
}
- return out / eigenvector.getD()[n];
+ return out / eigenMatrix.getD()[n];
}
+ /**
+ * Answers a formatted text report of the PCA calculation results (matrices
+ * and eigenvalues) suitable for display
+ *
+ * @return
+ */
public String getDetails()
{
- return details.toString();
+ StringBuilder sb = new StringBuilder(1024);
+ sb.append("PCA calculation using ").append(scoreModel.getName())
+ .append(" sequence similarity matrix\n========\n\n");
+ PrintStream ps = wrapOutputBuffer(sb);
+
+ /*
+ * pairwise similarity scores
+ */
+ sb.append(" --- OrigT * Orig ---- \n");
+ pairwiseScores.print(ps, "%8.2f");
+
+ /*
+ * tridiagonal matrix, with D and E vectors
+ */
+ sb.append(" ---Tridiag transform matrix ---\n");
+ sb.append(" --- D vector ---\n");
+ tridiagonal.printD(ps, "%15.4e");
+ ps.println();
+ sb.append("--- E vector ---\n");
+ tridiagonal.printE(ps, "%15.4e");
+ ps.println();
+
+ /*
+ * eigenvalues matrix, with D vector
+ */
+ sb.append(" --- New diagonalization matrix ---\n");
+ eigenMatrix.print(ps, "%8.2f");
+ sb.append(" --- Eigenvalues ---\n");
+ eigenMatrix.printD(ps, "%15.4e");
+ ps.println();
+
+ return sb.toString();
}
/**
- * DOCUMENT ME!
+ * Performs the PCA calculation
*/
@Override
public void run()
{
+ try
+ {
+ /*
+ * sequence pairwise similarity scores
+ */
+ pairwiseScores = scoreModel.findSimilarities(seqs, similarityParams);
+
+ /*
+ * tridiagonal matrix
+ */
+ tridiagonal = pairwiseScores.copy();
+ tridiagonal.tred();
+
+ /*
+ * the diagonalization matrix
+ */
+ eigenMatrix = tridiagonal.copy();
+ eigenMatrix.tqli();
+ } catch (Exception q)
+ {
+ Cache.log.error("Error computing PCA: " + q.getMessage());
+ q.printStackTrace();
+ }
+ }
+
+ /**
+ * Returns a PrintStream that wraps (appends its output to) the given
+ * StringBuilder
+ *
+ * @param sb
+ * @return
+ */
+ protected PrintStream wrapOutputBuffer(StringBuilder sb)
+ {
PrintStream ps = new PrintStream(System.out)
{
@Override
public void print(String x)
{
- details.append(x);
+ sb.append(x);
}
@Override
public void println()
{
- details.append("\n");
+ sb.append("\n");
}
};
-
- // long now = System.currentTimeMillis();
- try
- {
- eigenvector = scoreModel.findSimilarities(seqs, similarityParams);
-
- details.append(" --- OrigT * Orig ---- \n");
- eigenvector.print(ps, "%8.2f");
-
- symm = eigenvector.copy();
-
- eigenvector.tred();
-
- details.append(" ---Tridiag transform matrix ---\n");
- details.append(" --- D vector ---\n");
- eigenvector.printD(ps, "%15.4e");
- ps.println();
- details.append("--- E vector ---\n");
- eigenvector.printE(ps, "%15.4e");
- ps.println();
-
- // Now produce the diagonalization matrix
- eigenvector.tqli();
- } catch (Exception q)
- {
- q.printStackTrace();
- details.append("\n*** Unexpected exception when performing PCA ***\n"
- + q.getLocalizedMessage());
- details.append(
- "*** Matrices below may not be fully diagonalised. ***\n");
- }
-
- details.append(" --- New diagonalization matrix ---\n");
- eigenvector.print(ps, "%8.2f");
- details.append(" --- Eigenvalues ---\n");
- eigenvector.printD(ps, "%15.4e");
- ps.println();
- /*
- * for (int seq=0;seq<symm.rows;seq++) { ps.print("\"Seq"+seq+"\""); for
- * (int ev=0;ev<symm.rows; ev++) {
- *
- * ps.print(","+component(seq, ev)); } ps.println(); }
- */
- // System.out.println(("PCA.run() took "
- // + (System.currentTimeMillis() - now) + "ms"));
+ return ps;
}
/**
public int getHeight()
{
// TODO can any of seqs[] be null?
- return seqs.getSequences().length;
+ return pairwiseScores.height();// seqs.getSequences().length;
+ }
+
+ /**
+ * Answers the sequence pairwise similarity scores which were the first step
+ * of the PCA calculation
+ *
+ * @return
+ */
+ public MatrixI getPairwiseScores()
+ {
+ return pairwiseScores;
+ }
+
+ public void setPairwiseScores(MatrixI m)
+ {
+ pairwiseScores = m;
+ }
+
+ public MatrixI getEigenmatrix()
+ {
+ return eigenMatrix;
+ }
+
+ public void setEigenmatrix(MatrixI m)
+ {
+ eigenMatrix = m;
+ }
+
+ public MatrixI getTridiagonal()
+ {
+ return tridiagonal;
+ }
+
+ public void setTridiagonal(MatrixI tridiagonal)
+ {
+ this.tridiagonal = tridiagonal;
}
}
protected MatrixI findSimilarities(String[] seqs,
SimilarityParamsI options)
{
- // TODO reuse code in ScoreMatrix instead somehow
- double[][] values = new double[seqs.length][];
+ /*
+ * calculation is symmetric so just compute lower diagonal
+ */
+ double[][] values = new double[seqs.length][seqs.length];
for (int row = 0; row < seqs.length; row++)
{
- values[row] = new double[seqs.length];
- for (int col = 0; col < seqs.length; col++)
+ for (int col = row; col < seqs.length; col++)
{
double total = computePID(seqs[row], seqs[col], options);
values[row][col] = total;
+ values[col][row] = total;
}
}
return new Matrix(values);
private float maxValue;
+ private boolean symmetric;
+
/**
* Constructor given a name, symbol alphabet, and matrix of scores for pairs
* of symbols. The matrix should be square and of the same size as the
findMinMax();
+ symmetric = checkSymmetry();
+
/*
* crude heuristic for now...
*/
}
/**
+ * Answers true if the matrix is symmetric, else false. Usually, substitution
+ * matrices are symmetric, which allows calculations to be short cut.
+ *
+ * @return
+ */
+ private boolean checkSymmetry()
+ {
+ for (int i = 0; i < matrix.length; i++)
+ {
+ for (int j = i; j < matrix.length; j++)
+ {
+ if (matrix[i][j] != matrix[j][i])
+ {
+ return false;
+ }
+ }
+ }
+ return true;
+ }
+
+ /**
* Record the minimum and maximum score values
*/
protected void findMinMax()
protected MatrixI findSimilarities(String[] seqs,
SimilarityParamsI params)
{
- double[][] values = new double[seqs.length][];
+ double[][] values = new double[seqs.length][seqs.length];
for (int row = 0; row < seqs.length; row++)
{
- values[row] = new double[seqs.length];
- for (int col = 0; col < seqs.length; col++)
+ for (int col = symmetric ? row : 0; col < seqs.length; col++)
{
double total = computeSimilarity(seqs[row], seqs[col], params);
values[row][col] = total;
+ if (symmetric)
+ {
+ values[col][row] = total;
+ }
}
}
return new Matrix(values);
{
return this;
}
+
+ public boolean isSymmetric()
+ {
+ return symmetric;
+ }
}
private final ScoreMatrix DNA;
- private static ScoreModels instance = new ScoreModels();
+ private static ScoreModels instance;
private Map<String, ScoreModelI> models;
+ /**
+ * Answers the singleton instance of this class, with lazy initialisation
+ * (built-in score models are loaded on the first call to this method)
+ *
+ * @return
+ */
public static ScoreModels getInstance()
{
+ if (instance == null)
+ {
+ instance = new ScoreModels();
+ }
return instance;
}
/*
* using LinkedHashMap keeps models ordered as added
*/
- models = new LinkedHashMap<String, ScoreModelI>();
+ models = new LinkedHashMap<>();
BLOSUM62 = loadScoreMatrix("scoreModel/blosum62.scm");
PAM250 = loadScoreMatrix("scoreModel/pam250.scm");
- registerScoreModel(new PIDModel());
DNA = loadScoreMatrix("scoreModel/dna.scm");
+ registerScoreModel(new PIDModel());
registerScoreModel(new FeatureDistanceModel());
}
}
/**
+ * Resets to just the built-in score models
+ */
+ public void reset()
+ {
+ instance = new ScoreModels();
+ }
+
+ /**
* Returns the default peptide or nucleotide score model, currently BLOSUM62
* or DNA
*
{
return matchGaps;
}
+
+ /**
+ * IDE-generated hashCode method
+ */
+ @Override
+ public int hashCode()
+ {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + (denominateByShortestLength ? 1231 : 1237);
+ result = prime * result + (includeGappedColumns ? 1231 : 1237);
+ result = prime * result + (includeGaps ? 1231 : 1237);
+ result = prime * result + (matchGaps ? 1231 : 1237);
+ return result;
+ }
+
+ /**
+ * IDE-generated equals method
+ */
+ @Override
+ public boolean equals(Object obj)
+ {
+ if (this == obj)
+ {
+ return true;
+ }
+ if (obj == null)
+ {
+ return false;
+ }
+ if (getClass() != obj.getClass())
+ {
+ return false;
+ }
+ SimilarityParams other = (SimilarityParams) obj;
+ if (denominateByShortestLength != other.denominateByShortestLength)
+ {
+ return false;
+ }
+ if (includeGappedColumns != other.includeGappedColumns)
+ {
+ return false;
+ }
+ if (includeGaps != other.includeGaps)
+ {
+ return false;
+ }
+ if (matchGaps != other.matchGaps)
+ {
+ return false;
+ }
+ return true;
+ }
}
* @return
*/
AlignmentExportData getAlignExportData(AlignExportSettingsI options);
+
+ /**
+ * @param update
+ * - set the flag for updating structures on next repaint
+ */
+ void setUpdateStructures(boolean update);
+
+ /**
+ *
+ * @return true if structure views will be updated on next refresh
+ */
+ boolean isUpdateStructures();
+
+ /**
+ * check if structure views need to be updated, and clear the flag afterwards.
+ *
+ * @return if an update is needed
+ */
+ boolean needToUpdateStructureViews();
+
+ /**
+ * Adds sequencegroup to the alignment in the view. Also adds a group to the
+ * complement view if one is defined.
+ *
+ * @param sequenceGroup
+ * - a group defined on sequences in the alignment held by the view
+ */
+ void addSequenceGroup(SequenceGroup sequenceGroup);
}
void setAttributeName(String... name);
/**
+ * Answers true if colour has a threshold set, and the feature score (or other
+ * attribute selected for colouring) is outwith the threshold.
+ * <p>
+ * Answers false if not a graduated colour, or no threshold is set, or value
+ * is not outwith the threshold, or value is null or non-numeric.
+ *
+ * @param sf
+ * @return
+ */
+ boolean isOutwithThreshold(SequenceFeature sf);
+
+ /*
* Answers a human-readable text description of the colour, suitable for
* display as a tooltip, possibly internationalised for the user's locale.
*
* @return
*/
Color getColour(SequenceFeature feature);
+
+ /**
+ * Answers true if feature would be shown, else false. A feature is shown if
+ * <ul>
+ * <li>its feature type is set to visible</li>
+ * <li>its feature group is either null, or set to visible</li>
+ * <li>it is not excluded by a colour threshold on score or other numeric
+ * attribute</li>
+ * <li>it is not excluded by a filter condition</li>
+ * </ul>
+ *
+ * @param feature
+ * @return
+ */
+ boolean isVisible(SequenceFeature feature);
}
--- /dev/null
+package jalview.api;
+
+import jalview.datamodel.SearchResultsI;
+import jalview.datamodel.SequenceI;
+
+import java.util.List;
+
+/**
+ * An interface for searching for a pattern in an aligment
+ */
+public interface FinderI
+{
+
+ /**
+ * Performs a find for the given search string (interpreted as a regular
+ * expression). Search may optionally be case-sensitive, and may optionally
+ * including match in sequence description (sequence id is always searched).
+ * If the viewport has an active selection, then the find is restricted to the
+ * selection region. Sequences matched by id or description can be retrieved
+ * by getIdMatches(), and matched residue patterns by getSearchResults().
+ *
+ * @param theSearchString
+ * @param caseSensitive
+ * @param searchDescription
+ * @return
+ */
+ void findAll(String theSearchString, boolean caseSensitive,
+ boolean searchDescription);
+
+ /**
+ * Finds the next match for the given search string (interpreted as a regular
+ * expression), starting from the position after the last match found. Search
+ * may optionally be case-sensitive, and may optionally including match in
+ * sequence description (sequence id is always searched). If the viewport has
+ * an active selection, then the find is restricted to the selection region.
+ * Sequences matched by id or description can be retrieved by getIdMatches(),
+ * and matched residue patterns by getSearchResults().
+ *
+ * @param theSearchString
+ * @param caseSensitive
+ * @param searchDescription
+ * @return
+ */
+ void findNext(String theSearchString, boolean caseSensitive,
+ boolean searchDescription);
+
+ /**
+ * Returns the (possibly empty) list of sequences matched on sequence name or
+ * description
+ *
+ * @return
+ */
+ List<SequenceI> getIdMatches();
+
+ /**
+ * Answers the search results (possibly empty) from the last search
+ *
+ * @return
+ */
+ SearchResultsI getSearchResults();
+
+}
\ No newline at end of file
/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ The Jalview Authors
+ * Jalview - A Sequence Alignment Editor and Viewer (Version 2.8.2b1)
+ * Copyright (C) 2014 The Jalview Authors
*
* This file is part of Jalview.
*
import jalview.datamodel.SequencePoint;
-import java.util.Vector;
+import java.util.List;
/**
* interface implemented by RotatatableCanvas GUI elements (such as point clouds
*/
public interface RotatableCanvasI
{
+ void setPoints(List<SequencePoint> points, int rows);
- void setPoints(Vector<SequencePoint> points, int rows);
+ /**
+ * Zoom the view in (or out) by the given factor, which should be >= 0. A
+ * factor greater than 1 zooms in (expands the display), a factor less than 1
+ * zooms out (shrinks the display).
+ *
+ * @param factor
+ */
+ void zoom(float factor);
+ /**
+ * Rotates the view by the specified number of degrees about the x and/or y
+ * axis
+ *
+ * @param x
+ * @param y
+ */
+ void rotate(float x, float y);
}
{
features = formatter.printJalviewFormat(
viewport.getAlignment().getSequencesArray(),
- getDisplayedFeatureCols(), null, getDisplayedFeatureGroups(),
- true);
+ alignPanel.getFeatureRenderer(), true);
}
else
{
features = formatter.printGffFormat(viewport.getAlignment()
- .getSequencesArray(), getDisplayedFeatureCols(),
- getDisplayedFeatureGroups(), true);
+ .getSequencesArray(), alignPanel.getFeatureRenderer(), true);
}
if (displayTextbox)
import jalview.bin.JalviewLite;
import jalview.commands.CommandI;
import jalview.datamodel.AlignmentI;
-import jalview.datamodel.Annotation;
import jalview.datamodel.ColumnSelection;
import jalview.datamodel.HiddenColumns;
import jalview.datamodel.SearchResults;
import jalview.datamodel.SearchResultsI;
-import jalview.datamodel.Sequence;
import jalview.datamodel.SequenceGroup;
-import jalview.datamodel.SequenceI;
import jalview.renderer.ResidueShader;
import jalview.schemes.ColourSchemeProperty;
import jalview.schemes.UserColourScheme;
if (colour != null)
{
residueShading = new ResidueShader(
- ColourSchemeProperty.getColourScheme(alignment, colour));
+ ColourSchemeProperty.getColourScheme(this, alignment,
+ colour));
if (residueShading != null)
{
residueShading.setConsensus(hconsensus);
}
else
{
- int width = av.getAlignment().getWidth();
+ int width = av.getAlignment().getVisibleWidth();
int height = av.getAlignment().getHeight();
- if (av.hasHiddenColumns())
- {
- width = av.getAlignment().getHiddenColumns()
- .absoluteToVisibleColumn(width);
- }
if (x < 0)
{
x = 0;
if (oldcs.isGraduatedColour())
{
threshline.value = oldcs.getThreshold();
- cs = new FeatureColour((FeatureColour) oldcs, min, max);
+ cs = new FeatureColour(oldcs.getColour(), oldcs.getMinColour(),
+ oldcs.getMaxColour(), oldcs.getNoColour(), min, max);
}
else
{
bl = oldcs.getColour();
}
// original colour becomes the maximum colour
- cs = new FeatureColour(Color.white, bl, mm[0], mm[1]);
+ cs = new FeatureColour(bl, Color.white, bl, Color.white, mm[0],
+ mm[1]);
}
minColour.setBackground(cs.getMinColour());
maxColour.setBackground(cs.getMaxColour());
slider.setEnabled(true);
thresholdValue.setEnabled(true);
- FeatureColour acg = new FeatureColour(minColour.getBackground(),
- maxColour.getBackground(), min, max);
+ Color minc = minColour.getBackground();
+ Color maxc = maxColour.getBackground();
+ FeatureColour acg = new FeatureColour(maxc, minc, maxc, minc, min, max);
acg.setColourByLabel(colourFromLabel.getState());
maxColour.setEnabled(!colourFromLabel.getState());
{
if (thresholdOption == AnnotationColourGradient.ABOVE_THRESHOLD)
{
- acg = new FeatureColour(acg, threshline.value, max);
+ acg = new FeatureColour(acg.getColour(), acg.getMinColour(),
+ acg.getMaxColour(), acg.getNoColour(), threshline.value,
+ max);
}
else
{
- acg = new FeatureColour(acg, min, threshline.value);
+ acg = new FeatureColour(acg.getColour(), acg.getMinColour(),
+ acg.getMaxColour(), acg.getNoColour(), min,
+ threshline.value);
}
}
*/
package jalview.appletgui;
+import jalview.api.AlignViewportI;
+import jalview.api.FinderI;
import jalview.datamodel.SearchResultMatchI;
import jalview.datamodel.SearchResultsI;
import jalview.datamodel.SequenceFeature;
import jalview.datamodel.SequenceI;
import jalview.util.MessageManager;
-import jalview.viewmodel.AlignmentViewport;
import java.awt.Button;
import java.awt.Checkbox;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
-import java.util.Vector;
+import java.util.Map;
public class Finder extends Panel implements ActionListener
{
- AlignmentViewport av;
+ private AlignViewportI av;
- AlignmentPanel ap;
+ private AlignmentPanel ap;
- Frame frame;
+ private TextField textfield = new TextField();
- SearchResultsI searchResults;
+ private Button findAll = new Button();
- int seqIndex = 0;
+ private Button findNext = new Button();
- int resIndex = -1;
+ private Button createFeatures = new Button();
+
+ private Checkbox caseSensitive = new Checkbox();
+
+ private Checkbox searchDescription = new Checkbox();
+
+ private SearchResultsI searchResults;
+
+ /*
+ * Finder agent per viewport searched
+ */
+ Map<AlignViewportI, FinderI> finders;
public Finder(final AlignmentPanel ap)
{
+ finders = new HashMap<>();
+
try
{
jbInit();
this.av = ap.av;
this.ap = ap;
- frame = new Frame();
+ Frame frame = new Frame();
frame.add(this);
jalview.bin.JalviewLite.addFrame(frame,
MessageManager.getString("action.find"), 340, 120);
else if (evt.getSource() == findAll)
{
- resIndex = -1;
- seqIndex = 0;
doSearch(true);
}
- else if (evt.getSource() == createNewGroup)
+ else if (evt.getSource() == createFeatures)
{
- createNewGroup_actionPerformed();
+ createFeatures_actionPerformed();
}
}
- public void createNewGroup_actionPerformed()
+ public void createFeatures_actionPerformed()
{
- List<SequenceI> seqs = new ArrayList<SequenceI>();
- List<SequenceFeature> features = new ArrayList<SequenceFeature>();
+ List<SequenceI> seqs = new ArrayList<>();
+ List<SequenceFeature> features = new ArrayList<>();
String searchString = textfield.getText().trim();
for (SearchResultMatchI match : searchResults.getResults())
}
}
- void doSearch(boolean findAll)
+ void doSearch(boolean doFindAll)
{
if (ap.av.applet.currentAlignFrame != null)
{
ap = ap.av.applet.currentAlignFrame.alignPanel;
av = ap.av;
}
- createNewGroup.setEnabled(false);
- jalview.analysis.Finder finder = new jalview.analysis.Finder(
- av.getAlignment(), av.getSelectionGroup(), seqIndex, resIndex);
- finder.setCaseSensitive(caseSensitive.getState());
- finder.setIncludeDescription(searchDescription.getState());
- finder.setFindAll(findAll);
+ createFeatures.setEnabled(false);
+ FinderI finder = finders.get(av);
+ if (finder == null)
+ {
+ /*
+ * first time we searched this viewport
+ */
+ finder = new jalview.analysis.Finder(av);
+ finders.put(av, finder);
+ }
String searchString = textfield.getText();
-
- finder.find(searchString);
- seqIndex = finder.getSeqIndex();
- resIndex = finder.getResIndex();
- searchResults = finder.getSearchResults();
- Vector<SequenceI> idMatch = finder.getIdMatch();
- boolean haveResults = false;
- // set or reset the GUI
- if ((idMatch.size() > 0))
+ boolean isCaseSensitive = caseSensitive.getState();
+ boolean doSearchDescription = searchDescription.getState();
+ if (doFindAll)
{
- haveResults = true;
- ap.idPanel.highlightSearchResults(idMatch);
+ finder.findAll(searchString, isCaseSensitive, doSearchDescription);
}
else
{
- ap.idPanel.highlightSearchResults(null);
+ finder.findNext(searchString, isCaseSensitive, doSearchDescription);
}
- if (searchResults.getSize() > 0)
- {
- haveResults = true;
- createNewGroup.setEnabled(true);
+ searchResults = finder.getSearchResults();
+
+ List<SequenceI> idMatches = finder.getIdMatches();
+ ap.idPanel.highlightSearchResults(idMatches);
+ if (searchResults.isEmpty())
+ {
+ searchResults = null;
}
else
{
- searchResults = null;
+ createFeatures.setEnabled(true);
}
// if allResults is null, this effectively switches displaySearch flag in
ap.highlightSearchResults(searchResults);
// TODO: add enablers for 'SelectSequences' or 'SelectColumns' or
// 'SelectRegion' selection
- if (!haveResults)
+ if (idMatches.isEmpty() && searchResults == null)
{
ap.alignFrame.statusBar.setText(
MessageManager.getString("label.finished_searching"));
- resIndex = -1;
- seqIndex = 0;
}
else
{
- if (findAll)
+ if (doFindAll)
{
- String message = (idMatch.size() > 0) ? "" + idMatch.size() + " IDs"
+ String message = (idMatches.size() > 0) ? "" + idMatches.size() + " IDs"
: "";
- if (idMatch.size() > 0 && searchResults != null
+ if (idMatches.size() > 0 && searchResults != null
&& searchResults.getSize() > 0)
{
message += " and ";
}
}
- Label jLabel1 = new Label();
-
- protected TextField textfield = new TextField();
-
- protected Button findAll = new Button();
-
- protected Button findNext = new Button();
-
- Panel actionsPanel = new Panel();
-
- GridLayout gridLayout1 = new GridLayout();
-
- protected Button createNewGroup = new Button();
-
- Checkbox caseSensitive = new Checkbox();
-
- Checkbox searchDescription = new Checkbox();
-
private void jbInit() throws Exception
{
+ Label jLabel1 = new Label(MessageManager.getString("action.find"));
jLabel1.setFont(new java.awt.Font("Verdana", 0, 12));
- jLabel1.setText(MessageManager.getString("action.find"));
jLabel1.setBounds(new Rectangle(3, 30, 34, 15));
this.setLayout(null);
textfield.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
@Override
public void keyTyped(KeyEvent e)
{
- textfield_keyTyped(e);
+ textfield_keyTyped();
}
});
textfield.addActionListener(this);
findNext.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
findNext.setLabel(MessageManager.getString("action.find_next"));
findNext.addActionListener(this);
+
+ Panel actionsPanel = new Panel();
actionsPanel.setBounds(new Rectangle(195, 5, 141, 64));
+ GridLayout gridLayout1 = new GridLayout();
actionsPanel.setLayout(gridLayout1);
gridLayout1.setHgap(0);
gridLayout1.setRows(3);
gridLayout1.setVgap(2);
- createNewGroup.setEnabled(false);
- createNewGroup.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- createNewGroup.setLabel(MessageManager.getString("label.new_feature"));
- createNewGroup.addActionListener(this);
+ createFeatures.setEnabled(false);
+ createFeatures.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
+ createFeatures.setLabel(MessageManager.getString("label.new_feature"));
+ createFeatures.addActionListener(this);
caseSensitive.setLabel(MessageManager.getString("label.match_case"));
caseSensitive.setBounds(new Rectangle(30, 39, 126, 23));
searchDescription.setBounds(new Rectangle(30, 59, 170, 23));
actionsPanel.add(findNext, null);
actionsPanel.add(findAll, null);
- actionsPanel.add(createNewGroup, null);
+ actionsPanel.add(createFeatures, null);
this.add(caseSensitive);
this.add(textfield, null);
this.add(jLabel1, null);
this.add(searchDescription);
}
- void textfield_keyTyped(KeyEvent e)
+ void textfield_keyTyped()
{
findNext.setEnabled(true);
}
protected void drawIdsWrapped(int starty, final boolean doHiddenCheck,
boolean hiddenRows)
{
- int maxwidth = av.getAlignment().getWidth();
+ int maxwidth = av.getAlignment().getVisibleWidth();
int alheight = av.getAlignment().getHeight();
- if (av.hasHiddenColumns())
- {
- maxwidth = av.getAlignment().getHiddenColumns()
- .absoluteToVisibleColumn(maxwidth) - 1;
- }
-
int annotationHeight = 0;
AnnotationLabels labels = null;
{
idCanvas.setHighlighted(list);
- if (list == null)
+ if (list == null || list.isEmpty())
{
return;
}
{
if (od.isPositionInBox(evt.getX(), evt.getY()))
{
- // display drag cursor at mouse position
- setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR));
+ this.getParent()
+ .setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
}
else
{
- // reset cursor
- setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
+ this.getParent()
+ .setCursor(
+ Cursor.getPredefinedCursor(Cursor.CROSSHAIR_CURSOR));
}
}
od.updateViewportFromMouse(evt.getX(), evt.getY(),
av.getAlignment().getHiddenSequences(),
av.getAlignment().getHiddenColumns());
+ getParent()
+ .setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
}
else
{
{
nuclSetting.setState(pcaModel.isNucleotide());
protSetting.setState(!pcaModel.isNucleotide());
- pcaModel.run();
+ pcaModel.calculate();
// ////////////////
xCombobox.select(0);
yCombobox.select(1);
int dim2 = top - yCombobox.getSelectedIndex();
int dim3 = top - zCombobox.getSelectedIndex();
pcaModel.updateRcView(dim1, dim2, dim3);
- rc.img = null;
- rc.rotmat.setIdentity();
- rc.initAxes();
+ rc.resetView();
rc.paint(rc.getGraphics());
}
{
}
;
- Object[] alAndColsel = pcaModel.getSeqtrings()
+ Object[] alAndColsel = pcaModel.getInputData()
.getAlignmentAndHiddenColumns(gc);
if (alAndColsel != null && alAndColsel[0] != null)
package jalview.appletgui;
import jalview.api.RotatableCanvasI;
+import jalview.datamodel.Point;
import jalview.datamodel.SequenceGroup;
import jalview.datamodel.SequenceI;
import jalview.datamodel.SequencePoint;
import jalview.math.RotatableMatrix;
-import jalview.util.Format;
+import jalview.math.RotatableMatrix.Axis;
import jalview.util.MessageManager;
import jalview.viewmodel.AlignmentViewport;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionListener;
-import java.util.Vector;
+import java.util.List;
public class RotatableCanvas extends Panel implements MouseListener,
MouseMotionListener, KeyListener, RotatableCanvasI
{
- RotatableMatrix idmat = new RotatableMatrix(3, 3);
-
- RotatableMatrix objmat = new RotatableMatrix(3, 3);
-
- RotatableMatrix rotmat = new RotatableMatrix(3, 3);
+ private static final int DIMS = 3;
String tooltip;
- int toolx, tooly;
+ int toolx;
+
+ int tooly;
// RubberbandRectangle rubberband;
boolean drawAxes = true;
- int omx = 0;
-
- int mx = 0;
-
- int omy = 0;
+ int mouseX = 0;
- int my = 0;
+ int mouseY = 0;
Image img;
Dimension prefsize;
- float centre[] = new float[3];
+ Point centre;
- float width[] = new float[3];
+ float[] width = new float[DIMS];
- float max[] = new float[3];
+ float[] max = new float[DIMS];
- float min[] = new float[3];
+ float[] min = new float[DIMS];
float maxwidth;
int npoint;
- Vector points;
+ List<SequencePoint> points;
- float[][] orig;
+ Point[] orig;
- float[][] axes;
+ Point[] axisEndPoints;
int startx;
boolean showLabels = false;
- public RotatableCanvas(AlignmentViewport av)
+ public RotatableCanvas(AlignmentViewport viewport)
{
- this.av = av;
+ this.av = viewport;
+ axisEndPoints = new Point[DIMS];
}
public void showLabels(boolean b)
repaint();
}
- public void setPoints(Vector points, int npoint)
+ @Override
+ public void setPoints(List<SequencePoint> points, int npoint)
{
this.points = points;
this.npoint = npoint;
PaintRefresher.Register(this, av.getSequenceSetId());
prefsize = getPreferredSize();
- orig = new float[npoint][3];
+ orig = new Point[npoint];
for (int i = 0; i < npoint; i++)
{
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- for (int j = 0; j < 3; j++)
- {
- orig[i][j] = sp.coord[j];
- }
- }
- // Initialize the matrices to identity
-
- for (int i = 0; i < 3; i++)
- {
- for (int j = 0; j < 3; j++)
- {
- if (i != j)
- {
- idmat.addElement(i, j, 0);
- objmat.addElement(i, j, 0);
- rotmat.addElement(i, j, 0);
- }
- else
- {
- idmat.addElement(i, j, 0);
- objmat.addElement(i, j, 0);
- rotmat.addElement(i, j, 0);
- }
- }
+ SequencePoint sp = points.get(i);
+ orig[i] = sp.coord;
}
- axes = new float[3][3];
- initAxes();
+ resetAxes();
findCentre();
findWidth();
* super.removeNotify(); }
*/
- public void initAxes()
+ /**
+ * Resets axes to the initial state: x-axis to the right, y-axis up, z-axis to
+ * back (so obscured in a 2-D display)
+ */
+ public void resetAxes()
{
- for (int i = 0; i < 3; i++)
- {
- for (int j = 0; j < 3; j++)
- {
- if (i != j)
- {
- axes[i][j] = 0;
- }
- else
- {
- axes[i][j] = 1;
- }
- }
- }
+ axisEndPoints[0] = new Point(1f, 0f, 0f);
+ axisEndPoints[1] = new Point(0f, 1f, 0f);
+ axisEndPoints[2] = new Point(0f, 0f, 1f);
}
+ /**
+ * Computes and saves the maximum and minimum (x, y, z) positions of any
+ * sequence point, and also the min-max range (width) for each dimension, and
+ * the maximum width for all dimensions
+ */
public void findWidth()
{
max = new float[3];
min = new float[3];
- max[0] = (float) -1e30;
- max[1] = (float) -1e30;
- max[2] = (float) -1e30;
+ max[0] = Float.MIN_VALUE;
+ max[1] = Float.MIN_VALUE;
+ max[2] = Float.MIN_VALUE;
- min[0] = (float) 1e30;
- min[1] = (float) 1e30;
- min[2] = (float) 1e30;
+ min[0] = Float.MAX_VALUE;
+ min[1] = Float.MAX_VALUE;
+ min[2] = Float.MAX_VALUE;
- for (int i = 0; i < 3; i++)
+ for (SequencePoint sp : points)
{
- for (int j = 0; j < npoint; j++)
- {
- SequencePoint sp = (SequencePoint) points.elementAt(j);
- if (sp.coord[i] >= max[i])
- {
- max[i] = sp.coord[i];
- }
- if (sp.coord[i] <= min[i])
- {
- min[i] = sp.coord[i];
- }
- }
+ max[0] = Math.max(max[0], sp.coord.x);
+ max[1] = Math.max(max[1], sp.coord.y);
+ max[2] = Math.max(max[2], sp.coord.z);
+ min[0] = Math.min(min[0], sp.coord.x);
+ min[1] = Math.min(min[1], sp.coord.y);
+ min[2] = Math.min(min[2], sp.coord.z);
}
- // System.out.println("xmax " + max[0] + " min " + min[0]);
- // System.out.println("ymax " + max[1] + " min " + min[1]);
- // System.out.println("zmax " + max[2] + " min " + min[2]);
-
width[0] = Math.abs(max[0] - min[0]);
width[1] = Math.abs(max[1] - min[1]);
width[2] = Math.abs(max[2] - min[2]);
- maxwidth = width[0];
-
- if (width[1] > width[0])
- {
- maxwidth = width[1];
- }
- if (width[2] > width[1])
- {
- maxwidth = width[2];
- }
-
- // System.out.println("Maxwidth = " + maxwidth);
+ maxwidth = Math.max(width[0], Math.max(width[1], width[2]));
}
public float findScale()
{
- int dim, width, height;
+ int dim, w, height;
if (getSize().width != 0)
{
- width = getSize().width;
+ w = getSize().width;
height = getSize().height;
}
else
{
- width = prefsize.width;
+ w = prefsize.width;
height = prefsize.height;
}
- if (width < height)
+ if (w < height)
{
- dim = width;
+ dim = w;
}
else
{
dim = height;
}
- return (float) (dim * scalefactor / (2 * maxwidth));
+ return dim * scalefactor / (2 * maxwidth);
}
+ /**
+ * Computes and saves the position of the centre of the view
+ */
public void findCentre()
{
- // Find centre coordinate
findWidth();
- centre[0] = (max[0] + min[0]) / 2;
- centre[1] = (max[1] + min[1]) / 2;
- centre[2] = (max[2] + min[2]) / 2;
+ float x = (max[0] + min[0]) / 2;
+ float y = (max[1] + min[1]) / 2;
+ float z = (max[2] + min[2]) / 2;
- // System.out.println("Centre x " + centre[0]);
- // System.out.println("Centre y " + centre[1]);
- // System.out.println("Centre z " + centre[2]);
+ centre = new Point(x, y, z);
}
+ @Override
public Dimension getPreferredSize()
{
if (prefsize != null)
}
}
+ @Override
public Dimension getMinimumSize()
{
return getPreferredSize();
}
+ @Override
public void update(Graphics g)
{
paint(g);
}
+ @Override
public void paint(Graphics g)
{
if (points == null)
drawBackground(ig, Color.black);
drawScene(ig);
- if (drawAxes == true)
+ if (drawAxes)
{
drawAxes(ig);
}
for (int i = 0; i < 3; i++)
{
g.drawLine(getSize().width / 2, getSize().height / 2,
- (int) (axes[i][0] * scale * max[0] + getSize().width / 2),
- (int) (axes[i][1] * scale * max[1] + getSize().height / 2));
+ (int) (axisEndPoints[i].x * scale * max[0] + getSize().width / 2),
+ (int) (axisEndPoints[i].y * scale * max[1] + getSize().height / 2));
}
}
public void drawScene(Graphics g)
{
- // boolean darker = false;
-
- int halfwidth = getSize().width / 2;
- int halfheight = getSize().height / 2;
-
for (int i = 0; i < npoint; i++)
{
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- int x = (int) ((float) (sp.coord[0] - centre[0]) * scale) + halfwidth;
- int y = (int) ((float) (sp.coord[1] - centre[1]) * scale)
- + halfheight;
- float z = sp.coord[1] - centre[2];
-
- if (av.getSequenceColour(sp.sequence) == Color.black)
- {
- g.setColor(Color.white);
- }
- else
- {
- g.setColor(av.getSequenceColour(sp.sequence));
- }
-
+ SequencePoint sp = points.get(i);
+ SequenceI sequence = sp.getSequence();
+ Color sequenceColour = av.getSequenceColour(sequence);
+ g.setColor(
+ sequenceColour == Color.black ? Color.white : sequenceColour);
if (av.getSelectionGroup() != null)
{
if (av.getSelectionGroup().getSequences(null)
- .contains(((SequencePoint) points.elementAt(i)).sequence))
+ .contains(sequence))
{
g.setColor(Color.gray);
}
}
- if (z < 0)
+
+ if (sp.coord.z < centre.z)
{
g.setColor(g.getColor().darker());
}
+ int halfwidth = getSize().width / 2;
+ int halfheight = getSize().height / 2;
+ int x = (int) ((sp.coord.x - centre.x) * scale) + halfwidth;
+ int y = (int) ((sp.coord.y - centre.y) * scale) + halfheight;
g.fillRect(x - 3, y - 3, 6, 6);
+
if (showLabels)
{
g.setColor(Color.red);
- g.drawString(
- ((SequencePoint) points.elementAt(i)).sequence.getName(),
- x - 3, y - 4);
+ g.drawString(sequence.getName(), x - 3, y - 4);
}
}
}
- public Dimension minimumsize()
- {
- return prefsize;
- }
-
- public Dimension preferredsize()
- {
- return prefsize;
- }
-
+ @Override
public void keyTyped(KeyEvent evt)
{
}
+ @Override
public void keyReleased(KeyEvent evt)
{
}
+ @Override
public void keyPressed(KeyEvent evt)
{
- if (evt.getKeyCode() == KeyEvent.VK_UP)
+ boolean shiftDown = evt.isShiftDown();
+ int keyCode = evt.getKeyCode();
+ if (keyCode == KeyEvent.VK_UP)
+ {
+ if (shiftDown)
+ {
+ rotate(0f, -1f);
+ }
+ else
+ {
+ zoom(1.1f);
+ }
+ }
+ else if (keyCode == KeyEvent.VK_DOWN)
{
- scalefactor = (float) (scalefactor * 1.1);
- scale = findScale();
+ if (shiftDown)
+ {
+ rotate(0f, 1f);
+ }
+ else
+ {
+ zoom(0.9f);
+ }
}
- else if (evt.getKeyCode() == KeyEvent.VK_DOWN)
+ else if (shiftDown && keyCode == KeyEvent.VK_LEFT)
{
- scalefactor = (float) (scalefactor * 0.9);
- scale = findScale();
+ rotate(1f, 0f);
+ }
+ else if (shiftDown && keyCode == KeyEvent.VK_RIGHT)
+ {
+ rotate(-1f, 0f);
}
else if (evt.getKeyChar() == 's')
{
repaint();
}
- public void printPoints()
- {
- for (int i = 0; i < npoint; i++)
- {
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- Format.print(System.out, "%5d ", i);
- for (int j = 0; j < 3; j++)
- {
- Format.print(System.out, "%13.3f ", sp.coord[j]);
- }
- System.out.println();
- }
- }
-
+ @Override
public void mouseClicked(MouseEvent evt)
{
}
+ @Override
public void mouseEntered(MouseEvent evt)
{
}
+ @Override
public void mouseExited(MouseEvent evt)
{
}
+ @Override
public void mouseReleased(MouseEvent evt)
{
}
+ @Override
public void mousePressed(MouseEvent evt)
{
int x = evt.getX();
int y = evt.getY();
- mx = x;
- my = y;
-
- omx = mx;
- omy = my;
+ mouseX = x;
+ mouseY = y;
startx = x;
starty = y;
rectx2 = -1;
recty2 = -1;
- SequenceI found = findPoint(x, y);
+ SequenceI found = findSequenceAtPoint(x, y);
if (found != null)
{
repaint();
}
+ @Override
public void mouseMoved(MouseEvent evt)
{
- SequenceI found = findPoint(evt.getX(), evt.getY());
+ SequenceI found = findSequenceAtPoint(evt.getX(), evt.getY());
if (found == null)
{
tooltip = null;
repaint();
}
+ @Override
public void mouseDragged(MouseEvent evt)
{
- mx = evt.getX();
- my = evt.getY();
-
- rotmat.setIdentity();
+ int xPos = evt.getX();
+ int yPos = evt.getY();
- rotmat.rotate((float) (my - omy), 'x');
- rotmat.rotate((float) (mx - omx), 'y');
-
- for (int i = 0; i < npoint; i++)
+ if (xPos == mouseX && yPos == mouseY)
{
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- sp.coord[0] -= centre[0];
- sp.coord[1] -= centre[1];
- sp.coord[2] -= centre[2];
-
- // Now apply the rotation matrix
- sp.coord = rotmat.vectorMultiply(sp.coord);
-
- // Now translate back again
- sp.coord[0] += centre[0];
- sp.coord[1] += centre[1];
- sp.coord[2] += centre[2];
+ return;
}
- for (int i = 0; i < 3; i++)
- {
- axes[i] = rotmat.vectorMultiply(axes[i]);
- }
- omx = mx;
- omy = my;
+ int xDelta = xPos - mouseX;
+ int yDelta = yPos - mouseY;
- paint(this.getGraphics());
+ rotate(xDelta, yDelta);
+ repaint();
}
public void rectSelect(int x1, int y1, int x2, int y2)
// boolean changedSel = false;
for (int i = 0; i < npoint; i++)
{
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- int tmp1 = (int) ((sp.coord[0] - centre[0]) * scale
- + (float) getSize().width / 2.0);
- int tmp2 = (int) ((sp.coord[1] - centre[1]) * scale
- + (float) getSize().height / 2.0);
+ SequencePoint sp = points.get(i);
+ int tmp1 = (int) ((sp.coord.x - centre.x) * scale
+ + getSize().width / 2.0);
+ int tmp2 = (int) ((sp.coord.y - centre.y) * scale
+ + getSize().height / 2.0);
+ SequenceI sequence = sp.getSequence();
if (tmp1 > x1 && tmp1 < x2 && tmp2 > y1 && tmp2 < y2)
{
if (av != null)
{
if (!av.getSelectionGroup().getSequences(null)
- .contains(sp.sequence))
+ .contains(sequence))
{
- av.getSelectionGroup().addSequence(sp.sequence, true);
+ av.getSelectionGroup().addSequence(sequence, true);
}
}
}
}
}
- public SequenceI findPoint(int x, int y)
+ /**
+ * Answers the first sequence found whose point on the display is within 2
+ * pixels of the given coordinates, or null if none is found
+ *
+ * @param x
+ * @param y
+ *
+ * @return
+ */
+ public SequenceI findSequenceAtPoint(int x, int y)
{
-
int halfwidth = getSize().width / 2;
int halfheight = getSize().height / 2;
for (int i = 0; i < npoint; i++)
{
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- int px = (int) ((float) (sp.coord[0] - centre[0]) * scale)
+ SequencePoint sp = points.get(i);
+ int px = (int) ((sp.coord.x - centre.x) * scale)
+ halfwidth;
- int py = (int) ((float) (sp.coord[1] - centre[1]) * scale)
+ int py = (int) ((sp.coord.y - centre.y) * scale)
+ halfheight;
if (Math.abs(px - x) < 3 && Math.abs(py - y) < 3)
{
found = i;
+ break;
}
}
+
if (found != -1)
{
- return ((SequencePoint) points.elementAt(found)).sequence;
+ return points.get(found).getSequence();
}
else
{
}
}
+ /**
+ * Resets the view to initial state (no rotation)
+ */
+ public void resetView()
+ {
+ img = null;
+ resetAxes();
+ }
+
+ @Override
+ public void zoom(float factor)
+ {
+ if (factor > 0f)
+ {
+ scalefactor *= factor;
+ }
+ scale = findScale();
+ }
+
+ @Override
+ public void rotate(float x, float y)
+ {
+ if (x == 0f && y == 0f)
+ {
+ return;
+ }
+
+ /*
+ * get the identity transformation...
+ */
+ RotatableMatrix rotmat = new RotatableMatrix();
+
+ /*
+ * rotate around the X axis for change in Y
+ * (mouse movement up/down); note we are equating a
+ * number of pixels with degrees of rotation here!
+ */
+ if (y != 0)
+ {
+ rotmat.rotate(y, Axis.X);
+ }
+
+ /*
+ * rotate around the Y axis for change in X
+ * (mouse movement left/right)
+ */
+ if (x != 0)
+ {
+ rotmat.rotate(x, Axis.Y);
+ }
+
+ /*
+ * apply the composite transformation to sequence points
+ */
+ for (int i = 0; i < npoint; i++)
+ {
+ SequencePoint sp = points.get(i);
+ sp.translate(-centre.x, -centre.y, -centre.z);
+
+ // Now apply the rotation matrix
+ sp.coord = rotmat.vectorMultiply(sp.coord);
+
+ // Now translate back again
+ sp.translate(centre.x, centre.y, centre.z);
+ }
+
+ /*
+ * rotate the x/y/z axis positions
+ */
+ for (int i = 0; i < DIMS; i++)
+ {
+ axisEndPoints[i] = rotmat.vectorMultiply(axisEndPoints[i]);
+ }
+ }
+
}
.visibleToAbsoluteColumn(endx);
}
- int maxwidth = av.getAlignment().getWidth();
- if (av.hasHiddenColumns())
- {
- maxwidth = av.getAlignment().getHiddenColumns()
- .absoluteToVisibleColumn(maxwidth) - 1;
- }
-
// WEST SCALE
for (int i = 0; i < av.getAlignment().getHeight(); i++)
{
int endx;
int ypos = hgap;
- int maxwidth = av.getAlignment().getWidth();
-
- if (av.hasHiddenColumns())
- {
- maxwidth = av.getAlignment().getHiddenColumns()
- .absoluteToVisibleColumn(maxwidth);
- }
+ int maxwidth = av.getAlignment().getVisibleWidth();
while ((ypos <= canvasHeight) && (startRes < maxwidth))
{
int blockEnd;
HiddenColumns hidden = av.getAlignment().getHiddenColumns();
- VisibleContigsIterator regions = (VisibleContigsIterator) hidden
+ VisibleContigsIterator regions = hidden
.getVisContigsIterator(startRes, endRes + 1, true);
while (regions.hasNext())
Vector<SequenceNode> l = tree.findLeaves(groups.get(i));
- Vector<SequenceI> sequences = new Vector<SequenceI>();
+ Vector<SequenceI> sequences = new Vector<>();
for (int j = 0; j < l.size(); j++)
{
SequenceI s1 = (SequenceI) l.elementAt(j).element();
}
else
{
- cs = ColourSchemeProperty.getColourScheme(sg, ColourSchemeProperty
+ cs = ColourSchemeProperty.getColourScheme(av, sg,
+ ColourSchemeProperty
.getColourName(av.getGlobalColourScheme()));
}
// cs is null if shading is an annotationColourGradient
* service</li>
* <li>USAGESTATS (false - user prompted) Enable google analytics tracker for
* collecting usage statistics</li>
- * <li>DAS_LOCAL_SOURCE list of local das sources</li>
* <li>SHOW_OVERVIEW boolean for overview window display</li>
* <li>ANTI_ALIAS boolean for smooth fonts</li>
* <li>RIGHT_ALIGN_IDS boolean</li>
* sequence id (must be in SEQUENCE_LINKS or STORED_LINKS)
* <li>GROUP_LINKS list of name|URL[|<separator>] tuples - see
* jalview.utils.GroupURLLink for more info</li>
- * <li>DAS_REGISTRY_URL the registry to query</li>
* <li>DEFAULT_BROWSER for unix</li>
- * <li>DAS_ACTIVE_SOURCE list of active sources</li>
* <li>SHOW_MEMUSAGE boolean show memory usage and warning indicator on desktop
* (false)</li>
* <li>VERSION_CHECK (true) check for the latest release version from
*/
public static final String JALVIEWLOGLEVEL = "logs.Jalview.level";
- public static final String DAS_LOCAL_SOURCE = "DAS_LOCAL_SOURCE";
-
- public static final String DAS_REGISTRY_URL = "DAS_REGISTRY_URL";
-
- public static final String DAS_ACTIVE_SOURCE = "DAS_ACTIVE_SOURCE";
-
/**
* Sifts settings
*/
return def;
}
+ public static int getDefault(String property, int def)
+ {
+ String string = getProperty(property);
+ if (string != null)
+ {
+ try
+ {
+ def = Integer.parseInt(string);
+ } catch (NumberFormatException e)
+ {
+ System.out.println("Error parsing int property '" + property
+ + "' with value '" + string + "'");
+ }
+ }
+
+ return def;
+ }
+
/**
* Answers the value of the given property, or the supplied default value if
* the property is not set
FileFormatI format = null;
DataSourceType protocol = null;
FileLoader fileLoader = new FileLoader(!headless);
- Vector<String> getFeatures = null; // vector of das source nicknames to
- // fetch
- // features from
- // loading is done.
+
String groovyscript = null; // script to execute after all loading is
// completed one way or another
// extract groovy argument and execute if necessary
data.replaceAll("%20", " ");
ColourSchemeI cs = ColourSchemeProperty
- .getColourScheme(af.getViewport().getAlignment(), data);
+ .getColourScheme(af.getViewport(),
+ af.getViewport().getAlignment(), data);
if (cs != null)
{
// TODO - load PDB structure(s) to alignment JAL-629
// (associate with identical sequence in alignment, or a specified
// sequence)
-
- getFeatures = checkDasArguments(aparser);
- if (af != null && getFeatures != null)
- {
- FeatureFetcher ff = startFeatureFetching(getFeatures);
- if (ff != null)
- {
- while (!ff.allFinished() || af.operationInProgress())
- {
- // wait around until fetching is finished.
- try
- {
- Thread.sleep(100);
- } catch (Exception e)
- {
-
- }
- }
- }
- getFeatures = null; // have retrieved features - forget them now.
- }
if (groovyscript != null)
{
// Execute the groovy script after we've done all the rendering stuff
startUpAlframe = fileLoader.LoadFileWaitTillLoaded(file, protocol,
format);
- getFeatures = checkDasArguments(aparser);
// extract groovy arguments before anything else.
}
- // If the user has specified features to be retrieved,
- // or a groovy script to be executed, do them if they
- // haven't been done already
- // fetch features for the default alignment
- if (getFeatures != null)
- {
- if (startUpAlframe != null)
- {
- startFeatureFetching(getFeatures);
- }
- }
+
// Once all other stuff is done, execute any groovy scripts (in order)
if (groovyscript != null)
{
// (quote the 'PROPERTY=VALUE' pair to ensure spaces are
// passed in correctly)"
+ "-jabaws URL\tSpecify URL for Jabaws services (e.g. for a local installation).\n"
- + "-dasserver nickname=URL\tAdd and enable a das server with given nickname\n\t\t\t(alphanumeric or underscores only) for retrieval of features for all alignments.\n"
- + "\t\t\tSources that also support the sequence command may be specified by prepending the URL with sequence:\n"
- + "\t\t\t e.g. sequence:http://localdas.somewhere.org/das/source)\n"
+ "-fetchfrom nickname\tQuery nickname for features for the alignments and display them.\n"
// +
// "-vdoc vamsas-document\tImport vamsas document into new
}
}
- /**
- * Check commandline for any das server definitions or any fetchfrom switches
- *
- * @return vector of DAS source nicknames to retrieve from
- */
- private static Vector<String> checkDasArguments(ArgsParser aparser)
- {
- Vector<String> source = null;
- String data;
- String locsources = Cache.getProperty(Cache.DAS_LOCAL_SOURCE);
- while ((data = aparser.getValue("dasserver", true)) != null)
- {
- String nickname = null;
- String url = null;
- int pos = data.indexOf('=');
- // determine capabilities
- if (pos > 0)
- {
- nickname = data.substring(0, pos);
- }
- url = data.substring(pos + 1);
- if (url != null && (url.startsWith("http:")
- || url.startsWith("sequence:http:")))
- {
- if (nickname == null)
- {
- nickname = url;
- }
- if (locsources == null)
- {
- locsources = "";
- }
- else
- {
- locsources += "\t";
- }
- locsources = locsources + nickname + "|" + url;
- System.err.println(
- "NOTE! dasserver parameter not yet really supported (got args of "
- + nickname + "|" + url);
- if (source == null)
- {
- source = new Vector<>();
- }
- source.addElement(nickname);
- }
- System.out.println(
- "CMD [-dasserver " + data + "] executed successfully!");
- } // loop until no more server entries are found.
- if (locsources != null && locsources.indexOf('|') > -1)
- {
- Cache.log.debug("Setting local source list in properties file to:\n"
- + locsources);
- Cache.setProperty(Cache.DAS_LOCAL_SOURCE, locsources);
- }
- while ((data = aparser.getValue("fetchfrom", true)) != null)
- {
- System.out.println("adding source '" + data + "'");
- if (source == null)
- {
- source = new Vector<>();
- }
- source.addElement(data);
- }
- return source;
- }
-
- /**
- * start a feature fetcher for every alignment frame
- *
- * @param dasSources
- */
- private FeatureFetcher startFeatureFetching(
- final Vector<String> dasSources)
- {
- FeatureFetcher ff = new FeatureFetcher();
- AlignFrame afs[] = Desktop.getAlignFrames();
- if (afs == null || afs.length == 0)
- {
- return null;
- }
- for (int i = 0; i < afs.length; i++)
- {
- ff.addFetcher(afs[i], dasSources);
- }
- return ff;
- }
-
public static boolean isHeadlessMode()
{
String isheadless = System.getProperty("java.awt.headless");
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Alignment.
- *
- * @version $Revision$ $Date$
- */
-public class Alignment implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _annotation.
- */
- private jalview.binding.Annotation _annotation;
-
- /**
- * Field _sequenceSet.
- */
- private jalview.binding.SequenceSet _sequenceSet;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Alignment()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'annotation'.
- *
- * @return the value of field 'Annotation'.
- */
- public jalview.binding.Annotation getAnnotation()
- {
- return this._annotation;
- }
-
- /**
- * Returns the value of field 'sequenceSet'.
- *
- * @return the value of field 'SequenceSet'.
- */
- public jalview.binding.SequenceSet getSequenceSet()
- {
- return this._sequenceSet;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'annotation'.
- *
- * @param annotation
- * the value of field 'annotation'.
- */
- public void setAnnotation(final jalview.binding.Annotation annotation)
- {
- this._annotation = annotation;
- }
-
- /**
- * Sets the value of field 'sequenceSet'.
- *
- * @param sequenceSet
- * the value of field 'sequenceSet'.
- */
- public void setSequenceSet(final jalview.binding.SequenceSet sequenceSet)
- {
- this._sequenceSet = sequenceSet;
- }
-
- /**
- * 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.Alignment
- */
- public static jalview.binding.Alignment unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Alignment) Unmarshaller
- .unmarshal(jalview.binding.Alignment.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Annotation.
- *
- * @version $Revision$ $Date$
- */
-public class Annotation implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _graph.
- */
- private boolean _graph;
-
- /**
- * keeps track of state for field: _graph
- */
- private boolean _has_graph;
-
- /**
- * Field _graphType.
- */
- private int _graphType;
-
- /**
- * keeps track of state for field: _graphType
- */
- private boolean _has_graphType;
-
- /**
- * Field _annotationElementList.
- */
- private java.util.Vector _annotationElementList;
-
- /**
- * Field _label.
- */
- private java.lang.String _label;
-
- /**
- * Field _description.
- */
- private java.lang.String _description;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Annotation()
- {
- super();
- this._annotationElementList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAnnotationElement
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAnnotationElement(
- final jalview.binding.AnnotationElement vAnnotationElement)
- throws java.lang.IndexOutOfBoundsException
- {
- this._annotationElementList.addElement(vAnnotationElement);
- }
-
- /**
- *
- *
- * @param index
- * @param vAnnotationElement
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAnnotationElement(final int index,
- final jalview.binding.AnnotationElement vAnnotationElement)
- throws java.lang.IndexOutOfBoundsException
- {
- this._annotationElementList.add(index, vAnnotationElement);
- }
-
- /**
- */
- public void deleteGraph()
- {
- this._has_graph = false;
- }
-
- /**
- */
- public void deleteGraphType()
- {
- this._has_graphType = false;
- }
-
- /**
- * Method enumerateAnnotationElement.
- *
- * @return an Enumeration over all jalview.binding.AnnotationElement elements
- */
- public java.util.Enumeration enumerateAnnotationElement()
- {
- return this._annotationElementList.elements();
- }
-
- /**
- * Method getAnnotationElement.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.AnnotationElement at the given
- * index
- */
- public jalview.binding.AnnotationElement getAnnotationElement(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._annotationElementList.size())
- {
- throw new IndexOutOfBoundsException(
- "getAnnotationElement: Index value '" + index
- + "' not in range [0.."
- + (this._annotationElementList.size() - 1) + "]");
- }
-
- return (jalview.binding.AnnotationElement) _annotationElementList
- .get(index);
- }
-
- /**
- * Method getAnnotationElement.Returns the contents of the collection in an
- * Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.AnnotationElement[] getAnnotationElement()
- {
- jalview.binding.AnnotationElement[] array = new jalview.binding.AnnotationElement[0];
- return (jalview.binding.AnnotationElement[]) this._annotationElementList
- .toArray(array);
- }
-
- /**
- * Method getAnnotationElementCount.
- *
- * @return the size of this collection
- */
- public int getAnnotationElementCount()
- {
- return this._annotationElementList.size();
- }
-
- /**
- * Returns the value of field 'description'.
- *
- * @return the value of field 'Description'.
- */
- public java.lang.String getDescription()
- {
- return this._description;
- }
-
- /**
- * Returns the value of field 'graph'.
- *
- * @return the value of field 'Graph'.
- */
- public boolean getGraph()
- {
- return this._graph;
- }
-
- /**
- * Returns the value of field 'graphType'.
- *
- * @return the value of field 'GraphType'.
- */
- public int getGraphType()
- {
- return this._graphType;
- }
-
- /**
- * Returns the value of field 'label'.
- *
- * @return the value of field 'Label'.
- */
- public java.lang.String getLabel()
- {
- return this._label;
- }
-
- /**
- * Method hasGraph.
- *
- * @return true if at least one Graph has been added
- */
- public boolean hasGraph()
- {
- return this._has_graph;
- }
-
- /**
- * Method hasGraphType.
- *
- * @return true if at least one GraphType has been added
- */
- public boolean hasGraphType()
- {
- return this._has_graphType;
- }
-
- /**
- * Returns the value of field 'graph'.
- *
- * @return the value of field 'Graph'.
- */
- public boolean isGraph()
- {
- return this._graph;
- }
-
- /**
- * 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 removeAllAnnotationElement()
- {
- this._annotationElementList.clear();
- }
-
- /**
- * Method removeAnnotationElement.
- *
- * @param vAnnotationElement
- * @return true if the object was removed from the collection.
- */
- public boolean removeAnnotationElement(
- final jalview.binding.AnnotationElement vAnnotationElement)
- {
- boolean removed = _annotationElementList.remove(vAnnotationElement);
- return removed;
- }
-
- /**
- * Method removeAnnotationElementAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.AnnotationElement removeAnnotationElementAt(
- final int index)
- {
- java.lang.Object obj = this._annotationElementList.remove(index);
- return (jalview.binding.AnnotationElement) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vAnnotationElement
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAnnotationElement(final int index,
- final jalview.binding.AnnotationElement vAnnotationElement)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._annotationElementList.size())
- {
- throw new IndexOutOfBoundsException(
- "setAnnotationElement: Index value '" + index
- + "' not in range [0.."
- + (this._annotationElementList.size() - 1) + "]");
- }
-
- this._annotationElementList.set(index, vAnnotationElement);
- }
-
- /**
- *
- *
- * @param vAnnotationElementArray
- */
- public void setAnnotationElement(
- final jalview.binding.AnnotationElement[] vAnnotationElementArray)
- {
- // -- copy array
- _annotationElementList.clear();
-
- for (int i = 0; i < vAnnotationElementArray.length; i++)
- {
- this._annotationElementList.add(vAnnotationElementArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'description'.
- *
- * @param description
- * the value of field 'description'.
- */
- public void setDescription(final java.lang.String description)
- {
- this._description = description;
- }
-
- /**
- * Sets the value of field 'graph'.
- *
- * @param graph
- * the value of field 'graph'.
- */
- public void setGraph(final boolean graph)
- {
- this._graph = graph;
- this._has_graph = true;
- }
-
- /**
- * Sets the value of field 'graphType'.
- *
- * @param graphType
- * the value of field 'graphType'.
- */
- public void setGraphType(final int graphType)
- {
- this._graphType = graphType;
- this._has_graphType = true;
- }
-
- /**
- * Sets the value of field 'label'.
- *
- * @param label
- * the value of field 'label'.
- */
- public void setLabel(final java.lang.String label)
- {
- this._label = label;
- }
-
- /**
- * 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.Annotation
- */
- public static jalview.binding.Annotation unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Annotation) Unmarshaller
- .unmarshal(jalview.binding.Annotation.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class AnnotationElement.
- *
- * @version $Revision$ $Date$
- */
-public class AnnotationElement implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _position.
- */
- private int _position;
-
- /**
- * keeps track of state for field: _position
- */
- private boolean _has_position;
-
- /**
- * Field _displayCharacter.
- */
- private java.lang.String _displayCharacter;
-
- /**
- * Field _description.
- */
- private java.lang.String _description;
-
- /**
- * Field _secondaryStructure.
- */
- private java.lang.String _secondaryStructure;
-
- /**
- * Field _value.
- */
- private float _value;
-
- /**
- * keeps track of state for field: _value
- */
- private boolean _has_value;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AnnotationElement()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deletePosition()
- {
- this._has_position = false;
- }
-
- /**
- */
- public void deleteValue()
- {
- this._has_value = false;
- }
-
- /**
- * Returns the value of field 'description'.
- *
- * @return the value of field 'Description'.
- */
- public java.lang.String getDescription()
- {
- return this._description;
- }
-
- /**
- * Returns the value of field 'displayCharacter'.
- *
- * @return the value of field 'DisplayCharacter'.
- */
- public java.lang.String getDisplayCharacter()
- {
- return this._displayCharacter;
- }
-
- /**
- * Returns the value of field 'position'.
- *
- * @return the value of field 'Position'.
- */
- public int getPosition()
- {
- return this._position;
- }
-
- /**
- * Returns the value of field 'secondaryStructure'.
- *
- * @return the value of field 'SecondaryStructure'.
- */
- public java.lang.String getSecondaryStructure()
- {
- return this._secondaryStructure;
- }
-
- /**
- * Returns the value of field 'value'.
- *
- * @return the value of field 'Value'.
- */
- public float getValue()
- {
- return this._value;
- }
-
- /**
- * Method hasPosition.
- *
- * @return true if at least one Position has been added
- */
- public boolean hasPosition()
- {
- return this._has_position;
- }
-
- /**
- * Method hasValue.
- *
- * @return true if at least one Value has been added
- */
- public boolean hasValue()
- {
- return this._has_value;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'description'.
- *
- * @param description
- * the value of field 'description'.
- */
- public void setDescription(final java.lang.String description)
- {
- this._description = description;
- }
-
- /**
- * Sets the value of field 'displayCharacter'.
- *
- * @param displayCharacter
- * the value of field 'displayCharacter'
- */
- public void setDisplayCharacter(final java.lang.String displayCharacter)
- {
- this._displayCharacter = displayCharacter;
- }
-
- /**
- * Sets the value of field 'position'.
- *
- * @param position
- * the value of field 'position'.
- */
- public void setPosition(final int position)
- {
- this._position = position;
- this._has_position = true;
- }
-
- /**
- * Sets the value of field 'secondaryStructure'.
- *
- * @param secondaryStructure
- * the value of field 'secondaryStructure'.
- */
- public void setSecondaryStructure(
- final java.lang.String secondaryStructure)
- {
- this._secondaryStructure = secondaryStructure;
- }
-
- /**
- * Sets the value of field 'value'.
- *
- * @param value
- * the value of field 'value'.
- */
- public void setValue(final float value)
- {
- this._value = value;
- this._has_value = true;
- }
-
- /**
- * 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.AnnotationElement
- */
- public static jalview.binding.AnnotationElement unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.AnnotationElement) Unmarshaller
- .unmarshal(jalview.binding.AnnotationElement.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Colour.
- *
- * @version $Revision$ $Date$
- */
-public class Colour implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Single letter residue code for an alignment colour scheme, or feature type
- * for a feature colour scheme
- */
- private java.lang.String _name;
-
- /**
- * Field _RGB.
- */
- private java.lang.String _RGB;
-
- /**
- * Field _minRGB.
- */
- private java.lang.String _minRGB;
-
- /**
- * Field _noValueColour.
- */
- private jalview.binding.types.NoValueColour _noValueColour = jalview.binding.types.NoValueColour
- .valueOf("Min");
-
- /**
- * Field _threshType.
- */
- private jalview.binding.types.ColourThreshTypeType _threshType;
-
- /**
- * Field _threshold.
- */
- private float _threshold;
-
- /**
- * keeps track of state for field: _threshold
- */
- private boolean _has_threshold;
-
- /**
- * Field _max.
- */
- private float _max;
-
- /**
- * keeps track of state for field: _max
- */
- private boolean _has_max;
-
- /**
- * Field _min.
- */
- private float _min;
-
- /**
- * keeps track of state for field: _min
- */
- private boolean _has_min;
-
- /**
- * Field _colourByLabel.
- */
- private boolean _colourByLabel;
-
- /**
- * keeps track of state for field: _colourByLabel
- */
- private boolean _has_colourByLabel;
-
- /**
- * Field _autoScale.
- */
- private boolean _autoScale;
-
- /**
- * keeps track of state for field: _autoScale
- */
- private boolean _has_autoScale;
-
- /**
- * name of feature attribute to colour by, or attribute and sub-attribute
- */
- private java.util.Vector _attributeNameList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Colour()
- {
- super();
- setNoValueColour(jalview.binding.types.NoValueColour.valueOf("Min"));
- this._attributeNameList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.addElement(vAttributeName);
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.add(index, vAttributeName);
- }
-
- /**
- */
- public void deleteAutoScale()
- {
- this._has_autoScale = false;
- }
-
- /**
- */
- public void deleteColourByLabel()
- {
- this._has_colourByLabel = false;
- }
-
- /**
- */
- public void deleteMax()
- {
- this._has_max = false;
- }
-
- /**
- */
- public void deleteMin()
- {
- this._has_min = false;
- }
-
- /**
- */
- public void deleteThreshold()
- {
- this._has_threshold = false;
- }
-
- /**
- * Method enumerateAttributeName.
- *
- * @return an Enumeration over all java.lang.String elements
- */
- public java.util.Enumeration enumerateAttributeName()
- {
- return this._attributeNameList.elements();
- }
-
- /**
- * Method getAttributeName.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the java.lang.String at the given index
- */
- public java.lang.String getAttributeName(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("getAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- return (java.lang.String) _attributeNameList.get(index);
- }
-
- /**
- * Method getAttributeName.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public java.lang.String[] getAttributeName()
- {
- java.lang.String[] array = new java.lang.String[0];
- return (java.lang.String[]) this._attributeNameList.toArray(array);
- }
-
- /**
- * Method getAttributeNameCount.
- *
- * @return the size of this collection
- */
- public int getAttributeNameCount()
- {
- return this._attributeNameList.size();
- }
-
- /**
- * Returns the value of field 'autoScale'.
- *
- * @return the value of field 'AutoScale'.
- */
- public boolean getAutoScale()
- {
- return this._autoScale;
- }
-
- /**
- * Returns the value of field 'colourByLabel'.
- *
- * @return the value of field 'ColourByLabel'.
- */
- public boolean getColourByLabel()
- {
- return this._colourByLabel;
- }
-
- /**
- * Returns the value of field 'max'.
- *
- * @return the value of field 'Max'.
- */
- public float getMax()
- {
- return this._max;
- }
-
- /**
- * Returns the value of field 'min'.
- *
- * @return the value of field 'Min'.
- */
- public float getMin()
- {
- return this._min;
- }
-
- /**
- * Returns the value of field 'minRGB'.
- *
- * @return the value of field 'MinRGB'.
- */
- public java.lang.String getMinRGB()
- {
- return this._minRGB;
- }
-
- /**
- * Returns the value of field 'name'. The field 'name' has the following
- * description: Single letter residue code for an alignment colour scheme, or
- * feature type for a feature colour scheme
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Returns the value of field 'noValueColour'.
- *
- * @return the value of field 'NoValueColour'.
- */
- public jalview.binding.types.NoValueColour getNoValueColour()
- {
- return this._noValueColour;
- }
-
- /**
- * Returns the value of field 'RGB'.
- *
- * @return the value of field 'RGB'.
- */
- public java.lang.String getRGB()
- {
- return this._RGB;
- }
-
- /**
- * Returns the value of field 'threshType'.
- *
- * @return the value of field 'ThreshType'.
- */
- public jalview.binding.types.ColourThreshTypeType getThreshType()
- {
- return this._threshType;
- }
-
- /**
- * Returns the value of field 'threshold'.
- *
- * @return the value of field 'Threshold'.
- */
- public float getThreshold()
- {
- return this._threshold;
- }
-
- /**
- * Method hasAutoScale.
- *
- * @return true if at least one AutoScale has been added
- */
- public boolean hasAutoScale()
- {
- return this._has_autoScale;
- }
-
- /**
- * Method hasColourByLabel.
- *
- * @return true if at least one ColourByLabel has been added
- */
- public boolean hasColourByLabel()
- {
- return this._has_colourByLabel;
- }
-
- /**
- * Method hasMax.
- *
- * @return true if at least one Max has been added
- */
- public boolean hasMax()
- {
- return this._has_max;
- }
-
- /**
- * Method hasMin.
- *
- * @return true if at least one Min has been added
- */
- public boolean hasMin()
- {
- return this._has_min;
- }
-
- /**
- * Method hasThreshold.
- *
- * @return true if at least one Threshold has been added
- */
- public boolean hasThreshold()
- {
- return this._has_threshold;
- }
-
- /**
- * Returns the value of field 'autoScale'.
- *
- * @return the value of field 'AutoScale'.
- */
- public boolean isAutoScale()
- {
- return this._autoScale;
- }
-
- /**
- * Returns the value of field 'colourByLabel'.
- *
- * @return the value of field 'ColourByLabel'.
- */
- public boolean isColourByLabel()
- {
- return this._colourByLabel;
- }
-
- /**
- * 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 removeAllAttributeName()
- {
- this._attributeNameList.clear();
- }
-
- /**
- * Method removeAttributeName.
- *
- * @param vAttributeName
- * @return true if the object was removed from the collection.
- */
- public boolean removeAttributeName(final java.lang.String vAttributeName)
- {
- boolean removed = _attributeNameList.remove(vAttributeName);
- return removed;
- }
-
- /**
- * Method removeAttributeNameAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public java.lang.String removeAttributeNameAt(final int index)
- {
- java.lang.Object obj = this._attributeNameList.remove(index);
- return (java.lang.String) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("setAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- this._attributeNameList.set(index, vAttributeName);
- }
-
- /**
- *
- *
- * @param vAttributeNameArray
- */
- public void setAttributeName(final java.lang.String[] vAttributeNameArray)
- {
- // -- copy array
- _attributeNameList.clear();
-
- for (int i = 0; i < vAttributeNameArray.length; i++)
- {
- this._attributeNameList.add(vAttributeNameArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'autoScale'.
- *
- * @param autoScale
- * the value of field 'autoScale'.
- */
- public void setAutoScale(final boolean autoScale)
- {
- this._autoScale = autoScale;
- this._has_autoScale = true;
- }
-
- /**
- * Sets the value of field 'colourByLabel'.
- *
- * @param colourByLabel
- * the value of field 'colourByLabel'.
- */
- public void setColourByLabel(final boolean colourByLabel)
- {
- this._colourByLabel = colourByLabel;
- this._has_colourByLabel = true;
- }
-
- /**
- * Sets the value of field 'max'.
- *
- * @param max
- * the value of field 'max'.
- */
- public void setMax(final float max)
- {
- this._max = max;
- this._has_max = true;
- }
-
- /**
- * Sets the value of field 'min'.
- *
- * @param min
- * the value of field 'min'.
- */
- public void setMin(final float min)
- {
- this._min = min;
- this._has_min = true;
- }
-
- /**
- * Sets the value of field 'minRGB'.
- *
- * @param minRGB
- * the value of field 'minRGB'.
- */
- public void setMinRGB(final java.lang.String minRGB)
- {
- this._minRGB = minRGB;
- }
-
- /**
- * Sets the value of field 'name'. The field 'name' has the following
- * description: Single letter residue code for an alignment colour scheme, or
- * feature type for a feature colour scheme
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * Sets the value of field 'noValueColour'.
- *
- * @param noValueColour
- * the value of field 'noValueColour'.
- */
- public void setNoValueColour(
- final jalview.binding.types.NoValueColour noValueColour)
- {
- this._noValueColour = noValueColour;
- }
-
- /**
- * Sets the value of field 'RGB'.
- *
- * @param RGB
- * the value of field 'RGB'.
- */
- public void setRGB(final java.lang.String RGB)
- {
- this._RGB = RGB;
- }
-
- /**
- * Sets the value of field 'threshType'.
- *
- * @param threshType
- * the value of field 'threshType'.
- */
- public void setThreshType(
- final jalview.binding.types.ColourThreshTypeType threshType)
- {
- this._threshType = threshType;
- }
-
- /**
- * Sets the value of field 'threshold'.
- *
- * @param threshold
- * the value of field 'threshold'.
- */
- public void setThreshold(final float threshold)
- {
- this._threshold = threshold;
- this._has_threshold = true;
- }
-
- /**
- * 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.Colour
- */
- public static jalview.binding.Colour unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Colour) Unmarshaller
- .unmarshal(jalview.binding.Colour.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class CompoundMatcher.
- *
- * @version $Revision$ $Date$
- */
-public class CompoundMatcher implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * If true, matchers are AND-ed, if false they are OR-ed
- */
- private boolean _and;
-
- /**
- * keeps track of state for field: _and
- */
- private boolean _has_and;
-
- /**
- * Field _matcherSetList.
- */
- private java.util.Vector _matcherSetList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public CompoundMatcher()
- {
- super();
- this._matcherSetList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vMatcherSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addMatcherSet(final jalview.binding.MatcherSet vMatcherSet)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._matcherSetList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addMatcherSet has a maximum of 2");
- }
-
- this._matcherSetList.addElement(vMatcherSet);
- }
-
- /**
- *
- *
- * @param index
- * @param vMatcherSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addMatcherSet(final int index,
- final jalview.binding.MatcherSet vMatcherSet)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._matcherSetList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addMatcherSet has a maximum of 2");
- }
-
- this._matcherSetList.add(index, vMatcherSet);
- }
-
- /**
- */
- public void deleteAnd()
- {
- this._has_and = false;
- }
-
- /**
- * Method enumerateMatcherSet.
- *
- * @return an Enumeration over all jalview.binding.MatcherSet elements
- */
- public java.util.Enumeration enumerateMatcherSet()
- {
- return this._matcherSetList.elements();
- }
-
- /**
- * Returns the value of field 'and'. The field 'and' has the following
- * description: If true, matchers are AND-ed, if false they are OR-ed
- *
- * @return the value of field 'And'.
- */
- public boolean getAnd()
- {
- return this._and;
- }
-
- /**
- * Method getMatcherSet.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.MatcherSet at the given index
- */
- public jalview.binding.MatcherSet getMatcherSet(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._matcherSetList.size())
- {
- throw new IndexOutOfBoundsException(
- "getMatcherSet: Index value '" + index + "' not in range [0.."
- + (this._matcherSetList.size() - 1) + "]");
- }
-
- return (jalview.binding.MatcherSet) _matcherSetList.get(index);
- }
-
- /**
- * Method getMatcherSet.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.MatcherSet[] getMatcherSet()
- {
- jalview.binding.MatcherSet[] array = new jalview.binding.MatcherSet[0];
- return (jalview.binding.MatcherSet[]) this._matcherSetList
- .toArray(array);
- }
-
- /**
- * Method getMatcherSetCount.
- *
- * @return the size of this collection
- */
- public int getMatcherSetCount()
- {
- return this._matcherSetList.size();
- }
-
- /**
- * Method hasAnd.
- *
- * @return true if at least one And has been added
- */
- public boolean hasAnd()
- {
- return this._has_and;
- }
-
- /**
- * Returns the value of field 'and'. The field 'and' has the following
- * description: If true, matchers are AND-ed, if false they are OR-ed
- *
- * @return the value of field 'And'.
- */
- public boolean isAnd()
- {
- return this._and;
- }
-
- /**
- * 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 removeAllMatcherSet()
- {
- this._matcherSetList.clear();
- }
-
- /**
- * Method removeMatcherSet.
- *
- * @param vMatcherSet
- * @return true if the object was removed from the collection.
- */
- public boolean removeMatcherSet(
- final jalview.binding.MatcherSet vMatcherSet)
- {
- boolean removed = _matcherSetList.remove(vMatcherSet);
- return removed;
- }
-
- /**
- * Method removeMatcherSetAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.MatcherSet removeMatcherSetAt(final int index)
- {
- java.lang.Object obj = this._matcherSetList.remove(index);
- return (jalview.binding.MatcherSet) obj;
- }
-
- /**
- * Sets the value of field 'and'. The field 'and' has the following
- * description: If true, matchers are AND-ed, if false they are OR-ed
- *
- * @param and
- * the value of field 'and'.
- */
- public void setAnd(final boolean and)
- {
- this._and = and;
- this._has_and = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vMatcherSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setMatcherSet(final int index,
- final jalview.binding.MatcherSet vMatcherSet)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._matcherSetList.size())
- {
- throw new IndexOutOfBoundsException(
- "setMatcherSet: Index value '" + index + "' not in range [0.."
- + (this._matcherSetList.size() - 1) + "]");
- }
-
- this._matcherSetList.set(index, vMatcherSet);
- }
-
- /**
- *
- *
- * @param vMatcherSetArray
- */
- public void setMatcherSet(
- final jalview.binding.MatcherSet[] vMatcherSetArray)
- {
- // -- copy array
- _matcherSetList.clear();
-
- for (int i = 0; i < vMatcherSetArray.length; i++)
- {
- this._matcherSetList.add(vMatcherSetArray[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.CompoundMatcher
- */
- public static jalview.binding.CompoundMatcher unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.CompoundMatcher) Unmarshaller
- .unmarshal(jalview.binding.CompoundMatcher.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Feature.
- *
- * @version $Revision$ $Date$
- */
-public class Feature implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _begin.
- */
- private int _begin;
-
- /**
- * keeps track of state for field: _begin
- */
- private boolean _has_begin;
-
- /**
- * Field _end.
- */
- private int _end;
-
- /**
- * keeps track of state for field: _end
- */
- private boolean _has_end;
-
- /**
- * Field _type.
- */
- private java.lang.String _type;
-
- /**
- * Field _description.
- */
- private java.lang.String _description;
-
- /**
- * Field _status.
- */
- private java.lang.String _status;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Feature()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteBegin()
- {
- this._has_begin = false;
- }
-
- /**
- */
- public void deleteEnd()
- {
- this._has_end = false;
- }
-
- /**
- * Returns the value of field 'begin'.
- *
- * @return the value of field 'Begin'.
- */
- public int getBegin()
- {
- return this._begin;
- }
-
- /**
- * Returns the value of field 'description'.
- *
- * @return the value of field 'Description'.
- */
- public java.lang.String getDescription()
- {
- return this._description;
- }
-
- /**
- * Returns the value of field 'end'.
- *
- * @return the value of field 'End'.
- */
- public int getEnd()
- {
- return this._end;
- }
-
- /**
- * Returns the value of field 'status'.
- *
- * @return the value of field 'Status'.
- */
- public java.lang.String getStatus()
- {
- return this._status;
- }
-
- /**
- * Returns the value of field 'type'.
- *
- * @return the value of field 'Type'.
- */
- public java.lang.String getType()
- {
- return this._type;
- }
-
- /**
- * Method hasBegin.
- *
- * @return true if at least one Begin has been added
- */
- public boolean hasBegin()
- {
- return this._has_begin;
- }
-
- /**
- * Method hasEnd.
- *
- * @return true if at least one End has been added
- */
- public boolean hasEnd()
- {
- return this._has_end;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'begin'.
- *
- * @param begin
- * the value of field 'begin'.
- */
- public void setBegin(final int begin)
- {
- this._begin = begin;
- this._has_begin = true;
- }
-
- /**
- * Sets the value of field 'description'.
- *
- * @param description
- * the value of field 'description'.
- */
- public void setDescription(final java.lang.String description)
- {
- this._description = description;
- }
-
- /**
- * Sets the value of field 'end'.
- *
- * @param end
- * the value of field 'end'.
- */
- public void setEnd(final int end)
- {
- this._end = end;
- this._has_end = true;
- }
-
- /**
- * Sets the value of field 'status'.
- *
- * @param status
- * the value of field 'status'.
- */
- public void setStatus(final java.lang.String status)
- {
- this._status = status;
- }
-
- /**
- * Sets the value of field 'type'.
- *
- * @param type
- * the value of field 'type'.
- */
- public void setType(final java.lang.String type)
- {
- this._type = type;
- }
-
- /**
- * 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.Feature
- */
- public static jalview.binding.Feature unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Feature) Unmarshaller
- .unmarshal(jalview.binding.Feature.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class FeatureMatcher.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureMatcher implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _by.
- */
- private jalview.binding.types.FeatureMatcherByType _by;
-
- /**
- * name of feature attribute to filter on, or attribute and sub-attribute
- */
- private java.util.Vector _attributeNameList;
-
- /**
- * Field _condition.
- */
- private java.lang.String _condition;
-
- /**
- * Field _value.
- */
- private java.lang.String _value;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureMatcher()
- {
- super();
- this._attributeNameList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.addElement(vAttributeName);
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.add(index, vAttributeName);
- }
-
- /**
- * Method enumerateAttributeName.
- *
- * @return an Enumeration over all java.lang.String elements
- */
- public java.util.Enumeration enumerateAttributeName()
- {
- return this._attributeNameList.elements();
- }
-
- /**
- * Method getAttributeName.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the java.lang.String at the given index
- */
- public java.lang.String getAttributeName(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("getAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- return (java.lang.String) _attributeNameList.get(index);
- }
-
- /**
- * Method getAttributeName.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public java.lang.String[] getAttributeName()
- {
- java.lang.String[] array = new java.lang.String[0];
- return (java.lang.String[]) this._attributeNameList.toArray(array);
- }
-
- /**
- * Method getAttributeNameCount.
- *
- * @return the size of this collection
- */
- public int getAttributeNameCount()
- {
- return this._attributeNameList.size();
- }
-
- /**
- * Returns the value of field 'by'.
- *
- * @return the value of field 'By'.
- */
- public jalview.binding.types.FeatureMatcherByType getBy()
- {
- return this._by;
- }
-
- /**
- * Returns the value of field 'condition'.
- *
- * @return the value of field 'Condition'.
- */
- public java.lang.String getCondition()
- {
- return this._condition;
- }
-
- /**
- * Returns the value of field 'value'.
- *
- * @return the value of field 'Value'.
- */
- public java.lang.String getValue()
- {
- return this._value;
- }
-
- /**
- * 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 removeAllAttributeName()
- {
- this._attributeNameList.clear();
- }
-
- /**
- * Method removeAttributeName.
- *
- * @param vAttributeName
- * @return true if the object was removed from the collection.
- */
- public boolean removeAttributeName(final java.lang.String vAttributeName)
- {
- boolean removed = _attributeNameList.remove(vAttributeName);
- return removed;
- }
-
- /**
- * Method removeAttributeNameAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public java.lang.String removeAttributeNameAt(final int index)
- {
- java.lang.Object obj = this._attributeNameList.remove(index);
- return (java.lang.String) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("setAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- this._attributeNameList.set(index, vAttributeName);
- }
-
- /**
- *
- *
- * @param vAttributeNameArray
- */
- public void setAttributeName(final java.lang.String[] vAttributeNameArray)
- {
- // -- copy array
- _attributeNameList.clear();
-
- for (int i = 0; i < vAttributeNameArray.length; i++)
- {
- this._attributeNameList.add(vAttributeNameArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'by'.
- *
- * @param by
- * the value of field 'by'.
- */
- public void setBy(final jalview.binding.types.FeatureMatcherByType by)
- {
- this._by = by;
- }
-
- /**
- * Sets the value of field 'condition'.
- *
- * @param condition
- * the value of field 'condition'.
- */
- public void setCondition(final java.lang.String condition)
- {
- this._condition = condition;
- }
-
- /**
- * Sets the value of field 'value'.
- *
- * @param value
- * the value of field 'value'.
- */
- public void setValue(final java.lang.String value)
- {
- this._value = value;
- }
-
- /**
- * 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.FeatureMatcher
- */
- public static jalview.binding.FeatureMatcher unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.FeatureMatcher) Unmarshaller
- .unmarshal(jalview.binding.FeatureMatcher.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * A feature match condition, which may be simple or compound
- *
- * @version $Revision$ $Date$
- */
-public class FeatureMatcherSet implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Internal choice value storage
- */
- private java.lang.Object _choiceValue;
-
- /**
- * Field _matchCondition.
- */
- private jalview.binding.MatchCondition _matchCondition;
-
- /**
- * Field _compoundMatcher.
- */
- private jalview.binding.CompoundMatcher _compoundMatcher;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureMatcherSet()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'choiceValue'. The field 'choiceValue' has the
- * following description: Internal choice value storage
- *
- * @return the value of field 'ChoiceValue'.
- */
- public java.lang.Object getChoiceValue()
- {
- return this._choiceValue;
- }
-
- /**
- * Returns the value of field 'compoundMatcher'.
- *
- * @return the value of field 'CompoundMatcher'.
- */
- public jalview.binding.CompoundMatcher getCompoundMatcher()
- {
- return this._compoundMatcher;
- }
-
- /**
- * Returns the value of field 'matchCondition'.
- *
- * @return the value of field 'MatchCondition'.
- */
- public jalview.binding.MatchCondition getMatchCondition()
- {
- return this._matchCondition;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'compoundMatcher'.
- *
- * @param compoundMatcher
- * the value of field 'compoundMatcher'.
- */
- public void setCompoundMatcher(
- final jalview.binding.CompoundMatcher compoundMatcher)
- {
- this._compoundMatcher = compoundMatcher;
- this._choiceValue = compoundMatcher;
- }
-
- /**
- * Sets the value of field 'matchCondition'.
- *
- * @param matchCondition
- * the value of field 'matchCondition'.
- */
- public void setMatchCondition(
- final jalview.binding.MatchCondition matchCondition)
- {
- this._matchCondition = matchCondition;
- this._choiceValue = matchCondition;
- }
-
- /**
- * 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.FeatureMatcherSet
- */
- public static jalview.binding.FeatureMatcherSet unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.FeatureMatcherSet) Unmarshaller
- .unmarshal(jalview.binding.FeatureMatcherSet.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class FeatureSettings.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureSettings implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _settingList.
- */
- private java.util.Vector _settingList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureSettings()
- {
- super();
- this._settingList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vSetting
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSetting(final jalview.binding.Setting vSetting)
- throws java.lang.IndexOutOfBoundsException
- {
- this._settingList.addElement(vSetting);
- }
-
- /**
- *
- *
- * @param index
- * @param vSetting
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSetting(final int index,
- final jalview.binding.Setting vSetting)
- throws java.lang.IndexOutOfBoundsException
- {
- this._settingList.add(index, vSetting);
- }
-
- /**
- * Method enumerateSetting.
- *
- * @return an Enumeration over all jalview.binding.Setting elements
- */
- public java.util.Enumeration enumerateSetting()
- {
- return this._settingList.elements();
- }
-
- /**
- * Method getSetting.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.Setting at the given index
- */
- public jalview.binding.Setting getSetting(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._settingList.size())
- {
- throw new IndexOutOfBoundsException(
- "getSetting: Index value '" + index + "' not in range [0.."
- + (this._settingList.size() - 1) + "]");
- }
-
- return (jalview.binding.Setting) _settingList.get(index);
- }
-
- /**
- * Method getSetting.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.Setting[] getSetting()
- {
- jalview.binding.Setting[] array = new jalview.binding.Setting[0];
- return (jalview.binding.Setting[]) this._settingList.toArray(array);
- }
-
- /**
- * Method getSettingCount.
- *
- * @return the size of this collection
- */
- public int getSettingCount()
- {
- return this._settingList.size();
- }
-
- /**
- * 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 removeAllSetting()
- {
- this._settingList.clear();
- }
-
- /**
- * Method removeSetting.
- *
- * @param vSetting
- * @return true if the object was removed from the collection.
- */
- public boolean removeSetting(final jalview.binding.Setting vSetting)
- {
- boolean removed = _settingList.remove(vSetting);
- return removed;
- }
-
- /**
- * Method removeSettingAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.Setting removeSettingAt(final int index)
- {
- java.lang.Object obj = this._settingList.remove(index);
- return (jalview.binding.Setting) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vSetting
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setSetting(final int index,
- final jalview.binding.Setting vSetting)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._settingList.size())
- {
- throw new IndexOutOfBoundsException(
- "setSetting: Index value '" + index + "' not in range [0.."
- + (this._settingList.size() - 1) + "]");
- }
-
- this._settingList.set(index, vSetting);
- }
-
- /**
- *
- *
- * @param vSettingArray
- */
- public void setSetting(final jalview.binding.Setting[] vSettingArray)
- {
- // -- copy array
- _settingList.clear();
-
- for (int i = 0; i < vSettingArray.length; i++)
- {
- this._settingList.add(vSettingArray[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.FeatureSettings
- */
- public static jalview.binding.FeatureSettings unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.FeatureSettings) Unmarshaller
- .unmarshal(jalview.binding.FeatureSettings.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Features.
- *
- * @version $Revision$ $Date$
- */
-public class Features extends Feature implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Features()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.Feature
- */
- public static jalview.binding.Feature unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Feature) Unmarshaller
- .unmarshal(jalview.binding.Features.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Filter.
- *
- * @version $Revision$ $Date$
- */
-public class Filter implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _featureType.
- */
- private java.lang.String _featureType;
-
- /**
- * Field _matcherSet.
- */
- private jalview.binding.MatcherSet _matcherSet;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Filter()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'featureType'.
- *
- * @return the value of field 'FeatureType'.
- */
- public java.lang.String getFeatureType()
- {
- return this._featureType;
- }
-
- /**
- * Returns the value of field 'matcherSet'.
- *
- * @return the value of field 'MatcherSet'.
- */
- public jalview.binding.MatcherSet getMatcherSet()
- {
- return this._matcherSet;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'featureType'.
- *
- * @param featureType
- * the value of field 'featureType'.
- */
- public void setFeatureType(final java.lang.String featureType)
- {
- this._featureType = featureType;
- }
-
- /**
- * Sets the value of field 'matcherSet'.
- *
- * @param matcherSet
- * the value of field 'matcherSet'.
- */
- public void setMatcherSet(final jalview.binding.MatcherSet matcherSet)
- {
- this._matcherSet = matcherSet;
- }
-
- /**
- * 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.Filter
- */
- public static jalview.binding.Filter unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Filter) Unmarshaller
- .unmarshal(jalview.binding.Filter.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JGroup.
- *
- * @version $Revision$ $Date$
- */
-public class JGroup implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _start.
- */
- private int _start;
-
- /**
- * keeps track of state for field: _start
- */
- private boolean _has_start;
-
- /**
- * Field _end.
- */
- private int _end;
-
- /**
- * keeps track of state for field: _end
- */
- private boolean _has_end;
-
- /**
- * Field _name.
- */
- private java.lang.String _name;
-
- /**
- * Field _colour.
- */
- private java.lang.String _colour;
-
- /**
- * Field _consThreshold.
- */
- private int _consThreshold;
-
- /**
- * keeps track of state for field: _consThreshold
- */
- private boolean _has_consThreshold;
-
- /**
- * Field _pidThreshold.
- */
- private int _pidThreshold;
-
- /**
- * keeps track of state for field: _pidThreshold
- */
- private boolean _has_pidThreshold;
-
- /**
- * Field _outlineColour.
- */
- private int _outlineColour;
-
- /**
- * keeps track of state for field: _outlineColour
- */
- private boolean _has_outlineColour;
-
- /**
- * Field _displayBoxes.
- */
- private boolean _displayBoxes;
-
- /**
- * keeps track of state for field: _displayBoxes
- */
- private boolean _has_displayBoxes;
-
- /**
- * Field _displayText.
- */
- private boolean _displayText;
-
- /**
- * keeps track of state for field: _displayText
- */
- private boolean _has_displayText;
-
- /**
- * Field _colourText.
- */
- private boolean _colourText;
-
- /**
- * keeps track of state for field: _colourText
- */
- private boolean _has_colourText;
-
- /**
- * Field _seqList.
- */
- private java.util.Vector _seqList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JGroup()
- {
- super();
- this._seqList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSeq(final int vSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- this._seqList.addElement(new java.lang.Integer(vSeq));
- }
-
- /**
- *
- *
- * @param index
- * @param vSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSeq(final int index, final int vSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- this._seqList.add(index, new java.lang.Integer(vSeq));
- }
-
- /**
- */
- public void deleteColourText()
- {
- this._has_colourText = false;
- }
-
- /**
- */
- public void deleteConsThreshold()
- {
- this._has_consThreshold = false;
- }
-
- /**
- */
- public void deleteDisplayBoxes()
- {
- this._has_displayBoxes = false;
- }
-
- /**
- */
- public void deleteDisplayText()
- {
- this._has_displayText = false;
- }
-
- /**
- */
- public void deleteEnd()
- {
- this._has_end = false;
- }
-
- /**
- */
- public void deleteOutlineColour()
- {
- this._has_outlineColour = false;
- }
-
- /**
- */
- public void deletePidThreshold()
- {
- this._has_pidThreshold = false;
- }
-
- /**
- */
- public void deleteStart()
- {
- this._has_start = false;
- }
-
- /**
- * Method enumerateSeq.
- *
- * @return an Enumeration over all int elements
- */
- public java.util.Enumeration enumerateSeq()
- {
- return this._seqList.elements();
- }
-
- /**
- * Returns the value of field 'colour'.
- *
- * @return the value of field 'Colour'.
- */
- public java.lang.String getColour()
- {
- return this._colour;
- }
-
- /**
- * Returns the value of field 'colourText'.
- *
- * @return the value of field 'ColourText'.
- */
- public boolean getColourText()
- {
- return this._colourText;
- }
-
- /**
- * Returns the value of field 'consThreshold'.
- *
- * @return the value of field 'ConsThreshold'.
- */
- public int getConsThreshold()
- {
- return this._consThreshold;
- }
-
- /**
- * Returns the value of field 'displayBoxes'.
- *
- * @return the value of field 'DisplayBoxes'.
- */
- public boolean getDisplayBoxes()
- {
- return this._displayBoxes;
- }
-
- /**
- * Returns the value of field 'displayText'.
- *
- * @return the value of field 'DisplayText'.
- */
- public boolean getDisplayText()
- {
- return this._displayText;
- }
-
- /**
- * Returns the value of field 'end'.
- *
- * @return the value of field 'End'.
- */
- public int getEnd()
- {
- return this._end;
- }
-
- /**
- * Returns the value of field 'name'.
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Returns the value of field 'outlineColour'.
- *
- * @return the value of field 'OutlineColour'.
- */
- public int getOutlineColour()
- {
- return this._outlineColour;
- }
-
- /**
- * Returns the value of field 'pidThreshold'.
- *
- * @return the value of field 'PidThreshold'.
- */
- public int getPidThreshold()
- {
- return this._pidThreshold;
- }
-
- /**
- * Method getSeq.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the int at the given index
- */
- public int getSeq(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._seqList.size())
- {
- throw new IndexOutOfBoundsException("getSeq: Index value '" + index
- + "' not in range [0.." + (this._seqList.size() - 1) + "]");
- }
-
- return ((java.lang.Integer) _seqList.get(index)).intValue();
- }
-
- /**
- * Method getSeq.Returns the contents of the collection in an Array.
- *
- * @return this collection as an Array
- */
- public int[] getSeq()
- {
- int size = this._seqList.size();
- int[] array = new int[size];
- java.util.Iterator iter = _seqList.iterator();
- for (int index = 0; index < size; index++)
- {
- array[index] = ((java.lang.Integer) iter.next()).intValue();
- }
- return array;
- }
-
- /**
- * Method getSeqCount.
- *
- * @return the size of this collection
- */
- public int getSeqCount()
- {
- return this._seqList.size();
- }
-
- /**
- * Returns the value of field 'start'.
- *
- * @return the value of field 'Start'.
- */
- public int getStart()
- {
- return this._start;
- }
-
- /**
- * Method hasColourText.
- *
- * @return true if at least one ColourText has been added
- */
- public boolean hasColourText()
- {
- return this._has_colourText;
- }
-
- /**
- * Method hasConsThreshold.
- *
- * @return true if at least one ConsThreshold has been added
- */
- public boolean hasConsThreshold()
- {
- return this._has_consThreshold;
- }
-
- /**
- * Method hasDisplayBoxes.
- *
- * @return true if at least one DisplayBoxes has been added
- */
- public boolean hasDisplayBoxes()
- {
- return this._has_displayBoxes;
- }
-
- /**
- * Method hasDisplayText.
- *
- * @return true if at least one DisplayText has been added
- */
- public boolean hasDisplayText()
- {
- return this._has_displayText;
- }
-
- /**
- * Method hasEnd.
- *
- * @return true if at least one End has been added
- */
- public boolean hasEnd()
- {
- return this._has_end;
- }
-
- /**
- * Method hasOutlineColour.
- *
- * @return true if at least one OutlineColour has been added
- */
- public boolean hasOutlineColour()
- {
- return this._has_outlineColour;
- }
-
- /**
- * Method hasPidThreshold.
- *
- * @return true if at least one PidThreshold has been added
- */
- public boolean hasPidThreshold()
- {
- return this._has_pidThreshold;
- }
-
- /**
- * Method hasStart.
- *
- * @return true if at least one Start has been added
- */
- public boolean hasStart()
- {
- return this._has_start;
- }
-
- /**
- * Returns the value of field 'colourText'.
- *
- * @return the value of field 'ColourText'.
- */
- public boolean isColourText()
- {
- return this._colourText;
- }
-
- /**
- * Returns the value of field 'displayBoxes'.
- *
- * @return the value of field 'DisplayBoxes'.
- */
- public boolean isDisplayBoxes()
- {
- return this._displayBoxes;
- }
-
- /**
- * Returns the value of field 'displayText'.
- *
- * @return the value of field 'DisplayText'.
- */
- public boolean isDisplayText()
- {
- return this._displayText;
- }
-
- /**
- * 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 removeAllSeq()
- {
- this._seqList.clear();
- }
-
- /**
- * Method removeSeq.
- *
- * @param vSeq
- * @return true if the object was removed from the collection.
- */
- public boolean removeSeq(final int vSeq)
- {
- boolean removed = _seqList.remove(new java.lang.Integer(vSeq));
- return removed;
- }
-
- /**
- * Method removeSeqAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public int removeSeqAt(final int index)
- {
- java.lang.Object obj = this._seqList.remove(index);
- return ((java.lang.Integer) obj).intValue();
- }
-
- /**
- * Sets the value of field 'colour'.
- *
- * @param colour
- * the value of field 'colour'.
- */
- public void setColour(final java.lang.String colour)
- {
- this._colour = colour;
- }
-
- /**
- * Sets the value of field 'colourText'.
- *
- * @param colourText
- * the value of field 'colourText'.
- */
- public void setColourText(final boolean colourText)
- {
- this._colourText = colourText;
- this._has_colourText = true;
- }
-
- /**
- * Sets the value of field 'consThreshold'.
- *
- * @param consThreshold
- * the value of field 'consThreshold'.
- */
- public void setConsThreshold(final int consThreshold)
- {
- this._consThreshold = consThreshold;
- this._has_consThreshold = true;
- }
-
- /**
- * Sets the value of field 'displayBoxes'.
- *
- * @param displayBoxes
- * the value of field 'displayBoxes'.
- */
- public void setDisplayBoxes(final boolean displayBoxes)
- {
- this._displayBoxes = displayBoxes;
- this._has_displayBoxes = true;
- }
-
- /**
- * Sets the value of field 'displayText'.
- *
- * @param displayText
- * the value of field 'displayText'.
- */
- public void setDisplayText(final boolean displayText)
- {
- this._displayText = displayText;
- this._has_displayText = true;
- }
-
- /**
- * Sets the value of field 'end'.
- *
- * @param end
- * the value of field 'end'.
- */
- public void setEnd(final int end)
- {
- this._end = end;
- this._has_end = true;
- }
-
- /**
- * Sets the value of field 'name'.
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * Sets the value of field 'outlineColour'.
- *
- * @param outlineColour
- * the value of field 'outlineColour'.
- */
- public void setOutlineColour(final int outlineColour)
- {
- this._outlineColour = outlineColour;
- this._has_outlineColour = true;
- }
-
- /**
- * Sets the value of field 'pidThreshold'.
- *
- * @param pidThreshold
- * the value of field 'pidThreshold'.
- */
- public void setPidThreshold(final int pidThreshold)
- {
- this._pidThreshold = pidThreshold;
- this._has_pidThreshold = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setSeq(final int index, final int vSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._seqList.size())
- {
- throw new IndexOutOfBoundsException("setSeq: Index value '" + index
- + "' not in range [0.." + (this._seqList.size() - 1) + "]");
- }
-
- this._seqList.set(index, new java.lang.Integer(vSeq));
- }
-
- /**
- *
- *
- * @param vSeqArray
- */
- public void setSeq(final int[] vSeqArray)
- {
- // -- copy array
- _seqList.clear();
-
- for (int i = 0; i < vSeqArray.length; i++)
- {
- this._seqList.add(new java.lang.Integer(vSeqArray[i]));
- }
- }
-
- /**
- * Sets the value of field 'start'.
- *
- * @param start
- * the value of field 'start'.
- */
- public void setStart(final int start)
- {
- this._start = start;
- this._has_start = true;
- }
-
- /**
- * 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.JGroup
- */
- public static jalview.binding.JGroup unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.JGroup) Unmarshaller
- .unmarshal(jalview.binding.JGroup.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JSeq.
- *
- * @version $Revision$ $Date$
- */
-public class JSeq implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _colour.
- */
- private int _colour;
-
- /**
- * keeps track of state for field: _colour
- */
- private boolean _has_colour;
-
- /**
- * Field _start.
- */
- private int _start;
-
- /**
- * keeps track of state for field: _start
- */
- private boolean _has_start;
-
- /**
- * Field _end.
- */
- private int _end;
-
- /**
- * keeps track of state for field: _end
- */
- private boolean _has_end;
-
- /**
- * Field _id.
- */
- private int _id;
-
- /**
- * keeps track of state for field: _id
- */
- private boolean _has_id;
-
- /**
- * Field _featuresList.
- */
- private java.util.Vector _featuresList;
-
- /**
- * Field _pdbidsList.
- */
- private java.util.Vector _pdbidsList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JSeq()
- {
- super();
- this._featuresList = new java.util.Vector();
- this._pdbidsList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vFeatures
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addFeatures(final jalview.binding.Features vFeatures)
- throws java.lang.IndexOutOfBoundsException
- {
- this._featuresList.addElement(vFeatures);
- }
-
- /**
- *
- *
- * @param index
- * @param vFeatures
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addFeatures(final int index,
- final jalview.binding.Features vFeatures)
- throws java.lang.IndexOutOfBoundsException
- {
- this._featuresList.add(index, vFeatures);
- }
-
- /**
- *
- *
- * @param vPdbids
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addPdbids(final jalview.binding.Pdbids vPdbids)
- throws java.lang.IndexOutOfBoundsException
- {
- this._pdbidsList.addElement(vPdbids);
- }
-
- /**
- *
- *
- * @param index
- * @param vPdbids
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addPdbids(final int index,
- final jalview.binding.Pdbids vPdbids)
- throws java.lang.IndexOutOfBoundsException
- {
- this._pdbidsList.add(index, vPdbids);
- }
-
- /**
- */
- public void deleteColour()
- {
- this._has_colour = false;
- }
-
- /**
- */
- public void deleteEnd()
- {
- this._has_end = false;
- }
-
- /**
- */
- public void deleteId()
- {
- this._has_id = false;
- }
-
- /**
- */
- public void deleteStart()
- {
- this._has_start = false;
- }
-
- /**
- * Method enumerateFeatures.
- *
- * @return an Enumeration over all jalview.binding.Features elements
- */
- public java.util.Enumeration enumerateFeatures()
- {
- return this._featuresList.elements();
- }
-
- /**
- * Method enumeratePdbids.
- *
- * @return an Enumeration over all jalview.binding.Pdbids elements
- */
- public java.util.Enumeration enumeratePdbids()
- {
- return this._pdbidsList.elements();
- }
-
- /**
- * Returns the value of field 'colour'.
- *
- * @return the value of field 'Colour'.
- */
- public int getColour()
- {
- return this._colour;
- }
-
- /**
- * Returns the value of field 'end'.
- *
- * @return the value of field 'End'.
- */
- public int getEnd()
- {
- return this._end;
- }
-
- /**
- * Method getFeatures.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.Features at the given index
- */
- public jalview.binding.Features getFeatures(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._featuresList.size())
- {
- throw new IndexOutOfBoundsException(
- "getFeatures: Index value '" + index + "' not in range [0.."
- + (this._featuresList.size() - 1) + "]");
- }
-
- return (jalview.binding.Features) _featuresList.get(index);
- }
-
- /**
- * Method getFeatures.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.Features[] getFeatures()
- {
- jalview.binding.Features[] array = new jalview.binding.Features[0];
- return (jalview.binding.Features[]) this._featuresList.toArray(array);
- }
-
- /**
- * Method getFeaturesCount.
- *
- * @return the size of this collection
- */
- public int getFeaturesCount()
- {
- return this._featuresList.size();
- }
-
- /**
- * Returns the value of field 'id'.
- *
- * @return the value of field 'Id'.
- */
- public int getId()
- {
- return this._id;
- }
-
- /**
- * Method getPdbids.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.Pdbids at the given index
- */
- public jalview.binding.Pdbids getPdbids(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._pdbidsList.size())
- {
- throw new IndexOutOfBoundsException(
- "getPdbids: Index value '" + index + "' not in range [0.."
- + (this._pdbidsList.size() - 1) + "]");
- }
-
- return (jalview.binding.Pdbids) _pdbidsList.get(index);
- }
-
- /**
- * Method getPdbids.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.Pdbids[] getPdbids()
- {
- jalview.binding.Pdbids[] array = new jalview.binding.Pdbids[0];
- return (jalview.binding.Pdbids[]) this._pdbidsList.toArray(array);
- }
-
- /**
- * Method getPdbidsCount.
- *
- * @return the size of this collection
- */
- public int getPdbidsCount()
- {
- return this._pdbidsList.size();
- }
-
- /**
- * Returns the value of field 'start'.
- *
- * @return the value of field 'Start'.
- */
- public int getStart()
- {
- return this._start;
- }
-
- /**
- * Method hasColour.
- *
- * @return true if at least one Colour has been added
- */
- public boolean hasColour()
- {
- return this._has_colour;
- }
-
- /**
- * Method hasEnd.
- *
- * @return true if at least one End has been added
- */
- public boolean hasEnd()
- {
- return this._has_end;
- }
-
- /**
- * Method hasId.
- *
- * @return true if at least one Id has been added
- */
- public boolean hasId()
- {
- return this._has_id;
- }
-
- /**
- * Method hasStart.
- *
- * @return true if at least one Start has been added
- */
- public boolean hasStart()
- {
- return this._has_start;
- }
-
- /**
- * 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 removeAllFeatures()
- {
- this._featuresList.clear();
- }
-
- /**
- */
- public void removeAllPdbids()
- {
- this._pdbidsList.clear();
- }
-
- /**
- * Method removeFeatures.
- *
- * @param vFeatures
- * @return true if the object was removed from the collection.
- */
- public boolean removeFeatures(final jalview.binding.Features vFeatures)
- {
- boolean removed = _featuresList.remove(vFeatures);
- return removed;
- }
-
- /**
- * Method removeFeaturesAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.Features removeFeaturesAt(final int index)
- {
- java.lang.Object obj = this._featuresList.remove(index);
- return (jalview.binding.Features) obj;
- }
-
- /**
- * Method removePdbids.
- *
- * @param vPdbids
- * @return true if the object was removed from the collection.
- */
- public boolean removePdbids(final jalview.binding.Pdbids vPdbids)
- {
- boolean removed = _pdbidsList.remove(vPdbids);
- return removed;
- }
-
- /**
- * Method removePdbidsAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.Pdbids removePdbidsAt(final int index)
- {
- java.lang.Object obj = this._pdbidsList.remove(index);
- return (jalview.binding.Pdbids) obj;
- }
-
- /**
- * Sets the value of field 'colour'.
- *
- * @param colour
- * the value of field 'colour'.
- */
- public void setColour(final int colour)
- {
- this._colour = colour;
- this._has_colour = true;
- }
-
- /**
- * Sets the value of field 'end'.
- *
- * @param end
- * the value of field 'end'.
- */
- public void setEnd(final int end)
- {
- this._end = end;
- this._has_end = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vFeatures
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setFeatures(final int index,
- final jalview.binding.Features vFeatures)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._featuresList.size())
- {
- throw new IndexOutOfBoundsException(
- "setFeatures: Index value '" + index + "' not in range [0.."
- + (this._featuresList.size() - 1) + "]");
- }
-
- this._featuresList.set(index, vFeatures);
- }
-
- /**
- *
- *
- * @param vFeaturesArray
- */
- public void setFeatures(final jalview.binding.Features[] vFeaturesArray)
- {
- // -- copy array
- _featuresList.clear();
-
- for (int i = 0; i < vFeaturesArray.length; i++)
- {
- this._featuresList.add(vFeaturesArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'id'.
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final int id)
- {
- this._id = id;
- this._has_id = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vPdbids
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setPdbids(final int index,
- final jalview.binding.Pdbids vPdbids)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._pdbidsList.size())
- {
- throw new IndexOutOfBoundsException(
- "setPdbids: Index value '" + index + "' not in range [0.."
- + (this._pdbidsList.size() - 1) + "]");
- }
-
- this._pdbidsList.set(index, vPdbids);
- }
-
- /**
- *
- *
- * @param vPdbidsArray
- */
- public void setPdbids(final jalview.binding.Pdbids[] vPdbidsArray)
- {
- // -- copy array
- _pdbidsList.clear();
-
- for (int i = 0; i < vPdbidsArray.length; i++)
- {
- this._pdbidsList.add(vPdbidsArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'start'.
- *
- * @param start
- * the value of field 'start'.
- */
- public void setStart(final int start)
- {
- this._start = start;
- this._has_start = true;
- }
-
- /**
- * 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.JSeq
- */
- public static jalview.binding.JSeq unmarshal(final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.JSeq) Unmarshaller
- .unmarshal(jalview.binding.JSeq.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JalviewModel.
- *
- * @version $Revision$ $Date$
- */
-public class JalviewModel implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _creationDate.
- */
- private java.util.Date _creationDate;
-
- /**
- * Field _version.
- */
- private java.lang.String _version;
-
- /**
- * Field _vamsasModel.
- */
- private jalview.binding.VamsasModel _vamsasModel;
-
- /**
- * Field _jalviewModelSequence.
- */
- private jalview.binding.JalviewModelSequence _jalviewModelSequence;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JalviewModel()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'creationDate'.
- *
- * @return the value of field 'CreationDate'.
- */
- public java.util.Date getCreationDate()
- {
- return this._creationDate;
- }
-
- /**
- * Returns the value of field 'jalviewModelSequence'.
- *
- * @return the value of field 'JalviewModelSequence'.
- */
- public jalview.binding.JalviewModelSequence getJalviewModelSequence()
- {
- return this._jalviewModelSequence;
- }
-
- /**
- * Returns the value of field 'vamsasModel'.
- *
- * @return the value of field 'VamsasModel'.
- */
- public jalview.binding.VamsasModel getVamsasModel()
- {
- return this._vamsasModel;
- }
-
- /**
- * Returns the value of field 'version'.
- *
- * @return the value of field 'Version'.
- */
- public java.lang.String getVersion()
- {
- return this._version;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'creationDate'.
- *
- * @param creationDate
- * the value of field 'creationDate'.
- */
- public void setCreationDate(final java.util.Date creationDate)
- {
- this._creationDate = creationDate;
- }
-
- /**
- * Sets the value of field 'jalviewModelSequence'.
- *
- * @param jalviewModelSequence
- * the value of field 'jalviewModelSequence'.
- */
- public void setJalviewModelSequence(
- final jalview.binding.JalviewModelSequence jalviewModelSequence)
- {
- this._jalviewModelSequence = jalviewModelSequence;
- }
-
- /**
- * Sets the value of field 'vamsasModel'.
- *
- * @param vamsasModel
- * the value of field 'vamsasModel'.
- */
- public void setVamsasModel(final jalview.binding.VamsasModel vamsasModel)
- {
- this._vamsasModel = vamsasModel;
- }
-
- /**
- * Sets the value of field 'version'.
- *
- * @param version
- * the value of field 'version'.
- */
- public void setVersion(final java.lang.String version)
- {
- this._version = version;
- }
-
- /**
- * 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.JalviewModel
- */
- public static jalview.binding.JalviewModel unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.JalviewModel) Unmarshaller
- .unmarshal(jalview.binding.JalviewModel.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JalviewModelSequence.
- *
- * @version $Revision$ $Date$
- */
-public class JalviewModelSequence implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _JSeqList.
- */
- private java.util.Vector _JSeqList;
-
- /**
- * Field _JGroupList.
- */
- private java.util.Vector _JGroupList;
-
- /**
- * Field _viewportList.
- */
- private java.util.Vector _viewportList;
-
- /**
- * Field _userColoursList.
- */
- private java.util.Vector _userColoursList;
-
- /**
- * Field _treeList.
- */
- private java.util.Vector _treeList;
-
- /**
- * Field _featureSettings.
- */
- private jalview.binding.FeatureSettings _featureSettings;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JalviewModelSequence()
- {
- super();
- this._JSeqList = new java.util.Vector();
- this._JGroupList = new java.util.Vector();
- this._viewportList = new java.util.Vector();
- this._userColoursList = new java.util.Vector();
- this._treeList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vJGroup
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addJGroup(final jalview.binding.JGroup vJGroup)
- throws java.lang.IndexOutOfBoundsException
- {
- this._JGroupList.addElement(vJGroup);
- }
-
- /**
- *
- *
- * @param index
- * @param vJGroup
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addJGroup(final int index,
- final jalview.binding.JGroup vJGroup)
- throws java.lang.IndexOutOfBoundsException
- {
- this._JGroupList.add(index, vJGroup);
- }
-
- /**
- *
- *
- * @param vJSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addJSeq(final jalview.binding.JSeq vJSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- this._JSeqList.addElement(vJSeq);
- }
-
- /**
- *
- *
- * @param index
- * @param vJSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addJSeq(final int index, final jalview.binding.JSeq vJSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- this._JSeqList.add(index, vJSeq);
- }
-
- /**
- *
- *
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addTree(final jalview.binding.Tree vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- this._treeList.addElement(vTree);
- }
-
- /**
- *
- *
- * @param index
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addTree(final int index, final jalview.binding.Tree vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- this._treeList.add(index, vTree);
- }
-
- /**
- *
- *
- * @param vUserColours
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addUserColours(final jalview.binding.UserColours vUserColours)
- throws java.lang.IndexOutOfBoundsException
- {
- this._userColoursList.addElement(vUserColours);
- }
-
- /**
- *
- *
- * @param index
- * @param vUserColours
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addUserColours(final int index,
- final jalview.binding.UserColours vUserColours)
- throws java.lang.IndexOutOfBoundsException
- {
- this._userColoursList.add(index, vUserColours);
- }
-
- /**
- *
- *
- * @param vViewport
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addViewport(final jalview.binding.Viewport vViewport)
- throws java.lang.IndexOutOfBoundsException
- {
- this._viewportList.addElement(vViewport);
- }
-
- /**
- *
- *
- * @param index
- * @param vViewport
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addViewport(final int index,
- final jalview.binding.Viewport vViewport)
- throws java.lang.IndexOutOfBoundsException
- {
- this._viewportList.add(index, vViewport);
- }
-
- /**
- * Method enumerateJGroup.
- *
- * @return an Enumeration over all jalview.binding.JGroup elements
- */
- public java.util.Enumeration enumerateJGroup()
- {
- return this._JGroupList.elements();
- }
-
- /**
- * Method enumerateJSeq.
- *
- * @return an Enumeration over all jalview.binding.JSeq elements
- */
- public java.util.Enumeration enumerateJSeq()
- {
- return this._JSeqList.elements();
- }
-
- /**
- * Method enumerateTree.
- *
- * @return an Enumeration over all jalview.binding.Tree elements
- */
- public java.util.Enumeration enumerateTree()
- {
- return this._treeList.elements();
- }
-
- /**
- * Method enumerateUserColours.
- *
- * @return an Enumeration over all jalview.binding.UserColours elements
- */
- public java.util.Enumeration enumerateUserColours()
- {
- return this._userColoursList.elements();
- }
-
- /**
- * Method enumerateViewport.
- *
- * @return an Enumeration over all jalview.binding.Viewport elements
- */
- public java.util.Enumeration enumerateViewport()
- {
- return this._viewportList.elements();
- }
-
- /**
- * Returns the value of field 'featureSettings'.
- *
- * @return the value of field 'FeatureSettings'.
- */
- public jalview.binding.FeatureSettings getFeatureSettings()
- {
- return this._featureSettings;
- }
-
- /**
- * Method getJGroup.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.JGroup at the given index
- */
- public jalview.binding.JGroup getJGroup(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._JGroupList.size())
- {
- throw new IndexOutOfBoundsException(
- "getJGroup: Index value '" + index + "' not in range [0.."
- + (this._JGroupList.size() - 1) + "]");
- }
-
- return (jalview.binding.JGroup) _JGroupList.get(index);
- }
-
- /**
- * Method getJGroup.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.JGroup[] getJGroup()
- {
- jalview.binding.JGroup[] array = new jalview.binding.JGroup[0];
- return (jalview.binding.JGroup[]) this._JGroupList.toArray(array);
- }
-
- /**
- * Method getJGroupCount.
- *
- * @return the size of this collection
- */
- public int getJGroupCount()
- {
- return this._JGroupList.size();
- }
-
- /**
- * Method getJSeq.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.JSeq at the given index
- */
- public jalview.binding.JSeq getJSeq(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._JSeqList.size())
- {
- throw new IndexOutOfBoundsException("getJSeq: Index value '" + index
- + "' not in range [0.." + (this._JSeqList.size() - 1) + "]");
- }
-
- return (jalview.binding.JSeq) _JSeqList.get(index);
- }
-
- /**
- * Method getJSeq.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.JSeq[] getJSeq()
- {
- jalview.binding.JSeq[] array = new jalview.binding.JSeq[0];
- return (jalview.binding.JSeq[]) this._JSeqList.toArray(array);
- }
-
- /**
- * Method getJSeqCount.
- *
- * @return the size of this collection
- */
- public int getJSeqCount()
- {
- return this._JSeqList.size();
- }
-
- /**
- * Method getTree.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.Tree at the given index
- */
- public jalview.binding.Tree getTree(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._treeList.size())
- {
- throw new IndexOutOfBoundsException("getTree: Index value '" + index
- + "' not in range [0.." + (this._treeList.size() - 1) + "]");
- }
-
- return (jalview.binding.Tree) _treeList.get(index);
- }
-
- /**
- * Method getTree.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.Tree[] getTree()
- {
- jalview.binding.Tree[] array = new jalview.binding.Tree[0];
- return (jalview.binding.Tree[]) this._treeList.toArray(array);
- }
-
- /**
- * Method getTreeCount.
- *
- * @return the size of this collection
- */
- public int getTreeCount()
- {
- return this._treeList.size();
- }
-
- /**
- * Method getUserColours.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.UserColours at the given index
- */
- public jalview.binding.UserColours getUserColours(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._userColoursList.size())
- {
- throw new IndexOutOfBoundsException("getUserColours: Index value '"
- + index + "' not in range [0.."
- + (this._userColoursList.size() - 1) + "]");
- }
-
- return (jalview.binding.UserColours) _userColoursList.get(index);
- }
-
- /**
- * Method getUserColours.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.UserColours[] getUserColours()
- {
- jalview.binding.UserColours[] array = new jalview.binding.UserColours[0];
- return (jalview.binding.UserColours[]) this._userColoursList
- .toArray(array);
- }
-
- /**
- * Method getUserColoursCount.
- *
- * @return the size of this collection
- */
- public int getUserColoursCount()
- {
- return this._userColoursList.size();
- }
-
- /**
- * Method getViewport.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.Viewport at the given index
- */
- public jalview.binding.Viewport getViewport(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._viewportList.size())
- {
- throw new IndexOutOfBoundsException(
- "getViewport: Index value '" + index + "' not in range [0.."
- + (this._viewportList.size() - 1) + "]");
- }
-
- return (jalview.binding.Viewport) _viewportList.get(index);
- }
-
- /**
- * Method getViewport.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.Viewport[] getViewport()
- {
- jalview.binding.Viewport[] array = new jalview.binding.Viewport[0];
- return (jalview.binding.Viewport[]) this._viewportList.toArray(array);
- }
-
- /**
- * Method getViewportCount.
- *
- * @return the size of this collection
- */
- public int getViewportCount()
- {
- return this._viewportList.size();
- }
-
- /**
- * 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 removeAllJGroup()
- {
- this._JGroupList.clear();
- }
-
- /**
- */
- public void removeAllJSeq()
- {
- this._JSeqList.clear();
- }
-
- /**
- */
- public void removeAllTree()
- {
- this._treeList.clear();
- }
-
- /**
- */
- public void removeAllUserColours()
- {
- this._userColoursList.clear();
- }
-
- /**
- */
- public void removeAllViewport()
- {
- this._viewportList.clear();
- }
-
- /**
- * Method removeJGroup.
- *
- * @param vJGroup
- * @return true if the object was removed from the collection.
- */
- public boolean removeJGroup(final jalview.binding.JGroup vJGroup)
- {
- boolean removed = _JGroupList.remove(vJGroup);
- return removed;
- }
-
- /**
- * Method removeJGroupAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.JGroup removeJGroupAt(final int index)
- {
- java.lang.Object obj = this._JGroupList.remove(index);
- return (jalview.binding.JGroup) obj;
- }
-
- /**
- * Method removeJSeq.
- *
- * @param vJSeq
- * @return true if the object was removed from the collection.
- */
- public boolean removeJSeq(final jalview.binding.JSeq vJSeq)
- {
- boolean removed = _JSeqList.remove(vJSeq);
- return removed;
- }
-
- /**
- * Method removeJSeqAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.JSeq removeJSeqAt(final int index)
- {
- java.lang.Object obj = this._JSeqList.remove(index);
- return (jalview.binding.JSeq) obj;
- }
-
- /**
- * Method removeTree.
- *
- * @param vTree
- * @return true if the object was removed from the collection.
- */
- public boolean removeTree(final jalview.binding.Tree vTree)
- {
- boolean removed = _treeList.remove(vTree);
- return removed;
- }
-
- /**
- * Method removeTreeAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.Tree removeTreeAt(final int index)
- {
- java.lang.Object obj = this._treeList.remove(index);
- return (jalview.binding.Tree) obj;
- }
-
- /**
- * Method removeUserColours.
- *
- * @param vUserColours
- * @return true if the object was removed from the collection.
- */
- public boolean removeUserColours(
- final jalview.binding.UserColours vUserColours)
- {
- boolean removed = _userColoursList.remove(vUserColours);
- return removed;
- }
-
- /**
- * Method removeUserColoursAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.UserColours removeUserColoursAt(final int index)
- {
- java.lang.Object obj = this._userColoursList.remove(index);
- return (jalview.binding.UserColours) obj;
- }
-
- /**
- * Method removeViewport.
- *
- * @param vViewport
- * @return true if the object was removed from the collection.
- */
- public boolean removeViewport(final jalview.binding.Viewport vViewport)
- {
- boolean removed = _viewportList.remove(vViewport);
- return removed;
- }
-
- /**
- * Method removeViewportAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.Viewport removeViewportAt(final int index)
- {
- java.lang.Object obj = this._viewportList.remove(index);
- return (jalview.binding.Viewport) obj;
- }
-
- /**
- * Sets the value of field 'featureSettings'.
- *
- * @param featureSettings
- * the value of field 'featureSettings'.
- */
- public void setFeatureSettings(
- final jalview.binding.FeatureSettings featureSettings)
- {
- this._featureSettings = featureSettings;
- }
-
- /**
- *
- *
- * @param index
- * @param vJGroup
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setJGroup(final int index,
- final jalview.binding.JGroup vJGroup)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._JGroupList.size())
- {
- throw new IndexOutOfBoundsException(
- "setJGroup: Index value '" + index + "' not in range [0.."
- + (this._JGroupList.size() - 1) + "]");
- }
-
- this._JGroupList.set(index, vJGroup);
- }
-
- /**
- *
- *
- * @param vJGroupArray
- */
- public void setJGroup(final jalview.binding.JGroup[] vJGroupArray)
- {
- // -- copy array
- _JGroupList.clear();
-
- for (int i = 0; i < vJGroupArray.length; i++)
- {
- this._JGroupList.add(vJGroupArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vJSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setJSeq(final int index, final jalview.binding.JSeq vJSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._JSeqList.size())
- {
- throw new IndexOutOfBoundsException("setJSeq: Index value '" + index
- + "' not in range [0.." + (this._JSeqList.size() - 1) + "]");
- }
-
- this._JSeqList.set(index, vJSeq);
- }
-
- /**
- *
- *
- * @param vJSeqArray
- */
- public void setJSeq(final jalview.binding.JSeq[] vJSeqArray)
- {
- // -- copy array
- _JSeqList.clear();
-
- for (int i = 0; i < vJSeqArray.length; i++)
- {
- this._JSeqList.add(vJSeqArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setTree(final int index, final jalview.binding.Tree vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._treeList.size())
- {
- throw new IndexOutOfBoundsException("setTree: Index value '" + index
- + "' not in range [0.." + (this._treeList.size() - 1) + "]");
- }
-
- this._treeList.set(index, vTree);
- }
-
- /**
- *
- *
- * @param vTreeArray
- */
- public void setTree(final jalview.binding.Tree[] vTreeArray)
- {
- // -- copy array
- _treeList.clear();
-
- for (int i = 0; i < vTreeArray.length; i++)
- {
- this._treeList.add(vTreeArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vUserColours
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setUserColours(final int index,
- final jalview.binding.UserColours vUserColours)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._userColoursList.size())
- {
- throw new IndexOutOfBoundsException("setUserColours: Index value '"
- + index + "' not in range [0.."
- + (this._userColoursList.size() - 1) + "]");
- }
-
- this._userColoursList.set(index, vUserColours);
- }
-
- /**
- *
- *
- * @param vUserColoursArray
- */
- public void setUserColours(
- final jalview.binding.UserColours[] vUserColoursArray)
- {
- // -- copy array
- _userColoursList.clear();
-
- for (int i = 0; i < vUserColoursArray.length; i++)
- {
- this._userColoursList.add(vUserColoursArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vViewport
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setViewport(final int index,
- final jalview.binding.Viewport vViewport)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._viewportList.size())
- {
- throw new IndexOutOfBoundsException(
- "setViewport: Index value '" + index + "' not in range [0.."
- + (this._viewportList.size() - 1) + "]");
- }
-
- this._viewportList.set(index, vViewport);
- }
-
- /**
- *
- *
- * @param vViewportArray
- */
- public void setViewport(final jalview.binding.Viewport[] vViewportArray)
- {
- // -- copy array
- _viewportList.clear();
-
- for (int i = 0; i < vViewportArray.length; i++)
- {
- this._viewportList.add(vViewportArray[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.JalviewModelSequence
- */
- public static jalview.binding.JalviewModelSequence unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.JalviewModelSequence) Unmarshaller
- .unmarshal(jalview.binding.JalviewModelSequence.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JalviewUserColours.
- *
- * @version $Revision$ $Date$
- */
-public class JalviewUserColours implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _schemeName.
- */
- private java.lang.String _schemeName;
-
- /**
- * Jalview colour scheme document version.
- *
- */
- private java.lang.String _version;
-
- /**
- * Field _colourList.
- */
- private java.util.Vector _colourList;
-
- /**
- * Field _filterList.
- */
- private java.util.Vector _filterList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JalviewUserColours()
- {
- super();
- this._colourList = new java.util.Vector();
- this._filterList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vColour
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addColour(final Colour vColour)
- throws java.lang.IndexOutOfBoundsException
- {
- this._colourList.addElement(vColour);
- }
-
- /**
- *
- *
- * @param index
- * @param vColour
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addColour(final int index, final Colour vColour)
- throws java.lang.IndexOutOfBoundsException
- {
- this._colourList.add(index, vColour);
- }
-
- /**
- *
- *
- * @param vFilter
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addFilter(final Filter vFilter)
- throws java.lang.IndexOutOfBoundsException
- {
- this._filterList.addElement(vFilter);
- }
-
- /**
- *
- *
- * @param index
- * @param vFilter
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addFilter(final int index, final Filter vFilter)
- throws java.lang.IndexOutOfBoundsException
- {
- this._filterList.add(index, vFilter);
- }
-
- /**
- * Method enumerateColour.
- *
- * @return an Enumeration over all Colour elements
- */
- public java.util.Enumeration enumerateColour()
- {
- return this._colourList.elements();
- }
-
- /**
- * Method enumerateFilter.
- *
- * @return an Enumeration over all Filter elements
- */
- public java.util.Enumeration enumerateFilter()
- {
- return this._filterList.elements();
- }
-
- /**
- * Method getColour.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the Colour at the given index
- */
- public Colour getColour(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._colourList.size())
- {
- throw new IndexOutOfBoundsException(
- "getColour: Index value '" + index + "' not in range [0.."
- + (this._colourList.size() - 1) + "]");
- }
-
- return (Colour) _colourList.get(index);
- }
-
- /**
- * Method getColour.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public Colour[] getColour()
- {
- Colour[] array = new Colour[0];
- return (Colour[]) this._colourList.toArray(array);
- }
-
- /**
- * Method getColourCount.
- *
- * @return the size of this collection
- */
- public int getColourCount()
- {
- return this._colourList.size();
- }
-
- /**
- * Method getFilter.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the Filter at the given index
- */
- public Filter getFilter(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._filterList.size())
- {
- throw new IndexOutOfBoundsException(
- "getFilter: Index value '" + index + "' not in range [0.."
- + (this._filterList.size() - 1) + "]");
- }
-
- return (Filter) _filterList.get(index);
- }
-
- /**
- * Method getFilter.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public Filter[] getFilter()
- {
- Filter[] array = new Filter[0];
- return (Filter[]) this._filterList.toArray(array);
- }
-
- /**
- * Method getFilterCount.
- *
- * @return the size of this collection
- */
- public int getFilterCount()
- {
- return this._filterList.size();
- }
-
- /**
- * Returns the value of field 'schemeName'.
- *
- * @return the value of field 'SchemeName'.
- */
- public java.lang.String getSchemeName()
- {
- return this._schemeName;
- }
-
- /**
- * Returns the value of field 'version'. The field 'version' has the following
- * description: Jalview colour scheme document version.
- *
- *
- * @return the value of field 'Version'.
- */
- public java.lang.String getVersion()
- {
- return this._version;
- }
-
- /**
- * 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 removeAllColour()
- {
- this._colourList.clear();
- }
-
- /**
- */
- public void removeAllFilter()
- {
- this._filterList.clear();
- }
-
- /**
- * Method removeColour.
- *
- * @param vColour
- * @return true if the object was removed from the collection.
- */
- public boolean removeColour(final Colour vColour)
- {
- boolean removed = _colourList.remove(vColour);
- return removed;
- }
-
- /**
- * Method removeColourAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public Colour removeColourAt(final int index)
- {
- java.lang.Object obj = this._colourList.remove(index);
- return (Colour) obj;
- }
-
- /**
- * Method removeFilter.
- *
- * @param vFilter
- * @return true if the object was removed from the collection.
- */
- public boolean removeFilter(final Filter vFilter)
- {
- boolean removed = _filterList.remove(vFilter);
- return removed;
- }
-
- /**
- * Method removeFilterAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public Filter removeFilterAt(final int index)
- {
- java.lang.Object obj = this._filterList.remove(index);
- return (Filter) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vColour
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setColour(final int index, final Colour vColour)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._colourList.size())
- {
- throw new IndexOutOfBoundsException(
- "setColour: Index value '" + index + "' not in range [0.."
- + (this._colourList.size() - 1) + "]");
- }
-
- this._colourList.set(index, vColour);
- }
-
- /**
- *
- *
- * @param vColourArray
- */
- public void setColour(final Colour[] vColourArray)
- {
- // -- copy array
- _colourList.clear();
-
- for (int i = 0; i < vColourArray.length; i++)
- {
- this._colourList.add(vColourArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vFilter
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setFilter(final int index, final Filter vFilter)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._filterList.size())
- {
- throw new IndexOutOfBoundsException(
- "setFilter: Index value '" + index + "' not in range [0.."
- + (this._filterList.size() - 1) + "]");
- }
-
- this._filterList.set(index, vFilter);
- }
-
- /**
- *
- *
- * @param vFilterArray
- */
- public void setFilter(final Filter[] vFilterArray)
- {
- // -- copy array
- _filterList.clear();
-
- for (int i = 0; i < vFilterArray.length; i++)
- {
- this._filterList.add(vFilterArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'schemeName'.
- *
- * @param schemeName
- * the value of field 'schemeName'.
- */
- public void setSchemeName(final java.lang.String schemeName)
- {
- this._schemeName = schemeName;
- }
-
- /**
- * Sets the value of field 'version'. The field 'version' has the following
- * description: Jalview colour scheme document version.
- *
- *
- * @param version
- * the value of field 'version'.
- */
- public void setVersion(final java.lang.String version)
- {
- this._version = version;
- }
-
- /**
- * 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.JalviewUserColours
- */
- public static jalview.binding.JalviewUserColours unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.JalviewUserColours) Unmarshaller
- .unmarshal(jalview.binding.JalviewUserColours.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class MatchCondition.
- *
- * @version $Revision$ $Date$
- */
-public class MatchCondition extends FeatureMatcher
- implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MatchCondition()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.FeatureMatcher
- */
- public static jalview.binding.FeatureMatcher unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.FeatureMatcher) Unmarshaller
- .unmarshal(jalview.binding.MatchCondition.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class MatcherSet.
- *
- * @version $Revision$ $Date$
- */
-public class MatcherSet extends FeatureMatcherSet
- implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MatcherSet()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.FeatureMatcherSet
- */
- public static jalview.binding.FeatureMatcherSet unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.FeatureMatcherSet) Unmarshaller
- .unmarshal(jalview.binding.MatcherSet.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Pdbentry.
- *
- * @version $Revision$ $Date$
- */
-public class Pdbentry implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _id.
- */
- private java.lang.String _id;
-
- /**
- * Field _type.
- */
- private java.lang.String _type;
-
- /**
- * Field _items.
- */
- private java.util.Vector _items;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Pdbentry()
- {
- super();
- this._items = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vPdbentryItem
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addPdbentryItem(
- final jalview.binding.PdbentryItem vPdbentryItem)
- throws java.lang.IndexOutOfBoundsException
- {
- this._items.addElement(vPdbentryItem);
- }
-
- /**
- *
- *
- * @param index
- * @param vPdbentryItem
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addPdbentryItem(final int index,
- final jalview.binding.PdbentryItem vPdbentryItem)
- throws java.lang.IndexOutOfBoundsException
- {
- this._items.add(index, vPdbentryItem);
- }
-
- /**
- * Method enumeratePdbentryItem.
- *
- * @return an Enumeration over all jalview.binding.PdbentryItem elements
- */
- public java.util.Enumeration enumeratePdbentryItem()
- {
- return this._items.elements();
- }
-
- /**
- * Returns the value of field 'id'.
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Method getPdbentryItem.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.PdbentryItem at the given index
- */
- public jalview.binding.PdbentryItem getPdbentryItem(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._items.size())
- {
- throw new IndexOutOfBoundsException("getPdbentryItem: Index value '"
- + index + "' not in range [0.." + (this._items.size() - 1)
- + "]");
- }
-
- return (jalview.binding.PdbentryItem) _items.get(index);
- }
-
- /**
- * Method getPdbentryItem.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.PdbentryItem[] getPdbentryItem()
- {
- jalview.binding.PdbentryItem[] array = new jalview.binding.PdbentryItem[0];
- return (jalview.binding.PdbentryItem[]) this._items.toArray(array);
- }
-
- /**
- * Method getPdbentryItemCount.
- *
- * @return the size of this collection
- */
- public int getPdbentryItemCount()
- {
- return this._items.size();
- }
-
- /**
- * Returns the value of field 'type'.
- *
- * @return the value of field 'Type'.
- */
- public java.lang.String getType()
- {
- return this._type;
- }
-
- /**
- * 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 removeAllPdbentryItem()
- {
- this._items.clear();
- }
-
- /**
- * Method removePdbentryItem.
- *
- * @param vPdbentryItem
- * @return true if the object was removed from the collection.
- */
- public boolean removePdbentryItem(
- final jalview.binding.PdbentryItem vPdbentryItem)
- {
- boolean removed = _items.remove(vPdbentryItem);
- return removed;
- }
-
- /**
- * Method removePdbentryItemAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.PdbentryItem removePdbentryItemAt(final int index)
- {
- java.lang.Object obj = this._items.remove(index);
- return (jalview.binding.PdbentryItem) obj;
- }
-
- /**
- * Sets the value of field 'id'.
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- *
- *
- * @param index
- * @param vPdbentryItem
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setPdbentryItem(final int index,
- final jalview.binding.PdbentryItem vPdbentryItem)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._items.size())
- {
- throw new IndexOutOfBoundsException("setPdbentryItem: Index value '"
- + index + "' not in range [0.." + (this._items.size() - 1)
- + "]");
- }
-
- this._items.set(index, vPdbentryItem);
- }
-
- /**
- *
- *
- * @param vPdbentryItemArray
- */
- public void setPdbentryItem(
- final jalview.binding.PdbentryItem[] vPdbentryItemArray)
- {
- // -- copy array
- _items.clear();
-
- for (int i = 0; i < vPdbentryItemArray.length; i++)
- {
- this._items.add(vPdbentryItemArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'type'.
- *
- * @param type
- * the value of field 'type'.
- */
- public void setType(final java.lang.String type)
- {
- this._type = type;
- }
-
- /**
- * 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.Pdbentry
- */
- public static jalview.binding.Pdbentry unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Pdbentry) Unmarshaller
- .unmarshal(jalview.binding.Pdbentry.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-/**
- * Class PdbentryItem.
- *
- * @version $Revision$ $Date$
- */
-public class PdbentryItem implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _propertyList.
- */
- private java.util.Vector _propertyList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public PdbentryItem()
- {
- super();
- this._propertyList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vProperty
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addProperty(final jalview.binding.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- this._propertyList.addElement(vProperty);
- }
-
- /**
- *
- *
- * @param index
- * @param vProperty
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addProperty(final int index,
- final jalview.binding.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- this._propertyList.add(index, vProperty);
- }
-
- /**
- * Method enumerateProperty.
- *
- * @return an Enumeration over all jalview.binding.Property elements
- */
- public java.util.Enumeration enumerateProperty()
- {
- return this._propertyList.elements();
- }
-
- /**
- * Method getProperty.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.binding.Property at the given index
- */
- public jalview.binding.Property getProperty(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._propertyList.size())
- {
- throw new IndexOutOfBoundsException(
- "getProperty: Index value '" + index + "' not in range [0.."
- + (this._propertyList.size() - 1) + "]");
- }
-
- return (jalview.binding.Property) _propertyList.get(index);
- }
-
- /**
- * Method getProperty.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.binding.Property[] getProperty()
- {
- jalview.binding.Property[] array = new jalview.binding.Property[0];
- return (jalview.binding.Property[]) this._propertyList.toArray(array);
- }
-
- /**
- * Method getPropertyCount.
- *
- * @return the size of this collection
- */
- public int getPropertyCount()
- {
- return this._propertyList.size();
- }
-
- /**
- */
- public void removeAllProperty()
- {
- this._propertyList.clear();
- }
-
- /**
- * Method removeProperty.
- *
- * @param vProperty
- * @return true if the object was removed from the collection.
- */
- public boolean removeProperty(final jalview.binding.Property vProperty)
- {
- boolean removed = _propertyList.remove(vProperty);
- return removed;
- }
-
- /**
- * Method removePropertyAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.binding.Property removePropertyAt(final int index)
- {
- java.lang.Object obj = this._propertyList.remove(index);
- return (jalview.binding.Property) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vProperty
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setProperty(final int index,
- final jalview.binding.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._propertyList.size())
- {
- throw new IndexOutOfBoundsException(
- "setProperty: Index value '" + index + "' not in range [0.."
- + (this._propertyList.size() - 1) + "]");
- }
-
- this._propertyList.set(index, vProperty);
- }
-
- /**
- *
- *
- * @param vPropertyArray
- */
- public void setProperty(final jalview.binding.Property[] vPropertyArray)
- {
- // -- copy array
- _propertyList.clear();
-
- for (int i = 0; i < vPropertyArray.length; i++)
- {
- this._propertyList.add(vPropertyArray[i]);
- }
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Pdbids.
- *
- * @version $Revision$ $Date$
- */
-public class Pdbids extends Pdbentry implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Pdbids()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.Pdbentry
- */
- public static jalview.binding.Pdbentry unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Pdbentry) Unmarshaller
- .unmarshal(jalview.binding.Pdbids.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Property.
- *
- * @version $Revision$ $Date$
- */
-public class Property implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _name.
- */
- private java.lang.String _name;
-
- /**
- * Field _value.
- */
- private java.lang.String _value;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Property()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'name'.
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Returns the value of field 'value'.
- *
- * @return the value of field 'Value'.
- */
- public java.lang.String getValue()
- {
- return this._value;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'name'.
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * Sets the value of field 'value'.
- *
- * @param value
- * the value of field 'value'.
- */
- public void setValue(final java.lang.String value)
- {
- this._value = value;
- }
-
- /**
- * 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.Property
- */
- public static jalview.binding.Property unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Property) Unmarshaller
- .unmarshal(jalview.binding.Property.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Sequence.
- *
- * @version $Revision$ $Date$
- */
-public class Sequence extends SequenceType implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Sequence()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.SequenceType
- */
- public static jalview.binding.SequenceType unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.SequenceType) Unmarshaller
- .unmarshal(jalview.binding.Sequence.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-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(
- "getAnnotation: Index value '" + index + "' not in range [0.."
- + (this._annotationList.size() - 1) + "]");
- }
-
- return (jalview.binding.Annotation) _annotationList.get(index);
- }
-
- /**
- * Method getAnnotation.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> 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(
- "getSequence: Index value '" + index + "' not in range [0.."
- + (this._sequenceList.size() - 1) + "]");
- }
-
- return (jalview.binding.Sequence) _sequenceList.get(index);
- }
-
- /**
- * Method getSequence.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> 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(
- "setAnnotation: Index value '" + index + "' not in range [0.."
- + (this._annotationList.size() - 1) + "]");
- }
-
- 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(
- "setSequence: Index value '" + index + "' not in range [0.."
- + (this._sequenceList.size() - 1) + "]");
- }
-
- 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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class SequenceType.
- *
- * @version $Revision$ $Date$
- */
-public class SequenceType implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _id.
- */
- private java.lang.String _id;
-
- /**
- * Field _sequence.
- */
- private java.lang.String _sequence;
-
- /**
- * Field _name.
- */
- private java.lang.String _name;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SequenceType()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'id'.
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Returns the value of field 'name'.
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Returns the value of field 'sequence'.
- *
- * @return the value of field 'Sequence'.
- */
- public java.lang.String getSequence()
- {
- return this._sequence;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'id'.
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- * Sets the value of field 'name'.
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * Sets the value of field 'sequence'.
- *
- * @param sequence
- * the value of field 'sequence'.
- */
- public void setSequence(final java.lang.String sequence)
- {
- this._sequence = sequence;
- }
-
- /**
- * 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.SequenceType
- */
- public static jalview.binding.SequenceType unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.SequenceType) Unmarshaller
- .unmarshal(jalview.binding.SequenceType.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Setting.
- *
- * @version $Revision$ $Date$
- */
-public class Setting implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _type.
- */
- private java.lang.String _type;
-
- /**
- * Field _colour.
- */
- private int _colour;
-
- /**
- * keeps track of state for field: _colour
- */
- private boolean _has_colour;
-
- /**
- * Field _display.
- */
- private boolean _display;
-
- /**
- * keeps track of state for field: _display
- */
- private boolean _has_display;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Setting()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteColour()
- {
- this._has_colour = false;
- }
-
- /**
- */
- public void deleteDisplay()
- {
- this._has_display = false;
- }
-
- /**
- * Returns the value of field 'colour'.
- *
- * @return the value of field 'Colour'.
- */
- public int getColour()
- {
- return this._colour;
- }
-
- /**
- * Returns the value of field 'display'.
- *
- * @return the value of field 'Display'.
- */
- public boolean getDisplay()
- {
- return this._display;
- }
-
- /**
- * Returns the value of field 'type'.
- *
- * @return the value of field 'Type'.
- */
- public java.lang.String getType()
- {
- return this._type;
- }
-
- /**
- * Method hasColour.
- *
- * @return true if at least one Colour has been added
- */
- public boolean hasColour()
- {
- return this._has_colour;
- }
-
- /**
- * Method hasDisplay.
- *
- * @return true if at least one Display has been added
- */
- public boolean hasDisplay()
- {
- return this._has_display;
- }
-
- /**
- * Returns the value of field 'display'.
- *
- * @return the value of field 'Display'.
- */
- public boolean isDisplay()
- {
- return this._display;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'colour'.
- *
- * @param colour
- * the value of field 'colour'.
- */
- public void setColour(final int colour)
- {
- this._colour = colour;
- this._has_colour = true;
- }
-
- /**
- * Sets the value of field 'display'.
- *
- * @param display
- * the value of field 'display'.
- */
- public void setDisplay(final boolean display)
- {
- this._display = display;
- this._has_display = true;
- }
-
- /**
- * Sets the value of field 'type'.
- *
- * @param type
- * the value of field 'type'.
- */
- public void setType(final java.lang.String type)
- {
- this._type = type;
- }
-
- /**
- * 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.Setting
- */
- public static jalview.binding.Setting unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Setting) Unmarshaller
- .unmarshal(jalview.binding.Setting.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Tree.
- *
- * @version $Revision$ $Date$
- */
-public class Tree implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _width.
- */
- private int _width;
-
- /**
- * keeps track of state for field: _width
- */
- private boolean _has_width;
-
- /**
- * Field _height.
- */
- private int _height;
-
- /**
- * keeps track of state for field: _height
- */
- private boolean _has_height;
-
- /**
- * Field _xpos.
- */
- private int _xpos;
-
- /**
- * keeps track of state for field: _xpos
- */
- private boolean _has_xpos;
-
- /**
- * Field _ypos.
- */
- private int _ypos;
-
- /**
- * keeps track of state for field: _ypos
- */
- private boolean _has_ypos;
-
- /**
- * Field _fontName.
- */
- private java.lang.String _fontName;
-
- /**
- * Field _fontSize.
- */
- private int _fontSize;
-
- /**
- * keeps track of state for field: _fontSize
- */
- private boolean _has_fontSize;
-
- /**
- * Field _fontStyle.
- */
- private int _fontStyle;
-
- /**
- * keeps track of state for field: _fontStyle
- */
- private boolean _has_fontStyle;
-
- /**
- * Field _threshold.
- */
- private float _threshold;
-
- /**
- * keeps track of state for field: _threshold
- */
- private boolean _has_threshold;
-
- /**
- * Field _showBootstrap.
- */
- private boolean _showBootstrap;
-
- /**
- * keeps track of state for field: _showBootstrap
- */
- private boolean _has_showBootstrap;
-
- /**
- * Field _showDistances.
- */
- private boolean _showDistances;
-
- /**
- * keeps track of state for field: _showDistances
- */
- private boolean _has_showDistances;
-
- /**
- * Field _markUnlinked.
- */
- private boolean _markUnlinked;
-
- /**
- * keeps track of state for field: _markUnlinked
- */
- private boolean _has_markUnlinked;
-
- /**
- * Field _fitToWindow.
- */
- private boolean _fitToWindow;
-
- /**
- * keeps track of state for field: _fitToWindow
- */
- private boolean _has_fitToWindow;
-
- /**
- * Field _currentTree.
- */
- private boolean _currentTree;
-
- /**
- * keeps track of state for field: _currentTree
- */
- private boolean _has_currentTree;
-
- /**
- * Field _title.
- */
- private java.lang.String _title;
-
- /**
- * Field _newick.
- */
- private java.lang.String _newick;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Tree()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteCurrentTree()
- {
- this._has_currentTree = false;
- }
-
- /**
- */
- public void deleteFitToWindow()
- {
- this._has_fitToWindow = false;
- }
-
- /**
- */
- public void deleteFontSize()
- {
- this._has_fontSize = false;
- }
-
- /**
- */
- public void deleteFontStyle()
- {
- this._has_fontStyle = false;
- }
-
- /**
- */
- public void deleteHeight()
- {
- this._has_height = false;
- }
-
- /**
- */
- public void deleteMarkUnlinked()
- {
- this._has_markUnlinked = false;
- }
-
- /**
- */
- public void deleteShowBootstrap()
- {
- this._has_showBootstrap = false;
- }
-
- /**
- */
- public void deleteShowDistances()
- {
- this._has_showDistances = false;
- }
-
- /**
- */
- public void deleteThreshold()
- {
- this._has_threshold = false;
- }
-
- /**
- */
- public void deleteWidth()
- {
- this._has_width = false;
- }
-
- /**
- */
- public void deleteXpos()
- {
- this._has_xpos = false;
- }
-
- /**
- */
- public void deleteYpos()
- {
- this._has_ypos = false;
- }
-
- /**
- * Returns the value of field 'currentTree'.
- *
- * @return the value of field 'CurrentTree'.
- */
- public boolean getCurrentTree()
- {
- return this._currentTree;
- }
-
- /**
- * Returns the value of field 'fitToWindow'.
- *
- * @return the value of field 'FitToWindow'.
- */
- public boolean getFitToWindow()
- {
- return this._fitToWindow;
- }
-
- /**
- * Returns the value of field 'fontName'.
- *
- * @return the value of field 'FontName'.
- */
- public java.lang.String getFontName()
- {
- return this._fontName;
- }
-
- /**
- * Returns the value of field 'fontSize'.
- *
- * @return the value of field 'FontSize'.
- */
- public int getFontSize()
- {
- return this._fontSize;
- }
-
- /**
- * Returns the value of field 'fontStyle'.
- *
- * @return the value of field 'FontStyle'.
- */
- public int getFontStyle()
- {
- return this._fontStyle;
- }
-
- /**
- * Returns the value of field 'height'.
- *
- * @return the value of field 'Height'.
- */
- public int getHeight()
- {
- return this._height;
- }
-
- /**
- * Returns the value of field 'markUnlinked'.
- *
- * @return the value of field 'MarkUnlinked'.
- */
- public boolean getMarkUnlinked()
- {
- return this._markUnlinked;
- }
-
- /**
- * Returns the value of field 'newick'.
- *
- * @return the value of field 'Newick'.
- */
- public java.lang.String getNewick()
- {
- return this._newick;
- }
-
- /**
- * Returns the value of field 'showBootstrap'.
- *
- * @return the value of field 'ShowBootstrap'.
- */
- public boolean getShowBootstrap()
- {
- return this._showBootstrap;
- }
-
- /**
- * Returns the value of field 'showDistances'.
- *
- * @return the value of field 'ShowDistances'.
- */
- public boolean getShowDistances()
- {
- return this._showDistances;
- }
-
- /**
- * Returns the value of field 'threshold'.
- *
- * @return the value of field 'Threshold'.
- */
- public float getThreshold()
- {
- return this._threshold;
- }
-
- /**
- * Returns the value of field 'title'.
- *
- * @return the value of field 'Title'.
- */
- public java.lang.String getTitle()
- {
- return this._title;
- }
-
- /**
- * Returns the value of field 'width'.
- *
- * @return the value of field 'Width'.
- */
- public int getWidth()
- {
- return this._width;
- }
-
- /**
- * Returns the value of field 'xpos'.
- *
- * @return the value of field 'Xpos'.
- */
- public int getXpos()
- {
- return this._xpos;
- }
-
- /**
- * Returns the value of field 'ypos'.
- *
- * @return the value of field 'Ypos'.
- */
- public int getYpos()
- {
- return this._ypos;
- }
-
- /**
- * Method hasCurrentTree.
- *
- * @return true if at least one CurrentTree has been added
- */
- public boolean hasCurrentTree()
- {
- return this._has_currentTree;
- }
-
- /**
- * Method hasFitToWindow.
- *
- * @return true if at least one FitToWindow has been added
- */
- public boolean hasFitToWindow()
- {
- return this._has_fitToWindow;
- }
-
- /**
- * Method hasFontSize.
- *
- * @return true if at least one FontSize has been added
- */
- public boolean hasFontSize()
- {
- return this._has_fontSize;
- }
-
- /**
- * Method hasFontStyle.
- *
- * @return true if at least one FontStyle has been added
- */
- public boolean hasFontStyle()
- {
- return this._has_fontStyle;
- }
-
- /**
- * Method hasHeight.
- *
- * @return true if at least one Height has been added
- */
- public boolean hasHeight()
- {
- return this._has_height;
- }
-
- /**
- * Method hasMarkUnlinked.
- *
- * @return true if at least one MarkUnlinked has been added
- */
- public boolean hasMarkUnlinked()
- {
- return this._has_markUnlinked;
- }
-
- /**
- * Method hasShowBootstrap.
- *
- * @return true if at least one ShowBootstrap has been added
- */
- public boolean hasShowBootstrap()
- {
- return this._has_showBootstrap;
- }
-
- /**
- * Method hasShowDistances.
- *
- * @return true if at least one ShowDistances has been added
- */
- public boolean hasShowDistances()
- {
- return this._has_showDistances;
- }
-
- /**
- * Method hasThreshold.
- *
- * @return true if at least one Threshold has been added
- */
- public boolean hasThreshold()
- {
- return this._has_threshold;
- }
-
- /**
- * Method hasWidth.
- *
- * @return true if at least one Width has been added
- */
- public boolean hasWidth()
- {
- return this._has_width;
- }
-
- /**
- * Method hasXpos.
- *
- * @return true if at least one Xpos has been added
- */
- public boolean hasXpos()
- {
- return this._has_xpos;
- }
-
- /**
- * Method hasYpos.
- *
- * @return true if at least one Ypos has been added
- */
- public boolean hasYpos()
- {
- return this._has_ypos;
- }
-
- /**
- * Returns the value of field 'currentTree'.
- *
- * @return the value of field 'CurrentTree'.
- */
- public boolean isCurrentTree()
- {
- return this._currentTree;
- }
-
- /**
- * Returns the value of field 'fitToWindow'.
- *
- * @return the value of field 'FitToWindow'.
- */
- public boolean isFitToWindow()
- {
- return this._fitToWindow;
- }
-
- /**
- * Returns the value of field 'markUnlinked'.
- *
- * @return the value of field 'MarkUnlinked'.
- */
- public boolean isMarkUnlinked()
- {
- return this._markUnlinked;
- }
-
- /**
- * Returns the value of field 'showBootstrap'.
- *
- * @return the value of field 'ShowBootstrap'.
- */
- public boolean isShowBootstrap()
- {
- return this._showBootstrap;
- }
-
- /**
- * Returns the value of field 'showDistances'.
- *
- * @return the value of field 'ShowDistances'.
- */
- public boolean isShowDistances()
- {
- return this._showDistances;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'currentTree'.
- *
- * @param currentTree
- * the value of field 'currentTree'.
- */
- public void setCurrentTree(final boolean currentTree)
- {
- this._currentTree = currentTree;
- this._has_currentTree = true;
- }
-
- /**
- * Sets the value of field 'fitToWindow'.
- *
- * @param fitToWindow
- * the value of field 'fitToWindow'.
- */
- public void setFitToWindow(final boolean fitToWindow)
- {
- this._fitToWindow = fitToWindow;
- this._has_fitToWindow = true;
- }
-
- /**
- * Sets the value of field 'fontName'.
- *
- * @param fontName
- * the value of field 'fontName'.
- */
- public void setFontName(final java.lang.String fontName)
- {
- this._fontName = fontName;
- }
-
- /**
- * Sets the value of field 'fontSize'.
- *
- * @param fontSize
- * the value of field 'fontSize'.
- */
- public void setFontSize(final int fontSize)
- {
- this._fontSize = fontSize;
- this._has_fontSize = true;
- }
-
- /**
- * Sets the value of field 'fontStyle'.
- *
- * @param fontStyle
- * the value of field 'fontStyle'.
- */
- public void setFontStyle(final int fontStyle)
- {
- this._fontStyle = fontStyle;
- this._has_fontStyle = true;
- }
-
- /**
- * Sets the value of field 'height'.
- *
- * @param height
- * the value of field 'height'.
- */
- public void setHeight(final int height)
- {
- this._height = height;
- this._has_height = true;
- }
-
- /**
- * Sets the value of field 'markUnlinked'.
- *
- * @param markUnlinked
- * the value of field 'markUnlinked'.
- */
- public void setMarkUnlinked(final boolean markUnlinked)
- {
- this._markUnlinked = markUnlinked;
- this._has_markUnlinked = true;
- }
-
- /**
- * Sets the value of field 'newick'.
- *
- * @param newick
- * the value of field 'newick'.
- */
- public void setNewick(final java.lang.String newick)
- {
- this._newick = newick;
- }
-
- /**
- * Sets the value of field 'showBootstrap'.
- *
- * @param showBootstrap
- * the value of field 'showBootstrap'.
- */
- public void setShowBootstrap(final boolean showBootstrap)
- {
- this._showBootstrap = showBootstrap;
- this._has_showBootstrap = true;
- }
-
- /**
- * Sets the value of field 'showDistances'.
- *
- * @param showDistances
- * the value of field 'showDistances'.
- */
- public void setShowDistances(final boolean showDistances)
- {
- this._showDistances = showDistances;
- this._has_showDistances = true;
- }
-
- /**
- * Sets the value of field 'threshold'.
- *
- * @param threshold
- * the value of field 'threshold'.
- */
- public void setThreshold(final float threshold)
- {
- this._threshold = threshold;
- this._has_threshold = true;
- }
-
- /**
- * Sets the value of field 'title'.
- *
- * @param title
- * the value of field 'title'.
- */
- public void setTitle(final java.lang.String title)
- {
- this._title = title;
- }
-
- /**
- * Sets the value of field 'width'.
- *
- * @param width
- * the value of field 'width'.
- */
- public void setWidth(final int width)
- {
- this._width = width;
- this._has_width = true;
- }
-
- /**
- * Sets the value of field 'xpos'.
- *
- * @param xpos
- * the value of field 'xpos'.
- */
- public void setXpos(final int xpos)
- {
- this._xpos = xpos;
- this._has_xpos = true;
- }
-
- /**
- * Sets the value of field 'ypos'.
- *
- * @param ypos
- * the value of field 'ypos'.
- */
- public void setYpos(final int ypos)
- {
- this._ypos = ypos;
- this._has_ypos = true;
- }
-
- /**
- * 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.Tree
- */
- public static jalview.binding.Tree unmarshal(final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Tree) Unmarshaller
- .unmarshal(jalview.binding.Tree.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class UserColourScheme.
- *
- * @version $Revision$ $Date$
- */
-public class UserColourScheme extends JalviewUserColours
- implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public UserColourScheme()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.JalviewUserColours
- */
- public static jalview.binding.JalviewUserColours unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.JalviewUserColours) Unmarshaller
- .unmarshal(jalview.binding.UserColourScheme.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class UserColours.
- *
- * @version $Revision$ $Date$
- */
-public class UserColours implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _id.
- */
- private java.lang.String _id;
-
- /**
- * Field _userColourScheme.
- */
- private jalview.binding.UserColourScheme _userColourScheme;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public UserColours()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'id'.
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Returns the value of field 'userColourScheme'.
- *
- * @return the value of field 'UserColourScheme'.
- */
- public jalview.binding.UserColourScheme getUserColourScheme()
- {
- return this._userColourScheme;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'id'.
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- * Sets the value of field 'userColourScheme'.
- *
- * @param userColourScheme
- * the value of field 'userColourScheme'
- */
- public void setUserColourScheme(
- final jalview.binding.UserColourScheme userColourScheme)
- {
- this._userColourScheme = userColourScheme;
- }
-
- /**
- * 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.UserColours
- */
- public static jalview.binding.UserColours unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.UserColours) Unmarshaller
- .unmarshal(jalview.binding.UserColours.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class VAMSAS.
- *
- * @version $Revision$ $Date$
- */
-public class VAMSAS implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _alignmentList.
- */
- private java.util.Vector _alignmentList;
-
- /**
- * Field _treeList.
- */
- private java.util.Vector _treeList;
-
- /**
- * Field _sequenceSetList.
- */
- private java.util.Vector _sequenceSetList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public VAMSAS()
- {
- super();
- this._alignmentList = new java.util.Vector();
- this._treeList = new java.util.Vector();
- this._sequenceSetList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAlignment
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAlignment(final Alignment vAlignment)
- throws java.lang.IndexOutOfBoundsException
- {
- this._alignmentList.addElement(vAlignment);
- }
-
- /**
- *
- *
- * @param index
- * @param vAlignment
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAlignment(final int index, final Alignment vAlignment)
- throws java.lang.IndexOutOfBoundsException
- {
- this._alignmentList.add(index, vAlignment);
- }
-
- /**
- *
- *
- * @param vSequenceSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSequenceSet(final SequenceSet vSequenceSet)
- throws java.lang.IndexOutOfBoundsException
- {
- this._sequenceSetList.addElement(vSequenceSet);
- }
-
- /**
- *
- *
- * @param index
- * @param vSequenceSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSequenceSet(final int index,
- final SequenceSet vSequenceSet)
- throws java.lang.IndexOutOfBoundsException
- {
- this._sequenceSetList.add(index, vSequenceSet);
- }
-
- /**
- *
- *
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addTree(final java.lang.String vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- this._treeList.addElement(vTree);
- }
-
- /**
- *
- *
- * @param index
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addTree(final int index, final java.lang.String vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- this._treeList.add(index, vTree);
- }
-
- /**
- * Method enumerateAlignment.
- *
- * @return an Enumeration over all Alignment elements
- */
- public java.util.Enumeration enumerateAlignment()
- {
- return this._alignmentList.elements();
- }
-
- /**
- * Method enumerateSequenceSet.
- *
- * @return an Enumeration over all SequenceSet elements
- */
- public java.util.Enumeration enumerateSequenceSet()
- {
- return this._sequenceSetList.elements();
- }
-
- /**
- * Method enumerateTree.
- *
- * @return an Enumeration over all java.lang.String elements
- */
- public java.util.Enumeration enumerateTree()
- {
- return this._treeList.elements();
- }
-
- /**
- * Method getAlignment.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the Alignment at the given index
- */
- public Alignment getAlignment(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._alignmentList.size())
- {
- throw new IndexOutOfBoundsException(
- "getAlignment: Index value '" + index + "' not in range [0.."
- + (this._alignmentList.size() - 1) + "]");
- }
-
- return (Alignment) _alignmentList.get(index);
- }
-
- /**
- * Method getAlignment.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public Alignment[] getAlignment()
- {
- Alignment[] array = new Alignment[0];
- return (Alignment[]) this._alignmentList.toArray(array);
- }
-
- /**
- * Method getAlignmentCount.
- *
- * @return the size of this collection
- */
- public int getAlignmentCount()
- {
- return this._alignmentList.size();
- }
-
- /**
- * Method getSequenceSet.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the SequenceSet at the given index
- */
- public SequenceSet getSequenceSet(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._sequenceSetList.size())
- {
- throw new IndexOutOfBoundsException("getSequenceSet: Index value '"
- + index + "' not in range [0.."
- + (this._sequenceSetList.size() - 1) + "]");
- }
-
- return (SequenceSet) _sequenceSetList.get(index);
- }
-
- /**
- * Method getSequenceSet.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public SequenceSet[] getSequenceSet()
- {
- SequenceSet[] array = new SequenceSet[0];
- return (SequenceSet[]) this._sequenceSetList.toArray(array);
- }
-
- /**
- * Method getSequenceSetCount.
- *
- * @return the size of this collection
- */
- public int getSequenceSetCount()
- {
- return this._sequenceSetList.size();
- }
-
- /**
- * Method getTree.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the java.lang.String at the given index
- */
- public java.lang.String getTree(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._treeList.size())
- {
- throw new IndexOutOfBoundsException("getTree: Index value '" + index
- + "' not in range [0.." + (this._treeList.size() - 1) + "]");
- }
-
- return (java.lang.String) _treeList.get(index);
- }
-
- /**
- * Method getTree.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public java.lang.String[] getTree()
- {
- java.lang.String[] array = new java.lang.String[0];
- return (java.lang.String[]) this._treeList.toArray(array);
- }
-
- /**
- * Method getTreeCount.
- *
- * @return the size of this collection
- */
- public int getTreeCount()
- {
- return this._treeList.size();
- }
-
- /**
- * 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);
- }
-
- /**
- * Method removeAlignment.
- *
- * @param vAlignment
- * @return true if the object was removed from the collection.
- */
- public boolean removeAlignment(final Alignment vAlignment)
- {
- boolean removed = _alignmentList.remove(vAlignment);
- return removed;
- }
-
- /**
- * Method removeAlignmentAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public Alignment removeAlignmentAt(final int index)
- {
- java.lang.Object obj = this._alignmentList.remove(index);
- return (Alignment) obj;
- }
-
- /**
- */
- public void removeAllAlignment()
- {
- this._alignmentList.clear();
- }
-
- /**
- */
- public void removeAllSequenceSet()
- {
- this._sequenceSetList.clear();
- }
-
- /**
- */
- public void removeAllTree()
- {
- this._treeList.clear();
- }
-
- /**
- * Method removeSequenceSet.
- *
- * @param vSequenceSet
- * @return true if the object was removed from the collection.
- */
- public boolean removeSequenceSet(final SequenceSet vSequenceSet)
- {
- boolean removed = _sequenceSetList.remove(vSequenceSet);
- return removed;
- }
-
- /**
- * Method removeSequenceSetAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public SequenceSet removeSequenceSetAt(final int index)
- {
- java.lang.Object obj = this._sequenceSetList.remove(index);
- return (SequenceSet) obj;
- }
-
- /**
- * Method removeTree.
- *
- * @param vTree
- * @return true if the object was removed from the collection.
- */
- public boolean removeTree(final java.lang.String vTree)
- {
- boolean removed = _treeList.remove(vTree);
- return removed;
- }
-
- /**
- * Method removeTreeAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public java.lang.String removeTreeAt(final int index)
- {
- java.lang.Object obj = this._treeList.remove(index);
- return (java.lang.String) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vAlignment
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAlignment(final int index, final Alignment vAlignment)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._alignmentList.size())
- {
- throw new IndexOutOfBoundsException(
- "setAlignment: Index value '" + index + "' not in range [0.."
- + (this._alignmentList.size() - 1) + "]");
- }
-
- this._alignmentList.set(index, vAlignment);
- }
-
- /**
- *
- *
- * @param vAlignmentArray
- */
- public void setAlignment(final Alignment[] vAlignmentArray)
- {
- // -- copy array
- _alignmentList.clear();
-
- for (int i = 0; i < vAlignmentArray.length; i++)
- {
- this._alignmentList.add(vAlignmentArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vSequenceSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setSequenceSet(final int index,
- final SequenceSet vSequenceSet)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._sequenceSetList.size())
- {
- throw new IndexOutOfBoundsException("setSequenceSet: Index value '"
- + index + "' not in range [0.."
- + (this._sequenceSetList.size() - 1) + "]");
- }
-
- this._sequenceSetList.set(index, vSequenceSet);
- }
-
- /**
- *
- *
- * @param vSequenceSetArray
- */
- public void setSequenceSet(final SequenceSet[] vSequenceSetArray)
- {
- // -- copy array
- _sequenceSetList.clear();
-
- for (int i = 0; i < vSequenceSetArray.length; i++)
- {
- this._sequenceSetList.add(vSequenceSetArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setTree(final int index, final java.lang.String vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._treeList.size())
- {
- throw new IndexOutOfBoundsException("setTree: Index value '" + index
- + "' not in range [0.." + (this._treeList.size() - 1) + "]");
- }
-
- this._treeList.set(index, vTree);
- }
-
- /**
- *
- *
- * @param vTreeArray
- */
- public void setTree(final java.lang.String[] vTreeArray)
- {
- // -- copy array
- _treeList.clear();
-
- for (int i = 0; i < vTreeArray.length; i++)
- {
- this._treeList.add(vTreeArray[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.VAMSAS
- */
- public static jalview.binding.VAMSAS unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.VAMSAS) Unmarshaller
- .unmarshal(jalview.binding.VAMSAS.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class VamsasModel.
- *
- * @version $Revision$ $Date$
- */
-public class VamsasModel extends VAMSAS implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public VamsasModel()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.VAMSAS
- */
- public static jalview.binding.VAMSAS unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.VAMSAS) Unmarshaller
- .unmarshal(jalview.binding.VamsasModel.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Viewport.
- *
- * @version $Revision$ $Date$
- */
-public class Viewport implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _conservationSelected.
- */
- private boolean _conservationSelected;
-
- /**
- * keeps track of state for field: _conservationSelected
- */
- private boolean _has_conservationSelected;
-
- /**
- * Field _pidSelected.
- */
- private boolean _pidSelected;
-
- /**
- * keeps track of state for field: _pidSelected
- */
- private boolean _has_pidSelected;
-
- /**
- * Field _bgColour.
- */
- private java.lang.String _bgColour;
-
- /**
- * Field _consThreshold.
- */
- private int _consThreshold;
-
- /**
- * keeps track of state for field: _consThreshold
- */
- private boolean _has_consThreshold;
-
- /**
- * Field _pidThreshold.
- */
- private int _pidThreshold;
-
- /**
- * keeps track of state for field: _pidThreshold
- */
- private boolean _has_pidThreshold;
-
- /**
- * Field _title.
- */
- private java.lang.String _title;
-
- /**
- * Field _showFullId.
- */
- private boolean _showFullId;
-
- /**
- * keeps track of state for field: _showFullId
- */
- private boolean _has_showFullId;
-
- /**
- * Field _showText.
- */
- private boolean _showText;
-
- /**
- * keeps track of state for field: _showText
- */
- private boolean _has_showText;
-
- /**
- * Field _showColourText.
- */
- private boolean _showColourText;
-
- /**
- * keeps track of state for field: _showColourText
- */
- private boolean _has_showColourText;
-
- /**
- * Field _showBoxes.
- */
- private boolean _showBoxes;
-
- /**
- * keeps track of state for field: _showBoxes
- */
- private boolean _has_showBoxes;
-
- /**
- * Field _wrapAlignment.
- */
- private boolean _wrapAlignment;
-
- /**
- * keeps track of state for field: _wrapAlignment
- */
- private boolean _has_wrapAlignment;
-
- /**
- * Field _renderGaps.
- */
- private boolean _renderGaps;
-
- /**
- * keeps track of state for field: _renderGaps
- */
- private boolean _has_renderGaps;
-
- /**
- * Field _showSequenceFeatures.
- */
- private boolean _showSequenceFeatures;
-
- /**
- * keeps track of state for field: _showSequenceFeatures
- */
- private boolean _has_showSequenceFeatures;
-
- /**
- * Field _showAnnotation.
- */
- private boolean _showAnnotation;
-
- /**
- * keeps track of state for field: _showAnnotation
- */
- private boolean _has_showAnnotation;
-
- /**
- * Field _showConservation.
- */
- private boolean _showConservation;
-
- /**
- * keeps track of state for field: _showConservation
- */
- private boolean _has_showConservation;
-
- /**
- * Field _showQuality.
- */
- private boolean _showQuality;
-
- /**
- * keeps track of state for field: _showQuality
- */
- private boolean _has_showQuality;
-
- /**
- * Field _showIdentity.
- */
- private boolean _showIdentity;
-
- /**
- * keeps track of state for field: _showIdentity
- */
- private boolean _has_showIdentity;
-
- /**
- * Field _xpos.
- */
- private int _xpos;
-
- /**
- * keeps track of state for field: _xpos
- */
- private boolean _has_xpos;
-
- /**
- * Field _ypos.
- */
- private int _ypos;
-
- /**
- * keeps track of state for field: _ypos
- */
- private boolean _has_ypos;
-
- /**
- * Field _width.
- */
- private int _width;
-
- /**
- * keeps track of state for field: _width
- */
- private boolean _has_width;
-
- /**
- * Field _height.
- */
- private int _height;
-
- /**
- * keeps track of state for field: _height
- */
- private boolean _has_height;
-
- /**
- * Field _startRes.
- */
- private int _startRes;
-
- /**
- * keeps track of state for field: _startRes
- */
- private boolean _has_startRes;
-
- /**
- * Field _startSeq.
- */
- private int _startSeq;
-
- /**
- * keeps track of state for field: _startSeq
- */
- private boolean _has_startSeq;
-
- /**
- * Field _fontName.
- */
- private java.lang.String _fontName;
-
- /**
- * Field _fontSize.
- */
- private int _fontSize;
-
- /**
- * keeps track of state for field: _fontSize
- */
- private boolean _has_fontSize;
-
- /**
- * Field _fontStyle.
- */
- private int _fontStyle;
-
- /**
- * keeps track of state for field: _fontStyle
- */
- private boolean _has_fontStyle;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Viewport()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteConsThreshold()
- {
- this._has_consThreshold = false;
- }
-
- /**
- */
- public void deleteConservationSelected()
- {
- this._has_conservationSelected = false;
- }
-
- /**
- */
- public void deleteFontSize()
- {
- this._has_fontSize = false;
- }
-
- /**
- */
- public void deleteFontStyle()
- {
- this._has_fontStyle = false;
- }
-
- /**
- */
- public void deleteHeight()
- {
- this._has_height = false;
- }
-
- /**
- */
- public void deletePidSelected()
- {
- this._has_pidSelected = false;
- }
-
- /**
- */
- public void deletePidThreshold()
- {
- this._has_pidThreshold = false;
- }
-
- /**
- */
- public void deleteRenderGaps()
- {
- this._has_renderGaps = false;
- }
-
- /**
- */
- public void deleteShowAnnotation()
- {
- this._has_showAnnotation = false;
- }
-
- /**
- */
- public void deleteShowBoxes()
- {
- this._has_showBoxes = false;
- }
-
- /**
- */
- public void deleteShowColourText()
- {
- this._has_showColourText = false;
- }
-
- /**
- */
- public void deleteShowConservation()
- {
- this._has_showConservation = false;
- }
-
- /**
- */
- public void deleteShowFullId()
- {
- this._has_showFullId = false;
- }
-
- /**
- */
- public void deleteShowIdentity()
- {
- this._has_showIdentity = false;
- }
-
- /**
- */
- public void deleteShowQuality()
- {
- this._has_showQuality = false;
- }
-
- /**
- */
- public void deleteShowSequenceFeatures()
- {
- this._has_showSequenceFeatures = false;
- }
-
- /**
- */
- public void deleteShowText()
- {
- this._has_showText = false;
- }
-
- /**
- */
- public void deleteStartRes()
- {
- this._has_startRes = false;
- }
-
- /**
- */
- public void deleteStartSeq()
- {
- this._has_startSeq = false;
- }
-
- /**
- */
- public void deleteWidth()
- {
- this._has_width = false;
- }
-
- /**
- */
- public void deleteWrapAlignment()
- {
- this._has_wrapAlignment = false;
- }
-
- /**
- */
- public void deleteXpos()
- {
- this._has_xpos = false;
- }
-
- /**
- */
- public void deleteYpos()
- {
- this._has_ypos = false;
- }
-
- /**
- * Returns the value of field 'bgColour'.
- *
- * @return the value of field 'BgColour'.
- */
- public java.lang.String getBgColour()
- {
- return this._bgColour;
- }
-
- /**
- * Returns the value of field 'consThreshold'.
- *
- * @return the value of field 'ConsThreshold'.
- */
- public int getConsThreshold()
- {
- return this._consThreshold;
- }
-
- /**
- * Returns the value of field 'conservationSelected'.
- *
- * @return the value of field 'ConservationSelected'.
- */
- public boolean getConservationSelected()
- {
- return this._conservationSelected;
- }
-
- /**
- * Returns the value of field 'fontName'.
- *
- * @return the value of field 'FontName'.
- */
- public java.lang.String getFontName()
- {
- return this._fontName;
- }
-
- /**
- * Returns the value of field 'fontSize'.
- *
- * @return the value of field 'FontSize'.
- */
- public int getFontSize()
- {
- return this._fontSize;
- }
-
- /**
- * Returns the value of field 'fontStyle'.
- *
- * @return the value of field 'FontStyle'.
- */
- public int getFontStyle()
- {
- return this._fontStyle;
- }
-
- /**
- * Returns the value of field 'height'.
- *
- * @return the value of field 'Height'.
- */
- public int getHeight()
- {
- return this._height;
- }
-
- /**
- * Returns the value of field 'pidSelected'.
- *
- * @return the value of field 'PidSelected'.
- */
- public boolean getPidSelected()
- {
- return this._pidSelected;
- }
-
- /**
- * Returns the value of field 'pidThreshold'.
- *
- * @return the value of field 'PidThreshold'.
- */
- public int getPidThreshold()
- {
- return this._pidThreshold;
- }
-
- /**
- * Returns the value of field 'renderGaps'.
- *
- * @return the value of field 'RenderGaps'.
- */
- public boolean getRenderGaps()
- {
- return this._renderGaps;
- }
-
- /**
- * Returns the value of field 'showAnnotation'.
- *
- * @return the value of field 'ShowAnnotation'.
- */
- public boolean getShowAnnotation()
- {
- return this._showAnnotation;
- }
-
- /**
- * Returns the value of field 'showBoxes'.
- *
- * @return the value of field 'ShowBoxes'.
- */
- public boolean getShowBoxes()
- {
- return this._showBoxes;
- }
-
- /**
- * Returns the value of field 'showColourText'.
- *
- * @return the value of field 'ShowColourText'.
- */
- public boolean getShowColourText()
- {
- return this._showColourText;
- }
-
- /**
- * Returns the value of field 'showConservation'.
- *
- * @return the value of field 'ShowConservation'.
- */
- public boolean getShowConservation()
- {
- return this._showConservation;
- }
-
- /**
- * Returns the value of field 'showFullId'.
- *
- * @return the value of field 'ShowFullId'.
- */
- public boolean getShowFullId()
- {
- return this._showFullId;
- }
-
- /**
- * Returns the value of field 'showIdentity'.
- *
- * @return the value of field 'ShowIdentity'.
- */
- public boolean getShowIdentity()
- {
- return this._showIdentity;
- }
-
- /**
- * Returns the value of field 'showQuality'.
- *
- * @return the value of field 'ShowQuality'.
- */
- public boolean getShowQuality()
- {
- return this._showQuality;
- }
-
- /**
- * Returns the value of field 'showSequenceFeatures'.
- *
- * @return the value of field 'ShowSequenceFeatures'.
- */
- public boolean getShowSequenceFeatures()
- {
- return this._showSequenceFeatures;
- }
-
- /**
- * Returns the value of field 'showText'.
- *
- * @return the value of field 'ShowText'.
- */
- public boolean getShowText()
- {
- return this._showText;
- }
-
- /**
- * Returns the value of field 'startRes'.
- *
- * @return the value of field 'StartRes'.
- */
- public int getStartRes()
- {
- return this._startRes;
- }
-
- /**
- * Returns the value of field 'startSeq'.
- *
- * @return the value of field 'StartSeq'.
- */
- public int getStartSeq()
- {
- return this._startSeq;
- }
-
- /**
- * Returns the value of field 'title'.
- *
- * @return the value of field 'Title'.
- */
- public java.lang.String getTitle()
- {
- return this._title;
- }
-
- /**
- * Returns the value of field 'width'.
- *
- * @return the value of field 'Width'.
- */
- public int getWidth()
- {
- return this._width;
- }
-
- /**
- * Returns the value of field 'wrapAlignment'.
- *
- * @return the value of field 'WrapAlignment'.
- */
- public boolean getWrapAlignment()
- {
- return this._wrapAlignment;
- }
-
- /**
- * Returns the value of field 'xpos'.
- *
- * @return the value of field 'Xpos'.
- */
- public int getXpos()
- {
- return this._xpos;
- }
-
- /**
- * Returns the value of field 'ypos'.
- *
- * @return the value of field 'Ypos'.
- */
- public int getYpos()
- {
- return this._ypos;
- }
-
- /**
- * Method hasConsThreshold.
- *
- * @return true if at least one ConsThreshold has been added
- */
- public boolean hasConsThreshold()
- {
- return this._has_consThreshold;
- }
-
- /**
- * Method hasConservationSelected.
- *
- * @return true if at least one ConservationSelected has been added
- */
- public boolean hasConservationSelected()
- {
- return this._has_conservationSelected;
- }
-
- /**
- * Method hasFontSize.
- *
- * @return true if at least one FontSize has been added
- */
- public boolean hasFontSize()
- {
- return this._has_fontSize;
- }
-
- /**
- * Method hasFontStyle.
- *
- * @return true if at least one FontStyle has been added
- */
- public boolean hasFontStyle()
- {
- return this._has_fontStyle;
- }
-
- /**
- * Method hasHeight.
- *
- * @return true if at least one Height has been added
- */
- public boolean hasHeight()
- {
- return this._has_height;
- }
-
- /**
- * Method hasPidSelected.
- *
- * @return true if at least one PidSelected has been added
- */
- public boolean hasPidSelected()
- {
- return this._has_pidSelected;
- }
-
- /**
- * Method hasPidThreshold.
- *
- * @return true if at least one PidThreshold has been added
- */
- public boolean hasPidThreshold()
- {
- return this._has_pidThreshold;
- }
-
- /**
- * Method hasRenderGaps.
- *
- * @return true if at least one RenderGaps has been added
- */
- public boolean hasRenderGaps()
- {
- return this._has_renderGaps;
- }
-
- /**
- * Method hasShowAnnotation.
- *
- * @return true if at least one ShowAnnotation has been added
- */
- public boolean hasShowAnnotation()
- {
- return this._has_showAnnotation;
- }
-
- /**
- * Method hasShowBoxes.
- *
- * @return true if at least one ShowBoxes has been added
- */
- public boolean hasShowBoxes()
- {
- return this._has_showBoxes;
- }
-
- /**
- * Method hasShowColourText.
- *
- * @return true if at least one ShowColourText has been added
- */
- public boolean hasShowColourText()
- {
- return this._has_showColourText;
- }
-
- /**
- * Method hasShowConservation.
- *
- * @return true if at least one ShowConservation has been added
- */
- public boolean hasShowConservation()
- {
- return this._has_showConservation;
- }
-
- /**
- * Method hasShowFullId.
- *
- * @return true if at least one ShowFullId has been added
- */
- public boolean hasShowFullId()
- {
- return this._has_showFullId;
- }
-
- /**
- * Method hasShowIdentity.
- *
- * @return true if at least one ShowIdentity has been added
- */
- public boolean hasShowIdentity()
- {
- return this._has_showIdentity;
- }
-
- /**
- * Method hasShowQuality.
- *
- * @return true if at least one ShowQuality has been added
- */
- public boolean hasShowQuality()
- {
- return this._has_showQuality;
- }
-
- /**
- * Method hasShowSequenceFeatures.
- *
- * @return true if at least one ShowSequenceFeatures has been added
- */
- public boolean hasShowSequenceFeatures()
- {
- return this._has_showSequenceFeatures;
- }
-
- /**
- * Method hasShowText.
- *
- * @return true if at least one ShowText has been added
- */
- public boolean hasShowText()
- {
- return this._has_showText;
- }
-
- /**
- * Method hasStartRes.
- *
- * @return true if at least one StartRes has been added
- */
- public boolean hasStartRes()
- {
- return this._has_startRes;
- }
-
- /**
- * Method hasStartSeq.
- *
- * @return true if at least one StartSeq has been added
- */
- public boolean hasStartSeq()
- {
- return this._has_startSeq;
- }
-
- /**
- * Method hasWidth.
- *
- * @return true if at least one Width has been added
- */
- public boolean hasWidth()
- {
- return this._has_width;
- }
-
- /**
- * Method hasWrapAlignment.
- *
- * @return true if at least one WrapAlignment has been added
- */
- public boolean hasWrapAlignment()
- {
- return this._has_wrapAlignment;
- }
-
- /**
- * Method hasXpos.
- *
- * @return true if at least one Xpos has been added
- */
- public boolean hasXpos()
- {
- return this._has_xpos;
- }
-
- /**
- * Method hasYpos.
- *
- * @return true if at least one Ypos has been added
- */
- public boolean hasYpos()
- {
- return this._has_ypos;
- }
-
- /**
- * Returns the value of field 'conservationSelected'.
- *
- * @return the value of field 'ConservationSelected'.
- */
- public boolean isConservationSelected()
- {
- return this._conservationSelected;
- }
-
- /**
- * Returns the value of field 'pidSelected'.
- *
- * @return the value of field 'PidSelected'.
- */
- public boolean isPidSelected()
- {
- return this._pidSelected;
- }
-
- /**
- * Returns the value of field 'renderGaps'.
- *
- * @return the value of field 'RenderGaps'.
- */
- public boolean isRenderGaps()
- {
- return this._renderGaps;
- }
-
- /**
- * Returns the value of field 'showAnnotation'.
- *
- * @return the value of field 'ShowAnnotation'.
- */
- public boolean isShowAnnotation()
- {
- return this._showAnnotation;
- }
-
- /**
- * Returns the value of field 'showBoxes'.
- *
- * @return the value of field 'ShowBoxes'.
- */
- public boolean isShowBoxes()
- {
- return this._showBoxes;
- }
-
- /**
- * Returns the value of field 'showColourText'.
- *
- * @return the value of field 'ShowColourText'.
- */
- public boolean isShowColourText()
- {
- return this._showColourText;
- }
-
- /**
- * Returns the value of field 'showConservation'.
- *
- * @return the value of field 'ShowConservation'.
- */
- public boolean isShowConservation()
- {
- return this._showConservation;
- }
-
- /**
- * Returns the value of field 'showFullId'.
- *
- * @return the value of field 'ShowFullId'.
- */
- public boolean isShowFullId()
- {
- return this._showFullId;
- }
-
- /**
- * Returns the value of field 'showIdentity'.
- *
- * @return the value of field 'ShowIdentity'.
- */
- public boolean isShowIdentity()
- {
- return this._showIdentity;
- }
-
- /**
- * Returns the value of field 'showQuality'.
- *
- * @return the value of field 'ShowQuality'.
- */
- public boolean isShowQuality()
- {
- return this._showQuality;
- }
-
- /**
- * Returns the value of field 'showSequenceFeatures'.
- *
- * @return the value of field 'ShowSequenceFeatures'.
- */
- public boolean isShowSequenceFeatures()
- {
- return this._showSequenceFeatures;
- }
-
- /**
- * Returns the value of field 'showText'.
- *
- * @return the value of field 'ShowText'.
- */
- public boolean isShowText()
- {
- return this._showText;
- }
-
- /**
- * 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;
- }
-
- /**
- * Returns the value of field 'wrapAlignment'.
- *
- * @return the value of field 'WrapAlignment'.
- */
- public boolean isWrapAlignment()
- {
- return this._wrapAlignment;
- }
-
- /**
- *
- *
- * @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);
- }
-
- /**
- * Sets the value of field 'bgColour'.
- *
- * @param bgColour
- * the value of field 'bgColour'.
- */
- public void setBgColour(final java.lang.String bgColour)
- {
- this._bgColour = bgColour;
- }
-
- /**
- * Sets the value of field 'consThreshold'.
- *
- * @param consThreshold
- * the value of field 'consThreshold'.
- */
- public void setConsThreshold(final int consThreshold)
- {
- this._consThreshold = consThreshold;
- this._has_consThreshold = true;
- }
-
- /**
- * Sets the value of field 'conservationSelected'.
- *
- * @param conservationSelected
- * the value of field 'conservationSelected'.
- */
- public void setConservationSelected(final boolean conservationSelected)
- {
- this._conservationSelected = conservationSelected;
- this._has_conservationSelected = true;
- }
-
- /**
- * Sets the value of field 'fontName'.
- *
- * @param fontName
- * the value of field 'fontName'.
- */
- public void setFontName(final java.lang.String fontName)
- {
- this._fontName = fontName;
- }
-
- /**
- * Sets the value of field 'fontSize'.
- *
- * @param fontSize
- * the value of field 'fontSize'.
- */
- public void setFontSize(final int fontSize)
- {
- this._fontSize = fontSize;
- this._has_fontSize = true;
- }
-
- /**
- * Sets the value of field 'fontStyle'.
- *
- * @param fontStyle
- * the value of field 'fontStyle'.
- */
- public void setFontStyle(final int fontStyle)
- {
- this._fontStyle = fontStyle;
- this._has_fontStyle = true;
- }
-
- /**
- * Sets the value of field 'height'.
- *
- * @param height
- * the value of field 'height'.
- */
- public void setHeight(final int height)
- {
- this._height = height;
- this._has_height = true;
- }
-
- /**
- * Sets the value of field 'pidSelected'.
- *
- * @param pidSelected
- * the value of field 'pidSelected'.
- */
- public void setPidSelected(final boolean pidSelected)
- {
- this._pidSelected = pidSelected;
- this._has_pidSelected = true;
- }
-
- /**
- * Sets the value of field 'pidThreshold'.
- *
- * @param pidThreshold
- * the value of field 'pidThreshold'.
- */
- public void setPidThreshold(final int pidThreshold)
- {
- this._pidThreshold = pidThreshold;
- this._has_pidThreshold = true;
- }
-
- /**
- * Sets the value of field 'renderGaps'.
- *
- * @param renderGaps
- * the value of field 'renderGaps'.
- */
- public void setRenderGaps(final boolean renderGaps)
- {
- this._renderGaps = renderGaps;
- this._has_renderGaps = true;
- }
-
- /**
- * Sets the value of field 'showAnnotation'.
- *
- * @param showAnnotation
- * the value of field 'showAnnotation'.
- */
- public void setShowAnnotation(final boolean showAnnotation)
- {
- this._showAnnotation = showAnnotation;
- this._has_showAnnotation = true;
- }
-
- /**
- * Sets the value of field 'showBoxes'.
- *
- * @param showBoxes
- * the value of field 'showBoxes'.
- */
- public void setShowBoxes(final boolean showBoxes)
- {
- this._showBoxes = showBoxes;
- this._has_showBoxes = true;
- }
-
- /**
- * Sets the value of field 'showColourText'.
- *
- * @param showColourText
- * the value of field 'showColourText'.
- */
- public void setShowColourText(final boolean showColourText)
- {
- this._showColourText = showColourText;
- this._has_showColourText = true;
- }
-
- /**
- * Sets the value of field 'showConservation'.
- *
- * @param showConservation
- * the value of field 'showConservation'
- */
- public void setShowConservation(final boolean showConservation)
- {
- this._showConservation = showConservation;
- this._has_showConservation = true;
- }
-
- /**
- * Sets the value of field 'showFullId'.
- *
- * @param showFullId
- * the value of field 'showFullId'.
- */
- public void setShowFullId(final boolean showFullId)
- {
- this._showFullId = showFullId;
- this._has_showFullId = true;
- }
-
- /**
- * Sets the value of field 'showIdentity'.
- *
- * @param showIdentity
- * the value of field 'showIdentity'.
- */
- public void setShowIdentity(final boolean showIdentity)
- {
- this._showIdentity = showIdentity;
- this._has_showIdentity = true;
- }
-
- /**
- * Sets the value of field 'showQuality'.
- *
- * @param showQuality
- * the value of field 'showQuality'.
- */
- public void setShowQuality(final boolean showQuality)
- {
- this._showQuality = showQuality;
- this._has_showQuality = true;
- }
-
- /**
- * Sets the value of field 'showSequenceFeatures'.
- *
- * @param showSequenceFeatures
- * the value of field 'showSequenceFeatures'.
- */
- public void setShowSequenceFeatures(final boolean showSequenceFeatures)
- {
- this._showSequenceFeatures = showSequenceFeatures;
- this._has_showSequenceFeatures = true;
- }
-
- /**
- * Sets the value of field 'showText'.
- *
- * @param showText
- * the value of field 'showText'.
- */
- public void setShowText(final boolean showText)
- {
- this._showText = showText;
- this._has_showText = true;
- }
-
- /**
- * Sets the value of field 'startRes'.
- *
- * @param startRes
- * the value of field 'startRes'.
- */
- public void setStartRes(final int startRes)
- {
- this._startRes = startRes;
- this._has_startRes = true;
- }
-
- /**
- * Sets the value of field 'startSeq'.
- *
- * @param startSeq
- * the value of field 'startSeq'.
- */
- public void setStartSeq(final int startSeq)
- {
- this._startSeq = startSeq;
- this._has_startSeq = true;
- }
-
- /**
- * Sets the value of field 'title'.
- *
- * @param title
- * the value of field 'title'.
- */
- public void setTitle(final java.lang.String title)
- {
- this._title = title;
- }
-
- /**
- * Sets the value of field 'width'.
- *
- * @param width
- * the value of field 'width'.
- */
- public void setWidth(final int width)
- {
- this._width = width;
- this._has_width = true;
- }
-
- /**
- * Sets the value of field 'wrapAlignment'.
- *
- * @param wrapAlignment
- * the value of field 'wrapAlignment'.
- */
- public void setWrapAlignment(final boolean wrapAlignment)
- {
- this._wrapAlignment = wrapAlignment;
- this._has_wrapAlignment = true;
- }
-
- /**
- * Sets the value of field 'xpos'.
- *
- * @param xpos
- * the value of field 'xpos'.
- */
- public void setXpos(final int xpos)
- {
- this._xpos = xpos;
- this._has_xpos = true;
- }
-
- /**
- * Sets the value of field 'ypos'.
- *
- * @param ypos
- * the value of field 'ypos'.
- */
- public void setYpos(final int ypos)
- {
- this._ypos = ypos;
- this._has_ypos = true;
- }
-
- /**
- * 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.Viewport
- */
- public static jalview.binding.Viewport unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.binding.Viewport) Unmarshaller
- .unmarshal(jalview.binding.Viewport.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding.types;
-
- //---------------------------------/
- //- Imported classes and packages -/
-//---------------------------------/
-
-import java.util.Hashtable;
-
-/**
- * Class ColourThreshTypeType.
- *
- * @version $Revision$ $Date$
- */
-public class ColourThreshTypeType implements java.io.Serializable {
-
-
- //--------------------------/
- //- Class/Member Variables -/
- //--------------------------/
-
- /**
- * The NONE type
- */
- public static final int NONE_TYPE = 0;
-
- /**
- * The instance of the NONE type
- */
- public static final ColourThreshTypeType NONE = new ColourThreshTypeType(NONE_TYPE, "NONE");
-
- /**
- * The ABOVE type
- */
- public static final int ABOVE_TYPE = 1;
-
- /**
- * The instance of the ABOVE type
- */
- public static final ColourThreshTypeType ABOVE = new ColourThreshTypeType(ABOVE_TYPE, "ABOVE");
-
- /**
- * The BELOW type
- */
- public static final int BELOW_TYPE = 2;
-
- /**
- * The instance of the BELOW type
- */
- public static final ColourThreshTypeType BELOW = new ColourThreshTypeType(BELOW_TYPE, "BELOW");
-
- /**
- * Field _memberTable.
- */
- private static java.util.Hashtable _memberTable = init();
-
- /**
- * Field type.
- */
- private int type = -1;
-
- /**
- * Field stringValue.
- */
- private java.lang.String stringValue = null;
-
-
- //----------------/
- //- Constructors -/
- //----------------/
-
- private ColourThreshTypeType(final int type, final java.lang.String value) {
- super();
- this.type = type;
- this.stringValue = value;
- }
-
-
- //-----------/
- //- Methods -/
- //-----------/
-
- /**
- * Method enumerate.Returns an enumeration of all possible
- * instances of ColourThreshTypeType
- *
- * @return an Enumeration over all possible instances of
- * ColourThreshTypeType
- */
- public static java.util.Enumeration enumerate(
- ) {
- return _memberTable.elements();
- }
-
- /**
- * Method getType.Returns the type of this ColourThreshTypeType
- *
- * @return the type of this ColourThreshTypeType
- */
- public int getType(
- ) {
- return this.type;
- }
-
- /**
- * Method init.
- *
- * @return the initialized Hashtable for the member table
- */
- private static java.util.Hashtable init(
- ) {
- Hashtable members = new Hashtable();
- members.put("NONE", NONE);
- members.put("ABOVE", ABOVE);
- members.put("BELOW", BELOW);
- return members;
- }
-
- /**
- * Method readResolve. will be called during deserialization to
- * replace the deserialized object with the correct constant
- * instance.
- *
- * @return this deserialized object
- */
- private java.lang.Object readResolve(
- ) {
- return valueOf(this.stringValue);
- }
-
- /**
- * Method toString.Returns the String representation of this
- * ColourThreshTypeType
- *
- * @return the String representation of this ColourThreshTypeTyp
- */
- public java.lang.String toString(
- ) {
- return this.stringValue;
- }
-
- /**
- * Method valueOf.Returns a new ColourThreshTypeType based on
- * the given String value.
- *
- * @param string
- * @return the ColourThreshTypeType value of parameter 'string'
- */
- public static jalview.binding.types.ColourThreshTypeType valueOf(
- final java.lang.String string) {
- java.lang.Object obj = null;
- if (string != null) {
- obj = _memberTable.get(string);
- }
- if (obj == null) {
- String err = "" + string + " is not a valid ColourThreshTypeType";
- throw new IllegalArgumentException(err);
- }
- return (ColourThreshTypeType) obj;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding.types;
-
- //---------------------------------/
- //- Imported classes and packages -/
-//---------------------------------/
-
-import java.util.Hashtable;
-
-/**
- * Class FeatureMatcherByType.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureMatcherByType implements java.io.Serializable {
-
-
- //--------------------------/
- //- Class/Member Variables -/
- //--------------------------/
-
- /**
- * The byLabel type
- */
- public static final int BYLABEL_TYPE = 0;
-
- /**
- * The instance of the byLabel type
- */
- public static final FeatureMatcherByType BYLABEL = new FeatureMatcherByType(BYLABEL_TYPE, "byLabel");
-
- /**
- * The byScore type
- */
- public static final int BYSCORE_TYPE = 1;
-
- /**
- * The instance of the byScore type
- */
- public static final FeatureMatcherByType BYSCORE = new FeatureMatcherByType(BYSCORE_TYPE, "byScore");
-
- /**
- * The byAttribute type
- */
- public static final int BYATTRIBUTE_TYPE = 2;
-
- /**
- * The instance of the byAttribute type
- */
- public static final FeatureMatcherByType BYATTRIBUTE = new FeatureMatcherByType(BYATTRIBUTE_TYPE, "byAttribute");
-
- /**
- * Field _memberTable.
- */
- private static java.util.Hashtable _memberTable = init();
-
- /**
- * Field type.
- */
- private int type = -1;
-
- /**
- * Field stringValue.
- */
- private java.lang.String stringValue = null;
-
-
- //----------------/
- //- Constructors -/
- //----------------/
-
- private FeatureMatcherByType(final int type, final java.lang.String value) {
- super();
- this.type = type;
- this.stringValue = value;
- }
-
-
- //-----------/
- //- Methods -/
- //-----------/
-
- /**
- * Method enumerate.Returns an enumeration of all possible
- * instances of FeatureMatcherByType
- *
- * @return an Enumeration over all possible instances of
- * FeatureMatcherByType
- */
- public static java.util.Enumeration enumerate(
- ) {
- return _memberTable.elements();
- }
-
- /**
- * Method getType.Returns the type of this FeatureMatcherByType
- *
- * @return the type of this FeatureMatcherByType
- */
- public int getType(
- ) {
- return this.type;
- }
-
- /**
- * Method init.
- *
- * @return the initialized Hashtable for the member table
- */
- private static java.util.Hashtable init(
- ) {
- Hashtable members = new Hashtable();
- members.put("byLabel", BYLABEL);
- members.put("byScore", BYSCORE);
- members.put("byAttribute", BYATTRIBUTE);
- return members;
- }
-
- /**
- * Method readResolve. will be called during deserialization to
- * replace the deserialized object with the correct constant
- * instance.
- *
- * @return this deserialized object
- */
- private java.lang.Object readResolve(
- ) {
- return valueOf(this.stringValue);
- }
-
- /**
- * Method toString.Returns the String representation of this
- * FeatureMatcherByType
- *
- * @return the String representation of this FeatureMatcherByTyp
- */
- public java.lang.String toString(
- ) {
- return this.stringValue;
- }
-
- /**
- * Method valueOf.Returns a new FeatureMatcherByType based on
- * the given String value.
- *
- * @param string
- * @return the FeatureMatcherByType value of parameter 'string'
- */
- public static jalview.binding.types.FeatureMatcherByType valueOf(
- final java.lang.String string) {
- java.lang.Object obj = null;
- if (string != null) {
- obj = _memberTable.get(string);
- }
- if (obj == null) {
- String err = "" + string + " is not a valid FeatureMatcherByType";
- throw new IllegalArgumentException(err);
- }
- return (FeatureMatcherByType) obj;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.binding.types;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import java.util.Hashtable;
-
-/**
- * Graduated feature colour if no score (or attribute) value
- *
- * @version $Revision$ $Date$
- */
-public class NoValueColour implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * The None type
- */
- public static final int NONE_TYPE = 0;
-
- /**
- * The instance of the None type
- */
- public static final NoValueColour NONE = new NoValueColour(NONE_TYPE,
- "None");
-
- /**
- * The Min type
- */
- public static final int MIN_TYPE = 1;
-
- /**
- * The instance of the Min type
- */
- public static final NoValueColour MIN = new NoValueColour(MIN_TYPE,
- "Min");
-
- /**
- * The Max type
- */
- public static final int MAX_TYPE = 2;
-
- /**
- * The instance of the Max type
- */
- public static final NoValueColour MAX = new NoValueColour(MAX_TYPE,
- "Max");
-
- /**
- * Field _memberTable.
- */
- private static java.util.Hashtable _memberTable = init();
-
- /**
- * Field type.
- */
- private int type = -1;
-
- /**
- * Field stringValue.
- */
- private java.lang.String stringValue = null;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- private NoValueColour(final int type, final java.lang.String value)
- {
- super();
- this.type = type;
- this.stringValue = value;
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method enumerate.Returns an enumeration of all possible instances of
- * NoValueColour
- *
- * @return an Enumeration over all possible instances of NoValueColour
- */
- public static java.util.Enumeration enumerate()
- {
- return _memberTable.elements();
- }
-
- /**
- * Method getType.Returns the type of this NoValueColour
- *
- * @return the type of this NoValueColour
- */
- public int getType()
- {
- return this.type;
- }
-
- /**
- * Method init.
- *
- * @return the initialized Hashtable for the member table
- */
- private static java.util.Hashtable init()
- {
- Hashtable members = new Hashtable();
- members.put("None", NONE);
- members.put("Min", MIN);
- members.put("Max", MAX);
- return members;
- }
-
- /**
- * Method readResolve. will be called during deserialization to replace the
- * deserialized object with the correct constant instance.
- *
- * @return this deserialized object
- */
- private java.lang.Object readResolve()
- {
- return valueOf(this.stringValue);
- }
-
- /**
- * Method toString.Returns the String representation of this NoValueColour
- *
- * @return the String representation of this NoValueColour
- */
- public java.lang.String toString()
- {
- return this.stringValue;
- }
-
- /**
- * Method valueOf.Returns a new NoValueColour based on the given String value.
- *
- * @param string
- * @return the NoValueColour value of parameter 'string'
- */
- public static jalview.binding.types.NoValueColour valueOf(
- final java.lang.String string)
- {
- java.lang.Object obj = null;
- if (string != null)
- {
- obj = _memberTable.get(string);
- }
- if (obj == null)
- {
- String err = "" + string + " is not a valid NoValueColour";
- throw new IllegalArgumentException(err);
- }
- return (NoValueColour) obj;
- }
-
-}
import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.Annotation;
+import jalview.datamodel.ContiguousI;
import jalview.datamodel.Range;
import jalview.datamodel.Sequence;
import jalview.datamodel.SequenceFeature;
command.string[i] = sequence.getSequence(command.position,
command.position + command.number);
SequenceI oldds = sequence.getDatasetSequence();
- Range cutPositions = sequence.findPositions(command.position + 1,
- command.position + command.number);
+ ContiguousI cutPositions = sequence.findPositions(
+ command.position + 1, command.position + command.number);
boolean cutIsInternal = cutPositions != null
&& sequence.getStart() != cutPositions
.getBegin() && sequence.getEnd() != cutPositions.getEnd();
* EditCommand.PASTE, sequences, 0, alignment.getWidth(), alignment) );
*
*/
-
- Range beforeEditedPositions = command.seqs[i].findPositions(1, start);
- Range afterEditedPositions = command.seqs[i]
+ ContiguousI beforeEditedPositions = command.seqs[i].findPositions(1,
+ start);
+ ContiguousI afterEditedPositions = command.seqs[i]
.findPositions(end + 1, command.seqs[i].getLength());
oldstring = command.seqs[i].getSequenceAsString();
char gapChar;
+ /*
+ * flag that identifies edits inserted to balance
+ * user edits in a 'locked editing' region
+ */
+ private boolean systemGenerated;
+
public Edit(Action cmd, SequenceI[] sqs, int pos, int count,
char gap)
{
{
return gapChar;
}
+
+ public void setSystemGenerated(boolean b)
+ {
+ systemGenerated = b;
+ }
+
+ public boolean isSystemGenerated()
+ {
+ return systemGenerated;
+ }
}
/**
import jalview.datamodel.SequenceI;
import jalview.io.DataSourceType;
import jalview.io.FeaturesFile;
+import jalview.schemes.ColourSchemeI;
import jalview.util.MessageManager;
import java.awt.Color;
viewport.getAlignment().deleteAllGroups();
viewport.clearSequenceColours();
viewport.setSelectionGroup(null);
+ ColourSchemeI colours = viewport.getGlobalColourScheme();
// set view properties for each group
for (int g = 0; g < gps.length; g++)
{
// gps[g].setShowunconserved(viewport.getShowUnconserved());
gps[g].setshowSequenceLogo(viewport.isShowSequenceLogo());
viewport.getAlignment().addGroup(gps[g]);
- Color col = new Color((int) (Math.random() * 255),
- (int) (Math.random() * 255), (int) (Math.random() * 255));
- col = col.brighter();
- for (SequenceI sq : gps[g].getSequences(null))
+ if (colours != null)
{
- viewport.setSequenceColour(sq, col);
+ gps[g].setColourScheme(colours.getInstance(viewport, gps[g]));
}
+ Color col = new Color((int) (Math.random() * 255),
+ (int) (Math.random() * 255), (int) (Math.random() * 255));
+ gps[g].idColour = col;
+ viewport.setUpdateStructures(true);
+ viewport.addSequenceGroup(gps[g]);
}
return true;
}
return maxLength;
}
+ @Override
+ public int getVisibleWidth()
+ {
+ int w = getWidth();
+ if (hiddenCols != null)
+ {
+ w -= hiddenCols.getSize();
+ }
+ return w;
+ }
+
/**
* DOCUMENT ME!
*
}
@Override
- public void setHiddenColumns(HiddenColumns cols)
+ public boolean setHiddenColumns(HiddenColumns cols)
{
+ boolean changed = cols == null ? hiddenCols != null
+ : !cols.equals(hiddenCols);
hiddenCols = cols;
+ return changed;
}
@Override
/**
*
- * Calculates the maximum width of the alignment, including gaps.
+ * Answers the width of the alignment, including gaps, that is, the length of
+ * the longest sequence, or -1 if there are no sequences. Avoid calling this
+ * method repeatedly where possible, as it has to perform a calculation. Note
+ * that this width includes any hidden columns.
*
- * @return Greatest sequence length within alignment, or -1 if no sequences
- * present
+ * @return
+ * @see AlignmentI#getVisibleWidth()
*/
@Override
int getWidth();
/**
+ *
+ * Answers the visible width of the alignment, including gaps, that is, the
+ * length of the longest sequence, excluding any hidden columns. Answers -1 if
+ * there are no sequences. Avoid calling this method repeatedly where
+ * possible, as it has to perform a calculation.
+ *
+ * @return
+ */
+ int getVisibleWidth();
+
+ /**
* Calculates if this set of sequences (visible and invisible) are all the
* same length
*
AlignedCodonFrame getMapping(SequenceI mapFrom, SequenceI mapTo);
/**
- * Set the hidden columns collection on the alignment
+ * Set the hidden columns collection on the alignment. Answers true if the
+ * hidden column selection changed, else false.
*
* @param cols
+ * @return
*/
- public void setHiddenColumns(HiddenColumns cols);
+ public boolean setHiddenColumns(HiddenColumns cols);
/**
* Set the first sequence as representative and hide its insertions. Typically
ScGroup()
{
- seqs = new ArrayList<SeqCigar>();
+ seqs = new ArrayList<>();
}
/**
SequenceI[] selseqs;
if (selection != null && selection.getSize() > 0)
{
- List<SequenceI> sel = selection.getSequences(null);
this.selected = new ScGroup();
selseqs = selection.getSequencesInOrder(alignment,
selectedRegionOnly);
selseqs = alignment.getSequencesArray();
}
- List<List<SequenceI>> seqsets = new ArrayList<List<SequenceI>>();
+ List<List<SequenceI>> seqsets = new ArrayList<>();
// get the alignment's group list and make a copy
- List<SequenceGroup> grps = new ArrayList<SequenceGroup>();
+ List<SequenceGroup> grps = new ArrayList<>();
List<SequenceGroup> gg = alignment.getGroups();
grps.addAll(gg);
ScGroup[] sgrps = null;
// strip out any groups that do not actually intersect with the
// visible and selected region
int ssel = selection.getStartRes(), esel = selection.getEndRes();
- List<SequenceGroup> isg = new ArrayList<SequenceGroup>();
+ List<SequenceGroup> isg = new ArrayList<>();
for (SequenceGroup sg : grps)
{
if (!(sg.getStartRes() > esel || sg.getEndRes() < ssel))
{
if (scGroups == null)
{
- scGroups = new ArrayList<ScGroup>();
+ scGroups = new ArrayList<>();
}
addedgps[sg] = true;
scGroups.add(sgrps[sg]);
}
}
+ /**
+ * Answers true if obj is an instance of HiddenColumns, and holds the same
+ * array of start-end column ranges as this, else answers false
+ */
@Override
public boolean equals(Object obj)
{
--- /dev/null
+package jalview.datamodel;
+
+/**
+ * A bean that models an (x, y, z) position in 3-D space
+ */
+public final class Point
+{
+ public final float x;
+
+ public final float y;
+
+ public final float z;
+
+ public Point(float xVal, float yVal, float zVal)
+ {
+ x = xVal;
+ y = yVal;
+ z = zVal;
+ }
+
+ /**
+ * toString for convenience of inspection in debugging or logging
+ */
+ @Override
+ public String toString()
+ {
+ return String.format("[%f, %f, %f]", x, y, z);
+ }
+
+ @Override
+ public int hashCode()
+ {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + Float.floatToIntBits(x);
+ result = prime * result + Float.floatToIntBits(y);
+ result = prime * result + Float.floatToIntBits(z);
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj)
+ {
+ if (this == obj)
+ {
+ return true;
+ }
+ if (obj == null)
+ {
+ return false;
+ }
+ if (getClass() != obj.getClass())
+ {
+ return false;
+ }
+ Point other = (Point) obj;
+ if (Float.floatToIntBits(x) != Float.floatToIntBits(other.x))
+ {
+ return false;
+ }
+ if (Float.floatToIntBits(y) != Float.floatToIntBits(other.y))
+ {
+ return false;
+ }
+ if (Float.floatToIntBits(z) != Float.floatToIntBits(other.z))
+ {
+ return false;
+ }
+ return true;
+ }
+}
*/
int getEnd();
+ /**
+ * Answers true if this match is for the given sequence and includes (matches
+ * or encloses) the given start-end range
+ *
+ * @param seq
+ * @param start
+ * @param end
+ * @return
+ */
+ boolean contains(SequenceI seq, int start, int end);
}
\ No newline at end of file
}
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultMatchI#getSequence()
- */
@Override
public SequenceI getSequence()
{
return sequence;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultMatchI#getStart()
- */
@Override
public int getStart()
{
return start;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultMatchI#getEnd()
- */
@Override
public int getEnd()
{
return (sequence == m.getSequence() && start == m.getStart()
&& end == m.getEnd());
}
+
+ @Override
+ public boolean contains(SequenceI seq, int from, int to)
+ {
+ return (sequence == seq && start <= from && end >= to);
+ }
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#addResult(jalview.datamodel.SequenceI, int, int)
- */
@Override
public SearchResultMatchI addResult(SequenceI seq, int start, int end)
{
Match m = new Match(seq, start, end);
- matches.add(m);
+ if (!matches.contains(m))
+ {
+ matches.add(m);
+ }
return m;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#involvesSequence(jalview.datamodel.SequenceI)
- */
@Override
public boolean involvesSequence(SequenceI sequence)
{
return false;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#getResults(jalview.datamodel.SequenceI, int, int)
- */
@Override
public int[] getResults(SequenceI sequence, int start, int end)
{
return count;
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#getSize()
- */
@Override
public int getSize()
{
return matches.size();
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#isEmpty()
- */
@Override
public boolean isEmpty()
{
return matches.isEmpty();
}
- /* (non-Javadoc)
- * @see jalview.datamodel.SearchResultsI#getResults()
- */
@Override
public List<SearchResultMatchI> getResults()
{
{
/**
- * Adds one region to the results
+ * Adds one region to the results (unless already added, to avoid duplicates)
*
* @param seq
- * Sequence
* @param start
- * int
* @param end
- * int
* @return
*/
SearchResultMatchI addResult(SequenceI seq, int start, int end);
* {@inheritDoc}
*/
@Override
- public Range findPositions(int fromColumn, int toColumn)
+ public ContiguousI findPositions(int fromColumn, int toColumn)
{
if (toColumn < fromColumn || fromColumn < 1)
{
public interface SequenceCollectionI
{
+ /**
+ *
+ * @return (visible) sequences in this collection. This may be a direct
+ * reference to the collection so not thread safe
+ */
List<SequenceI> getSequences();
+ /**
+ * FIXME: AlignmentI.getSequences(hiddenReps) doesn't actually obey this
+ * contract!
+ *
+ * @param hiddenReps
+ * @return the full set of sequences in this collection, including any
+ * sequences represented by sequences in the collection.
+ */
List<SequenceI> getSequences(
Map<SequenceI, SequenceCollectionI> hiddenReps);
/**
* group members
*/
- private List<SequenceI> sequences = new ArrayList<>();
+ private List<SequenceI> sequences;
/**
* representative sequence for this group (if any)
{
groupName = "JGroup:" + this.hashCode();
cs = new ResidueShader();
+ sequences = new ArrayList<>();
}
/**
}
}
+ /**
+ * Constructor that copies the given list of sequences
+ *
+ * @param seqs
+ */
+ public SequenceGroup(List<SequenceI> seqs)
+ {
+ this();
+ this.sequences.addAll(seqs);
+ }
+
public boolean isShowSequenceLogo()
{
return showSequenceLogo;
* get a range on the sequence as a string
*
* @param start
- * position relative to start of sequence including gaps (from 0)
+ * (inclusive) position relative to start of sequence including gaps
+ * (from 0)
* @param end
- * position relative to start of sequence including gaps (from 0)
+ * (exclusive) position relative to start of sequence including gaps
+ * (from 0)
*
* @return String containing all gap and symbols in specified range
*/
* - last column, base 1
* @return
*/
- public Range findPositions(int fromColum, int toColumn);
+ public ContiguousI findPositions(int fromColum, int toColumn);
/**
* Returns an int array where indices correspond to each residue in the
package jalview.datamodel;
/**
- * DOCUMENT ME!
- *
- * @author $author$
- * @version $Revision$
+ * A bean that models a set of (x, y, z) values and a reference to a sequence.
+ * As used in Principal Component Analysis, the (x, y, z) values are the
+ * sequence's score for the currently selected first, second and third
+ * dimensions of the PCA.
*/
public class SequencePoint
{
- // SMJS PUBLIC
+ /*
+ * Associated alignment sequence, or dummy sequence object
+ */
+ private final SequenceI sequence;
+
+ /*
+ * x, y, z values
+ */
+ public Point coord;
+
/**
- * for points with no real physical association with an alignment sequence
+ * Constructor
+ *
+ * @param sequence
+ * @param coord
*/
- public boolean isPlaceholder = false;
+ public SequencePoint(SequenceI sequence, Point pt)
+ {
+ this.sequence = sequence;
+ this.coord = pt;
+ }
/**
- * Associated alignment sequence, or dummy sequence object.
+ * Constructor given a sequence and an array of x, y, z coordinate positions
+ *
+ * @param sequence
+ * @param coords
+ * @throws ArrayIndexOutOfBoundsException
+ * if array length is less than 3
*/
- public SequenceI sequence;
+ public SequencePoint(SequenceI sequence, float[] coords)
+ {
+ this(sequence, new Point(coords[0], coords[1], coords[2]));
+ }
+
+ public SequenceI getSequence()
+ {
+ return sequence;
+ }
/**
- * array of coordinates in embedded sequence space.
+ * Applies a translation to the (x, y, z) coordinates
+ *
+ * @param centre
*/
- public float[] coord;
+ public void translate(float x, float y, float z)
+ {
+ coord = new Point(coord.x + x, coord.y + y, coord.z + z);
+ }
- // SMJS ENDPUBLIC
- public SequencePoint(SequenceI sequence, float[] coord)
+ /**
+ * string representation for ease of inspection in debugging or logging only
+ */
+ @Override
+ public String toString()
{
- this.sequence = sequence;
- this.coord = coord;
+ return sequence.getName() + " " + coord.toString();
}
}
*/
package jalview.datamodel.features;
-import jalview.datamodel.ContiguousI;
+import intervalstore.api.IntervalI;
/**
- * An extension of ContiguousI that allows start/end values to be interpreted
+ * An extension of IntervalI that allows start/end values to be interpreted
* instead as two contact positions
*/
-public interface FeatureLocationI extends ContiguousI
+public interface FeatureLocationI extends IntervalI
{
boolean isContactFeature();
}
*/
package jalview.datamodel.features;
-import jalview.datamodel.ContiguousI;
import jalview.datamodel.SequenceFeature;
import java.util.ArrayList;
import java.util.Collections;
-import java.util.Comparator;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
+import intervalstore.api.IntervalStoreI;
+import intervalstore.impl.BinarySearcher;
+import intervalstore.impl.IntervalStore;
+
/**
* A data store for a set of sequence features that supports efficient lookup of
* features overlapping a given range. Intended for (but not limited to) storage
*/
public class FeatureStore
{
- /**
- * a class providing criteria for performing a binary search of a list
- */
- abstract static class SearchCriterion
- {
- /**
- * Answers true if the entry passes the search criterion test
- *
- * @param entry
- * @return
- */
- abstract boolean compare(SequenceFeature entry);
-
- /**
- * serves a search condition for finding the first feature whose start
- * position follows a given target location
- *
- * @param target
- * @return
- */
- static SearchCriterion byStart(final long target)
- {
- return new SearchCriterion() {
-
- @Override
- boolean compare(SequenceFeature entry)
- {
- return entry.getBegin() >= target;
- }
- };
- }
-
- /**
- * serves a search condition for finding the first feature whose end
- * position is at or follows a given target location
- *
- * @param target
- * @return
- */
- static SearchCriterion byEnd(final long target)
- {
- return new SearchCriterion()
- {
-
- @Override
- boolean compare(SequenceFeature entry)
- {
- return entry.getEnd() >= target;
- }
- };
- }
-
- /**
- * serves a search condition for finding the first feature which follows the
- * given range as determined by a supplied comparator
- *
- * @param target
- * @return
- */
- static SearchCriterion byFeature(final ContiguousI to,
- final Comparator<ContiguousI> rc)
- {
- return new SearchCriterion()
- {
-
- @Override
- boolean compare(SequenceFeature entry)
- {
- return rc.compare(entry, to) >= 0;
- }
- };
- }
- }
-
/*
* Non-positional features have no (zero) start/end position.
* Kept as a separate list in case this criterion changes in future.
List<SequenceFeature> nonPositionalFeatures;
/*
- * An ordered list of features, with the promise that no feature in the list
- * properly contains any other. This constraint allows bounded linear search
- * of the list for features overlapping a region.
- * Contact features are not included in this list.
- */
- List<SequenceFeature> nonNestedFeatures;
-
- /*
* contact features ordered by first contact position
*/
List<SequenceFeature> contactFeatureStarts;
List<SequenceFeature> contactFeatureEnds;
/*
- * Nested Containment List is used to hold any features that are nested
- * within (properly contained by) any other feature. This is a recursive tree
- * which supports depth-first scan for features overlapping a range.
- * It is used here as a 'catch-all' fallback for features that cannot be put
- * into a simple ordered list without invalidating the search methods.
+ * IntervalStore holds remaining features and provides efficient
+ * query for features overlapping any given interval
*/
- NCList<SequenceFeature> nestedFeatures;
+ IntervalStoreI<SequenceFeature> features;
/*
* Feature groups represented in stored positional features
*/
public FeatureStore()
{
- nonNestedFeatures = new ArrayList<SequenceFeature>();
- positionalFeatureGroups = new HashSet<String>();
- nonPositionalFeatureGroups = new HashSet<String>();
+ features = new IntervalStore<>();
+ positionalFeatureGroups = new HashSet<>();
+ nonPositionalFeatureGroups = new HashSet<>();
positionalMinScore = Float.NaN;
positionalMaxScore = Float.NaN;
nonPositionalMinScore = Float.NaN;
nonPositionalMaxScore = Float.NaN;
- // we only construct nonPositionalFeatures, contactFeatures
- // or the NCList if we need to
+ // we only construct nonPositionalFeatures, contactFeatures if we need to
}
/**
positionalFeatureGroups.add(feature.getFeatureGroup());
}
- boolean added = false;
-
if (feature.isContactFeature())
{
- added = addContactFeature(feature);
+ addContactFeature(feature);
}
else if (feature.isNonPositional())
{
- added = addNonPositionalFeature(feature);
+ addNonPositionalFeature(feature);
}
else
{
- added = addNonNestedFeature(feature);
- if (!added)
- {
- /*
- * detected a nested feature - put it in the NCList structure
- */
- added = addNestedFeature(feature);
- }
+ addNestedFeature(feature);
}
- if (added)
- {
- /*
- * record the total extent of positional features, to make
- * getTotalFeatureLength possible; we count the length of a
- * contact feature as 1
- */
- totalExtent += getFeatureLength(feature);
+ /*
+ * record the total extent of positional features, to make
+ * getTotalFeatureLength possible; we count the length of a
+ * contact feature as 1
+ */
+ totalExtent += getFeatureLength(feature);
- /*
- * record the minimum and maximum score for positional
- * and non-positional features
- */
- float score = feature.getScore();
- if (!Float.isNaN(score))
+ /*
+ * record the minimum and maximum score for positional
+ * and non-positional features
+ */
+ float score = feature.getScore();
+ if (!Float.isNaN(score))
+ {
+ if (feature.isNonPositional())
{
- if (feature.isNonPositional())
- {
- nonPositionalMinScore = min(nonPositionalMinScore, score);
- nonPositionalMaxScore = max(nonPositionalMaxScore, score);
- }
- else
- {
- positionalMinScore = min(positionalMinScore, score);
- positionalMaxScore = max(positionalMaxScore, score);
- }
+ nonPositionalMinScore = min(nonPositionalMinScore, score);
+ nonPositionalMaxScore = max(nonPositionalMaxScore, score);
+ }
+ else
+ {
+ positionalMinScore = min(positionalMinScore, score);
+ positionalMaxScore = max(positionalMaxScore, score);
}
}
- return added;
+ return true;
}
/**
contactFeatureStarts, feature);
}
- if (listContains(nonNestedFeatures, feature))
- {
- return true;
- }
-
- return nestedFeatures == null ? false : nestedFeatures
+ return features == null ? false : features
.contains(feature);
}
{
if (nonPositionalFeatures == null)
{
- nonPositionalFeatures = new ArrayList<SequenceFeature>();
+ nonPositionalFeatures = new ArrayList<>();
}
nonPositionalFeatures.add(feature);
}
/**
- * Adds one feature to the NCList that can manage nested features (creating
- * the NCList if necessary), and returns true. If the feature is already
- * stored in the NCList (by equality test), then it is not added, and this
- * method returns false.
- */
- protected synchronized boolean addNestedFeature(SequenceFeature feature)
- {
- if (nestedFeatures == null)
- {
- nestedFeatures = new NCList<>(feature);
- return true;
- }
- return nestedFeatures.add(feature, false);
- }
-
- /**
- * Add a feature to the list of non-nested features, maintaining the ordering
- * of the list. A check is made for whether the feature is nested in (properly
- * contained by) an existing feature. If there is no nesting, the feature is
- * added to the list and the method returns true. If nesting is found, the
- * feature is not added and the method returns false.
- *
- * @param feature
- * @return
- */
- protected boolean addNonNestedFeature(SequenceFeature feature)
- {
- synchronized (nonNestedFeatures)
- {
- /*
- * find the first stored feature which doesn't precede the new one
- */
- int insertPosition = binarySearch(nonNestedFeatures,
- SearchCriterion.byFeature(feature, RangeComparator.BY_START_POSITION));
-
- /*
- * fail if we detect feature enclosure - of the new feature by
- * the one preceding it, or of the next feature by the new one
- */
- if (insertPosition > 0)
- {
- if (encloses(nonNestedFeatures.get(insertPosition - 1), feature))
- {
- return false;
- }
- }
- if (insertPosition < nonNestedFeatures.size())
- {
- if (encloses(feature, nonNestedFeatures.get(insertPosition)))
- {
- return false;
- }
- }
-
- /*
- * checks passed - add the feature
- */
- nonNestedFeatures.add(insertPosition, feature);
-
- return true;
- }
- }
-
- /**
- * Answers true if range1 properly encloses range2, else false
- *
- * @param range1
- * @param range2
- * @return
+ * Adds one feature to the IntervalStore that can manage nested features
+ * (creating the IntervalStore if necessary)
*/
- protected boolean encloses(ContiguousI range1, ContiguousI range2)
+ protected synchronized void addNestedFeature(SequenceFeature feature)
{
- int begin1 = range1.getBegin();
- int begin2 = range2.getBegin();
- int end1 = range1.getEnd();
- int end2 = range2.getEnd();
- if (begin1 == begin2 && end1 > end2)
- {
- return true;
- }
- if (begin1 < begin2 && end1 >= end2)
+ if (features == null)
{
- return true;
+ features = new IntervalStore<>();
}
- return false;
+ features.add(feature);
}
/**
{
if (contactFeatureStarts == null)
{
- contactFeatureStarts = new ArrayList<SequenceFeature>();
+ contactFeatureStarts = new ArrayList<>();
}
if (contactFeatureEnds == null)
{
- contactFeatureEnds = new ArrayList<SequenceFeature>();
+ contactFeatureEnds = new ArrayList<>();
}
/*
+ * insert into list sorted by start (first contact position):
* binary search the sorted list to find the insertion point
*/
- int insertPosition = binarySearch(contactFeatureStarts,
- SearchCriterion.byFeature(feature,
- RangeComparator.BY_START_POSITION));
+ int insertPosition = BinarySearcher.findFirst(contactFeatureStarts,
+ f -> f.getBegin() >= feature.getBegin());
contactFeatureStarts.add(insertPosition, feature);
- // and resort to mak siccar...just in case insertion point not quite right
- Collections.sort(contactFeatureStarts, RangeComparator.BY_START_POSITION);
- insertPosition = binarySearch(contactFeatureStarts,
- SearchCriterion.byFeature(feature,
- RangeComparator.BY_END_POSITION));
- contactFeatureEnds.add(feature);
- Collections.sort(contactFeatureEnds, RangeComparator.BY_END_POSITION);
+
+ /*
+ * insert into list sorted by end (second contact position):
+ * binary search the sorted list to find the insertion point
+ */
+ insertPosition = BinarySearcher.findFirst(contactFeatureEnds,
+ f -> f.getEnd() >= feature.getEnd());
+ contactFeatureEnds.add(insertPosition, feature);
return true;
}
/*
* locate the first entry in the list which does not precede the feature
*/
- int pos = binarySearch(features,
- SearchCriterion.byFeature(feature, RangeComparator.BY_START_POSITION));
+ // int pos = binarySearch(features,
+ // SearchCriterion.byFeature(feature, RangeComparator.BY_START_POSITION));
+ int pos = BinarySearcher.findFirst(features,
+ val -> val.getBegin() >= feature.getBegin());
int len = features.size();
while (pos < len)
{
{
List<SequenceFeature> result = new ArrayList<>();
- findNonNestedFeatures(start, end, result);
-
findContactFeatures(start, end, result);
- if (nestedFeatures != null)
+ if (features != null)
{
- result.addAll(nestedFeatures.findOverlaps(start, end));
+ result.addAll(features.findOverlaps(start, end));
}
return result;
{
if (contactFeatureStarts != null)
{
- findContactStartFeatures(from, to, result);
+ findContactStartOverlaps(from, to, result);
}
if (contactFeatureEnds != null)
{
- findContactEndFeatures(from, to, result);
+ findContactEndOverlaps(from, to, result);
}
}
* @param to
* @param result
*/
- protected void findContactEndFeatures(long from, long to,
+ protected void findContactEndOverlaps(long from, long to,
List<SequenceFeature> result)
{
/*
- * find the first contact feature (if any) that does not lie
- * entirely before the target range
+ * find the first contact feature (if any)
+ * whose end point is not before the target range
*/
- int startPosition = binarySearch(contactFeatureEnds,
- SearchCriterion.byEnd(from));
- for (; startPosition < contactFeatureEnds.size(); startPosition++)
+ int index = BinarySearcher.findFirst(contactFeatureEnds,
+ f -> f.getEnd() >= from);
+
+ while (index < contactFeatureEnds.size())
{
- SequenceFeature sf = contactFeatureEnds.get(startPosition);
+ SequenceFeature sf = contactFeatureEnds.get(index);
if (!sf.isContactFeature())
{
System.err.println("Error! non-contact feature type "
+ sf.getType() + " in contact features list");
+ index++;
continue;
}
* this feature's first contact position lies in the search range
* so we don't include it in results a second time
*/
+ index++;
continue;
}
- int end = sf.getEnd();
- if (end >= from && end <= to)
- {
- result.add(sf);
- }
- if (end > to)
+ if (sf.getEnd() > to)
{
+ /*
+ * this feature (and all following) has end point after the target range
+ */
break;
}
- }
- }
-
- /**
- * Adds non-nested features to the result list that lie within the target
- * range. Non-positional features (start=end=0), contact features and nested
- * features are excluded.
- *
- * @param from
- * @param to
- * @param result
- */
- protected void findNonNestedFeatures(long from, long to,
- List<SequenceFeature> result)
- {
- /*
- * find the first feature whose end position is
- * after the target range start
- */
- int startIndex = binarySearch(nonNestedFeatures,
- SearchCriterion.byEnd(from));
- final int startIndex1 = startIndex;
- int i = startIndex1;
- while (i < nonNestedFeatures.size())
- {
- SequenceFeature sf = nonNestedFeatures.get(i);
- if (sf.getBegin() > to)
- {
- break;
- }
- if (sf.getBegin() <= to && sf.getEnd() >= from)
- {
- result.add(sf);
- }
- i++;
+ /*
+ * feature has end >= from and end <= to
+ * i.e. contact end point lies within overlap search range
+ */
+ result.add(sf);
+ index++;
}
}
* @param to
* @param result
*/
- protected void findContactStartFeatures(long from, long to,
+ protected void findContactStartOverlaps(long from, long to,
List<SequenceFeature> result)
{
- int startPosition = binarySearch(contactFeatureStarts,
- SearchCriterion.byStart(from));
+ int index = BinarySearcher.findFirst(contactFeatureStarts,
+ f -> f.getBegin() >= from);
- for (; startPosition < contactFeatureStarts.size(); startPosition++)
+ while (index < contactFeatureStarts.size())
{
- SequenceFeature sf = contactFeatureStarts.get(startPosition);
+ SequenceFeature sf = contactFeatureStarts.get(index);
if (!sf.isContactFeature())
{
- System.err.println("Error! non-contact feature type "
- + sf.getType() + " in contact features list");
+ System.err.println("Error! non-contact feature " + sf.toString()
+ + " in contact features list");
+ index++;
continue;
}
- int begin = sf.getBegin();
- if (begin >= from && begin <= to)
+ if (sf.getBegin() > to)
{
- result.add(sf);
+ /*
+ * this feature's start (and all following) follows the target range
+ */
+ break;
}
+
+ /*
+ * feature has begin >= from and begin <= to
+ * i.e. contact start point lies within overlap search range
+ */
+ result.add(sf);
+ index++;
}
}
*/
public List<SequenceFeature> getPositionalFeatures()
{
- /*
- * add non-nested features (may be all features for many cases)
- */
List<SequenceFeature> result = new ArrayList<>();
- result.addAll(nonNestedFeatures);
/*
* add any contact features - from the list by start position
/*
* add any nested features
*/
- if (nestedFeatures != null)
+ if (features != null)
{
- result.addAll(nestedFeatures.getEntries());
+ result.addAll(features);
}
return result;
*/
public synchronized boolean delete(SequenceFeature sf)
{
- /*
- * try the non-nested positional features first
- */
- boolean removed = nonNestedFeatures.remove(sf);
+ boolean removed = false;
/*
- * if not found, try contact positions (and if found, delete
+ * try contact positions (and if found, delete
* from both lists of contact positions)
*/
if (!removed && contactFeatureStarts != null)
/*
* if not found, try nested features
*/
- if (!removed && nestedFeatures != null)
+ if (!removed && features != null)
{
- removed = nestedFeatures.delete(sf);
+ removed = features.remove(sf);
}
if (removed)
*/
public boolean isEmpty()
{
- boolean hasFeatures = !nonNestedFeatures.isEmpty()
- || (contactFeatureStarts != null && !contactFeatureStarts
+ boolean hasFeatures = (contactFeatureStarts != null
+ && !contactFeatureStarts
.isEmpty())
|| (nonPositionalFeatures != null && !nonPositionalFeatures
.isEmpty())
- || (nestedFeatures != null && nestedFeatures.size() > 0);
+ || (features != null && features.size() > 0);
return !hasFeatures;
}
}
/**
- * Performs a binary search of the (sorted) list to find the index of the
- * first entry which returns true for the given comparator function. Returns
- * the length of the list if there is no such entry.
- *
- * @param features
- * @param sc
- * @return
- */
- protected static int binarySearch(List<SequenceFeature> features,
- SearchCriterion sc)
- {
- int start = 0;
- int end = features.size() - 1;
- int matched = features.size();
-
- while (start <= end)
- {
- int mid = (start + end) / 2;
- SequenceFeature entry = features.get(mid);
- boolean compare = sc.compare(entry);
- if (compare)
- {
- matched = mid;
- end = mid - 1;
- }
- else
- {
- start = mid + 1;
- }
- }
-
- return matched;
- }
-
- /**
* Answers the number of positional (or non-positional) features stored.
* Contact features count as 1.
*
.size();
}
- int size = nonNestedFeatures.size();
+ int size = 0;
if (contactFeatureStarts != null)
{
size += contactFeatureStarts.size();
}
- if (nestedFeatures != null)
+ if (features != null)
{
- size += nestedFeatures.size();
+ size += features.size();
}
return size;
+++ /dev/null
-/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.datamodel.features;
-
-import jalview.datamodel.ContiguousI;
-import jalview.datamodel.Range;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-/**
- * An adapted implementation of NCList as described in the paper
- *
- * <pre>
- * Nested Containment List (NCList): a new algorithm for accelerating
- * interval query of genome alignment and interval databases
- * - Alexander V. Alekseyenko, Christopher J. Lee
- * https://doi.org/10.1093/bioinformatics/btl647
- * </pre>
- */
-public class NCList<T extends ContiguousI>
-{
- /*
- * the number of ranges represented
- */
- private int size;
-
- /*
- * a list, in start position order, of sublists of ranges ordered so
- * that each contains (or is the same as) the one that follows it
- */
- private List<NCNode<T>> subranges;
-
- /**
- * Constructor given a list of things that are each located on a contiguous
- * interval. Note that the constructor may reorder the list.
- * <p>
- * We assume here that for each range, start <= end. Behaviour for reverse
- * ordered ranges is undefined.
- *
- * @param ranges
- */
- public NCList(List<T> ranges)
- {
- this();
- build(ranges);
- }
-
- /**
- * Sort and group ranges into sublists where each sublist represents a region
- * and its contained subregions
- *
- * @param ranges
- */
- protected void build(List<T> ranges)
- {
- /*
- * sort by start ascending so that contained intervals
- * follow their containing interval
- */
- Collections.sort(ranges, RangeComparator.BY_START_POSITION);
-
- List<Range> sublists = buildSubranges(ranges);
-
- /*
- * convert each subrange to an NCNode consisting of a range and
- * (possibly) its contained NCList
- */
- for (Range sublist : sublists)
- {
- subranges.add(new NCNode<T>(ranges.subList(sublist.start,
- sublist.end + 1)));
- }
-
- size = ranges.size();
- }
-
- public NCList(T entry)
- {
- this();
- subranges.add(new NCNode<>(entry));
- size = 1;
- }
-
- public NCList()
- {
- subranges = new ArrayList<NCNode<T>>();
- }
-
- /**
- * Traverses the sorted ranges to identify sublists, within which each
- * interval contains the one that follows it
- *
- * @param ranges
- * @return
- */
- protected List<Range> buildSubranges(List<T> ranges)
- {
- List<Range> sublists = new ArrayList<>();
-
- if (ranges.isEmpty())
- {
- return sublists;
- }
-
- int listStartIndex = 0;
- long lastEndPos = Long.MAX_VALUE;
-
- for (int i = 0; i < ranges.size(); i++)
- {
- ContiguousI nextInterval = ranges.get(i);
- long nextStart = nextInterval.getBegin();
- long nextEnd = nextInterval.getEnd();
- if (nextStart > lastEndPos || nextEnd > lastEndPos)
- {
- /*
- * this interval is not contained in the preceding one
- * close off the last sublist
- */
- sublists.add(new Range(listStartIndex, i - 1));
- listStartIndex = i;
- }
- lastEndPos = nextEnd;
- }
-
- sublists.add(new Range(listStartIndex, ranges.size() - 1));
- return sublists;
- }
-
- /**
- * Adds one entry to the stored set (with duplicates allowed)
- *
- * @param entry
- */
- public void add(T entry)
- {
- add(entry, true);
- }
-
- /**
- * Adds one entry to the stored set, and returns true, unless allowDuplicates
- * is set to false and it is already contained (by object equality test), in
- * which case it is not added and this method returns false.
- *
- * @param entry
- * @param allowDuplicates
- * @return
- */
- public synchronized boolean add(T entry, boolean allowDuplicates)
- {
- if (!allowDuplicates && contains(entry))
- {
- return false;
- }
-
- size++;
- long start = entry.getBegin();
- long end = entry.getEnd();
-
- /*
- * cases:
- * - precedes all subranges: add as NCNode on front of list
- * - follows all subranges: add as NCNode on end of list
- * - enclosed by a subrange - add recursively to subrange
- * - encloses one or more subranges - push them inside it
- * - none of the above - add as a new node and resort nodes list (?)
- */
-
- /*
- * find the first subrange whose end does not precede entry's start
- */
- int candidateIndex = findFirstOverlap(start);
- if (candidateIndex == -1)
- {
- /*
- * all subranges precede this one - add it on the end
- */
- subranges.add(new NCNode<>(entry));
- return true;
- }
-
- /*
- * search for maximal span of subranges i-k that the new entry
- * encloses; or a subrange that encloses the new entry
- */
- boolean enclosing = false;
- int firstEnclosed = 0;
- int lastEnclosed = 0;
- boolean overlapping = false;
-
- for (int j = candidateIndex; j < subranges.size(); j++)
- {
- NCNode<T> subrange = subranges.get(j);
-
- if (end < subrange.getBegin() && !overlapping && !enclosing)
- {
- /*
- * new entry lies between subranges j-1 j
- */
- subranges.add(j, new NCNode<>(entry));
- return true;
- }
-
- if (subrange.getBegin() <= start && subrange.getEnd() >= end)
- {
- /*
- * push new entry inside this subrange as it encloses it
- */
- subrange.add(entry);
- return true;
- }
-
- if (start <= subrange.getBegin())
- {
- if (end >= subrange.getEnd())
- {
- /*
- * new entry encloses this subrange (and possibly preceding ones);
- * continue to find the maximal list it encloses
- */
- if (!enclosing)
- {
- firstEnclosed = j;
- }
- lastEnclosed = j;
- enclosing = true;
- continue;
- }
- else
- {
- /*
- * entry spans from before this subrange to inside it
- */
- if (enclosing)
- {
- /*
- * entry encloses one or more preceding subranges
- */
- addEnclosingRange(entry, firstEnclosed, lastEnclosed);
- return true;
- }
- else
- {
- /*
- * entry spans two subranges but doesn't enclose any
- * so just add it
- */
- subranges.add(j, new NCNode<>(entry));
- return true;
- }
- }
- }
- else
- {
- overlapping = true;
- }
- }
-
- /*
- * drops through to here if new range encloses all others
- * or overlaps the last one
- */
- if (enclosing)
- {
- addEnclosingRange(entry, firstEnclosed, lastEnclosed);
- }
- else
- {
- subranges.add(new NCNode<>(entry));
- }
-
- return true;
- }
-
- /**
- * Answers true if this NCList contains the given entry (by object equality
- * test), else false
- *
- * @param entry
- * @return
- */
- public boolean contains(T entry)
- {
- /*
- * find the first sublist that might overlap, i.e.
- * the first whose end position is >= from
- */
- int candidateIndex = findFirstOverlap(entry.getBegin());
-
- if (candidateIndex == -1)
- {
- return false;
- }
-
- int to = entry.getEnd();
-
- for (int i = candidateIndex; i < subranges.size(); i++)
- {
- NCNode<T> candidate = subranges.get(i);
- if (candidate.getBegin() > to)
- {
- /*
- * we are past the end of our target range
- */
- break;
- }
- if (candidate.contains(entry))
- {
- return true;
- }
- }
- return false;
- }
-
- /**
- * Update the tree so that the range of the new entry encloses subranges i to
- * j (inclusive). That is, replace subranges i-j (inclusive) with a new
- * subrange that contains them.
- *
- * @param entry
- * @param i
- * @param j
- */
- protected synchronized void addEnclosingRange(T entry, final int i,
- final int j)
- {
- NCList<T> newNCList = new NCList<>();
- newNCList.addNodes(subranges.subList(i, j + 1));
- NCNode<T> newNode = new NCNode<>(entry, newNCList);
- for (int k = j; k >= i; k--)
- {
- subranges.remove(k);
- }
- subranges.add(i, newNode);
- }
-
- protected void addNodes(List<NCNode<T>> nodes)
- {
- for (NCNode<T> node : nodes)
- {
- subranges.add(node);
- size += node.size();
- }
- }
-
- /**
- * Returns a (possibly empty) list of items whose extent overlaps the given
- * range
- *
- * @param from
- * start of overlap range (inclusive)
- * @param to
- * end of overlap range (inclusive)
- * @return
- */
- public List<T> findOverlaps(long from, long to)
- {
- List<T> result = new ArrayList<>();
-
- findOverlaps(from, to, result);
-
- return result;
- }
-
- /**
- * Recursively searches the NCList adding any items that overlap the from-to
- * range to the result list
- *
- * @param from
- * @param to
- * @param result
- */
- protected void findOverlaps(long from, long to, List<T> result)
- {
- /*
- * find the first sublist that might overlap, i.e.
- * the first whose end position is >= from
- */
- int candidateIndex = findFirstOverlap(from);
-
- if (candidateIndex == -1)
- {
- return;
- }
-
- for (int i = candidateIndex; i < subranges.size(); i++)
- {
- NCNode<T> candidate = subranges.get(i);
- if (candidate.getBegin() > to)
- {
- /*
- * we are past the end of our target range
- */
- break;
- }
- candidate.findOverlaps(from, to, result);
- }
-
- }
-
- /**
- * Search subranges for the first one whose end position is not before the
- * target range's start position, i.e. the first one that may overlap the
- * target range. Returns the index in the list of the first such range found,
- * or -1 if none found.
- *
- * @param from
- * @return
- */
- protected int findFirstOverlap(long from)
- {
- /*
- * The NCList paper describes binary search for this step,
- * but this not implemented here as (a) I haven't understood it yet
- * and (b) it seems to imply complications for adding to an NCList
- */
-
- int i = 0;
- if (subranges != null)
- {
- for (NCNode<T> subrange : subranges)
- {
- if (subrange.getEnd() >= from)
- {
- return i;
- }
- i++;
- }
- }
- return -1;
- }
-
- /**
- * Formats the tree as a bracketed list e.g.
- *
- * <pre>
- * [1-100 [10-30 [10-20]], 15-30 [20-20]]
- * </pre>
- */
- @Override
- public String toString()
- {
- return subranges.toString();
- }
-
- /**
- * Returns a string representation of the data where containment is shown by
- * indentation on new lines
- *
- * @return
- */
- public String prettyPrint()
- {
- StringBuilder sb = new StringBuilder(512);
- int offset = 0;
- int indent = 2;
- prettyPrint(sb, offset, indent);
- sb.append(System.lineSeparator());
- return sb.toString();
- }
-
- /**
- * @param sb
- * @param offset
- * @param indent
- */
- void prettyPrint(StringBuilder sb, int offset, int indent)
- {
- boolean first = true;
- for (NCNode<T> subrange : subranges)
- {
- if (!first)
- {
- sb.append(System.lineSeparator());
- }
- first = false;
- subrange.prettyPrint(sb, offset, indent);
- }
- }
-
- /**
- * Answers true if the data held satisfy the rules of construction of an
- * NCList, else false.
- *
- * @return
- */
- public boolean isValid()
- {
- return isValid(Integer.MIN_VALUE, Integer.MAX_VALUE);
- }
-
- /**
- * Answers true if the data held satisfy the rules of construction of an
- * NCList bounded within the given start-end range, else false.
- * <p>
- * Each subrange must lie within start-end (inclusive). Subranges must be
- * ordered by start position ascending.
- * <p>
- *
- * @param start
- * @param end
- * @return
- */
- boolean isValid(final int start, final int end)
- {
- int lastStart = start;
- for (NCNode<T> subrange : subranges)
- {
- if (subrange.getBegin() < lastStart)
- {
- System.err.println("error in NCList: range " + subrange.toString()
- + " starts before " + lastStart);
- return false;
- }
- if (subrange.getEnd() > end)
- {
- System.err.println("error in NCList: range " + subrange.toString()
- + " ends after " + end);
- return false;
- }
- lastStart = subrange.getBegin();
-
- if (!subrange.isValid())
- {
- return false;
- }
- }
- return true;
- }
-
- /**
- * Answers the lowest start position enclosed by the ranges
- *
- * @return
- */
- public int getStart()
- {
- return subranges.isEmpty() ? 0 : subranges.get(0).getBegin();
- }
-
- /**
- * Returns the number of ranges held (deep count)
- *
- * @return
- */
- public int size()
- {
- return size;
- }
-
- /**
- * Returns a list of all entries stored
- *
- * @return
- */
- public List<T> getEntries()
- {
- List<T> result = new ArrayList<>();
- getEntries(result);
- return result;
- }
-
- /**
- * Adds all contained entries to the given list
- *
- * @param result
- */
- void getEntries(List<T> result)
- {
- for (NCNode<T> subrange : subranges)
- {
- subrange.getEntries(result);
- }
- }
-
- /**
- * Deletes the given entry from the store, returning true if it was found (and
- * deleted), else false. This method makes no assumption that the entry is in
- * the 'expected' place in the store, in case it has been modified since it
- * was added. Only the first 'same object' match is deleted, not 'equal' or
- * multiple objects.
- *
- * @param entry
- */
- public synchronized boolean delete(T entry)
- {
- if (entry == null)
- {
- return false;
- }
- for (int i = 0; i < subranges.size(); i++)
- {
- NCNode<T> subrange = subranges.get(i);
- NCList<T> subRegions = subrange.getSubRegions();
-
- if (subrange.getRegion() == entry)
- {
- /*
- * if the subrange is rooted on this entry, promote its
- * subregions (if any) to replace the subrange here;
- * NB have to resort subranges after doing this since e.g.
- * [10-30 [12-20 [16-18], 13-19]]
- * after deleting 12-20, 16-18 is promoted to sibling of 13-19
- * but should follow it in the list of subranges of 10-30
- */
- subranges.remove(i);
- if (subRegions != null)
- {
- subranges.addAll(subRegions.subranges);
- Collections.sort(subranges, RangeComparator.BY_START_POSITION);
- }
- size--;
- return true;
- }
- else
- {
- if (subRegions != null && subRegions.delete(entry))
- {
- size--;
- subrange.deleteSubRegionsIfEmpty();
- return true;
- }
- }
- }
- return false;
- }
-}
+++ /dev/null
-/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.datamodel.features;
-
-import jalview.datamodel.ContiguousI;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Each node of the NCList tree consists of a range, and (optionally) the NCList
- * of ranges it encloses
- *
- * @param <V>
- */
-class NCNode<V extends ContiguousI> implements ContiguousI
-{
- /*
- * deep size (number of ranges included)
- */
- private int size;
-
- private V region;
-
- /*
- * null, or an object holding contained subregions of this nodes region
- */
- private NCList<V> subregions;
-
- /**
- * Constructor given a list of ranges
- *
- * @param ranges
- */
- NCNode(List<V> ranges)
- {
- build(ranges);
- }
-
- /**
- * Constructor given a single range
- *
- * @param range
- */
- NCNode(V range)
- {
- List<V> ranges = new ArrayList<>();
- ranges.add(range);
- build(ranges);
- }
-
- NCNode(V entry, NCList<V> newNCList)
- {
- region = entry;
- subregions = newNCList;
- size = 1 + newNCList.size();
- }
-
- /**
- * @param ranges
- */
- protected void build(List<V> ranges)
- {
- size = ranges.size();
-
- if (!ranges.isEmpty())
- {
- region = ranges.get(0);
- }
- if (ranges.size() > 1)
- {
- subregions = new NCList<V>(ranges.subList(1, ranges.size()));
- }
- }
-
- @Override
- public int getBegin()
- {
- return region.getBegin();
- }
-
- @Override
- public int getEnd()
- {
- return region.getEnd();
- }
-
- /**
- * Formats the node as a bracketed list e.g.
- *
- * <pre>
- * [1-100 [10-30 [10-20]], 15-30 [20-20]]
- * </pre>
- */
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder(10 * size);
- sb.append(region.getBegin()).append("-").append(region.getEnd());
- if (subregions != null)
- {
- sb.append(" ").append(subregions.toString());
- }
- return sb.toString();
- }
-
- void prettyPrint(StringBuilder sb, int offset, int indent) {
- for (int i = 0 ; i < offset ; i++) {
- sb.append(" ");
- }
- sb.append(region.getBegin()).append("-").append(region.getEnd());
- if (subregions != null)
- {
- sb.append(System.lineSeparator());
- subregions.prettyPrint(sb, offset + 2, indent);
- }
- }
- /**
- * Add any ranges that overlap the from-to range to the result list
- *
- * @param from
- * @param to
- * @param result
- */
- void findOverlaps(long from, long to, List<V> result)
- {
- if (region.getBegin() <= to && region.getEnd() >= from)
- {
- result.add(region);
- }
- if (subregions != null)
- {
- subregions.findOverlaps(from, to, result);
- }
- }
-
- /**
- * Add one range to this subrange
- *
- * @param entry
- */
- synchronized void add(V entry)
- {
- if (entry.getBegin() < region.getBegin() || entry.getEnd() > region.getEnd()) {
- throw new IllegalArgumentException(String.format(
- "adding improper subrange %d-%d to range %d-%d",
- entry.getBegin(), entry.getEnd(), region.getBegin(),
- region.getEnd()));
- }
- if (subregions == null)
- {
- subregions = new NCList<V>(entry);
- }
- else
- {
- subregions.add(entry);
- }
- size++;
- }
-
- /**
- * Answers true if the data held satisfy the rules of construction of an
- * NCList, else false.
- *
- * @return
- */
- boolean isValid()
- {
- /*
- * we don't handle reverse ranges
- */
- if (region != null && region.getBegin() > region.getEnd())
- {
- return false;
- }
- if (subregions == null)
- {
- return true;
- }
- return subregions.isValid(getBegin(), getEnd());
- }
-
- /**
- * Adds all contained entries to the given list
- *
- * @param entries
- */
- void getEntries(List<V> entries)
- {
- entries.add(region);
- if (subregions != null)
- {
- subregions.getEntries(entries);
- }
- }
-
- /**
- * Answers true if this object contains the given entry (by object equals
- * test), else false
- *
- * @param entry
- * @return
- */
- boolean contains(V entry)
- {
- if (entry == null)
- {
- return false;
- }
- if (entry.equals(region))
- {
- return true;
- }
- return subregions == null ? false : subregions.contains(entry);
- }
-
- /**
- * Answers the 'root' region modelled by this object
- *
- * @return
- */
- V getRegion()
- {
- return region;
- }
-
- /**
- * Answers the (possibly null) contained regions within this object
- *
- * @return
- */
- NCList<V> getSubRegions()
- {
- return subregions;
- }
-
- /**
- * Nulls the subregion reference if it is empty (after a delete entry
- * operation)
- */
- void deleteSubRegionsIfEmpty()
- {
- if (subregions != null && subregions.size() == 0)
- {
- subregions = null;
- }
- }
-
- /**
- * Answers the (deep) size of this node i.e. the number of ranges it models
- *
- * @return
- */
- int size()
- {
- return size;
- }
-}
+++ /dev/null
-/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.datamodel.features;
-
-import jalview.datamodel.ContiguousI;
-
-import java.util.Comparator;
-
-/**
- * A comparator that orders ranges by either start position or end position
- * ascending. If the position matches, ordering is resolved by end position (or
- * start position).
- *
- * @author gmcarstairs
- *
- */
-public class RangeComparator implements Comparator<ContiguousI>
-{
- public static final Comparator<ContiguousI> BY_START_POSITION = new RangeComparator(
- true);
-
- public static final Comparator<ContiguousI> BY_END_POSITION = new RangeComparator(
- false);
-
- boolean byStart;
-
- /**
- * Constructor
- *
- * @param byStartPosition
- * if true, order based on start position, if false by end position
- */
- RangeComparator(boolean byStartPosition)
- {
- byStart = byStartPosition;
- }
-
- @Override
- public int compare(ContiguousI o1, ContiguousI o2)
- {
- int len1 = o1.getEnd() - o1.getBegin();
- int len2 = o2.getEnd() - o2.getBegin();
-
- if (byStart)
- {
- return compare(o1.getBegin(), o2.getBegin(), len1, len2);
- }
- else
- {
- return compare(o1.getEnd(), o2.getEnd(), len1, len2);
- }
- }
-
- /**
- * Compares two ranges for ordering
- *
- * @param pos1
- * first range positional ordering criterion
- * @param pos2
- * second range positional ordering criterion
- * @param len1
- * first range length ordering criterion
- * @param len2
- * second range length ordering criterion
- * @return
- */
- public int compare(long pos1, long pos2, int len1, int len2)
- {
- int order = Long.compare(pos1, pos2);
- if (order == 0)
- {
- /*
- * if tied on position order, longer length sorts to left
- * i.e. the negation of normal ordering by length
- */
- order = -Integer.compare(len1, len2);
- }
- return order;
- }
-}
*/
package jalview.datamodel.features;
-import jalview.datamodel.ContiguousI;
import jalview.datamodel.SequenceFeature;
import jalview.io.gff.SequenceOntologyFactory;
import jalview.io.gff.SequenceOntologyI;
import java.util.ArrayList;
import java.util.Arrays;
-import java.util.Collections;
-import java.util.Comparator;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;
+import intervalstore.api.IntervalI;
+
/**
* A class that stores sequence features in a way that supports efficient
* querying by type and location (overlap). Intended for (but not limited to)
*/
public class SequenceFeatures implements SequenceFeaturesI
{
- /**
- * a comparator for sorting features by start position ascending
- */
- private static Comparator<ContiguousI> FORWARD_STRAND = new Comparator<ContiguousI>()
- {
- @Override
- public int compare(ContiguousI o1, ContiguousI o2)
- {
- return Integer.compare(o1.getBegin(), o2.getBegin());
- }
- };
-
- /**
- * a comparator for sorting features by end position descending
- */
- private static Comparator<ContiguousI> REVERSE_STRAND = new Comparator<ContiguousI>()
- {
- @Override
- public int compare(ContiguousI o1, ContiguousI o2)
- {
- return Integer.compare(o2.getEnd(), o1.getEnd());
- }
- };
/*
* map from feature type to structured store of features for that type
* @param features
* @param forwardStrand
*/
- public static void sortFeatures(List<SequenceFeature> features,
+ public static void sortFeatures(List<? extends IntervalI> features,
final boolean forwardStrand)
{
- Collections.sort(features, forwardStrand ? FORWARD_STRAND
- : REVERSE_STRAND);
+ IntervalI.sortIntervals(features, forwardStrand);
}
/**
/*
* update these constants when Jalview has been checked / updated for
- * changes to Ensembl REST API (ref JAL-2105)
+ * changes to Ensembl REST API, and updated JAL-3018
* @see https://github.com/Ensembl/ensembl-rest/wiki/Change-log
* @see http://rest.ensembl.org/info/rest?content-type=application/json
*/
- private static final String LATEST_ENSEMBLGENOMES_REST_VERSION = "7.0";
+ private static final String LATEST_ENSEMBLGENOMES_REST_VERSION = "9.0";
- private static final String LATEST_ENSEMBL_REST_VERSION = "7.0";
+ private static final String LATEST_ENSEMBL_REST_VERSION = "9.0";
private static final String REST_CHANGE_LOG = "https://github.com/Ensembl/ensembl-rest/wiki/Change-log";
* this allows an easy change from http to https in future if needed
*/
ensemblDomain = Cache.getDefault(ENSEMBL_BASEURL,
- DEFAULT_ENSEMBL_BASEURL);
+ DEFAULT_ENSEMBL_BASEURL).trim();
ensemblGenomesDomain = Cache.getDefault(ENSEMBL_GENOMES_BASEURL,
- DEFAULT_ENSEMBL_GENOMES_BASEURL);
+ DEFAULT_ENSEMBL_GENOMES_BASEURL).trim();
domain = ensemblDomain;
}
protected void setDomain(String d)
{
- domain = d;
+ domain = d == null ? null : d.trim();
}
}
import java.awt.BorderLayout;
import java.awt.CardLayout;
import java.awt.Dimension;
+import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusAdapter;
@SuppressWarnings("serial")
public abstract class GFTSPanel extends JPanel implements GFTSPanelI
{
+ private static final Font VERDANA_12 = new Font("Verdana", 0, 12);
+
protected JInternalFrame mainFrame = new JInternalFrame(
getFTSFrameTitle());
Integer height = getTempUserPrefs().get("FTSPanel.height") == null ? 400
: getTempUserPrefs().get("FTSPanel.height");
lbl_warning.setVisible(false);
- lbl_warning.setFont(new java.awt.Font("Verdana", 0, 12));
+ lbl_warning.setFont(VERDANA_12);
lbl_loading.setVisible(false);
- lbl_loading.setFont(new java.awt.Font("Verdana", 0, 12));
+ lbl_loading.setFont(VERDANA_12);
lbl_blank.setVisible(true);
- lbl_blank.setFont(new java.awt.Font("Verdana", 0, 12));
+ lbl_blank.setFont(VERDANA_12);
tbl_summary.setAutoCreateRowSorter(true);
tbl_summary.getTableHeader().setReorderingAllowed(false);
}
});
+ JButton txt_help = new JButton("?");
+ txt_help.setFont(VERDANA_12);
+ txt_help.setPreferredSize(new Dimension(15, 15));
+ txt_help.setToolTipText(MessageManager.getString("action.help"));
+ txt_help.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ showHelp();
+ }
+ });
+
btn_autosearch.setText(MessageManager.getString("option.autosearch"));
btn_autosearch.setToolTipText(
MessageManager.getString("option.enable_disable_autosearch"));
Boolean.toString(btn_autosearch.isSelected()));
}
});
- btn_back.setFont(new java.awt.Font("Verdana", 0, 12));
+ btn_back.setFont(VERDANA_12);
btn_back.setText(MessageManager.getString("action.back"));
btn_back.addActionListener(new java.awt.event.ActionListener()
{
});
btn_ok.setEnabled(false);
- btn_ok.setFont(new java.awt.Font("Verdana", 0, 12));
+ btn_ok.setFont(VERDANA_12);
btn_ok.setText(MessageManager.getString("action.ok"));
btn_ok.addActionListener(new java.awt.event.ActionListener()
{
btn_next_page.setEnabled(false);
btn_next_page.setToolTipText(
MessageManager.getString("label.next_page_tooltip"));
- btn_next_page.setFont(new java.awt.Font("Verdana", 0, 12));
+ btn_next_page.setFont(VERDANA_12);
btn_next_page.setText(MessageManager.getString("action.next_page"));
btn_next_page.addActionListener(new java.awt.event.ActionListener()
{
btn_prev_page.setEnabled(false);
btn_prev_page.setToolTipText(
MessageManager.getString("label.prev_page_tooltip"));
- btn_prev_page.setFont(new java.awt.Font("Verdana", 0, 12));
+ btn_prev_page.setFont(VERDANA_12);
btn_prev_page.setText(MessageManager.getString("action.prev_page"));
btn_prev_page.addActionListener(new java.awt.event.ActionListener()
{
btn_next_page.setVisible(false);
}
- btn_cancel.setFont(new java.awt.Font("Verdana", 0, 12));
+ btn_cancel.setFont(VERDANA_12);
btn_cancel.setText(MessageManager.getString("action.cancel"));
btn_cancel.addActionListener(new java.awt.event.ActionListener()
{
});
scrl_searchResult.setPreferredSize(new Dimension(width, height));
- cmb_searchTarget.setFont(new java.awt.Font("Verdana", 0, 12));
+ cmb_searchTarget.setFont(VERDANA_12);
cmb_searchTarget.addItemListener(new ItemListener()
{
@Override
}
});
- txt_search.getComponent().setFont(new java.awt.Font("Verdana", 0, 12));
+ txt_search.getComponent().setFont(VERDANA_12);
txt_search.addKeyListener(new KeyAdapter()
{
pnl_results.add(tabbedPane);
pnl_inputs.add(cmb_searchTarget);
pnl_inputs.add(txt_search.getComponent());
+ pnl_inputs.add(txt_help);
pnl_inputs.add(btn_autosearch);
pnl_inputs.add(lbl_loading);
pnl_inputs.add(lbl_warning);
Desktop.addInternalFrame(mainFrame, getFTSFrameTitle(), width, height);
}
+ abstract protected void showHelp();
+
protected void closeAction()
{
getTempUserPrefs().put("FTSPanel.width", this.getWidth());
import jalview.fts.core.FTSRestRequest;
import jalview.fts.core.FTSRestResponse;
import jalview.fts.core.GFTSPanel;
+import jalview.gui.Help;
+import jalview.gui.Help.HelpId;
import jalview.gui.SequenceFetcher;
import jalview.util.MessageManager;
import java.util.HashSet;
import java.util.Map;
+import javax.help.HelpSetException;
+
@SuppressWarnings("serial")
public class PDBFTSPanel extends GFTSPanel
{
private static String defaultFTSFrameTitle = MessageManager
.getString("label.pdb_sequence_fetcher");
- private static Map<String, Integer> tempUserPrefs = new HashMap<String, Integer>();
+ private static Map<String, Integer> tempUserPrefs = new HashMap<>();
private static final String PDB_FTS_CACHE_KEY = "CACHE.PDB_FTS";
// mainFrame.dispose();
disableActionButtons();
StringBuilder selectedIds = new StringBuilder();
- HashSet<String> selectedIdsSet = new HashSet<String>();
+ HashSet<String> selectedIdsSet = new HashSet<>();
int primaryKeyColIndex = 0;
try
{
{
return PDB_AUTOSEARCH;
}
+
+ @Override
+ protected void showHelp()
+ {
+ try
+ {
+ Help.showHelpWindow(HelpId.PdbFts);
+ } catch (HelpSetException e1)
+ {
+ e1.printStackTrace();
+ }
+ }
}
\ No newline at end of file
import jalview.fts.core.FTSRestRequest;
import jalview.fts.core.FTSRestResponse;
import jalview.fts.core.GFTSPanel;
+import jalview.gui.Help;
+import jalview.gui.Help.HelpId;
import jalview.gui.SequenceFetcher;
import jalview.util.MessageManager;
import java.util.HashSet;
import java.util.Map;
+import javax.help.HelpSetException;
+
@SuppressWarnings("serial")
public class UniprotFTSPanel extends GFTSPanel
{
{
return UNIPROT_AUTOSEARCH;
}
+
+ @Override
+ protected void showHelp()
+ {
+ try
+ {
+ Help.showHelpWindow(HelpId.UniprotFts);
+ } catch (HelpSetException e1)
+ {
+ e1.printStackTrace();
+ }
+ }
}
import jalview.analysis.AlignmentUtils;
import jalview.analysis.CrossRef;
import jalview.analysis.Dna;
+import jalview.analysis.GeneticCodeI;
import jalview.analysis.ParseProperties;
import jalview.analysis.SequenceIdMatcher;
import jalview.api.AlignExportSettingsI;
import jalview.gui.ViewSelectionMenu.ViewSetProvider;
import jalview.io.AlignmentProperties;
import jalview.io.AnnotationFile;
+import jalview.io.BackupFiles;
import jalview.io.BioJsHTMLOutput;
import jalview.io.DataSourceType;
import jalview.io.FileFormat;
import jalview.io.TCoffeeScoreFile;
import jalview.io.vcf.VCFLoader;
import jalview.jbgui.GAlignFrame;
+import jalview.project.Jalview2XML;
import jalview.schemes.ColourSchemeI;
import jalview.schemes.ColourSchemes;
import jalview.schemes.ResidueColourScheme;
import java.util.List;
import java.util.Vector;
+import javax.swing.ButtonGroup;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JComponent;
import javax.swing.JEditorPane;
return progressBar.operationInProgress();
}
+ /**
+ * Sets the text of the status bar. Note that setting a null or empty value
+ * will cause the status bar to be hidden, with possibly undesirable flicker
+ * of the screen layout.
+ */
@Override
public void setStatus(String text)
{
shortName = shortName.substring(
shortName.lastIndexOf(File.separatorChar) + 1);
}
- lastSaveSuccessful = new jalview.project.Jalview2XML().saveAlignment(this, file,
- shortName);
+ lastSaveSuccessful = new Jalview2XML().saveAlignment(this, file, shortName);
statusBar.setText(MessageManager.formatMessage(
"label.successfully_saved_to_file_in_format", new Object[]
}
else
{
+ // create backupfiles object and get new temp filename destination
+ BackupFiles backupfiles = new BackupFiles(file);
try
{
- PrintWriter out = new PrintWriter(new FileWriter(file));
+ PrintWriter out = new PrintWriter(
+ new FileWriter(backupfiles.getTempFilePath()));
+
out.print(output);
out.close();
AlignFrame.this.setTitle(file);
- setStatus(MessageManager.formatMessage(
- "label.successfully_saved_to_file_in_format",
- new Object[]
- { fileName, format.getName() }));
+ statusBar.setText(MessageManager.formatMessage(
+ "label.successfully_saved_to_file_in_format", new Object[]
+ { fileName, format.getName() }));
} catch (Exception ex)
{
lastSaveSuccessful = false;
ex.printStackTrace();
}
+
+ backupfiles.setWriteSuccess(lastSaveSuccessful);
+ // do the backup file roll and rename the temp file to actual file
+ lastSaveSuccessful = backupfiles.rollBackupsAndRenameTempFile();
}
}
};
@Override
public void selectAllSequenceMenuItem_actionPerformed(ActionEvent e)
{
- SequenceGroup sg = new SequenceGroup();
-
- for (int i = 0; i < viewport.getAlignment().getSequences().size(); i++)
- {
- sg.addSequence(viewport.getAlignment().getSequenceAt(i), false);
- }
+ SequenceGroup sg = new SequenceGroup(
+ viewport.getAlignment().getSequences());
sg.setEndRes(viewport.getAlignment().getWidth() - 1);
viewport.setSelectionGroup(sg);
+ viewport.isSelectionGroupChanged(true);
viewport.sendSelection();
// JAL-2034 - should delegate to
// alignPanel to decide if overview needs
newap.av.setRedoList(viewport.getRedoList());
/*
+ * copy any visualisation settings that are not saved in the project
+ */
+ newap.av.setColourAppliesToAllGroups(
+ viewport.getColourAppliesToAllGroups());
+
+ /*
* Views share the same mappings; need to deregister any new mappings
* created by copyAlignPanel, and register the new reference to the shared
* mappings
viewport.setFollowHighlight(state);
if (state)
{
- alignPanel.scrollToPosition(viewport.getSearchResults(), false);
+ alignPanel.scrollToPosition(viewport.getSearchResults());
}
}
viewport.expandColSelection(sg, false);
viewport.hideAllSelectedSeqs();
viewport.hideSelectedColumns();
+ alignPanel.updateLayout();
alignPanel.paintAlignment(true, true);
viewport.sendSelection();
}
public void hideSelColumns_actionPerformed(ActionEvent e)
{
viewport.hideSelectedColumns();
+ alignPanel.updateLayout();
alignPanel.paintAlignment(true, true);
viewport.sendSelection();
}
* otherwise set the chosen colour scheme (or null for 'None')
*/
ColourSchemeI cs = ColourSchemes.getInstance().getColourScheme(name,
+ viewport,
viewport.getAlignment(), viewport.getHiddenRepSequences());
changeColour(cs);
}
* frame's DNA sequences to their aligned protein (amino acid) equivalents.
*/
@Override
- public void showTranslation_actionPerformed(ActionEvent e)
+ public void showTranslation_actionPerformed(GeneticCodeI codeTable)
{
AlignmentI al = null;
try
{
Dna dna = new Dna(viewport, viewport.getViewAsVisibleContigs(true));
- al = dna.translateCdna();
+ al = dna.translateCdna(codeTable);
} catch (Exception ex)
{
jalview.bin.Cache.log.error(
af.setFileFormat(this.currentFileFormat);
final String newTitle = MessageManager
.formatMessage("label.translation_of_params", new Object[]
- { this.getTitle() });
+ { this.getTitle(), codeTable.getId() });
af.setTitle(newTitle);
if (Cache.getDefault(Preferences.ENABLE_SPLIT_FRAME, true))
{
{
PaintRefresher.Refresh(this, viewport.getSequenceSetId());
alignPanel.updateAnnotation();
- alignPanel.paintAlignment(true, true);
+ alignPanel.paintAlignment(true,
+ viewport.needToUpdateStructureViews());
}
}
colourMenu.add(textColour);
colourMenu.addSeparator();
- ColourMenuHelper.addMenuItems(colourMenu, this, viewport.getAlignment(),
- false);
+ ButtonGroup bg = ColourMenuHelper.addMenuItems(colourMenu, this,
+ viewport.getAlignment(), false);
+ colourMenu.add(annotationColour);
+ bg.add(annotationColour);
colourMenu.addSeparator();
colourMenu.add(conservationMenuItem);
colourMenu.add(modifyConservation);
colourMenu.add(abovePIDThreshold);
colourMenu.add(modifyPID);
- colourMenu.add(annotationColour);
ColourSchemeI colourScheme = viewport.getGlobalColourScheme();
ColourMenuHelper.setColourSelected(colourMenu, colourScheme);
ResidueColourScheme.NONE);
}
ColourSchemeI colourScheme = ColourSchemeProperty
- .getColourScheme(alignment, schemeName);
+ .getColourScheme(this, alignment, schemeName);
residueShading = new ResidueShader(colourScheme);
if (colourScheme instanceof UserColourScheme)
{
residueShading.setConsensus(hconsensus);
}
+ setColourAppliesToAllGroups(true);
}
boolean validCharWidth;
}
/**
- * Highlight the given results on the alignment.
+ * Highlight the given results on the alignment
*
*/
public void highlightSearchResults(SearchResultsI results)
{
- boolean scrolled = scrollToPosition(results, 0, true, false);
+ boolean scrolled = scrollToPosition(results, 0, false);
boolean fastPaint = !(scrolled && av.getWrapAlignment());
* (if any)
*
* @param searchResults
- * @param redrawOverview
* @return
*/
- public boolean scrollToPosition(SearchResultsI searchResults,
- boolean redrawOverview)
+ public boolean scrollToPosition(SearchResultsI searchResults)
{
- return scrollToPosition(searchResults, 0, redrawOverview, false);
+ return scrollToPosition(searchResults, 0, false);
}
/**
* @param verticalOffset
* if greater than zero, allows scrolling to a position below the
* first displayed sequence
- * @param redrawOverview
- * - when set, the overview will be recalculated (takes longer)
* @param centre
* if true, try to centre the search results horizontally in the view
* @return
*/
protected boolean scrollToPosition(SearchResultsI results,
- int verticalOffset, boolean redrawOverview, boolean centre)
+ int verticalOffset, boolean centre)
{
int startv, endv, starts, ends;
ViewportRanges ranges = av.getRanges();
scrollNeeded = ranges.scrollToWrappedVisible(start);
}
- paintAlignment(redrawOverview, false);
+ paintAlignment(false, false);
return scrollNeeded;
}
addNotify();
// TODO: many places call this method and also paintAlignment with various
// different settings. this means multiple redraws are triggered...
- paintAlignment(true, false);
+ paintAlignment(true, av.needToUpdateStructureViews());
}
/**
}
else
{
- int width = av.getAlignment().getWidth();
+ int width = av.getAlignment().getVisibleWidth();
int height = av.getAlignment().getHeight();
- if (av.hasHiddenColumns())
- {
- // reset the width to exclude hidden columns
- width = av.getAlignment().getHiddenColumns()
- .absoluteToVisibleColumn(width);
- }
-
hextent = getSeqPanel().seqCanvas.getWidth() / av.getCharWidth();
vextent = getSeqPanel().seqCanvas.getHeight() / av.getCharHeight();
final int totalSeq = (pageHeight - scaleHeight) / charHeight - 1;
- final int alignmentWidth = av.getAlignment().getWidth();
- final int pagesWide = (alignmentWidth / totalRes) + 1;
+ final int alignmentWidth = av.getAlignment().getVisibleWidth();
+ int pagesWide = (alignmentWidth / totalRes) + 1;
final int startRes = (pageIndex % pagesWide) * totalRes;
final int endRes = Math.min(startRes + totalRes - 1,
int idWidth = getVisibleIdWidth(false);
- int maxwidth = av.getAlignment().getWidth();
- if (av.hasHiddenColumns())
- {
- maxwidth = av.getAlignment().getHiddenColumns()
- .absoluteToVisibleColumn(maxwidth) - 1;
- }
+ int maxwidth = av.getAlignment().getVisibleWidth();
int resWidth = getSeqPanel().seqCanvas
.getWrappedCanvasWidth(pageWidth - idWidth);
*/
public AlignmentDimension getAlignmentDimension()
{
- int maxwidth = av.getAlignment().getWidth();
- if (av.hasHiddenColumns())
- {
- maxwidth = av.getAlignment().getHiddenColumns()
- .absoluteToVisibleColumn(maxwidth);
- }
+ int maxwidth = av.getAlignment().getVisibleWidth();
int height = ((av.getAlignment().getHeight() + 1) * av.getCharHeight())
+ getScalePanel().getHeight();
*/
protected void scrollToCentre(SearchResultsI sr, int verticalOffset)
{
- scrollToPosition(sr, verticalOffset, true, true);
+ scrollToPosition(sr, verticalOffset, true);
}
/**
{
setAnnotationVisibility(true);
- // copied from AnnotationLabel.actionPerformed (after show/hide row)...
- // TODO should drive this functionality into AlignmentPanel
ap.updateAnnotation();
- // this.ap.annotationPanel.adjustPanelHeight();
- // this.ap.alabels.setSize(this.ap.alabels.getSize().width,
- // this.ap.annotationPanel.getSize().height);
- // this.ap.validate();
- this.ap.paintAlignment(true, false);
}
/**
}
}
ap.updateAnnotation();
- // // this.ap.annotationPanel.adjustPanelHeight();
- // this.ap.alabels.setSize(this.ap.alabels.getSize().width,
- // this.ap.annotationPanel.getSize().height);
- // this.ap.validate();
- this.ap.paintAlignment(true, false);
}
/**
{
setAnnotationVisibility(false);
- this.ap.updateAnnotation();
- // this.ap.annotationPanel.adjustPanelHeight();
- this.ap.paintAlignment(true, false);
+ ap.updateAnnotation();
}
/**
@Override
public void reset()
{
- av.setGlobalColourScheme(oldcs);
+ this.ap.alignFrame.changeColour(oldcs);
if (av.getAlignment().getGroups() != null)
{
acg.setThresholdIsMinMax(thresholdIsMin.isSelected());
- av.setGlobalColourScheme(acg);
+ this.ap.alignFrame.changeColour(acg);
if (av.getAlignment().getGroups() != null)
{
continue;
}
sg.setColourScheme(
- acg.getInstance(sg, ap.av.getHiddenRepSequences()));
+ acg.getInstance(av, sg));
}
}
}
super.sliderDragReleased();
ap.paintAlignment(true, true);
}
-
}
*/
package jalview.gui;
-import jalview.api.FeatureColourI;
+import jalview.api.FeatureRenderer;
import jalview.bin.Cache;
import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.SequenceI;
-import jalview.datamodel.features.FeatureMatcherSetI;
import jalview.io.AnnotationFile;
import jalview.io.FeaturesFile;
import jalview.io.JalviewFileChooser;
import java.awt.event.ActionListener;
import java.io.FileWriter;
import java.io.PrintWriter;
-import java.util.List;
-import java.util.Map;
import javax.swing.BorderFactory;
import javax.swing.ButtonGroup;
{
String text;
SequenceI[] sequences = ap.av.getAlignment().getSequencesArray();
- Map<String, FeatureColourI> featureColours = ap.getFeatureRenderer()
- .getDisplayedFeatureCols();
- Map<String, FeatureMatcherSetI> featureFilters = ap.getFeatureRenderer()
- .getFeatureFilters();
- List<String> featureGroups = ap.getFeatureRenderer()
- .getDisplayedFeatureGroups();
boolean includeNonPositional = ap.av.isShowNPFeats();
FeaturesFile formatter = new FeaturesFile();
+ final FeatureRenderer fr = ap.getFeatureRenderer();
if (GFFFormat.isSelected())
{
- text = formatter.printGffFormat(sequences, featureColours,
- featureGroups, includeNonPositional);
+ text = formatter.printGffFormat(sequences, fr, includeNonPositional);
}
else
{
- text = formatter.printJalviewFormat(sequences, featureColours,
- featureFilters, featureGroups, includeNonPositional);
+ text = formatter.printJalviewFormat(sequences, fr,
+ includeNonPositional);
}
return text;
}
import java.util.Arrays;
import java.util.Collections;
import java.util.Iterator;
-import java.util.regex.Pattern;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JMenuItem;
public class AnnotationLabels extends JPanel
implements MouseListener, MouseMotionListener, ActionListener
{
+ private static final String HTML_END_TAG = "</html>";
+
+ private static final String HTML_START_TAG = "<html>";
+
/**
* width in pixels within which height adjuster arrows are shown and active
*/
*/
private static int HEIGHT_ADJUSTER_HEIGHT = 10;
- private static final Pattern LEFT_ANGLE_BRACKET_PATTERN = Pattern
- .compile("<");
-
private static final Font font = new Font("Arial", Font.PLAIN, 11);
private static final String TOGGLE_LABELSCALE = MessageManager
AlignmentUtils.showOrHideSequenceAnnotations(
ap.av.getAlignment(), Collections.singleton(label),
null, false, false);
- // for (AlignmentAnnotation ann : ap.av.getAlignment()
- // .getAlignmentAnnotation())
- // {
- // if (ann.sequenceRef != null && ann.label != null
- // && ann.label.equals(label))
- // {
- // ann.visible = false;
- // }
- // }
ap.refresh(true);
}
});
}
else if (label.indexOf("Consensus") > -1)
{
- pop.addSeparator();
- // av and sequencegroup need to implement same interface for
- final JCheckBoxMenuItem cbmi = new JCheckBoxMenuItem(
- MessageManager.getString("label.ignore_gaps_consensus"),
- (aa[selectedRow].groupRef != null)
- ? aa[selectedRow].groupRef.getIgnoreGapsConsensus()
- : ap.av.isIgnoreGapsConsensus());
- final AlignmentAnnotation aaa = aa[selectedRow];
- cbmi.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- if (aaa.groupRef != null)
- {
- // TODO: pass on reference to ap so the view can be updated.
- aaa.groupRef.setIgnoreGapsConsensus(cbmi.getState());
- ap.getAnnotationPanel()
- .paint(ap.getAnnotationPanel().getGraphics());
- }
- else
- {
- ap.av.setIgnoreGapsConsensus(cbmi.getState(), ap);
- }
- ap.alignmentChanged();
- }
- });
- pop.add(cbmi);
- // av and sequencegroup need to implement same interface for
+ addConsensusMenuOptions(ap, aa[selectedRow], pop);
+
+ final JMenuItem consclipbrd = new JMenuItem(COPYCONS_SEQ);
+ consclipbrd.addActionListener(this);
+ pop.add(consclipbrd);
+ }
+ }
+ pop.show(this, evt.getX(), evt.getY());
+ }
+
+ /**
+ * A helper method that adds menu options for calculation and visualisation of
+ * group and/or alignment consensus annotation to a popup menu. This is
+ * designed to be reusable for either unwrapped mode (popup menu is shown on
+ * component AnnotationLabels), or wrapped mode (popup menu is shown on
+ * IdPanel when the mouse is over an annotation label).
+ *
+ * @param ap
+ * @param ann
+ * @param pop
+ */
+ static void addConsensusMenuOptions(AlignmentPanel ap,
+ AlignmentAnnotation ann,
+ JPopupMenu pop)
+ {
+ pop.addSeparator();
+
+ final JCheckBoxMenuItem cbmi = new JCheckBoxMenuItem(
+ MessageManager.getString("label.ignore_gaps_consensus"),
+ (ann.groupRef != null) ? ann.groupRef.getIgnoreGapsConsensus()
+ : ap.av.isIgnoreGapsConsensus());
+ final AlignmentAnnotation aaa = ann;
+ cbmi.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
if (aaa.groupRef != null)
{
- final JCheckBoxMenuItem chist = new JCheckBoxMenuItem(
- MessageManager.getString("label.show_group_histogram"),
- aa[selectedRow].groupRef.isShowConsensusHistogram());
- chist.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- // TODO: pass on reference
- // to ap
- // so the
- // view
- // can be
- // updated.
- aaa.groupRef.setShowConsensusHistogram(chist.getState());
- ap.repaint();
- // ap.annotationPanel.paint(ap.annotationPanel.getGraphics());
- }
- });
- pop.add(chist);
- final JCheckBoxMenuItem cprofl = new JCheckBoxMenuItem(
- MessageManager.getString("label.show_group_logo"),
- aa[selectedRow].groupRef.isShowSequenceLogo());
- cprofl.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- // TODO: pass on reference
- // to ap
- // so the
- // view
- // can be
- // updated.
- aaa.groupRef.setshowSequenceLogo(cprofl.getState());
- ap.repaint();
- // ap.annotationPanel.paint(ap.annotationPanel.getGraphics());
- }
- });
- pop.add(cprofl);
- final JCheckBoxMenuItem cproflnorm = new JCheckBoxMenuItem(
- MessageManager.getString("label.normalise_group_logo"),
- aa[selectedRow].groupRef.isNormaliseSequenceLogo());
- cproflnorm.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
-
- // TODO: pass on reference
- // to ap
- // so the
- // view
- // can be
- // updated.
- aaa.groupRef.setNormaliseSequenceLogo(cproflnorm.getState());
- // automatically enable logo display if we're clicked
- aaa.groupRef.setshowSequenceLogo(true);
- ap.repaint();
- // ap.annotationPanel.paint(ap.annotationPanel.getGraphics());
- }
- });
- pop.add(cproflnorm);
+ aaa.groupRef.setIgnoreGapsConsensus(cbmi.getState());
+ ap.getAnnotationPanel()
+ .paint(ap.getAnnotationPanel().getGraphics());
}
else
{
- final JCheckBoxMenuItem chist = new JCheckBoxMenuItem(
- MessageManager.getString("label.show_histogram"),
- av.isShowConsensusHistogram());
- chist.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- // TODO: pass on reference
- // to ap
- // so the
- // view
- // can be
- // updated.
- av.setShowConsensusHistogram(chist.getState());
- ap.alignFrame.setMenusForViewport();
- ap.repaint();
- // ap.annotationPanel.paint(ap.annotationPanel.getGraphics());
- }
- });
- pop.add(chist);
- final JCheckBoxMenuItem cprof = new JCheckBoxMenuItem(
- MessageManager.getString("label.show_logo"),
- av.isShowSequenceLogo());
- cprof.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- // TODO: pass on reference
- // to ap
- // so the
- // view
- // can be
- // updated.
- av.setShowSequenceLogo(cprof.getState());
- ap.alignFrame.setMenusForViewport();
- ap.repaint();
- // ap.annotationPanel.paint(ap.annotationPanel.getGraphics());
- }
- });
- pop.add(cprof);
- final JCheckBoxMenuItem cprofnorm = new JCheckBoxMenuItem(
- MessageManager.getString("label.normalise_logo"),
- av.isNormaliseSequenceLogo());
- cprofnorm.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- // TODO: pass on reference
- // to ap
- // so the
- // view
- // can be
- // updated.
- av.setShowSequenceLogo(true);
- av.setNormaliseSequenceLogo(cprofnorm.getState());
- ap.alignFrame.setMenusForViewport();
- ap.repaint();
- // ap.annotationPanel.paint(ap.annotationPanel.getGraphics());
- }
- });
- pop.add(cprofnorm);
+ ap.av.setIgnoreGapsConsensus(cbmi.getState(), ap);
}
- final JMenuItem consclipbrd = new JMenuItem(COPYCONS_SEQ);
- consclipbrd.addActionListener(this);
- pop.add(consclipbrd);
+ ap.alignmentChanged();
}
+ });
+ pop.add(cbmi);
+
+ if (aaa.groupRef != null)
+ {
+ /*
+ * group consensus options
+ */
+ final JCheckBoxMenuItem chist = new JCheckBoxMenuItem(
+ MessageManager.getString("label.show_group_histogram"),
+ ann.groupRef.isShowConsensusHistogram());
+ chist.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ aaa.groupRef.setShowConsensusHistogram(chist.getState());
+ ap.repaint();
+ }
+ });
+ pop.add(chist);
+ final JCheckBoxMenuItem cprofl = new JCheckBoxMenuItem(
+ MessageManager.getString("label.show_group_logo"),
+ ann.groupRef.isShowSequenceLogo());
+ cprofl.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ aaa.groupRef.setshowSequenceLogo(cprofl.getState());
+ ap.repaint();
+ }
+ });
+ pop.add(cprofl);
+ final JCheckBoxMenuItem cproflnorm = new JCheckBoxMenuItem(
+ MessageManager.getString("label.normalise_group_logo"),
+ ann.groupRef.isNormaliseSequenceLogo());
+ cproflnorm.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ aaa.groupRef.setNormaliseSequenceLogo(cproflnorm.getState());
+ // automatically enable logo display if we're clicked
+ aaa.groupRef.setshowSequenceLogo(true);
+ ap.repaint();
+ }
+ });
+ pop.add(cproflnorm);
+ }
+ else
+ {
+ /*
+ * alignment consensus options
+ */
+ final JCheckBoxMenuItem chist = new JCheckBoxMenuItem(
+ MessageManager.getString("label.show_histogram"),
+ ap.av.isShowConsensusHistogram());
+ chist.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ ap.av.setShowConsensusHistogram(chist.getState());
+ ap.alignFrame.setMenusForViewport();
+ ap.repaint();
+ }
+ });
+ pop.add(chist);
+ final JCheckBoxMenuItem cprof = new JCheckBoxMenuItem(
+ MessageManager.getString("label.show_logo"),
+ ap.av.isShowSequenceLogo());
+ cprof.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ ap.av.setShowSequenceLogo(cprof.getState());
+ ap.alignFrame.setMenusForViewport();
+ ap.repaint();
+ }
+ });
+ pop.add(cprof);
+ final JCheckBoxMenuItem cprofnorm = new JCheckBoxMenuItem(
+ MessageManager.getString("label.normalise_logo"),
+ ap.av.isNormaliseSequenceLogo());
+ cprofnorm.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ ap.av.setShowSequenceLogo(true);
+ ap.av.setNormaliseSequenceLogo(cprofnorm.getState());
+ ap.alignFrame.setMenusForViewport();
+ ap.repaint();
+ }
+ });
+ pop.add(cprofnorm);
}
- pop.show(this, evt.getX(), evt.getY());
}
/**
if (selectedRow > -1 && ap.av.getAlignment()
.getAlignmentAnnotation().length > selectedRow)
{
- AlignmentAnnotation aa = ap.av.getAlignment()
- .getAlignmentAnnotation()[selectedRow];
+ AlignmentAnnotation[] anns = ap.av.getAlignment()
+ .getAlignmentAnnotation();
+ AlignmentAnnotation aa = anns[selectedRow];
+
+ String desc = getTooltip(aa);
+ this.setToolTipText(desc);
+ String msg = getStatusMessage(aa, anns);
+ ap.alignFrame.setStatus(msg);
+ }
+ }
+
+ /**
+ * Constructs suitable text to show in the status bar when over an annotation
+ * label, containing the associated sequence name (if any), and the annotation
+ * labels (or all labels for a graph group annotation)
+ *
+ * @param aa
+ * @param anns
+ * @return
+ */
+ static String getStatusMessage(AlignmentAnnotation aa,
+ AlignmentAnnotation[] anns)
+ {
+ if (aa == null)
+ {
+ return null;
+ }
+
+ StringBuilder msg = new StringBuilder(32);
+ if (aa.sequenceRef != null)
+ {
+ msg.append(aa.sequenceRef.getName()).append(" : ");
+ }
- StringBuffer desc = new StringBuffer();
- if (aa.description != null
- && !aa.description.equals("New description"))
+ if (aa.graphGroup == -1)
+ {
+ msg.append(aa.label);
+ }
+ else if (anns != null)
+ {
+ boolean first = true;
+ for (int i = anns.length - 1; i >= 0; i--)
{
- // TODO: we could refactor and merge this code with the code in
- // jalview.gui.SeqPanel.mouseMoved(..) that formats sequence feature
- // tooltips
- desc.append(aa.getDescription(true).trim());
- // check to see if the description is an html fragment.
- if (desc.length() < 6 || (desc.substring(0, 6).toLowerCase()
- .indexOf("<html>") < 0))
+ if (anns[i].graphGroup == aa.graphGroup)
{
- // clean the description ready for embedding in html
- desc = new StringBuffer(LEFT_ANGLE_BRACKET_PATTERN.matcher(desc)
- .replaceAll("<"));
- desc.insert(0, "<html>");
- }
- else
- {
- // remove terminating html if any
- int i = desc.substring(desc.length() - 7).toLowerCase()
- .lastIndexOf("</html>");
- if (i > -1)
+ if (!first)
{
- desc.setLength(desc.length() - 7 + i);
+ msg.append(", ");
}
+ msg.append(anns[i].label);
+ first = false;
}
- if (aa.hasScore())
- {
- desc.append("<br/>");
- }
- // if (aa.hasProperties())
- // {
- // desc.append("<table>");
- // for (String prop : aa.getProperties())
- // {
- // desc.append("<tr><td>" + prop + "</td><td>"
- // + aa.getProperty(prop) + "</td><tr>");
- // }
- // desc.append("</table>");
- // }
}
- else
+ }
+
+ return msg.toString();
+ }
+
+ /**
+ * Answers a tooltip, formatted as html, containing the annotation description
+ * (prefixed by associated sequence id if applicable), and the annotation
+ * (non-positional) score if it has one. Answers null if neither description
+ * nor score is found.
+ *
+ * @param aa
+ * @return
+ */
+ static String getTooltip(AlignmentAnnotation aa)
+ {
+ if (aa == null)
+ {
+ return null;
+ }
+ StringBuilder tooltip = new StringBuilder();
+ if (aa.description != null && !aa.description.equals("New description"))
+ {
+ // TODO: we could refactor and merge this code with the code in
+ // jalview.gui.SeqPanel.mouseMoved(..) that formats sequence feature
+ // tooltips
+ String desc = aa.getDescription(true).trim();
+ if (!desc.toLowerCase().startsWith(HTML_START_TAG))
{
- // begin the tooltip's html fragment
- desc.append("<html>");
- if (aa.hasScore())
- {
- // TODO: limit precision of score to avoid noise from imprecise
- // doubles
- // (64.7 becomes 64.7+/some tiny value).
- desc.append(" Score: " + aa.score);
- }
+ tooltip.append(HTML_START_TAG);
+ desc = desc.replace("<", "<");
}
- if (desc.length() > 6)
+ else if (desc.toLowerCase().endsWith(HTML_END_TAG))
{
- desc.append("</html>");
- this.setToolTipText(desc.toString());
+ desc = desc.substring(0, desc.length() - HTML_END_TAG.length());
}
- else
+ tooltip.append(desc);
+ }
+ else
+ {
+ // begin the tooltip's html fragment
+ tooltip.append(HTML_START_TAG);
+ }
+ if (aa.hasScore())
+ {
+ if (tooltip.length() > HTML_START_TAG.length())
{
- this.setToolTipText(null);
+ tooltip.append("<br/>");
}
+ // TODO: limit precision of score to avoid noise from imprecise
+ // doubles
+ // (64.7 becomes 64.7+/some tiny value).
+ tooltip.append(" Score: ").append(String.valueOf(aa.score));
+ }
+
+ if (tooltip.length() > HTML_START_TAG.length())
+ {
+ return tooltip.append(HTML_END_TAG).toString();
}
+
+ /*
+ * nothing in the tooltip (except "<html>")
+ */
+ return null;
}
/**
package jalview.gui;
import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.AlignmentI;
import jalview.datamodel.Annotation;
import jalview.datamodel.ColumnSelection;
import jalview.datamodel.HiddenColumns;
@Override
public void mouseMoved(MouseEvent evt)
{
+ int yPos = evt.getY();
AlignmentAnnotation[] aa = av.getAlignment().getAlignmentAnnotation();
- if (aa == null)
- {
- this.setToolTipText(null);
- return;
- }
-
- int row = -1;
- int height = 0;
-
- for (int i = 0; i < aa.length; i++)
- {
- if (aa[i].visible)
- {
- height += aa[i].height;
- }
-
- if (evt.getY() < height)
- {
- row = i;
- break;
- }
- }
+ int row = getRowIndex(yPos, aa);
if (row == -1)
{
int column = (evt.getX() / av.getCharWidth())
+ av.getRanges().getStartRes();
+ column = Math.min(column, av.getRanges().getEndRes());
if (av.hasHiddenColumns())
{
if (row > -1 && ann.annotations != null
&& column < ann.annotations.length)
{
- buildToolTip(ann, column, aa);
- setStatusMessage(column, ann);
+ setToolTipText(buildToolTip(ann, column, aa));
+ String msg = getStatusMessage(av.getAlignment(), column, ann);
+ ap.alignFrame.setStatus(msg);
}
else
{
}
/**
- * Builds a tooltip for the annotation at the current mouse position.
+ * Answers the index in the annotations array of the visible annotation at the
+ * given y position. This is done by adding the heights of visible annotations
+ * until the y position has been exceeded. Answers -1 if no annotations are
+ * visible, or the y position is below all annotations.
+ *
+ * @param yPos
+ * @param aa
+ * @return
+ */
+ static int getRowIndex(int yPos, AlignmentAnnotation[] aa)
+ {
+ if (aa == null)
+ {
+ return -1;
+ }
+ int row = -1;
+ int height = 0;
+
+ for (int i = 0; i < aa.length; i++)
+ {
+ if (aa[i].visible)
+ {
+ height += aa[i].height;
+ }
+
+ if (height > yPos)
+ {
+ row = i;
+ break;
+ }
+ }
+ return row;
+ }
+
+ /**
+ * Answers a tooltip for the annotation at the current mouse position
*
* @param ann
* @param column
* @param anns
*/
- void buildToolTip(AlignmentAnnotation ann, int column,
+ static String buildToolTip(AlignmentAnnotation ann, int column,
AlignmentAnnotation[] anns)
{
+ String tooltip = null;
if (ann.graphGroup > -1)
{
StringBuilder tip = new StringBuilder(32);
if (tip.length() != 6)
{
tip.setLength(tip.length() - 4);
- this.setToolTipText(tip.toString() + "</html>");
+ tooltip = tip.toString() + "</html>";
}
}
- else if (ann.annotations[column] != null)
+ else if (column < ann.annotations.length
+ && ann.annotations[column] != null)
{
String description = ann.annotations[column].description;
if (description != null && description.length() > 0)
{
- this.setToolTipText(JvSwingUtils.wrapTooltip(true, description));
+ tooltip = JvSwingUtils.wrapTooltip(true, description);
}
else
{
- this.setToolTipText(null); // no tooltip if null or empty description
+ tooltip = null; // no tooltip if null or empty description
}
}
else
{
// clear the tooltip.
- this.setToolTipText(null);
+ tooltip = null;
}
+ return tooltip;
}
/**
- * Constructs and displays the status bar message
+ * Constructs and returns the status bar message
*
+ * @param al
* @param column
* @param ann
*/
- void setStatusMessage(int column, AlignmentAnnotation ann)
+ static String getStatusMessage(AlignmentI al, int column,
+ AlignmentAnnotation ann)
{
/*
* show alignment column and annotation description if any
text.append(MessageManager.getString("label.column")).append(" ")
.append(column + 1);
- if (ann.annotations[column] != null)
+ if (column < ann.annotations.length && ann.annotations[column] != null)
{
String description = ann.annotations[column].description;
if (description != null && description.trim().length() > 0)
SequenceI seqref = ann.sequenceRef;
if (seqref != null)
{
- int seqIndex = av.getAlignment().findIndex(seqref);
+ int seqIndex = al.findIndex(seqref);
if (seqIndex != -1)
{
text.append(", ").append(MessageManager.getString("label.sequence"))
{
text.append(" ");
String name;
- if (av.getAlignment().isNucleotide())
+ if (al.isNucleotide())
{
name = ResidueProperties.nucleotideName
.get(String.valueOf(residue));
}
}
- ap.alignFrame.setStatus(text.toString());
+ return text.toString();
}
/**
import jalview.analysis.scoremodels.SimilarityParams;
import jalview.api.analysis.ScoreModelI;
import jalview.api.analysis.SimilarityParamsI;
+import jalview.bin.Cache;
import jalview.datamodel.SequenceGroup;
import jalview.util.MessageManager;
final ComboBoxTooltipRenderer renderer = new ComboBoxTooltipRenderer();
- List<String> tips = new ArrayList<String>();
+ List<String> tips = new ArrayList<>();
/*
* the most recently opened PCA results panel
*/
protected JComboBox<String> buildModelOptionsList()
{
- final JComboBox<String> scoreModelsCombo = new JComboBox<String>();
+ final JComboBox<String> scoreModelsCombo = new JComboBox<>();
scoreModelsCombo.setRenderer(renderer);
/*
{
Object curSel = comboBox.getSelectedItem();
toolTips.clear();
- DefaultComboBoxModel<String> model = new DefaultComboBoxModel<String>();
+ DefaultComboBoxModel<String> model = new DefaultComboBoxModel<>();
+
+ /*
+ * select the score models applicable to the alignment type
+ */
+ boolean nucleotide = af.getViewport().getAlignment().isNucleotide();
+ List<ScoreModelI> models = getApplicableScoreModels(nucleotide,
+ pca.isSelected());
/*
* now we can actually add entries to the combobox,
* remembering their descriptions for tooltips
*/
- ScoreModels scoreModels = ScoreModels.getInstance();
boolean selectedIsPresent = false;
- for (ScoreModelI sm : scoreModels.getModels())
+ for (ScoreModelI sm : models)
{
- boolean nucleotide = af.getViewport().getAlignment().isNucleotide();
- if (sm.isDNA() && nucleotide || sm.isProtein() && !nucleotide)
+ if (curSel != null && sm.getName().equals(curSel))
+ {
+ selectedIsPresent = true;
+ curSel = sm.getName();
+ }
+ model.addElement(sm.getName());
+
+ /*
+ * tooltip is description if provided, else text lookup with
+ * fallback on the model name
+ */
+ String tooltip = sm.getDescription();
+ if (tooltip == null)
{
- if (curSel != null && sm.getName().equals(curSel))
- {
- selectedIsPresent = true;
- curSel = sm.getName();
- }
- model.addElement(sm.getName());
-
- /*
- * tooltip is description if provided, else text lookup with
- * fallback on the model name
- */
- String tooltip = sm.getDescription();
- if (tooltip == null)
- {
- tooltip = MessageManager.getStringOrReturn("label.score_model_",
- sm.getName());
- }
- toolTips.add(tooltip);
+ tooltip = MessageManager.getStringOrReturn("label.score_model_",
+ sm.getName());
}
+ toolTips.add(tooltip);
}
+
if (selectedIsPresent)
{
model.setSelectedItem(curSel);
}
/**
+ * Builds a list of score models which are applicable for the alignment and
+ * calculation type (peptide or generic models for protein, nucleotide or
+ * generic models for nucleotide).
+ * <p>
+ * As a special case, includes BLOSUM62 as an extra option for nucleotide PCA.
+ * This is for backwards compatibility with Jalview prior to 2.8 when BLOSUM62
+ * was the only score matrix supported. This is included if property
+ * BLOSUM62_PCA_FOR_NUCLEOTIDE is set to true in the Jalview properties file.
+ *
+ * @param nucleotide
+ * @param forPca
+ * @return
+ */
+ protected static List<ScoreModelI> getApplicableScoreModels(
+ boolean nucleotide, boolean forPca)
+ {
+ List<ScoreModelI> filtered = new ArrayList<>();
+
+ ScoreModels scoreModels = ScoreModels.getInstance();
+ for (ScoreModelI sm : scoreModels.getModels())
+ {
+ if (!nucleotide && sm.isProtein() || nucleotide && sm.isDNA())
+ {
+ filtered.add(sm);
+ }
+ }
+
+ /*
+ * special case: add BLOSUM62 as last option for nucleotide PCA,
+ * for backwards compatibility with Jalview < 2.8 (JAL-2962)
+ */
+ if (nucleotide && forPca
+ && Cache.getDefault("BLOSUM62_PCA_FOR_NUCLEOTIDE", false))
+ {
+ filtered.add(scoreModels.getBlosum62());
+ }
+
+ return filtered;
+ }
+
+ /**
* Open and calculate the selected tree or PCA on 'OK'
*/
protected void calculate_actionPerformed()
JvOptionPane.WARNING_MESSAGE);
return;
}
+
+ /*
+ * construct the panel and kick off its calculation thread
+ */
pcaPanel = new PCAPanel(af.alignPanel, modelName, params);
+ new Thread(pcaPanel).start();
+
}
/**
import jalview.bin.Cache;
import jalview.bin.Jalview;
import jalview.gui.ImageExporter.ImageWriterI;
+import jalview.io.BackupFiles;
import jalview.io.DataSourceType;
import jalview.io.FileFormat;
import jalview.io.FileFormatException;
import jalview.io.JalviewFileView;
import jalview.jbgui.GSplitFrame;
import jalview.jbgui.GStructureViewer;
+import jalview.project.Jalview2XML;
import jalview.structure.StructureSelectionManager;
import jalview.urls.IdOrgSettings;
import jalview.util.BrowserLauncher;
{
String fileFormat = Cache.getProperty("DEFAULT_FILE_FORMAT");
JalviewFileChooser chooser = JalviewFileChooser
- .forRead(Cache.getProperty("LAST_DIRECTORY"), fileFormat);
+ .forRead(Cache.getProperty("LAST_DIRECTORY"), fileFormat, true);
chooser.setFileView(new JalviewFileView());
chooser.setDialogTitle(
* Jalview project file
*/
@Override
- public void saveState_actionPerformed(boolean asCastor)
+ public void saveState_actionPerformed()
{
- JalviewFileChooser chooser = new JalviewFileChooser(
- asCastor ? "jvp" : "jvx",
- "Jalview Project");
+ saveState_actionPerformed(false);
+ }
- chooser.setFileView(new JalviewFileView());
- chooser.setDialogTitle(MessageManager.getString("label.save_state"));
- int option = chooser.showSaveDialog(this);
- if (option == JalviewFileChooser.APPROVE_OPTION)
+ public void saveState_actionPerformed(boolean saveAs)
+ {
+ java.io.File projectFile = getProjectFile();
+ // autoSave indicates we already have a file and don't need to ask
+ boolean autoSave = projectFile != null && !saveAs
+ && BackupFiles.getEnabled();
+
+ // System.out.println("autoSave="+autoSave+", projectFile='"+projectFile+"',
+ // saveAs="+saveAs+", Backups
+ // "+(BackupFiles.getEnabled()?"enabled":"disabled"));
+
+ boolean approveSave = false;
+ if (!autoSave)
{
- File choice = chooser.getSelectedFile();
- setProjectFile(choice);
+ JalviewFileChooser chooser = new JalviewFileChooser("jvp",
+ "Jalview Project");
+
+ chooser.setFileView(new JalviewFileView());
+ chooser.setDialogTitle(MessageManager.getString("label.save_state"));
+
+ int value = chooser.showSaveDialog(this);
+
+ if (value == JalviewFileChooser.APPROVE_OPTION)
+ {
+ projectFile = chooser.getSelectedFile();
+ setProjectFile(projectFile);
+ approveSave = true;
+ }
+ }
+ if (approveSave || autoSave)
+ {
+ final Desktop me = this;
+ final java.io.File chosenFile = projectFile;
new Thread(new Runnable()
{
@Override
// TODO: refactor to Jalview desktop session controller action.
setProgressBar(MessageManager.formatMessage(
"label.saving_jalview_project", new Object[]
- { choice.getName() }), choice.hashCode());
+ { chosenFile.getName() }), chosenFile.hashCode());
jalview.bin.Cache.setProperty("LAST_DIRECTORY",
- choice.getParent());
+ chosenFile.getParent());
// TODO catch and handle errors for savestate
// TODO prevent user from messing with the Desktop whilst we're saving
try
{
- if (asCastor)
- {
- new Jalview2XML().saveState(choice);
- }
- else
- {
- new jalview.project.Jalview2XML().saveState(choice);
- }
+ BackupFiles backupfiles = new BackupFiles(chosenFile);
+
+ new Jalview2XML().saveState(backupfiles.getTempFile());
+
+ backupfiles.setWriteSuccess(true);
+ backupfiles.rollBackupsAndRenameTempFile();
} catch (OutOfMemoryError oom)
{
- new OOMWarning(
- "Whilst saving current state to " + choice.getName(),
- oom);
+ new OOMWarning("Whilst saving current state to "
+ + chosenFile.getName(), oom);
} catch (Exception ex)
{
- Cache.log.error(
- "Problems whilst trying to save to " + choice.getName(),
- ex);
- JvOptionPane.showMessageDialog(Desktop.this,
+ Cache.log.error("Problems whilst trying to save to "
+ + chosenFile.getName(), ex);
+ JvOptionPane.showMessageDialog(me,
MessageManager.formatMessage(
"label.error_whilst_saving_current_state_to",
new Object[]
- { choice.getName() }),
+ { chosenFile.getName() }),
MessageManager.getString("label.couldnt_save_project"),
JvOptionPane.WARNING_MESSAGE);
}
- setProgressBar(null, choice.hashCode());
+ setProgressBar(null, chosenFile.hashCode());
}
}).start();
}
}
- void setProjectFile(File choice)
+ @Override
+ public void saveAsState_actionPerformed(ActionEvent e)
+ {
+ saveState_actionPerformed(true);
+ }
+
+ private void setProjectFile(File choice)
{
this.projectFile = choice;
}
}
/**
- * Prompts the user to choose a file and loads in as a Jalview project file
+ * Shows a file chooser dialog and tries to read in the selected file as a
+ * Jalview project
*/
@Override
- public void loadState_actionPerformed(boolean asCastor)
- {
- // TODO: GET RID OF .JVX BEFORE RELEASE JIM!
- final String[] suffix = asCastor ? new String[] { "jvp", "jar" }
- : new String[]
- { "jvx" };
- final String[] desc = asCastor
- ? new String[]
- { "Jalview Project", "Jalview Project (old)" }
- : new String[]
- { "Jalview Project" };
+ public void loadState_actionPerformed()
+ {
+ final String[] suffix = new String[] { "jvp", "jar" };
+ final String[] desc = new String[] { "Jalview Project",
+ "Jalview Project (old)" };
JalviewFileChooser chooser = new JalviewFileChooser(
- Cache.getProperty("LAST_DIRECTORY"), suffix,
- desc,
- "Jalview Project");
+ Cache.getProperty("LAST_DIRECTORY"), suffix, desc,
+ "Jalview Project", true, true); // last two booleans: allFiles,
+ // allowBackupFiles
chooser.setFileView(new JalviewFileView());
chooser.setDialogTitle(MessageManager.getString("label.restore_state"));
chooser.setResponseHandler(0, new Runnable()
@Override
public void run()
{
- try {
- if (asCastor)
- {
- new Jalview2XML().loadJalviewAlign(choice);
- }
- else
- {
- new jalview.project.Jalview2XML().loadJalviewAlign(selectedFile);
- }
- } catch (OutOfMemoryError oom)
+ try
{
- new OOMWarning("Whilst loading project from " + choice, oom);
- } catch (Exception ex)
- {
- Cache.log.error(
- "Problems whilst loading project from " + choice, ex);
- JvOptionPane.showMessageDialog(Desktop.desktop,
- MessageManager.formatMessage(
- "label.error_whilst_loading_project_from",
- new Object[]
- { choice }),
- MessageManager.getString("label.couldnt_load_project"),
- JvOptionPane.WARNING_MESSAGE);
- }
+ new Jalview2XML().loadJalviewAlign(choice);
+ } catch (OutOfMemoryError oom)
+ {
+ new OOMWarning("Whilst loading project from " + choice, oom);
+ } catch (Exception ex)
+ {
+ Cache.log.error(
+ "Problems whilst loading project from " + choice, ex);
+ JvOptionPane.showMessageDialog(Desktop.desktop,
+ MessageManager.formatMessage(
+ "label.error_whilst_loading_project_from",
+ new Object[]
+ { choice }),
+ MessageManager.getString("label.couldnt_load_project"),
+ JvOptionPane.WARNING_MESSAGE);
+ }
}
}).start();
}
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.swing.table.AbstractTableModel;
+import javax.swing.table.JTableHeader;
import javax.swing.table.TableCellEditor;
import javax.swing.table.TableCellRenderer;
import javax.swing.table.TableColumn;
int selectedRow = -1;
- JButton fetchDAS = new JButton();
-
- JButton saveDAS = new JButton();
-
- JButton cancelDAS = new JButton();
-
boolean resettingTable = false;
/*
table = new JTable()
{
-
-// @Override
-// public void repaint() {
-// System.out.println("FS repaint");
-// super.repaint();
-//
-// }
-//
-// @Override
-// public void repaint(long tm, int x, int y, int width, int height) {
-// System.out.println("FS repaint " + x + " " + y + " " + width + " " + height);
-// super.repaint(tm, x, y, width, height);
-//
-// }
-// @Override
-// public void invalidate() {
-// if (isValid())
-// System.out.println("FS invalidating ");
-// super.invalidate();
-// }
-//
-// @Override
-// public void validate() {
-// System.out.println("FS validating " + isValid());
-// super.validate();
-// }
-
@Override
public String getToolTipText(MouseEvent e)
{
return loc;
}
};
-
- // next line is needed to avoid (quiet) exceptions thrown
- // when column ordering changes so that the above constants
- // no longer apply.
- table.getTableHeader().setReorderingAllowed(false); // BH 2018
-
- table.getTableHeader().setFont(new Font("Verdana", Font.PLAIN, 12));
- ToolTipManager.sharedInstance().registerComponent(table);
-
+ JTableHeader tableHeader = table.getTableHeader();
+ tableHeader.setFont(new Font("Verdana", Font.PLAIN, 12));
+ tableHeader.setReorderingAllowed(false);
+ table.setFont(new Font("Verdana", Font.PLAIN, 12));
table.setDefaultEditor(FeatureColour.class, new ColorEditor());
table.setDefaultRenderer(FeatureColour.class, new ColorRenderer());
}
}
});
- help.setFont(JvSwingUtils.getLabelFont());
- help.setText(MessageManager.getString("action.help"));
- help.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- try
- {
- Help.showHelpWindow(HelpId.SequenceFeatureSettings);
- } catch (HelpSetException e1)
- {
- e1.printStackTrace();
- }
- }
- });
JButton cancel = new JButton(MessageManager.getString("action.cancel"));
cancel.setFont(JvSwingUtils.getLabelFont());
maxColour.setBorder(new LineBorder(Color.black));
/*
- * default max colour to last plain colour;
- * make min colour a pale version of max colour
+ * if not set, default max colour to last plain colour,
+ * and make min colour a pale version of max colour
*/
- FeatureColourI fc = fr.getFeatureColours().get(featureType);
- Color bg = fc.getColour() == null ? Color.BLACK : fc.getColour();
- maxColour.setBackground(bg);
- minColour.setBackground(ColorUtils.bleachColour(bg, 0.9f));
+ Color max = originalColour.getMaxColour();
+ if (max == null)
+ {
+ max = originalColour.getColour();
+ minColour.setBackground(ColorUtils.bleachColour(max, 0.9f));
+ }
+ else
+ {
+ maxColour.setBackground(max);
+ minColour.setBackground(originalColour.getMinColour());
+ }
noValueCombo = new JComboBox<>();
noValueCombo.addItem(MessageManager.getString("label.no_colour"));
singleColour.setFont(JvSwingUtils.getLabelFont());
singleColour.setBorder(BorderFactory.createLineBorder(Color.black));
singleColour.setPreferredSize(new Dimension(40, 20));
- if (originalColour.isGraduatedColour())
- {
- singleColour.setBackground(originalColour.getMaxColour());
- singleColour.setForeground(originalColour.getMaxColour());
- }
- else
- {
+ // if (originalColour.isGraduatedColour())
+ // {
+ // singleColour.setBackground(originalColour.getMaxColour());
+ // singleColour.setForeground(originalColour.getMaxColour());
+ // }
+ // else
+ // {
singleColour.setBackground(originalColour.getColour());
singleColour.setForeground(originalColour.getColour());
- }
+ // }
singleColour.addMouseListener(new MouseAdapter()
{
@Override
private FeatureColourI makeColourFromInputs()
{
/*
- * easiest case - a single colour
+ * min-max range is to (or from) threshold value if
+ * 'threshold is min/max' is selected
*/
- if (simpleColour.isSelected())
- {
- return new FeatureColour(singleColour.getBackground());
- }
-
- /*
- * next easiest case - colour by Label, or attribute text
- */
- if (byCategory.isSelected())
- {
- Color c = singleColour.getBackground();
- FeatureColourI fc = new FeatureColour(c);
- fc.setColourByLabel(true);
- String byWhat = (String) colourByTextCombo.getSelectedItem();
- if (!LABEL_18N.equals(byWhat))
- {
- fc.setAttributeName(
- FeatureMatcher.fromAttributeDisplayName(byWhat));
- }
- return fc;
- }
-
- /*
- * remaining case - graduated colour by score, or attribute value
- */
- Color noColour = null;
- if (noValueCombo.getSelectedIndex() == MIN_COLOUR_OPTION)
- {
- noColour = minColour.getBackground();
- }
- else if (noValueCombo.getSelectedIndex() == MAX_COLOUR_OPTION)
- {
- noColour = maxColour.getBackground();
- }
float thresh = 0f;
try
{
// invalid inputs are already handled on entry
}
-
- /*
- * min-max range is to (or from) threshold value if
- * 'threshold is min/max' is selected
- */
float minValue = min;
float maxValue = max;
int thresholdOption = threshold.getSelectedIndex();
{
maxValue = thresh;
}
+ Color noColour = null;
+ if (noValueCombo.getSelectedIndex() == MIN_COLOUR_OPTION)
+ {
+ noColour = minColour.getBackground();
+ }
+ else if (noValueCombo.getSelectedIndex() == MAX_COLOUR_OPTION)
+ {
+ noColour = maxColour.getBackground();
+ }
+
+ /*
+ * construct a colour that 'remembers' all the options, including
+ * those not currently selected
+ */
+ FeatureColourI fc = new FeatureColour(singleColour.getBackground(),
+ minColour.getBackground(), maxColour.getBackground(), noColour,
+ minValue, maxValue);
+
+ /*
+ * easiest case - a single colour
+ */
+ if (simpleColour.isSelected())
+ {
+ ((FeatureColour) fc).setGraduatedColour(false);
+ return fc;
+ }
/*
- * make the graduated colour
+ * next easiest case - colour by Label, or attribute text
*/
- FeatureColourI fc = new FeatureColour(minColour.getBackground(),
- maxColour.getBackground(), noColour, minValue, maxValue);
+ if (byCategory.isSelected())
+ {
+ fc.setColourByLabel(true);
+ String byWhat = (String) colourByTextCombo.getSelectedItem();
+ if (!LABEL_18N.equals(byWhat))
+ {
+ fc.setAttributeName(
+ FeatureMatcher.fromAttributeDisplayName(byWhat));
+ }
+ return fc;
+ }
/*
+ * remaining case - graduated colour by score, or attribute value;
* set attribute to colour by if selected
*/
String byWhat = (String) colourByRangeCombo.getSelectedItem();
*/
package jalview.gui;
+import jalview.api.AlignViewportI;
+import jalview.api.FinderI;
import jalview.datamodel.SearchResultMatchI;
import jalview.datamodel.SearchResultsI;
import jalview.datamodel.SequenceFeature;
import java.awt.event.ActionEvent;
import java.awt.event.KeyEvent;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
-import java.util.Vector;
+import java.util.Map;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
import javax.swing.JInternalFrame;
import javax.swing.JLayeredPane;
import javax.swing.KeyStroke;
+import javax.swing.event.InternalFrameAdapter;
import javax.swing.event.InternalFrameEvent;
/**
*/
public class Finder extends GFinder
{
- private static final int MY_HEIGHT = 120;
+ private static final int MIN_WIDTH = 350;
- private static final int MY_WIDTH = 400;
+ private static final int MIN_HEIGHT = 120;
- AlignmentViewport av;
+ private static final int MY_HEIGHT = 120;
- AlignmentPanel ap;
+ private static final int MY_WIDTH = 400;
- private static final int MIN_WIDTH = 350;
+ private AlignViewportI av;
- private static final int MIN_HEIGHT = 120;
+ private AlignmentPanel ap;
- JInternalFrame frame;
+ private JInternalFrame frame;
- int seqIndex = 0;
+ /*
+ * Finder agent per viewport searched
+ */
+ private Map<AlignViewportI, FinderI> finders;
- int resIndex = -1;
+ private SearchResultsI searchResults;
- SearchResultsI searchResults;
+ /*
+ * true if we only search a given alignment view
+ */
+ private boolean focusfixed;
/**
- * Creates a new Finder object with no associated viewport or panel.
+ * Creates a new Finder object with no associated viewport or panel. Each Find
+ * or Find Next action will act on whichever viewport has focus at the time.
*/
public Finder()
{
this(null, null);
- focusfixed = false;
}
/**
{
av = viewport;
ap = alignPanel;
- focusfixed = true;
+ finders = new HashMap<>();
+ focusfixed = viewport != null;
frame = new JInternalFrame();
frame.setContentPane(this);
frame.setLayer(JLayeredPane.PALETTE_LAYER);
frame.addInternalFrameListener(
- new javax.swing.event.InternalFrameAdapter()
+ new InternalFrameAdapter()
{
@Override
public void internalFrameClosing(InternalFrameEvent e)
}
/**
- * Performs the 'Find Next' action.
- *
- * @param e
+ * Performs the 'Find Next' action on the alignment panel with focus
*/
@Override
- public void findNext_actionPerformed(ActionEvent e)
+ public void findNext_actionPerformed()
{
if (getFocusedViewport())
{
}
/**
- * Performs the 'Find All' action.
- *
- * @param e
+ * Performs the 'Find All' action on the alignment panel with focus
*/
@Override
- public void findAll_actionPerformed(ActionEvent e)
+ public void findAll_actionPerformed()
{
if (getFocusedViewport())
{
- resIndex = -1;
- seqIndex = 0;
doSearch(true);
}
}
/**
- * do we only search a given alignment view ?
- */
- private boolean focusfixed;
-
- /**
* if !focusfixed and not in a desktop environment, checks that av and ap are
* valid. Otherwise, gets the topmost alignment window and sets av and ap
* accordingly
for (int f = 0; f < frames.length; f++)
{
JInternalFrame alignFrame = frames[f];
- if (alignFrame != null && alignFrame instanceof AlignFrame)
+ if (alignFrame != null && alignFrame instanceof AlignFrame
+ && !alignFrame.isIcon())
{
av = ((AlignFrame) alignFrame).viewport;
ap = ((AlignFrame) alignFrame).alignPanel;
{
return; // shouldn't happen
}
- List<SequenceI> seqs = new ArrayList<SequenceI>();
- List<SequenceFeature> features = new ArrayList<SequenceFeature>();
+ List<SequenceI> seqs = new ArrayList<>();
+ List<SequenceFeature> features = new ArrayList<>();
String searchString = searchBox.getUserInput();
String desc = "Search Results";
// other stuff
// TODO: add switches to control what is searched - sequences, IDS,
// descriptions, features
- jalview.analysis.Finder finder = new jalview.analysis.Finder(
- av.getAlignment(), av.getSelectionGroup(), seqIndex, resIndex);
- finder.setCaseSensitive(caseSensitive.isSelected());
- finder.setIncludeDescription(searchDescription.isSelected());
-
- finder.setFindAll(doFindAll);
-
- finder.find(searchString); // returns true if anything was actually found
-
- seqIndex = finder.getSeqIndex();
- resIndex = finder.getResIndex();
+ FinderI finder = finders.get(av);
+ if (finder == null)
+ {
+ /*
+ * first time we've searched this viewport
+ */
+ finder = new jalview.analysis.Finder(av);
+ finders.put(av, finder);
+ }
- searchResults = finder.getSearchResults(); // find(regex,
- // caseSensitive.isSelected(), )
- Vector<SequenceI> idMatch = finder.getIdMatch();
- boolean haveResults = false;
- // set or reset the GUI
- if ((idMatch.size() > 0))
+ boolean isCaseSensitive = caseSensitive.isSelected();
+ boolean doSearchDescription = searchDescription.isSelected();
+ if (doFindAll)
{
- haveResults = true;
- ap.getIdPanel().highlightSearchResults(idMatch);
+ finder.findAll(searchString, isCaseSensitive, doSearchDescription);
}
else
{
- ap.getIdPanel().highlightSearchResults(null);
+ finder.findNext(searchString, isCaseSensitive, doSearchDescription);
}
- if (searchResults.getSize() > 0)
+ searchResults = finder.getSearchResults();
+ List<SequenceI> idMatch = finder.getIdMatches();
+ ap.getIdPanel().highlightSearchResults(idMatch);
+
+ if (searchResults.isEmpty())
{
- haveResults = true;
- createFeatures.setEnabled(true);
+ searchResults = null;
}
else
{
- searchResults = null;
+ createFeatures.setEnabled(true);
}
searchBox.updateCache();
- // if allResults is null, this effectively switches displaySearch flag in
- // seqCanvas
ap.highlightSearchResults(searchResults);
// TODO: add enablers for 'SelectSequences' or 'SelectColumns' or
// 'SelectRegion' selection
- if (!haveResults)
+ if (idMatch.isEmpty() && searchResults == null)
{
- resIndex = -1;
- seqIndex = 0;
JvOptionPane.showInternalMessageDialog(this,
MessageManager.getString("label.finished_searching"), null,
JvOptionPane.PLAIN_MESSAGE);
message += searchResults.getSize()
+ " subsequence matches found.";
}
- resIndex = -1;
- seqIndex = 0;
JvOptionPane.showInternalMessageDialog(this, message, null,
JvOptionPane.PLAIN_MESSAGE);
}
*/
package jalview.gui;
+import java.awt.Point;
import java.net.URL;
import javax.help.BadIDException;
import javax.help.HelpSetException;
/**
- * Utility class to show the help documentation window.
+ * Utility class to show the help documentation window
*
* @author gmcarstairs
- *
*/
public class Help
{
public enum HelpId
{
Home("home"), SequenceFeatureSettings("seqfeatures.settings"),
- StructureViewer("viewingpdbs");
+ StructureViewer("viewingpdbs"), PdbFts("pdbfts"),
+ UniprotFts("uniprotfts");
private String id;
}
}
- private static final long HALF_A_MO = 500; // half a second
-
- private static long lastOpenedTime = 0L;
+ private static HelpBroker hb;
/**
* Not instantiable
}
/**
- * Show help text in a new window. But do nothing if within half a second of
- * the last invocation.
- *
- * This is a workaround for issue JAL-914 - both Desktop and AlignFrame
- * responding to F1 key, resulting in duplicate help windows opened.
+ * Shows the help window, at the entry specified by the given helpId
*
* @param id
- * TODO
*
* @throws HelpSetException
*/
public static void showHelpWindow(HelpId id) throws HelpSetException
{
- long timeNow = System.currentTimeMillis();
+ ClassLoader cl = Desktop.class.getClassLoader();
+ URL url = HelpSet.findHelpSet(cl, "help/help"); // $NON-NLS-$
+ HelpSet hs = new HelpSet(cl, url);
- if (timeNow - lastOpenedTime > HALF_A_MO)
+ if (hb == null)
{
- lastOpenedTime = timeNow;
- ClassLoader cl = Desktop.class.getClassLoader();
- URL url = HelpSet.findHelpSet(cl, "help/help"); // $NON-NLS-$
- HelpSet hs = new HelpSet(cl, url);
+ /*
+ * create help broker first time (only)
+ */
+ hb = hs.createHelpBroker();
+ }
- HelpBroker hb = hs.createHelpBroker();
- try
- {
- hb.setCurrentID(id.toString());
- } catch (BadIDException bad)
- {
- System.out.println("Bad help link: " + id.toString()
- + ": must match a target in help.jhm");
- throw bad;
- }
- hb.setDisplayed(true);
+ try
+ {
+ hb.setCurrentID(id.toString());
+ } catch (BadIDException bad)
+ {
+ System.out.println("Bad help link: " + id.toString()
+ + ": must match a target in help.jhm");
+ throw bad;
}
+
+ /*
+ * set Help visible - at its current location if it is already shown,
+ * else at a location as determined by the window manager
+ */
+ Point p = hb.getLocation();
+ hb.setLocation(p);
+ hb.setDisplayed(true);
}
+ /**
+ * Show the Help window at the root entry
+ *
+ * @throws HelpSetException
+ */
public static void showHelpWindow() throws HelpSetException
{
showHelpWindow(HelpId.Home);
int alignmentWidth = alignViewport.getAlignment().getWidth();
final int alheight = alignViewport.getAlignment().getHeight();
- if (alignViewport.hasHiddenColumns())
- {
- alignmentWidth = alignViewport.getAlignment().getHiddenColumns()
- .absoluteToVisibleColumn(alignmentWidth) - 1;
- }
-
int annotationHeight = 0;
AnnotationLabels labels = null;
*/
package jalview.gui;
+import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.Sequence;
import jalview.datamodel.SequenceFeature;
import jalview.datamodel.SequenceGroup;
import jalview.datamodel.SequenceI;
+import jalview.gui.SeqPanel.MousePos;
import jalview.io.SequenceAnnotationReport;
import jalview.util.MessageManager;
import jalview.util.Platform;
import java.util.List;
import javax.swing.JPanel;
+import javax.swing.JPopupMenu;
import javax.swing.SwingUtilities;
import javax.swing.Timer;
import javax.swing.ToolTipManager;
}
/**
- * Respond to mouse movement by constructing tooltip text for the sequence id
- * under the mouse.
+ * Responds to mouse movement by setting tooltip text for the sequence id
+ * under the mouse (or possibly annotation label, when in wrapped mode)
*
* @param e
- * DOCUMENT ME!
*/
@Override
public void mouseMoved(MouseEvent e)
{
SeqPanel sp = alignPanel.getSeqPanel();
- int seq = Math.max(0, sp.findSeq(e));
- if (seq > -1 && seq < av.getAlignment().getHeight())
+ MousePos pos = sp.findMousePosition(e);
+ if (pos.isOverAnnotation())
+ {
+ /*
+ * mouse is over an annotation label in wrapped mode
+ */
+ AlignmentAnnotation[] anns = av.getAlignment()
+ .getAlignmentAnnotation();
+ AlignmentAnnotation annotation = anns[pos.annotationIndex];
+ setToolTipText(AnnotationLabels.getTooltip(annotation));
+ alignPanel.alignFrame.setStatus(
+ AnnotationLabels.getStatusMessage(annotation, anns));
+ }
+ else
{
- SequenceI sequence = av.getAlignment().getSequenceAt(seq);
- StringBuilder tip = new StringBuilder(64);
- seqAnnotReport.createTooltipAnnotationReport(tip, sequence,
- av.isShowDBRefs(), av.isShowNPFeats(), sp.seqCanvas.fr);
- setToolTipText(JvSwingUtils.wrapTooltip(true,
- sequence.getDisplayId(true) + " " + tip.toString()));
+ int seq = Math.max(0, pos.seqIndex);
+ if (seq < av.getAlignment().getHeight())
+ {
+ SequenceI sequence = av.getAlignment().getSequenceAt(seq);
+ StringBuilder tip = new StringBuilder(64);
+ tip.append(sequence.getDisplayId(true)).append(" ");
+ seqAnnotReport.createTooltipAnnotationReport(tip, sequence,
+ av.isShowDBRefs(), av.isShowNPFeats(), sp.seqCanvas.fr);
+ setToolTipText(JvSwingUtils.wrapTooltip(true, tip.toString()));
+
+ StringBuilder text = new StringBuilder();
+ text.append("Sequence ").append(String.valueOf(seq + 1))
+ .append(" ID: ")
+ .append(sequence.getName());
+ alignPanel.alignFrame.setStatus(text.toString());
+ }
}
}
{
mouseDragging = true;
- int seq = Math.max(0, alignPanel.getSeqPanel().findSeq(e));
+ MousePos pos = alignPanel.getSeqPanel().findMousePosition(e);
+ if (pos.isOverAnnotation())
+ {
+ // mouse is over annotation label in wrapped mode
+ return;
+ }
+
+ int seq = Math.max(0, pos.seqIndex);
if (seq < lastid)
{
return;
}
- int seq = alignPanel.getSeqPanel().findSeq(e);
+ MousePos pos = alignPanel.getSeqPanel().findMousePosition(e);
+ int seq = pos.seqIndex;
+ if (pos.isOverAnnotation() || seq < 0)
+ {
+ return;
+ }
+
String id = av.getAlignment().getSequenceAt(seq).getName();
String url = Preferences.sequenceUrlLinks.getPrimaryUrl(id);
return;
}
+ MousePos pos = alignPanel.getSeqPanel().findMousePosition(e);
+
if (e.isPopupTrigger()) // Mac reports this in mousePressed
{
- showPopupMenu(e);
+ showPopupMenu(e, pos);
return;
}
av.getSelectionGroup().setEndRes(av.getAlignment().getWidth() - 1);
}
- int seq = alignPanel.getSeqPanel().findSeq(e);
if (e.isShiftDown() && (lastid != -1))
{
- selectSeqs(lastid, seq);
+ selectSeqs(lastid, pos.seqIndex);
}
else
{
- selectSeq(seq);
+ selectSeq(pos.seqIndex);
}
av.isSelectionGroupChanged(true);
*
* @param e
*/
- void showPopupMenu(MouseEvent e)
+ void showPopupMenu(MouseEvent e, MousePos pos)
{
- int seq2 = alignPanel.getSeqPanel().findSeq(e);
- Sequence sq = (Sequence) av.getAlignment().getSequenceAt(seq2);
+ if (pos.isOverAnnotation())
+ {
+ showAnnotationMenu(e, pos);
+ return;
+ }
+
+ Sequence sq = (Sequence) av.getAlignment().getSequenceAt(pos.seqIndex);
/*
* build a new links menu based on the current links
* and any non-positional features
*/
+ List<SequenceFeature> features = null;
+ if (sq != null)
+ {
List<String> nlinks = Preferences.sequenceUrlLinks.getLinksForMenu();
- List<SequenceFeature> features = sq.getFeatures().getNonPositionalFeatures();
+ features = sq.getFeatures().getNonPositionalFeatures();
for (SequenceFeature sf : features)
{
if (sf.links != null)
{
- for (String link : sf.links)
- {
- nlinks.add(link);
- }
+ nlinks.addAll(sf.links);
}
}
+ }
PopupMenu pop = new PopupMenu(alignPanel, sq, features,
Preferences.getGroupURLLinks());
}
/**
+ * On right mouse click on a Consensus annotation label, shows a limited popup
+ * menu, with options to configure the consensus calculation and rendering.
+ *
+ * @param e
+ * @param pos
+ * @see AnnotationLabels#showPopupMenu(MouseEvent)
+ */
+ void showAnnotationMenu(MouseEvent e, MousePos pos)
+ {
+ if (pos.annotationIndex == -1)
+ {
+ return;
+ }
+ AlignmentAnnotation[] anns = this.av.getAlignment()
+ .getAlignmentAnnotation();
+ if (anns == null || pos.annotationIndex >= anns.length)
+ {
+ return;
+ }
+ AlignmentAnnotation ann = anns[pos.annotationIndex];
+ if (!ann.label.contains("Consensus"))
+ {
+ return;
+ }
+
+ JPopupMenu pop = new JPopupMenu(
+ MessageManager.getString("label.annotations"));
+ AnnotationLabels.addConsensusMenuOptions(this.alignPanel, ann, pop);
+ pop.show(this, e.getX(), e.getY());
+ }
+
+ /**
* Toggle whether the sequence is part of the current selection group.
*
* @param seq
lastid = seq;
SequenceI pickedSeq = av.getAlignment().getSequenceAt(seq);
- av.getSelectionGroup().addOrRemove(pickedSeq, true);
+ av.getSelectionGroup().addOrRemove(pickedSeq, false);
}
/**
for (int i = start; i <= end; i++)
{
av.getSelectionGroup().addSequence(av.getAlignment().getSequenceAt(i),
- i == end);
+ false);
}
}
@Override
public void mouseReleased(MouseEvent e)
{
- stopScrolling();
+ if (scrollThread != null)
+ {
+ scrollThread.stopScrolling();
+ }
+ MousePos pos = alignPanel.getSeqPanel().findMousePosition(e);
mouseDragging = false;
PaintRefresher.Refresh(this, av.getSequenceSetId());
if (e.isPopupTrigger()) // Windows reports this in mouseReleased
{
- showPopupMenu(e);
+ showPopupMenu(e, pos);
}
}
{
getIdCanvas().setHighlighted(list);
- if (list == null)
+ if (list == null || list.isEmpty())
{
return;
}
+++ /dev/null
-/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.gui;
-
-import jalview.analysis.Conservation;
-import jalview.api.FeatureColourI;
-import jalview.api.ViewStyleI;
-import jalview.api.structures.JalviewStructureDisplayI;
-import jalview.bin.Cache;
-import jalview.datamodel.AlignedCodonFrame;
-import jalview.datamodel.Alignment;
-import jalview.datamodel.AlignmentAnnotation;
-import jalview.datamodel.AlignmentI;
-import jalview.datamodel.DBRefEntry;
-import jalview.datamodel.GraphLine;
-import jalview.datamodel.PDBEntry;
-import jalview.datamodel.RnaViewerModel;
-import jalview.datamodel.SequenceFeature;
-import jalview.datamodel.SequenceGroup;
-import jalview.datamodel.SequenceI;
-import jalview.datamodel.StructureViewerModel;
-import jalview.datamodel.StructureViewerModel.StructureData;
-import jalview.datamodel.features.FeatureMatcher;
-import jalview.datamodel.features.FeatureMatcherI;
-import jalview.datamodel.features.FeatureMatcherSet;
-import jalview.datamodel.features.FeatureMatcherSetI;
-import jalview.ext.varna.RnaModel;
-import jalview.gui.StructureViewer.ViewerType;
-import jalview.io.DataSourceType;
-import jalview.io.FileFormat;
-import jalview.renderer.ResidueShaderI;
-import jalview.schemabinding.version2.AlcodMap;
-import jalview.schemabinding.version2.AlcodonFrame;
-import jalview.schemabinding.version2.Annotation;
-import jalview.schemabinding.version2.AnnotationColours;
-import jalview.schemabinding.version2.AnnotationElement;
-import jalview.schemabinding.version2.CalcIdParam;
-import jalview.schemabinding.version2.CompoundMatcher;
-import jalview.schemabinding.version2.DBRef;
-import jalview.schemabinding.version2.Features;
-import jalview.schemabinding.version2.Group;
-import jalview.schemabinding.version2.HiddenColumns;
-import jalview.schemabinding.version2.JGroup;
-import jalview.schemabinding.version2.JSeq;
-import jalview.schemabinding.version2.JalviewModel;
-import jalview.schemabinding.version2.JalviewModelSequence;
-import jalview.schemabinding.version2.MapListFrom;
-import jalview.schemabinding.version2.MapListTo;
-import jalview.schemabinding.version2.Mapping;
-import jalview.schemabinding.version2.MappingChoice;
-import jalview.schemabinding.version2.MatchCondition;
-import jalview.schemabinding.version2.MatcherSet;
-import jalview.schemabinding.version2.OtherData;
-import jalview.schemabinding.version2.PdbentryItem;
-import jalview.schemabinding.version2.Pdbids;
-import jalview.schemabinding.version2.Property;
-import jalview.schemabinding.version2.RnaViewer;
-import jalview.schemabinding.version2.SecondaryStructure;
-import jalview.schemabinding.version2.Sequence;
-import jalview.schemabinding.version2.SequenceSet;
-import jalview.schemabinding.version2.SequenceSetProperties;
-import jalview.schemabinding.version2.Setting;
-import jalview.schemabinding.version2.StructureState;
-import jalview.schemabinding.version2.ThresholdLine;
-import jalview.schemabinding.version2.Tree;
-import jalview.schemabinding.version2.UserColours;
-import jalview.schemabinding.version2.Viewport;
-import jalview.schemabinding.version2.types.ColourThreshTypeType;
-import jalview.schemabinding.version2.types.FeatureMatcherByType;
-import jalview.schemabinding.version2.types.NoValueColour;
-import jalview.schemes.AnnotationColourGradient;
-import jalview.schemes.ColourSchemeI;
-import jalview.schemes.ColourSchemeProperty;
-import jalview.schemes.FeatureColour;
-import jalview.schemes.ResidueProperties;
-import jalview.schemes.UserColourScheme;
-import jalview.structure.StructureSelectionManager;
-import jalview.structures.models.AAStructureBindingModel;
-import jalview.util.Format;
-import jalview.util.MessageManager;
-import jalview.util.Platform;
-import jalview.util.StringUtils;
-import jalview.util.jarInputStreamProvider;
-import jalview.util.matcher.Condition;
-import jalview.viewmodel.AlignmentViewport;
-import jalview.viewmodel.ViewportRanges;
-import jalview.viewmodel.seqfeatures.FeatureRendererSettings;
-import jalview.viewmodel.seqfeatures.FeaturesDisplayed;
-import jalview.ws.jws2.Jws2Discoverer;
-import jalview.ws.jws2.dm.AAConSettings;
-import jalview.ws.jws2.jabaws2.Jws2Instance;
-import jalview.ws.params.ArgumentI;
-import jalview.ws.params.AutoCalcSetting;
-import jalview.ws.params.WsParamSetI;
-
-import java.awt.Color;
-import java.awt.Rectangle;
-import java.io.BufferedReader;
-import java.io.DataInputStream;
-import java.io.DataOutputStream;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.OutputStreamWriter;
-import java.io.PrintWriter;
-import java.lang.reflect.InvocationTargetException;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.util.ArrayList;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.Enumeration;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Hashtable;
-import java.util.IdentityHashMap;
-import java.util.Iterator;
-import java.util.LinkedHashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-import java.util.Set;
-import java.util.Vector;
-import java.util.jar.JarEntry;
-import java.util.jar.JarInputStream;
-import java.util.jar.JarOutputStream;
-
-import javax.swing.JInternalFrame;
-import javax.swing.SwingUtilities;
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Write out the current jalview desktop state as a Jalview XML stream.
- *
- * Note: the vamsas objects referred to here are primitive versions of the
- * VAMSAS project schema elements - they are not the same and most likely never
- * will be :)
- *
- * @author $author$
- * @version $Revision: 1.134 $
- */
-public class Jalview2XML
-{
- private static final String VIEWER_PREFIX = "viewer_";
-
- private static final String RNA_PREFIX = "rna_";
-
- private static final String UTF_8 = "UTF-8";
-
- // use this with nextCounter() to make unique names for entities
- private int counter = 0;
-
- /*
- * SequenceI reference -> XML ID string in jalview XML. Populated as XML reps
- * of sequence objects are created.
- */
- IdentityHashMap<SequenceI, String> seqsToIds = null;
-
- /**
- * jalview XML Sequence ID to jalview sequence object reference (both dataset
- * and alignment sequences. Populated as XML reps of sequence objects are
- * created.)
- */
- Map<String, SequenceI> seqRefIds = null;
-
- Map<String, SequenceI> incompleteSeqs = null;
-
- List<SeqFref> frefedSequence = null;
-
- boolean raiseGUI = true; // whether errors are raised in dialog boxes or not
-
- /*
- * Map of reconstructed AlignFrame objects that appear to have come from
- * SplitFrame objects (have a dna/protein complement view).
- */
- private Map<Viewport, AlignFrame> splitFrameCandidates = new HashMap<>();
-
- /*
- * Map from displayed rna structure models to their saved session state jar
- * entry names
- */
- private Map<RnaModel, String> rnaSessions = new HashMap<>();
-
- /**
- * create/return unique hash string for sq
- *
- * @param sq
- * @return new or existing unique string for sq
- */
- String seqHash(SequenceI sq)
- {
- if (seqsToIds == null)
- {
- initSeqRefs();
- }
- if (seqsToIds.containsKey(sq))
- {
- return seqsToIds.get(sq);
- }
- else
- {
- // create sequential key
- String key = "sq" + (seqsToIds.size() + 1);
- key = makeHashCode(sq, key); // check we don't have an external reference
- // for it already.
- seqsToIds.put(sq, key);
- return key;
- }
- }
-
- void initSeqRefs()
- {
- if (seqsToIds == null)
- {
- seqsToIds = new IdentityHashMap<>();
- }
- if (seqRefIds == null)
- {
- seqRefIds = new HashMap<>();
- }
- if (incompleteSeqs == null)
- {
- incompleteSeqs = new HashMap<>();
- }
- if (frefedSequence == null)
- {
- frefedSequence = new ArrayList<>();
- }
- }
-
- public Jalview2XML()
- {
- }
-
- public Jalview2XML(boolean raiseGUI)
- {
- this.raiseGUI = raiseGUI;
- }
-
- /**
- * base class for resolving forward references to sequences by their ID
- *
- * @author jprocter
- *
- */
- abstract class SeqFref
- {
- String sref;
-
- String type;
-
- public SeqFref(String _sref, String type)
- {
- sref = _sref;
- this.type = type;
- }
-
- public String getSref()
- {
- return sref;
- }
-
- public SequenceI getSrefSeq()
- {
- return seqRefIds.get(sref);
- }
-
- public boolean isResolvable()
- {
- return seqRefIds.get(sref) != null;
- }
-
- public SequenceI getSrefDatasetSeq()
- {
- SequenceI sq = seqRefIds.get(sref);
- if (sq != null)
- {
- while (sq.getDatasetSequence() != null)
- {
- sq = sq.getDatasetSequence();
- }
- }
- return sq;
- }
-
- /**
- * @return true if the forward reference was fully resolved
- */
- abstract boolean resolve();
-
- @Override
- public String toString()
- {
- return type + " reference to " + sref;
- }
- }
-
- /**
- * create forward reference for a mapping
- *
- * @param sref
- * @param _jmap
- * @return
- */
- public SeqFref newMappingRef(final String sref,
- final jalview.datamodel.Mapping _jmap)
- {
- SeqFref fref = new SeqFref(sref, "Mapping")
- {
- public jalview.datamodel.Mapping jmap = _jmap;
-
- @Override
- boolean resolve()
- {
- SequenceI seq = getSrefDatasetSeq();
- if (seq == null)
- {
- return false;
- }
- jmap.setTo(seq);
- return true;
- }
- };
- return fref;
- }
-
- public SeqFref newAlcodMapRef(final String sref,
- final AlignedCodonFrame _cf,
- final jalview.datamodel.Mapping _jmap)
- {
-
- SeqFref fref = new SeqFref(sref, "Codon Frame")
- {
- AlignedCodonFrame cf = _cf;
-
- public jalview.datamodel.Mapping mp = _jmap;
-
- @Override
- public boolean isResolvable()
- {
- return super.isResolvable() && mp.getTo() != null;
- };
-
- @Override
- boolean resolve()
- {
- SequenceI seq = getSrefDatasetSeq();
- if (seq == null)
- {
- return false;
- }
- cf.addMap(seq, mp.getTo(), mp.getMap());
- return true;
- }
- };
- return fref;
- }
-
- public void resolveFrefedSequences()
- {
- Iterator<SeqFref> nextFref = frefedSequence.iterator();
- int toresolve = frefedSequence.size();
- int unresolved = 0, failedtoresolve = 0;
- while (nextFref.hasNext())
- {
- SeqFref ref = nextFref.next();
- if (ref.isResolvable())
- {
- try
- {
- if (ref.resolve())
- {
- nextFref.remove();
- }
- else
- {
- failedtoresolve++;
- }
- } catch (Exception x)
- {
- System.err.println(
- "IMPLEMENTATION ERROR: Failed to resolve forward reference for sequence "
- + ref.getSref());
- x.printStackTrace();
- failedtoresolve++;
- }
- }
- else
- {
- unresolved++;
- }
- }
- if (unresolved > 0)
- {
- System.err.println("Jalview Project Import: There were " + unresolved
- + " forward references left unresolved on the stack.");
- }
- if (failedtoresolve > 0)
- {
- System.err.println("SERIOUS! " + failedtoresolve
- + " resolvable forward references failed to resolve.");
- }
- if (incompleteSeqs != null && incompleteSeqs.size() > 0)
- {
- System.err.println(
- "Jalview Project Import: There are " + incompleteSeqs.size()
- + " sequences which may have incomplete metadata.");
- if (incompleteSeqs.size() < 10)
- {
- for (SequenceI s : incompleteSeqs.values())
- {
- System.err.println(s.toString());
- }
- }
- else
- {
- System.err.println(
- "Too many to report. Skipping output of incomplete sequences.");
- }
- }
- }
-
- /**
- * This maintains a map of viewports, the key being the seqSetId. Important to
- * set historyItem and redoList for multiple views
- */
- Map<String, AlignViewport> viewportsAdded = new HashMap<>();
-
- Map<String, AlignmentAnnotation> annotationIds = new HashMap<>();
-
- String uniqueSetSuffix = "";
-
- /**
- * List of pdbfiles added to Jar
- */
- List<String> pdbfiles = null;
-
- // SAVES SEVERAL ALIGNMENT WINDOWS TO SAME JARFILE
- public void saveState(File statefile)
- {
- FileOutputStream fos = null;
- try
- {
- fos = new FileOutputStream(statefile);
- JarOutputStream jout = new JarOutputStream(fos);
- saveState(jout);
-
- } catch (Exception e)
- {
- // TODO: inform user of the problem - they need to know if their data was
- // not saved !
- if (errorMessage == null)
- {
- errorMessage = "Couldn't write Jalview Archive to output file '"
- + statefile + "' - See console error log for details";
- }
- else
- {
- errorMessage += "(output file was '" + statefile + "')";
- }
- e.printStackTrace();
- } finally
- {
- if (fos != null)
- {
- try
- {
- fos.close();
- } catch (IOException e)
- {
- // ignore
- }
- }
- }
- reportErrors();
- }
-
- /**
- * Writes a jalview project archive to the given Jar output stream.
- *
- * @param jout
- */
- public void saveState(JarOutputStream jout)
- {
- AlignFrame[] frames = Desktop.getAlignFrames();
-
- if (frames == null)
- {
- return;
- }
- saveAllFrames(Arrays.asList(frames), jout);
- }
-
- /**
- * core method for storing state for a set of AlignFrames.
- *
- * @param frames
- * - frames involving all data to be exported (including containing
- * splitframes)
- * @param jout
- * - project output stream
- */
- private void saveAllFrames(List<AlignFrame> frames, JarOutputStream jout)
- {
- Hashtable<String, AlignFrame> dsses = new Hashtable<>();
-
- /*
- * ensure cached data is clear before starting
- */
- // todo tidy up seqRefIds, seqsToIds initialisation / reset
- rnaSessions.clear();
- splitFrameCandidates.clear();
-
- try
- {
-
- // NOTE UTF-8 MUST BE USED FOR WRITING UNICODE CHARS
- // //////////////////////////////////////////////////
-
- List<String> shortNames = new ArrayList<>();
- List<String> viewIds = new ArrayList<>();
-
- // REVERSE ORDER
- for (int i = frames.size() - 1; i > -1; i--)
- {
- AlignFrame af = frames.get(i);
- // skip ?
- if (skipList != null && skipList
- .containsKey(af.getViewport().getSequenceSetId()))
- {
- continue;
- }
-
- String shortName = makeFilename(af, shortNames);
-
- int ap, apSize = af.alignPanels.size();
-
- for (ap = 0; ap < apSize; ap++)
- {
- AlignmentPanel apanel = af.alignPanels.get(ap);
- String fileName = apSize == 1 ? shortName : ap + shortName;
- if (!fileName.endsWith(".xml"))
- {
- fileName = fileName + ".xml";
- }
-
- saveState(apanel, fileName, jout, viewIds);
-
- String dssid = getDatasetIdRef(
- af.getViewport().getAlignment().getDataset());
- if (!dsses.containsKey(dssid))
- {
- dsses.put(dssid, af);
- }
- }
- }
-
- writeDatasetFor(dsses, "" + jout.hashCode() + " " + uniqueSetSuffix,
- jout);
-
- try
- {
- jout.flush();
- } catch (Exception foo)
- {
- }
- ;
- jout.close();
- } catch (Exception ex)
- {
- // TODO: inform user of the problem - they need to know if their data was
- // not saved !
- if (errorMessage == null)
- {
- errorMessage = "Couldn't write Jalview Archive - see error output for details";
- }
- ex.printStackTrace();
- }
- }
-
- /**
- * Generates a distinct file name, based on the title of the AlignFrame, by
- * appending _n for increasing n until an unused name is generated. The new
- * name (without its extension) is added to the list.
- *
- * @param af
- * @param namesUsed
- * @return the generated name, with .xml extension
- */
- protected String makeFilename(AlignFrame af, List<String> namesUsed)
- {
- String shortName = af.getTitle();
-
- if (shortName.indexOf(File.separatorChar) > -1)
- {
- shortName = shortName
- .substring(shortName.lastIndexOf(File.separatorChar) + 1);
- }
-
- int count = 1;
-
- while (namesUsed.contains(shortName))
- {
- if (shortName.endsWith("_" + (count - 1)))
- {
- shortName = shortName.substring(0, shortName.lastIndexOf("_"));
- }
-
- shortName = shortName.concat("_" + count);
- count++;
- }
-
- namesUsed.add(shortName);
-
- if (!shortName.endsWith(".xml"))
- {
- shortName = shortName + ".xml";
- }
- return shortName;
- }
-
- // USE THIS METHOD TO SAVE A SINGLE ALIGNMENT WINDOW
- public boolean saveAlignment(AlignFrame af, String jarFile,
- String fileName)
- {
- try
- {
- FileOutputStream fos = new FileOutputStream(jarFile);
- JarOutputStream jout = new JarOutputStream(fos);
- List<AlignFrame> frames = new ArrayList<>();
-
- // resolve splitframes
- if (af.getViewport().getCodingComplement() != null)
- {
- frames = ((SplitFrame) af.getSplitViewContainer()).getAlignFrames();
- }
- else
- {
- frames.add(af);
- }
- saveAllFrames(frames, jout);
- try
- {
- jout.flush();
- } catch (Exception foo)
- {
- }
- ;
- jout.close();
- return true;
- } catch (Exception ex)
- {
- errorMessage = "Couldn't Write alignment view to Jalview Archive - see error output for details";
- ex.printStackTrace();
- return false;
- }
- }
-
- private void writeDatasetFor(Hashtable<String, AlignFrame> dsses,
- String fileName, JarOutputStream jout)
- {
-
- for (String dssids : dsses.keySet())
- {
- AlignFrame _af = dsses.get(dssids);
- String jfileName = fileName + " Dataset for " + _af.getTitle();
- if (!jfileName.endsWith(".xml"))
- {
- jfileName = jfileName + ".xml";
- }
- saveState(_af.alignPanel, jfileName, true, jout, null);
- }
- }
-
- /**
- * create a JalviewModel from an alignment view and marshall it to a
- * JarOutputStream
- *
- * @param ap
- * panel to create jalview model for
- * @param fileName
- * name of alignment panel written to output stream
- * @param jout
- * jar output stream
- * @param viewIds
- * @param out
- * jar entry name
- */
- public JalviewModel saveState(AlignmentPanel ap, String fileName,
- JarOutputStream jout, List<String> viewIds)
- {
- return saveState(ap, fileName, false, jout, viewIds);
- }
-
- /**
- * create a JalviewModel from an alignment view and marshall it to a
- * JarOutputStream
- *
- * @param ap
- * panel to create jalview model for
- * @param fileName
- * name of alignment panel written to output stream
- * @param storeDS
- * when true, only write the dataset for the alignment, not the data
- * associated with the view.
- * @param jout
- * jar output stream
- * @param out
- * jar entry name
- */
- public JalviewModel saveState(AlignmentPanel ap, String fileName,
- boolean storeDS, JarOutputStream jout, List<String> viewIds)
- {
- if (viewIds == null)
- {
- viewIds = new ArrayList<>();
- }
-
- initSeqRefs();
-
- List<UserColourScheme> userColours = new ArrayList<>();
-
- AlignViewport av = ap.av;
- ViewportRanges vpRanges = av.getRanges();
-
- JalviewModel object = new JalviewModel();
- object.setVamsasModel(new jalview.schemabinding.version2.VamsasModel());
-
- object.setCreationDate(new java.util.Date(System.currentTimeMillis()));
- object.setVersion(
- jalview.bin.Cache.getDefault("VERSION", "Development Build"));
-
- /**
- * rjal is full height alignment, jal is actual alignment with full metadata
- * but excludes hidden sequences.
- */
- jalview.datamodel.AlignmentI rjal = av.getAlignment(), jal = rjal;
-
- if (av.hasHiddenRows())
- {
- rjal = jal.getHiddenSequences().getFullAlignment();
- }
-
- SequenceSet vamsasSet = new SequenceSet();
- Sequence vamsasSeq;
- JalviewModelSequence jms = new JalviewModelSequence();
-
- vamsasSet.setGapChar(jal.getGapCharacter() + "");
-
- if (jal.getDataset() != null)
- {
- // dataset id is the dataset's hashcode
- vamsasSet.setDatasetId(getDatasetIdRef(jal.getDataset()));
- if (storeDS)
- {
- // switch jal and the dataset
- jal = jal.getDataset();
- rjal = jal;
- }
- }
- if (jal.getProperties() != null)
- {
- Enumeration en = jal.getProperties().keys();
- while (en.hasMoreElements())
- {
- String key = en.nextElement().toString();
- SequenceSetProperties ssp = new SequenceSetProperties();
- ssp.setKey(key);
- ssp.setValue(jal.getProperties().get(key).toString());
- vamsasSet.addSequenceSetProperties(ssp);
- }
- }
-
- JSeq jseq;
- Set<String> calcIdSet = new HashSet<>();
- // record the set of vamsas sequence XML POJO we create.
- HashMap<String, Sequence> vamsasSetIds = new HashMap<>();
- // SAVE SEQUENCES
- for (final SequenceI jds : rjal.getSequences())
- {
- final SequenceI jdatasq = jds.getDatasetSequence() == null ? jds
- : jds.getDatasetSequence();
- String id = seqHash(jds);
- if (vamsasSetIds.get(id) == null)
- {
- if (seqRefIds.get(id) != null && !storeDS)
- {
- // This happens for two reasons: 1. multiple views are being
- // serialised.
- // 2. the hashCode has collided with another sequence's code. This
- // DOES
- // HAPPEN! (PF00072.15.stk does this)
- // JBPNote: Uncomment to debug writing out of files that do not read
- // back in due to ArrayOutOfBoundExceptions.
- // System.err.println("vamsasSeq backref: "+id+"");
- // System.err.println(jds.getName()+"
- // "+jds.getStart()+"-"+jds.getEnd()+" "+jds.getSequenceAsString());
- // System.err.println("Hashcode: "+seqHash(jds));
- // SequenceI rsq = (SequenceI) seqRefIds.get(id + "");
- // System.err.println(rsq.getName()+"
- // "+rsq.getStart()+"-"+rsq.getEnd()+" "+rsq.getSequenceAsString());
- // System.err.println("Hashcode: "+seqHash(rsq));
- }
- else
- {
- vamsasSeq = createVamsasSequence(id, jds);
- vamsasSet.addSequence(vamsasSeq);
- vamsasSetIds.put(id, vamsasSeq);
- seqRefIds.put(id, jds);
- }
- }
- jseq = new JSeq();
- jseq.setStart(jds.getStart());
- jseq.setEnd(jds.getEnd());
- jseq.setColour(av.getSequenceColour(jds).getRGB());
-
- jseq.setId(id); // jseq id should be a string not a number
- if (!storeDS)
- {
- // Store any sequences this sequence represents
- if (av.hasHiddenRows())
- {
- // use rjal, contains the full height alignment
- jseq.setHidden(
- av.getAlignment().getHiddenSequences().isHidden(jds));
-
- if (av.isHiddenRepSequence(jds))
- {
- jalview.datamodel.SequenceI[] reps = av
- .getRepresentedSequences(jds).getSequencesInOrder(rjal);
-
- for (int h = 0; h < reps.length; h++)
- {
- if (reps[h] != jds)
- {
- jseq.addHiddenSequences(rjal.findIndex(reps[h]));
- }
- }
- }
- }
- // mark sequence as reference - if it is the reference for this view
- if (jal.hasSeqrep())
- {
- jseq.setViewreference(jds == jal.getSeqrep());
- }
- }
-
- // TODO: omit sequence features from each alignment view's XML dump if we
- // are storing dataset
- List<jalview.datamodel.SequenceFeature> sfs = jds
- .getSequenceFeatures();
- for (SequenceFeature sf : sfs)
- {
- Features features = new Features();
-
- features.setBegin(sf.getBegin());
- features.setEnd(sf.getEnd());
- features.setDescription(sf.getDescription());
- features.setType(sf.getType());
- features.setFeatureGroup(sf.getFeatureGroup());
- features.setScore(sf.getScore());
- if (sf.links != null)
- {
- for (int l = 0; l < sf.links.size(); l++)
- {
- OtherData keyValue = new OtherData();
- keyValue.setKey("LINK_" + l);
- keyValue.setValue(sf.links.elementAt(l).toString());
- features.addOtherData(keyValue);
- }
- }
- if (sf.otherDetails != null)
- {
- /*
- * save feature attributes, which may be simple strings or
- * map valued (have sub-attributes)
- */
- for (Entry<String, Object> entry : sf.otherDetails.entrySet())
- {
- String key = entry.getKey();
- Object value = entry.getValue();
- if (value instanceof Map<?, ?>)
- {
- for (Entry<String, Object> subAttribute : ((Map<String, Object>) value)
- .entrySet())
- {
- OtherData otherData = new OtherData();
- otherData.setKey(key);
- otherData.setKey2(subAttribute.getKey());
- otherData.setValue(subAttribute.getValue().toString());
- features.addOtherData(otherData);
- }
- }
- else
- {
- OtherData otherData = new OtherData();
- otherData.setKey(key);
- otherData.setValue(value.toString());
- features.addOtherData(otherData);
- }
- }
- }
-
- jseq.addFeatures(features);
- }
-
- if (jdatasq.getAllPDBEntries() != null)
- {
- Enumeration en = jdatasq.getAllPDBEntries().elements();
- while (en.hasMoreElements())
- {
- Pdbids pdb = new Pdbids();
- jalview.datamodel.PDBEntry entry = (jalview.datamodel.PDBEntry) en
- .nextElement();
-
- String pdbId = entry.getId();
- pdb.setId(pdbId);
- pdb.setType(entry.getType());
-
- /*
- * Store any structure views associated with this sequence. This
- * section copes with duplicate entries in the project, so a dataset
- * only view *should* be coped with sensibly.
- */
- // This must have been loaded, is it still visible?
- JInternalFrame[] frames = Desktop.desktop.getAllFrames();
- String matchedFile = null;
- for (int f = frames.length - 1; f > -1; f--)
- {
- if (frames[f] instanceof StructureViewerBase)
- {
- StructureViewerBase viewFrame = (StructureViewerBase) frames[f];
- matchedFile = saveStructureState(ap, jds, pdb, entry, viewIds,
- matchedFile, viewFrame);
- /*
- * Only store each structure viewer's state once in the project
- * jar. First time through only (storeDS==false)
- */
- String viewId = viewFrame.getViewId();
- if (!storeDS && !viewIds.contains(viewId))
- {
- viewIds.add(viewId);
- try
- {
- String viewerState = viewFrame.getStateInfo();
- writeJarEntry(jout, getViewerJarEntryName(viewId),
- viewerState.getBytes());
- } catch (IOException e)
- {
- System.err.println(
- "Error saving viewer state: " + e.getMessage());
- }
- }
- }
- }
-
- if (matchedFile != null || entry.getFile() != null)
- {
- if (entry.getFile() != null)
- {
- // use entry's file
- matchedFile = entry.getFile();
- }
- pdb.setFile(matchedFile); // entry.getFile());
- if (pdbfiles == null)
- {
- pdbfiles = new ArrayList<>();
- }
-
- if (!pdbfiles.contains(pdbId))
- {
- pdbfiles.add(pdbId);
- copyFileToJar(jout, matchedFile, pdbId);
- }
- }
-
- Enumeration<String> props = entry.getProperties();
- if (props.hasMoreElements())
- {
- PdbentryItem item = new PdbentryItem();
- while (props.hasMoreElements())
- {
- Property prop = new Property();
- String key = props.nextElement();
- prop.setName(key);
- prop.setValue(entry.getProperty(key).toString());
- item.addProperty(prop);
- }
- pdb.addPdbentryItem(item);
- }
-
- jseq.addPdbids(pdb);
- }
- }
-
- saveRnaViewers(jout, jseq, jds, viewIds, ap, storeDS);
-
- jms.addJSeq(jseq);
- }
-
- if (!storeDS && av.hasHiddenRows())
- {
- jal = av.getAlignment();
- }
- // SAVE MAPPINGS
- // FOR DATASET
- if (storeDS && jal.getCodonFrames() != null)
- {
- List<AlignedCodonFrame> jac = jal.getCodonFrames();
- for (AlignedCodonFrame acf : jac)
- {
- AlcodonFrame alc = new AlcodonFrame();
- if (acf.getProtMappings() != null
- && acf.getProtMappings().length > 0)
- {
- boolean hasMap = false;
- SequenceI[] dnas = acf.getdnaSeqs();
- jalview.datamodel.Mapping[] pmaps = acf.getProtMappings();
- for (int m = 0; m < pmaps.length; m++)
- {
- AlcodMap alcmap = new AlcodMap();
- alcmap.setDnasq(seqHash(dnas[m]));
- alcmap.setMapping(
- createVamsasMapping(pmaps[m], dnas[m], null, false));
- alc.addAlcodMap(alcmap);
- hasMap = true;
- }
- if (hasMap)
- {
- vamsasSet.addAlcodonFrame(alc);
- }
- }
- // TODO: delete this ? dead code from 2.8.3->2.9 ?
- // {
- // AlcodonFrame alc = new AlcodonFrame();
- // vamsasSet.addAlcodonFrame(alc);
- // for (int p = 0; p < acf.aaWidth; p++)
- // {
- // Alcodon cmap = new Alcodon();
- // if (acf.codons[p] != null)
- // {
- // // Null codons indicate a gapped column in the translated peptide
- // // alignment.
- // cmap.setPos1(acf.codons[p][0]);
- // cmap.setPos2(acf.codons[p][1]);
- // cmap.setPos3(acf.codons[p][2]);
- // }
- // alc.addAlcodon(cmap);
- // }
- // if (acf.getProtMappings() != null
- // && acf.getProtMappings().length > 0)
- // {
- // SequenceI[] dnas = acf.getdnaSeqs();
- // jalview.datamodel.Mapping[] pmaps = acf.getProtMappings();
- // for (int m = 0; m < pmaps.length; m++)
- // {
- // AlcodMap alcmap = new AlcodMap();
- // alcmap.setDnasq(seqHash(dnas[m]));
- // alcmap.setMapping(createVamsasMapping(pmaps[m], dnas[m], null,
- // false));
- // alc.addAlcodMap(alcmap);
- // }
- // }
- }
- }
-
- // SAVE TREES
- // /////////////////////////////////
- if (!storeDS && av.getCurrentTree() != null)
- {
- // FIND ANY ASSOCIATED TREES
- // NOT IMPLEMENTED FOR HEADLESS STATE AT PRESENT
- if (Desktop.desktop != null)
- {
- JInternalFrame[] frames = Desktop.desktop.getAllFrames();
-
- for (int t = 0; t < frames.length; t++)
- {
- if (frames[t] instanceof TreePanel)
- {
- TreePanel tp = (TreePanel) frames[t];
-
- if (tp.getTreeCanvas().getViewport().getAlignment() == jal)
- {
- Tree tree = new Tree();
- tree.setTitle(tp.getTitle());
- tree.setCurrentTree((av.getCurrentTree() == tp.getTree()));
- tree.setNewick(tp.getTree().print());
- tree.setThreshold(tp.getTreeCanvas().getThreshold());
-
- tree.setFitToWindow(tp.fitToWindow.getState());
- tree.setFontName(tp.getTreeFont().getName());
- tree.setFontSize(tp.getTreeFont().getSize());
- tree.setFontStyle(tp.getTreeFont().getStyle());
- tree.setMarkUnlinked(tp.placeholdersMenu.getState());
-
- tree.setShowBootstrap(tp.bootstrapMenu.getState());
- tree.setShowDistances(tp.distanceMenu.getState());
-
- tree.setHeight(tp.getHeight());
- tree.setWidth(tp.getWidth());
- tree.setXpos(tp.getX());
- tree.setYpos(tp.getY());
- tree.setId(makeHashCode(tp, null));
- jms.addTree(tree);
- }
- }
- }
- }
- }
-
- // SAVE ANNOTATIONS
- /**
- * store forward refs from an annotationRow to any groups
- */
- IdentityHashMap<SequenceGroup, String> groupRefs = new IdentityHashMap<>();
- if (storeDS)
- {
- for (SequenceI sq : jal.getSequences())
- {
- // Store annotation on dataset sequences only
- AlignmentAnnotation[] aa = sq.getAnnotation();
- if (aa != null && aa.length > 0)
- {
- storeAlignmentAnnotation(aa, groupRefs, av, calcIdSet, storeDS,
- vamsasSet);
- }
- }
- }
- else
- {
- if (jal.getAlignmentAnnotation() != null)
- {
- // Store the annotation shown on the alignment.
- AlignmentAnnotation[] aa = jal.getAlignmentAnnotation();
- storeAlignmentAnnotation(aa, groupRefs, av, calcIdSet, storeDS,
- vamsasSet);
- }
- }
- // SAVE GROUPS
- if (jal.getGroups() != null)
- {
- JGroup[] groups = new JGroup[jal.getGroups().size()];
- int i = -1;
- for (jalview.datamodel.SequenceGroup sg : jal.getGroups())
- {
- JGroup jGroup = new JGroup();
- groups[++i] = jGroup;
-
- jGroup.setStart(sg.getStartRes());
- jGroup.setEnd(sg.getEndRes());
- jGroup.setName(sg.getName());
- if (groupRefs.containsKey(sg))
- {
- // group has references so set its ID field
- jGroup.setId(groupRefs.get(sg));
- }
- ColourSchemeI colourScheme = sg.getColourScheme();
- if (colourScheme != null)
- {
- ResidueShaderI groupColourScheme = sg.getGroupColourScheme();
- if (groupColourScheme.conservationApplied())
- {
- jGroup.setConsThreshold(groupColourScheme.getConservationInc());
-
- if (colourScheme instanceof jalview.schemes.UserColourScheme)
- {
- jGroup.setColour(
- setUserColourScheme(colourScheme, userColours, jms));
- }
- else
- {
- jGroup.setColour(colourScheme.getSchemeName());
- }
- }
- else if (colourScheme instanceof jalview.schemes.AnnotationColourGradient)
- {
- jGroup.setColour("AnnotationColourGradient");
- jGroup.setAnnotationColours(constructAnnotationColours(
- (jalview.schemes.AnnotationColourGradient) colourScheme,
- userColours, jms));
- }
- else if (colourScheme instanceof jalview.schemes.UserColourScheme)
- {
- jGroup.setColour(
- setUserColourScheme(colourScheme, userColours, jms));
- }
- else
- {
- jGroup.setColour(colourScheme.getSchemeName());
- }
-
- jGroup.setPidThreshold(groupColourScheme.getThreshold());
- }
-
- jGroup.setOutlineColour(sg.getOutlineColour().getRGB());
- jGroup.setDisplayBoxes(sg.getDisplayBoxes());
- jGroup.setDisplayText(sg.getDisplayText());
- jGroup.setColourText(sg.getColourText());
- jGroup.setTextCol1(sg.textColour.getRGB());
- jGroup.setTextCol2(sg.textColour2.getRGB());
- jGroup.setTextColThreshold(sg.thresholdTextColour);
- jGroup.setShowUnconserved(sg.getShowNonconserved());
- jGroup.setIgnoreGapsinConsensus(sg.getIgnoreGapsConsensus());
- jGroup.setShowConsensusHistogram(sg.isShowConsensusHistogram());
- jGroup.setShowSequenceLogo(sg.isShowSequenceLogo());
- jGroup.setNormaliseSequenceLogo(sg.isNormaliseSequenceLogo());
- for (SequenceI seq : sg.getSequences())
- {
- jGroup.addSeq(seqHash(seq));
- }
- }
-
- jms.setJGroup(groups);
- }
- if (!storeDS)
- {
- // /////////SAVE VIEWPORT
- Viewport view = new Viewport();
- view.setTitle(ap.alignFrame.getTitle());
- view.setSequenceSetId(
- makeHashCode(av.getSequenceSetId(), av.getSequenceSetId()));
- view.setId(av.getViewId());
- if (av.getCodingComplement() != null)
- {
- view.setComplementId(av.getCodingComplement().getViewId());
- }
- view.setViewName(av.getViewName());
- view.setGatheredViews(av.isGatherViewsHere());
-
- Rectangle size = ap.av.getExplodedGeometry();
- Rectangle position = size;
- if (size == null)
- {
- size = ap.alignFrame.getBounds();
- if (av.getCodingComplement() != null)
- {
- position = ((SplitFrame) ap.alignFrame.getSplitViewContainer())
- .getBounds();
- }
- else
- {
- position = size;
- }
- }
- view.setXpos(position.x);
- view.setYpos(position.y);
-
- view.setWidth(size.width);
- view.setHeight(size.height);
-
- view.setStartRes(vpRanges.getStartRes());
- view.setStartSeq(vpRanges.getStartSeq());
-
- if (av.getGlobalColourScheme() instanceof jalview.schemes.UserColourScheme)
- {
- view.setBgColour(setUserColourScheme(av.getGlobalColourScheme(),
- userColours, jms));
- }
- else if (av
- .getGlobalColourScheme() instanceof jalview.schemes.AnnotationColourGradient)
- {
- AnnotationColours ac = constructAnnotationColours(
- (jalview.schemes.AnnotationColourGradient) av
- .getGlobalColourScheme(),
- userColours, jms);
-
- view.setAnnotationColours(ac);
- view.setBgColour("AnnotationColourGradient");
- }
- else
- {
- view.setBgColour(ColourSchemeProperty
- .getColourName(av.getGlobalColourScheme()));
- }
-
- ResidueShaderI vcs = av.getResidueShading();
- ColourSchemeI cs = av.getGlobalColourScheme();
-
- if (cs != null)
- {
- if (vcs.conservationApplied())
- {
- view.setConsThreshold(vcs.getConservationInc());
- if (cs instanceof jalview.schemes.UserColourScheme)
- {
- view.setBgColour(setUserColourScheme(cs, userColours, jms));
- }
- }
- view.setPidThreshold(vcs.getThreshold());
- }
-
- view.setConservationSelected(av.getConservationSelected());
- view.setPidSelected(av.getAbovePIDThreshold());
- view.setFontName(av.font.getName());
- view.setFontSize(av.font.getSize());
- view.setFontStyle(av.font.getStyle());
- view.setScaleProteinAsCdna(av.getViewStyle().isScaleProteinAsCdna());
- view.setRenderGaps(av.isRenderGaps());
- view.setShowAnnotation(av.isShowAnnotation());
- view.setShowBoxes(av.getShowBoxes());
- view.setShowColourText(av.getColourText());
- view.setShowFullId(av.getShowJVSuffix());
- view.setRightAlignIds(av.isRightAlignIds());
- view.setShowSequenceFeatures(av.isShowSequenceFeatures());
- view.setShowText(av.getShowText());
- view.setShowUnconserved(av.getShowUnconserved());
- view.setWrapAlignment(av.getWrapAlignment());
- view.setTextCol1(av.getTextColour().getRGB());
- view.setTextCol2(av.getTextColour2().getRGB());
- view.setTextColThreshold(av.getThresholdTextColour());
- view.setShowConsensusHistogram(av.isShowConsensusHistogram());
- view.setShowSequenceLogo(av.isShowSequenceLogo());
- view.setNormaliseSequenceLogo(av.isNormaliseSequenceLogo());
- view.setShowGroupConsensus(av.isShowGroupConsensus());
- view.setShowGroupConservation(av.isShowGroupConservation());
- view.setShowNPfeatureTooltip(av.isShowNPFeats());
- view.setShowDbRefTooltip(av.isShowDBRefs());
- view.setFollowHighlight(av.isFollowHighlight());
- view.setFollowSelection(av.followSelection);
- view.setIgnoreGapsinConsensus(av.isIgnoreGapsConsensus());
- if (av.getFeaturesDisplayed() != null)
- {
- jalview.schemabinding.version2.FeatureSettings fs = new jalview.schemabinding.version2.FeatureSettings();
-
- FeatureRenderer fr = ap.getSeqPanel().seqCanvas
- .getFeatureRenderer();
- String[] renderOrder = fr.getRenderOrder().toArray(new String[0]);
-
- Vector<String> settingsAdded = new Vector<>();
- if (renderOrder != null)
- {
- for (String featureType : renderOrder)
- {
- Setting setting = new Setting();
- setting.setType(featureType);
-
- /*
- * save any filter for the feature type
- */
- FeatureMatcherSetI filter = fr.getFeatureFilter(featureType);
- if (filter != null) {
- Iterator<FeatureMatcherI> filters = filter.getMatchers().iterator();
- FeatureMatcherI firstFilter = filters.next();
- setting.setMatcherSet(Jalview2XML.marshalFilter(
- firstFilter, filters, filter.isAnded()));
- }
-
- /*
- * save colour scheme for the feature type
- */
- FeatureColourI fcol = fr.getFeatureStyle(featureType);
- if (!fcol.isSimpleColour())
- {
- setting.setColour(fcol.getMaxColour().getRGB());
- setting.setMincolour(fcol.getMinColour().getRGB());
- setting.setMin(fcol.getMin());
- setting.setMax(fcol.getMax());
- setting.setColourByLabel(fcol.isColourByLabel());
- if (fcol.isColourByAttribute())
- {
- setting.setAttributeName(fcol.getAttributeName());
- }
- setting.setAutoScale(fcol.isAutoScaled());
- setting.setThreshold(fcol.getThreshold());
- Color noColour = fcol.getNoColour();
- if (noColour == null)
- {
- setting.setNoValueColour(NoValueColour.NONE);
- }
- else if (noColour.equals(fcol.getMaxColour()))
- {
- setting.setNoValueColour(NoValueColour.MAX);
- }
- else
- {
- setting.setNoValueColour(NoValueColour.MIN);
- }
- // -1 = No threshold, 0 = Below, 1 = Above
- setting.setThreshstate(fcol.isAboveThreshold() ? 1
- : (fcol.isBelowThreshold() ? 0 : -1));
- }
- else
- {
- setting.setColour(fcol.getColour().getRGB());
- }
-
- setting.setDisplay(
- av.getFeaturesDisplayed().isVisible(featureType));
- float rorder = fr
- .getOrder(featureType);
- if (rorder > -1)
- {
- setting.setOrder(rorder);
- }
- fs.addSetting(setting);
- settingsAdded.addElement(featureType);
- }
- }
-
- // is groups actually supposed to be a map here ?
- Iterator<String> en = fr.getFeatureGroups().iterator();
- Vector<String> groupsAdded = new Vector<>();
- while (en.hasNext())
- {
- String grp = en.next();
- if (groupsAdded.contains(grp))
- {
- continue;
- }
- Group g = new Group();
- g.setName(grp);
- g.setDisplay(((Boolean) fr.checkGroupVisibility(grp, false))
- .booleanValue());
- fs.addGroup(g);
- groupsAdded.addElement(grp);
- }
- jms.setFeatureSettings(fs);
- }
-
- if (av.hasHiddenColumns())
- {
- jalview.datamodel.HiddenColumns hidden = av.getAlignment()
- .getHiddenColumns();
- if (hidden == null)
- {
- warn("REPORT BUG: avoided null columnselection bug (DMAM reported). Please contact Jim about this.");
- }
- else
- {
- Iterator<int[]> hiddenRegions = hidden.iterator();
- while (hiddenRegions.hasNext())
- {
- int[] region = hiddenRegions.next();
- HiddenColumns hc = new HiddenColumns();
- hc.setStart(region[0]);
- hc.setEnd(region[1]);
- view.addHiddenColumns(hc);
- }
- }
- }
- if (calcIdSet.size() > 0)
- {
- for (String calcId : calcIdSet)
- {
- if (calcId.trim().length() > 0)
- {
- CalcIdParam cidp = createCalcIdParam(calcId, av);
- // Some calcIds have no parameters.
- if (cidp != null)
- {
- view.addCalcIdParam(cidp);
- }
- }
- }
- }
-
- jms.addViewport(view);
- }
- object.setJalviewModelSequence(jms);
- object.getVamsasModel().addSequenceSet(vamsasSet);
-
- if (jout != null && fileName != null)
- {
- // We may not want to write the object to disk,
- // eg we can copy the alignViewport to a new view object
- // using save and then load
- try
- {
- System.out.println("Writing jar entry " + fileName);
- JarEntry entry = new JarEntry(fileName);
- jout.putNextEntry(entry);
- PrintWriter pout = new PrintWriter(
- new OutputStreamWriter(jout, UTF_8));
- Marshaller marshaller = new Marshaller(pout);
- marshaller.marshal(object);
- pout.flush();
- jout.closeEntry();
- } catch (Exception ex)
- {
- // TODO: raise error in GUI if marshalling failed.
- ex.printStackTrace();
- }
- }
- return object;
- }
-
- /**
- * Save any Varna viewers linked to this sequence. Writes an rnaViewer element
- * for each viewer, with
- * <ul>
- * <li>viewer geometry (position, size, split pane divider location)</li>
- * <li>index of the selected structure in the viewer (currently shows gapped
- * or ungapped)</li>
- * <li>the id of the annotation holding RNA secondary structure</li>
- * <li>(currently only one SS is shown per viewer, may be more in future)</li>
- * </ul>
- * Varna viewer state is also written out (in native Varna XML) to separate
- * project jar entries. A separate entry is written for each RNA structure
- * displayed, with the naming convention
- * <ul>
- * <li>rna_viewId_sequenceId_annotationId_[gapped|trimmed]</li>
- * </ul>
- *
- * @param jout
- * @param jseq
- * @param jds
- * @param viewIds
- * @param ap
- * @param storeDataset
- */
- protected void saveRnaViewers(JarOutputStream jout, JSeq jseq,
- final SequenceI jds, List<String> viewIds, AlignmentPanel ap,
- boolean storeDataset)
- {
- if (Desktop.desktop == null)
- {
- return;
- }
- JInternalFrame[] frames = Desktop.desktop.getAllFrames();
- for (int f = frames.length - 1; f > -1; f--)
- {
- if (frames[f] instanceof AppVarna)
- {
- AppVarna varna = (AppVarna) frames[f];
- /*
- * link the sequence to every viewer that is showing it and is linked to
- * its alignment panel
- */
- if (varna.isListeningFor(jds) && ap == varna.getAlignmentPanel())
- {
- String viewId = varna.getViewId();
- RnaViewer rna = new RnaViewer();
- rna.setViewId(viewId);
- rna.setTitle(varna.getTitle());
- rna.setXpos(varna.getX());
- rna.setYpos(varna.getY());
- rna.setWidth(varna.getWidth());
- rna.setHeight(varna.getHeight());
- rna.setDividerLocation(varna.getDividerLocation());
- rna.setSelectedRna(varna.getSelectedIndex());
- jseq.addRnaViewer(rna);
-
- /*
- * Store each Varna panel's state once in the project per sequence.
- * First time through only (storeDataset==false)
- */
- // boolean storeSessions = false;
- // String sequenceViewId = viewId + seqsToIds.get(jds);
- // if (!storeDataset && !viewIds.contains(sequenceViewId))
- // {
- // viewIds.add(sequenceViewId);
- // storeSessions = true;
- // }
- for (RnaModel model : varna.getModels())
- {
- if (model.seq == jds)
- {
- /*
- * VARNA saves each view (sequence or alignment secondary
- * structure, gapped or trimmed) as a separate XML file
- */
- String jarEntryName = rnaSessions.get(model);
- if (jarEntryName == null)
- {
-
- String varnaStateFile = varna.getStateInfo(model.rna);
- jarEntryName = RNA_PREFIX + viewId + "_" + nextCounter();
- copyFileToJar(jout, varnaStateFile, jarEntryName);
- rnaSessions.put(model, jarEntryName);
- }
- SecondaryStructure ss = new SecondaryStructure();
- String annotationId = varna.getAnnotation(jds).annotationId;
- ss.setAnnotationId(annotationId);
- ss.setViewerState(jarEntryName);
- ss.setGapped(model.gapped);
- ss.setTitle(model.title);
- rna.addSecondaryStructure(ss);
- }
- }
- }
- }
- }
- }
-
- /**
- * Copy the contents of a file to a new entry added to the output jar
- *
- * @param jout
- * @param infilePath
- * @param jarEntryName
- */
- protected void copyFileToJar(JarOutputStream jout, String infilePath,
- String jarEntryName)
- {
- DataInputStream dis = null;
- try
- {
- File file = new File(infilePath);
- if (file.exists() && jout != null)
- {
- dis = new DataInputStream(new FileInputStream(file));
- byte[] data = new byte[(int) file.length()];
- dis.readFully(data);
- writeJarEntry(jout, jarEntryName, data);
- }
- } catch (Exception ex)
- {
- ex.printStackTrace();
- } finally
- {
- if (dis != null)
- {
- try
- {
- dis.close();
- } catch (IOException e)
- {
- // ignore
- }
- }
- }
- }
-
- /**
- * Write the data to a new entry of given name in the output jar file
- *
- * @param jout
- * @param jarEntryName
- * @param data
- * @throws IOException
- */
- protected void writeJarEntry(JarOutputStream jout, String jarEntryName,
- byte[] data) throws IOException
- {
- if (jout != null)
- {
- System.out.println("Writing jar entry " + jarEntryName);
- jout.putNextEntry(new JarEntry(jarEntryName));
- DataOutputStream dout = new DataOutputStream(jout);
- dout.write(data, 0, data.length);
- dout.flush();
- jout.closeEntry();
- }
- }
-
- /**
- * Save the state of a structure viewer
- *
- * @param ap
- * @param jds
- * @param pdb
- * the archive XML element under which to save the state
- * @param entry
- * @param viewIds
- * @param matchedFile
- * @param viewFrame
- * @return
- */
- protected String saveStructureState(AlignmentPanel ap, SequenceI jds,
- Pdbids pdb, PDBEntry entry, List<String> viewIds,
- String matchedFile, StructureViewerBase viewFrame)
- {
- final AAStructureBindingModel bindingModel = viewFrame.getBinding();
-
- /*
- * Look for any bindings for this viewer to the PDB file of interest
- * (including part matches excluding chain id)
- */
- for (int peid = 0; peid < bindingModel.getPdbCount(); peid++)
- {
- final PDBEntry pdbentry = bindingModel.getPdbEntry(peid);
- final String pdbId = pdbentry.getId();
- if (!pdbId.equals(entry.getId())
- && !(entry.getId().length() > 4 && entry.getId().toLowerCase()
- .startsWith(pdbId.toLowerCase())))
- {
- /*
- * not interested in a binding to a different PDB entry here
- */
- continue;
- }
- if (matchedFile == null)
- {
- matchedFile = pdbentry.getFile();
- }
- else if (!matchedFile.equals(pdbentry.getFile()))
- {
- Cache.log.warn(
- "Probably lost some PDB-Sequence mappings for this structure file (which apparently has same PDB Entry code): "
- + pdbentry.getFile());
- }
- // record the
- // file so we
- // can get at it if the ID
- // match is ambiguous (e.g.
- // 1QIP==1qipA)
-
- for (int smap = 0; smap < viewFrame.getBinding()
- .getSequence()[peid].length; smap++)
- {
- // if (jal.findIndex(jmol.jmb.sequence[peid][smap]) > -1)
- if (jds == viewFrame.getBinding().getSequence()[peid][smap])
- {
- StructureState state = new StructureState();
- state.setVisible(true);
- state.setXpos(viewFrame.getX());
- state.setYpos(viewFrame.getY());
- state.setWidth(viewFrame.getWidth());
- state.setHeight(viewFrame.getHeight());
- final String viewId = viewFrame.getViewId();
- state.setViewId(viewId);
- state.setAlignwithAlignPanel(viewFrame.isUsedforaligment(ap));
- state.setColourwithAlignPanel(viewFrame.isUsedforcolourby(ap));
- state.setColourByJmol(viewFrame.isColouredByViewer());
- state.setType(viewFrame.getViewerType().toString());
- pdb.addStructureState(state);
- }
- }
- }
- return matchedFile;
- }
-
- /**
- * Populates the AnnotationColours xml for save. This captures the settings of
- * the options in the 'Colour by Annotation' dialog.
- *
- * @param acg
- * @param userColours
- * @param jms
- * @return
- */
- private AnnotationColours constructAnnotationColours(
- AnnotationColourGradient acg, List<UserColourScheme> userColours,
- JalviewModelSequence jms)
- {
- AnnotationColours ac = new AnnotationColours();
- ac.setAboveThreshold(acg.getAboveThreshold());
- ac.setThreshold(acg.getAnnotationThreshold());
- // 2.10.2 save annotationId (unique) not annotation label
- ac.setAnnotation(acg.getAnnotation().annotationId);
- if (acg.getBaseColour() instanceof UserColourScheme)
- {
- ac.setColourScheme(
- setUserColourScheme(acg.getBaseColour(), userColours, jms));
- }
- else
- {
- ac.setColourScheme(
- ColourSchemeProperty.getColourName(acg.getBaseColour()));
- }
-
- ac.setMaxColour(acg.getMaxColour().getRGB());
- ac.setMinColour(acg.getMinColour().getRGB());
- ac.setPerSequence(acg.isSeqAssociated());
- ac.setPredefinedColours(acg.isPredefinedColours());
- return ac;
- }
-
- private void storeAlignmentAnnotation(AlignmentAnnotation[] aa,
- IdentityHashMap<SequenceGroup, String> groupRefs,
- AlignmentViewport av, Set<String> calcIdSet, boolean storeDS,
- SequenceSet vamsasSet)
- {
-
- for (int i = 0; i < aa.length; i++)
- {
- Annotation an = new Annotation();
-
- AlignmentAnnotation annotation = aa[i];
- if (annotation.annotationId != null)
- {
- annotationIds.put(annotation.annotationId, annotation);
- }
-
- an.setId(annotation.annotationId);
-
- an.setVisible(annotation.visible);
-
- an.setDescription(annotation.description);
-
- if (annotation.sequenceRef != null)
- {
- // 2.9 JAL-1781 xref on sequence id rather than name
- an.setSequenceRef(seqsToIds.get(annotation.sequenceRef));
- }
- if (annotation.groupRef != null)
- {
- String groupIdr = groupRefs.get(annotation.groupRef);
- if (groupIdr == null)
- {
- // make a locally unique String
- groupRefs.put(annotation.groupRef,
- groupIdr = ("" + System.currentTimeMillis()
- + annotation.groupRef.getName()
- + groupRefs.size()));
- }
- an.setGroupRef(groupIdr.toString());
- }
-
- // store all visualization attributes for annotation
- an.setGraphHeight(annotation.graphHeight);
- an.setCentreColLabels(annotation.centreColLabels);
- an.setScaleColLabels(annotation.scaleColLabel);
- an.setShowAllColLabels(annotation.showAllColLabels);
- an.setBelowAlignment(annotation.belowAlignment);
-
- if (annotation.graph > 0)
- {
- an.setGraph(true);
- an.setGraphType(annotation.graph);
- an.setGraphGroup(annotation.graphGroup);
- if (annotation.getThreshold() != null)
- {
- ThresholdLine line = new ThresholdLine();
- line.setLabel(annotation.getThreshold().label);
- line.setValue(annotation.getThreshold().value);
- line.setColour(annotation.getThreshold().colour.getRGB());
- an.setThresholdLine(line);
- }
- }
- else
- {
- an.setGraph(false);
- }
-
- an.setLabel(annotation.label);
-
- if (annotation == av.getAlignmentQualityAnnot()
- || annotation == av.getAlignmentConservationAnnotation()
- || annotation == av.getAlignmentConsensusAnnotation()
- || annotation.autoCalculated)
- {
- // new way of indicating autocalculated annotation -
- an.setAutoCalculated(annotation.autoCalculated);
- }
- if (annotation.hasScore())
- {
- an.setScore(annotation.getScore());
- }
-
- if (annotation.getCalcId() != null)
- {
- calcIdSet.add(annotation.getCalcId());
- an.setCalcId(annotation.getCalcId());
- }
- if (annotation.hasProperties())
- {
- for (String pr : annotation.getProperties())
- {
- Property prop = new Property();
- prop.setName(pr);
- prop.setValue(annotation.getProperty(pr));
- an.addProperty(prop);
- }
- }
-
- AnnotationElement ae;
- if (annotation.annotations != null)
- {
- an.setScoreOnly(false);
- for (int a = 0; a < annotation.annotations.length; a++)
- {
- if ((annotation == null) || (annotation.annotations[a] == null))
- {
- continue;
- }
-
- ae = new AnnotationElement();
- if (annotation.annotations[a].description != null)
- {
- ae.setDescription(annotation.annotations[a].description);
- }
- if (annotation.annotations[a].displayCharacter != null)
- {
- ae.setDisplayCharacter(
- annotation.annotations[a].displayCharacter);
- }
-
- if (!Float.isNaN(annotation.annotations[a].value))
- {
- ae.setValue(annotation.annotations[a].value);
- }
-
- ae.setPosition(a);
- if (annotation.annotations[a].secondaryStructure > ' ')
- {
- ae.setSecondaryStructure(
- annotation.annotations[a].secondaryStructure + "");
- }
-
- if (annotation.annotations[a].colour != null
- && annotation.annotations[a].colour != java.awt.Color.black)
- {
- ae.setColour(annotation.annotations[a].colour.getRGB());
- }
-
- an.addAnnotationElement(ae);
- if (annotation.autoCalculated)
- {
- // only write one non-null entry into the annotation row -
- // sufficient to get the visualization attributes necessary to
- // display data
- continue;
- }
- }
- }
- else
- {
- an.setScoreOnly(true);
- }
- if (!storeDS || (storeDS && !annotation.autoCalculated))
- {
- // skip autocalculated annotation - these are only provided for
- // alignments
- vamsasSet.addAnnotation(an);
- }
- }
-
- }
-
- private CalcIdParam createCalcIdParam(String calcId, AlignViewport av)
- {
- AutoCalcSetting settings = av.getCalcIdSettingsFor(calcId);
- if (settings != null)
- {
- CalcIdParam vCalcIdParam = new CalcIdParam();
- vCalcIdParam.setCalcId(calcId);
- vCalcIdParam.addServiceURL(settings.getServiceURI());
- // generic URI allowing a third party to resolve another instance of the
- // service used for this calculation
- for (String urls : settings.getServiceURLs())
- {
- vCalcIdParam.addServiceURL(urls);
- }
- vCalcIdParam.setVersion("1.0");
- if (settings.getPreset() != null)
- {
- WsParamSetI setting = settings.getPreset();
- vCalcIdParam.setName(setting.getName());
- vCalcIdParam.setDescription(setting.getDescription());
- }
- else
- {
- vCalcIdParam.setName("");
- vCalcIdParam.setDescription("Last used parameters");
- }
- // need to be able to recover 1) settings 2) user-defined presets or
- // recreate settings from preset 3) predefined settings provided by
- // service - or settings that can be transferred (or discarded)
- vCalcIdParam.setParameters(
- settings.getWsParamFile().replace("\n", "|\\n|"));
- vCalcIdParam.setAutoUpdate(settings.isAutoUpdate());
- // todo - decide if updateImmediately is needed for any projects.
-
- return vCalcIdParam;
- }
- return null;
- }
-
- private boolean recoverCalcIdParam(CalcIdParam calcIdParam,
- AlignViewport av)
- {
- if (calcIdParam.getVersion().equals("1.0"))
- {
- Jws2Instance service = Jws2Discoverer.getDiscoverer()
- .getPreferredServiceFor(calcIdParam.getServiceURL());
- if (service != null)
- {
- WsParamSetI parmSet = null;
- try
- {
- parmSet = service.getParamStore().parseServiceParameterFile(
- calcIdParam.getName(), calcIdParam.getDescription(),
- calcIdParam.getServiceURL(),
- calcIdParam.getParameters().replace("|\\n|", "\n"));
- } catch (IOException x)
- {
- warn("Couldn't parse parameter data for "
- + calcIdParam.getCalcId(), x);
- return false;
- }
- List<ArgumentI> argList = null;
- if (calcIdParam.getName().length() > 0)
- {
- parmSet = service.getParamStore()
- .getPreset(calcIdParam.getName());
- if (parmSet != null)
- {
- // TODO : check we have a good match with settings in AACon -
- // otherwise we'll need to create a new preset
- }
- }
- else
- {
- argList = parmSet.getArguments();
- parmSet = null;
- }
- AAConSettings settings = new AAConSettings(
- calcIdParam.isAutoUpdate(), service, parmSet, argList);
- av.setCalcIdSettingsFor(calcIdParam.getCalcId(), settings,
- calcIdParam.isNeedsUpdate());
- return true;
- }
- else
- {
- warn("Cannot resolve a service for the parameters used in this project. Try configuring a JABAWS server.");
- return false;
- }
- }
- throw new Error(MessageManager.formatMessage(
- "error.unsupported_version_calcIdparam", new Object[]
- { calcIdParam.toString() }));
- }
-
- /**
- * External mapping between jalview objects and objects yielding a valid and
- * unique object ID string. This is null for normal Jalview project IO, but
- * non-null when a jalview project is being read or written as part of a
- * vamsas session.
- */
- IdentityHashMap jv2vobj = null;
-
- /**
- * Construct a unique ID for jvobj using either existing bindings or if none
- * exist, the result of the hashcode call for the object.
- *
- * @param jvobj
- * jalview data object
- * @return unique ID for referring to jvobj
- */
- private String makeHashCode(Object jvobj, String altCode)
- {
- if (jv2vobj != null)
- {
- Object id = jv2vobj.get(jvobj);
- if (id != null)
- {
- return id.toString();
- }
- // check string ID mappings
- if (jvids2vobj != null && jvobj instanceof String)
- {
- id = jvids2vobj.get(jvobj);
- }
- if (id != null)
- {
- return id.toString();
- }
- // give up and warn that something has gone wrong
- warn("Cannot find ID for object in external mapping : " + jvobj);
- }
- return altCode;
- }
-
- /**
- * return local jalview object mapped to ID, if it exists
- *
- * @param idcode
- * (may be null)
- * @return null or object bound to idcode
- */
- private Object retrieveExistingObj(String idcode)
- {
- if (idcode != null && vobj2jv != null)
- {
- return vobj2jv.get(idcode);
- }
- return null;
- }
-
- /**
- * binding from ID strings from external mapping table to jalview data model
- * objects.
- */
- private Hashtable vobj2jv;
-
- private Sequence createVamsasSequence(String id, SequenceI jds)
- {
- return createVamsasSequence(true, id, jds, null);
- }
-
- private Sequence createVamsasSequence(boolean recurse, String id,
- SequenceI jds, SequenceI parentseq)
- {
- Sequence vamsasSeq = new Sequence();
- vamsasSeq.setId(id);
- vamsasSeq.setName(jds.getName());
- vamsasSeq.setSequence(jds.getSequenceAsString());
- vamsasSeq.setDescription(jds.getDescription());
- List<DBRefEntry> dbrefs = null;
- if (jds.getDatasetSequence() != null)
- {
- vamsasSeq.setDsseqid(seqHash(jds.getDatasetSequence()));
- }
- else
- {
- // seqId==dsseqid so we can tell which sequences really are
- // dataset sequences only
- vamsasSeq.setDsseqid(id);
- dbrefs = jds.getDBRefs();
- if (parentseq == null)
- {
- parentseq = jds;
- }
- }
- if (dbrefs != null)
- {
- for (int d = 0, n = dbrefs.size(); d < n; d++)
- {
- DBRef dbref = new DBRef();
- DBRefEntry e = dbrefs.get(d);
- dbref.setSource(e.getSource());
- dbref.setVersion(e.getVersion());
- dbref.setAccessionId(e.getAccessionId());
- if (e.hasMap())
- {
- Mapping mp = createVamsasMapping(e.getMap(), parentseq,
- jds, recurse);
- dbref.setMapping(mp);
- }
- vamsasSeq.addDBRef(dbref);
- }
- }
- return vamsasSeq;
- }
-
- private Mapping createVamsasMapping(jalview.datamodel.Mapping jmp,
- SequenceI parentseq, SequenceI jds, boolean recurse)
- {
- Mapping mp = null;
- if (jmp.getMap() != null)
- {
- mp = new Mapping();
-
- jalview.util.MapList mlst = jmp.getMap();
- List<int[]> r = mlst.getFromRanges();
- for (int[] range : r)
- {
- MapListFrom mfrom = new MapListFrom();
- mfrom.setStart(range[0]);
- mfrom.setEnd(range[1]);
- mp.addMapListFrom(mfrom);
- }
- r = mlst.getToRanges();
- for (int[] range : r)
- {
- MapListTo mto = new MapListTo();
- mto.setStart(range[0]);
- mto.setEnd(range[1]);
- mp.addMapListTo(mto);
- }
- mp.setMapFromUnit(mlst.getFromRatio());
- mp.setMapToUnit(mlst.getToRatio());
- if (jmp.getTo() != null)
- {
- MappingChoice mpc = new MappingChoice();
-
- // check/create ID for the sequence referenced by getTo()
-
- String jmpid = "";
- SequenceI ps = null;
- if (parentseq != jmp.getTo()
- && parentseq.getDatasetSequence() != jmp.getTo())
- {
- // chaining dbref rather than a handshaking one
- jmpid = seqHash(ps = jmp.getTo());
- }
- else
- {
- jmpid = seqHash(ps = parentseq);
- }
- mpc.setDseqFor(jmpid);
- if (!seqRefIds.containsKey(mpc.getDseqFor()))
- {
- jalview.bin.Cache.log.debug("creatign new DseqFor ID");
- seqRefIds.put(mpc.getDseqFor(), ps);
- }
- else
- {
- jalview.bin.Cache.log.debug("reusing DseqFor ID");
- }
-
- mp.setMappingChoice(mpc);
- }
- }
- return mp;
- }
-
- String setUserColourScheme(jalview.schemes.ColourSchemeI cs,
- List<UserColourScheme> userColours, JalviewModelSequence jms)
- {
- String id = null;
- jalview.schemes.UserColourScheme ucs = (jalview.schemes.UserColourScheme) cs;
- boolean newucs = false;
- if (!userColours.contains(ucs))
- {
- userColours.add(ucs);
- newucs = true;
- }
- id = "ucs" + userColours.indexOf(ucs);
- if (newucs)
- {
- // actually create the scheme's entry in the XML model
- java.awt.Color[] colours = ucs.getColours();
- jalview.schemabinding.version2.UserColours uc = new jalview.schemabinding.version2.UserColours();
- jalview.schemabinding.version2.UserColourScheme jbucs = new jalview.schemabinding.version2.UserColourScheme();
-
- for (int i = 0; i < colours.length; i++)
- {
- jalview.schemabinding.version2.Colour col = new jalview.schemabinding.version2.Colour();
- col.setName(ResidueProperties.aa[i]);
- col.setRGB(jalview.util.Format.getHexString(colours[i]));
- jbucs.addColour(col);
- }
- if (ucs.getLowerCaseColours() != null)
- {
- colours = ucs.getLowerCaseColours();
- for (int i = 0; i < colours.length; i++)
- {
- jalview.schemabinding.version2.Colour col = new jalview.schemabinding.version2.Colour();
- col.setName(ResidueProperties.aa[i].toLowerCase());
- col.setRGB(jalview.util.Format.getHexString(colours[i]));
- jbucs.addColour(col);
- }
- }
-
- uc.setId(id);
- uc.setUserColourScheme(jbucs);
- jms.addUserColours(uc);
- }
-
- return id;
- }
-
- jalview.schemes.UserColourScheme getUserColourScheme(
- JalviewModelSequence jms, String id)
- {
- UserColours[] uc = jms.getUserColours();
- UserColours colours = null;
-
- for (int i = 0; i < uc.length; i++)
- {
- if (uc[i].getId().equals(id))
- {
- colours = uc[i];
-
- break;
- }
- }
-
- java.awt.Color[] newColours = new java.awt.Color[24];
-
- for (int i = 0; i < 24; i++)
- {
- newColours[i] = new java.awt.Color(Integer.parseInt(
- colours.getUserColourScheme().getColour(i).getRGB(), 16));
- }
-
- jalview.schemes.UserColourScheme ucs = new jalview.schemes.UserColourScheme(
- newColours);
-
- if (colours.getUserColourScheme().getColourCount() > 24)
- {
- newColours = new java.awt.Color[23];
- for (int i = 0; i < 23; i++)
- {
- newColours[i] = new java.awt.Color(Integer.parseInt(
- colours.getUserColourScheme().getColour(i + 24).getRGB(),
- 16));
- }
- ucs.setLowerCaseColours(newColours);
- }
-
- return ucs;
- }
-
- /**
- * contains last error message (if any) encountered by XML loader.
- */
- String errorMessage = null;
-
- /**
- * flag to control whether the Jalview2XML_V1 parser should be deferred to if
- * exceptions are raised during project XML parsing
- */
- public boolean attemptversion1parse = true;
-
- /**
- * Load a jalview project archive from a jar file
- *
- * @param file
- * - HTTP URL or filename
- */
- public AlignFrame loadJalviewAlign(final String file)
- {
-
- jalview.gui.AlignFrame af = null;
-
- try
- {
- // create list to store references for any new Jmol viewers created
- newStructureViewers = new Vector<>();
- // UNMARSHALLER SEEMS TO CLOSE JARINPUTSTREAM, MOST ANNOYING
- // Workaround is to make sure caller implements the JarInputStreamProvider
- // interface
- // so we can re-open the jar input stream for each entry.
-
- jarInputStreamProvider jprovider = createjarInputStreamProvider(file);
- af = loadJalviewAlign(jprovider);
- af.setMenusForViewport();
-
- } catch (MalformedURLException e)
- {
- errorMessage = "Invalid URL format for '" + file + "'";
- reportErrors();
- } finally
- {
- try
- {
- SwingUtilities.invokeAndWait(new Runnable()
- {
- @Override
- public void run()
- {
- setLoadingFinishedForNewStructureViewers();
- };
- });
- } catch (Exception x)
- {
- System.err.println("Error loading alignment: " + x.getMessage());
- }
- }
- return af;
- }
-
- private jarInputStreamProvider createjarInputStreamProvider(
- final String file) throws MalformedURLException
- {
- URL url = null;
- errorMessage = null;
- uniqueSetSuffix = null;
- seqRefIds = null;
- viewportsAdded.clear();
- frefedSequence = null;
-
- if (file.startsWith("http://"))
- {
- url = new URL(file);
- }
- final URL _url = url;
- return new jarInputStreamProvider()
- {
-
- @Override
- public JarInputStream getJarInputStream() throws IOException
- {
- if (_url != null)
- {
- return new JarInputStream(_url.openStream());
- }
- else
- {
- return new JarInputStream(new FileInputStream(file));
- }
- }
-
- @Override
- public String getFilename()
- {
- return file;
- }
- };
- }
-
- /**
- * Recover jalview session from a jalview project archive. Caller may
- * initialise uniqueSetSuffix, seqRefIds, viewportsAdded and frefedSequence
- * themselves. Any null fields will be initialised with default values,
- * non-null fields are left alone.
- *
- * @param jprovider
- * @return
- */
- public AlignFrame loadJalviewAlign(final jarInputStreamProvider jprovider)
- {
- errorMessage = null;
- if (uniqueSetSuffix == null)
- {
- uniqueSetSuffix = System.currentTimeMillis() % 100000 + "";
- }
- if (seqRefIds == null)
- {
- initSeqRefs();
- }
- AlignFrame af = null, _af = null;
- IdentityHashMap<AlignmentI, AlignmentI> importedDatasets = new IdentityHashMap<>();
- Map<String, AlignFrame> gatherToThisFrame = new HashMap<>();
- final String file = jprovider.getFilename();
- try
- {
- JarInputStream jin = null;
- JarEntry jarentry = null;
- int entryCount = 1;
-
- do
- {
- jin = jprovider.getJarInputStream();
- for (int i = 0; i < entryCount; i++)
- {
- jarentry = jin.getNextJarEntry();
- }
-
- if (jarentry != null && jarentry.getName().endsWith(".xml"))
- {
- InputStreamReader in = new InputStreamReader(jin, UTF_8);
- JalviewModel object = new JalviewModel();
-
- Unmarshaller unmar = new Unmarshaller(object);
- unmar.setValidation(false);
- object = (JalviewModel) unmar.unmarshal(in);
- if (true) // !skipViewport(object))
- {
- _af = loadFromObject(object, file, true, jprovider);
- if (_af != null && object.getJalviewModelSequence()
- .getViewportCount() > 0)
- {
- if (af == null)
- {
- // store a reference to the first view
- af = _af;
- }
- if (_af.viewport.isGatherViewsHere())
- {
- // if this is a gathered view, keep its reference since
- // after gathering views, only this frame will remain
- af = _af;
- gatherToThisFrame.put(_af.viewport.getSequenceSetId(), _af);
- }
- // Save dataset to register mappings once all resolved
- importedDatasets.put(af.viewport.getAlignment().getDataset(),
- af.viewport.getAlignment().getDataset());
- }
- }
- entryCount++;
- }
- else if (jarentry != null)
- {
- // Some other file here.
- entryCount++;
- }
- } while (jarentry != null);
- resolveFrefedSequences();
- } catch (IOException ex)
- {
- ex.printStackTrace();
- errorMessage = "Couldn't locate Jalview XML file : " + file;
- System.err.println(
- "Exception whilst loading jalview XML file : " + ex + "\n");
- } catch (Exception ex)
- {
- System.err.println("Parsing as Jalview Version 2 file failed.");
- ex.printStackTrace(System.err);
- if (attemptversion1parse)
- {
- // Is Version 1 Jar file?
- try
- {
- af = new Jalview2XML_V1(raiseGUI).LoadJalviewAlign(jprovider);
- } catch (Exception ex2)
- {
- System.err.println("Exception whilst loading as jalviewXMLV1:");
- ex2.printStackTrace();
- af = null;
- }
- }
- if (Desktop.instance != null)
- {
- Desktop.instance.stopLoading();
- }
- if (af != null)
- {
- System.out.println("Successfully loaded archive file");
- return af;
- }
- ex.printStackTrace();
-
- System.err.println(
- "Exception whilst loading jalview XML file : " + ex + "\n");
- } catch (OutOfMemoryError e)
- {
- // Don't use the OOM Window here
- errorMessage = "Out of memory loading jalview XML file";
- System.err.println("Out of memory whilst loading jalview XML file");
- e.printStackTrace();
- }
-
- /*
- * Regather multiple views (with the same sequence set id) to the frame (if
- * any) that is flagged as the one to gather to, i.e. convert them to tabbed
- * views instead of separate frames. Note this doesn't restore a state where
- * some expanded views in turn have tabbed views - the last "first tab" read
- * in will play the role of gatherer for all.
- */
- for (AlignFrame fr : gatherToThisFrame.values())
- {
- Desktop.instance.gatherViews(fr);
- }
-
- restoreSplitFrames();
- for (AlignmentI ds : importedDatasets.keySet())
- {
- if (ds.getCodonFrames() != null)
- {
- StructureSelectionManager
- .getStructureSelectionManager(Desktop.instance)
- .registerMappings(ds.getCodonFrames());
- }
- }
- if (errorMessage != null)
- {
- reportErrors();
- }
-
- if (Desktop.instance != null)
- {
- Desktop.instance.stopLoading();
- }
-
- return af;
- }
-
- /**
- * Try to reconstruct and display SplitFrame windows, where each contains
- * complementary dna and protein alignments. Done by pairing up AlignFrame
- * objects (created earlier) which have complementary viewport ids associated.
- */
- protected void restoreSplitFrames()
- {
- List<SplitFrame> gatherTo = new ArrayList<>();
- List<AlignFrame> addedToSplitFrames = new ArrayList<>();
- Map<String, AlignFrame> dna = new HashMap<>();
-
- /*
- * Identify the DNA alignments
- */
- for (Entry<Viewport, AlignFrame> candidate : splitFrameCandidates
- .entrySet())
- {
- AlignFrame af = candidate.getValue();
- if (af.getViewport().getAlignment().isNucleotide())
- {
- dna.put(candidate.getKey().getId(), af);
- }
- }
-
- /*
- * Try to match up the protein complements
- */
- for (Entry<Viewport, AlignFrame> candidate : splitFrameCandidates
- .entrySet())
- {
- AlignFrame af = candidate.getValue();
- if (!af.getViewport().getAlignment().isNucleotide())
- {
- String complementId = candidate.getKey().getComplementId();
- // only non-null complements should be in the Map
- if (complementId != null && dna.containsKey(complementId))
- {
- final AlignFrame dnaFrame = dna.get(complementId);
- SplitFrame sf = createSplitFrame(dnaFrame, af);
- addedToSplitFrames.add(dnaFrame);
- addedToSplitFrames.add(af);
- dnaFrame.setMenusForViewport();
- af.setMenusForViewport();
- if (af.viewport.isGatherViewsHere())
- {
- gatherTo.add(sf);
- }
- }
- }
- }
-
- /*
- * Open any that we failed to pair up (which shouldn't happen!) as
- * standalone AlignFrame's.
- */
- for (Entry<Viewport, AlignFrame> candidate : splitFrameCandidates
- .entrySet())
- {
- AlignFrame af = candidate.getValue();
- if (!addedToSplitFrames.contains(af))
- {
- Viewport view = candidate.getKey();
- Desktop.addInternalFrame(af, view.getTitle(), view.getWidth(),
- view.getHeight());
- af.setMenusForViewport();
- System.err.println("Failed to restore view " + view.getTitle()
- + " to split frame");
- }
- }
-
- /*
- * Gather back into tabbed views as flagged.
- */
- for (SplitFrame sf : gatherTo)
- {
- Desktop.instance.gatherViews(sf);
- }
-
- splitFrameCandidates.clear();
- }
-
- /**
- * Construct and display one SplitFrame holding DNA and protein alignments.
- *
- * @param dnaFrame
- * @param proteinFrame
- * @return
- */
- protected SplitFrame createSplitFrame(AlignFrame dnaFrame,
- AlignFrame proteinFrame)
- {
- SplitFrame splitFrame = new SplitFrame(dnaFrame, proteinFrame);
- String title = MessageManager.getString("label.linked_view_title");
- int width = (int) dnaFrame.getBounds().getWidth();
- int height = (int) (dnaFrame.getBounds().getHeight()
- + proteinFrame.getBounds().getHeight() + 50);
-
- /*
- * SplitFrame location is saved to both enclosed frames
- */
- splitFrame.setLocation(dnaFrame.getX(), dnaFrame.getY());
- Desktop.addInternalFrame(splitFrame, title, width, height);
-
- /*
- * And compute cDNA consensus (couldn't do earlier with consensus as
- * mappings were not yet present)
- */
- proteinFrame.viewport.alignmentChanged(proteinFrame.alignPanel);
-
- return splitFrame;
- }
-
- /**
- * check errorMessage for a valid error message and raise an error box in the
- * GUI or write the current errorMessage to stderr and then clear the error
- * state.
- */
- protected void reportErrors()
- {
- reportErrors(false);
- }
-
- protected void reportErrors(final boolean saving)
- {
- if (errorMessage != null)
- {
- final String finalErrorMessage = errorMessage;
- errorMessage = null;
- if (raiseGUI)
- {
- javax.swing.SwingUtilities.invokeLater(new Runnable()
- {
- @Override
- public void run()
- {
- JvOptionPane.showInternalMessageDialog(Desktop.desktop,
- finalErrorMessage,
- "Error " + (saving ? "saving" : "loading")
- + " Jalview file",
- JvOptionPane.WARNING_MESSAGE);
- }
- });
- }
- else
- {
- System.err.println(
- "Problem loading Jalview file: " + finalErrorMessage);
- }
- }
- }
-
- Map<String, String> alreadyLoadedPDB = new HashMap<>();
-
- /**
- * when set, local views will be updated from view stored in JalviewXML
- * Currently (28th Sep 2008) things will go horribly wrong in vamsas document
- * sync if this is set to true.
- */
- private final boolean updateLocalViews = false;
-
- /**
- * Returns the path to a temporary file holding the PDB file for the given PDB
- * id. The first time of asking, searches for a file of that name in the
- * Jalview project jar, and copies it to a new temporary file. Any repeat
- * requests just return the path to the file previously created.
- *
- * @param jprovider
- * @param pdbId
- * @return
- */
- String loadPDBFile(jarInputStreamProvider jprovider, String pdbId,
- String origFile)
- {
- if (alreadyLoadedPDB.containsKey(pdbId))
- {
- return alreadyLoadedPDB.get(pdbId).toString();
- }
-
- String tempFile = copyJarEntry(jprovider, pdbId, "jalview_pdb",
- origFile);
- if (tempFile != null)
- {
- alreadyLoadedPDB.put(pdbId, tempFile);
- }
- return tempFile;
- }
-
- /**
- * Copies the jar entry of given name to a new temporary file and returns the
- * path to the file, or null if the entry is not found.
- *
- * @param jprovider
- * @param jarEntryName
- * @param prefix
- * a prefix for the temporary file name, must be at least three
- * characters long
- * @param origFile
- * null or original file - so new file can be given the same suffix
- * as the old one
- * @return
- */
- protected String copyJarEntry(jarInputStreamProvider jprovider,
- String jarEntryName, String prefix, String origFile)
- {
- BufferedReader in = null;
- PrintWriter out = null;
- String suffix = ".tmp";
- if (origFile == null)
- {
- origFile = jarEntryName;
- }
- int sfpos = origFile.lastIndexOf(".");
- if (sfpos > -1 && sfpos < (origFile.length() - 3))
- {
- suffix = "." + origFile.substring(sfpos + 1);
- }
- try
- {
- JarInputStream jin = jprovider.getJarInputStream();
- /*
- * if (jprovider.startsWith("http://")) { jin = new JarInputStream(new
- * URL(jprovider).openStream()); } else { jin = new JarInputStream(new
- * FileInputStream(jprovider)); }
- */
-
- JarEntry entry = null;
- do
- {
- entry = jin.getNextJarEntry();
- } while (entry != null && !entry.getName().equals(jarEntryName));
- if (entry != null)
- {
- in = new BufferedReader(new InputStreamReader(jin, UTF_8));
- File outFile = File.createTempFile(prefix, suffix);
- outFile.deleteOnExit();
- out = new PrintWriter(new FileOutputStream(outFile));
- String data;
-
- while ((data = in.readLine()) != null)
- {
- out.println(data);
- }
- out.flush();
- String t = outFile.getAbsolutePath();
- return t;
- }
- else
- {
- warn("Couldn't find entry in Jalview Jar for " + jarEntryName);
- }
- } catch (Exception ex)
- {
- ex.printStackTrace();
- } finally
- {
- if (in != null)
- {
- try
- {
- in.close();
- } catch (IOException e)
- {
- // ignore
- }
- }
- if (out != null)
- {
- out.close();
- }
- }
-
- return null;
- }
-
- private class JvAnnotRow
- {
- public JvAnnotRow(int i, AlignmentAnnotation jaa)
- {
- order = i;
- template = jaa;
- }
-
- /**
- * persisted version of annotation row from which to take vis properties
- */
- public jalview.datamodel.AlignmentAnnotation template;
-
- /**
- * original position of the annotation row in the alignment
- */
- public int order;
- }
-
- /**
- * Load alignment frame from jalview XML DOM object
- *
- * @param object
- * DOM
- * @param file
- * filename source string
- * @param loadTreesAndStructures
- * when false only create Viewport
- * @param jprovider
- * data source provider
- * @return alignment frame created from view stored in DOM
- */
- AlignFrame loadFromObject(JalviewModel object, String file,
- boolean loadTreesAndStructures, jarInputStreamProvider jprovider)
- {
- SequenceSet vamsasSet = object.getVamsasModel().getSequenceSet(0);
- Sequence[] vamsasSeq = vamsasSet.getSequence();
-
- JalviewModelSequence jms = object.getJalviewModelSequence();
-
- Viewport view = (jms.getViewportCount() > 0) ? jms.getViewport(0)
- : null;
-
- // ////////////////////////////////
- // LOAD SEQUENCES
-
- List<SequenceI> hiddenSeqs = null;
-
- List<SequenceI> tmpseqs = new ArrayList<>();
-
- boolean multipleView = false;
- SequenceI referenceseqForView = null;
- JSeq[] jseqs = object.getJalviewModelSequence().getJSeq();
- int vi = 0; // counter in vamsasSeq array
- for (int i = 0; i < jseqs.length; i++)
- {
- String seqId = jseqs[i].getId();
-
- SequenceI tmpSeq = seqRefIds.get(seqId);
- if (tmpSeq != null)
- {
- if (!incompleteSeqs.containsKey(seqId))
- {
- // may not need this check, but keep it for at least 2.9,1 release
- if (tmpSeq.getStart() != jseqs[i].getStart()
- || tmpSeq.getEnd() != jseqs[i].getEnd())
- {
- System.err.println(
- "Warning JAL-2154 regression: updating start/end for sequence "
- + tmpSeq.toString() + " to " + jseqs[i]);
- }
- }
- else
- {
- incompleteSeqs.remove(seqId);
- }
- if (vamsasSeq.length > vi && vamsasSeq[vi].getId().equals(seqId))
- {
- // most likely we are reading a dataset XML document so
- // update from vamsasSeq section of XML for this sequence
- tmpSeq.setName(vamsasSeq[vi].getName());
- tmpSeq.setDescription(vamsasSeq[vi].getDescription());
- tmpSeq.setSequence(vamsasSeq[vi].getSequence());
- vi++;
- }
- else
- {
- // reading multiple views, so vamsasSeq set is a subset of JSeq
- multipleView = true;
- }
- tmpSeq.setStart(jseqs[i].getStart());
- tmpSeq.setEnd(jseqs[i].getEnd());
- tmpseqs.add(tmpSeq);
- }
- else
- {
- tmpSeq = new jalview.datamodel.Sequence(vamsasSeq[vi].getName(),
- vamsasSeq[vi].getSequence());
- tmpSeq.setDescription(vamsasSeq[vi].getDescription());
- tmpSeq.setStart(jseqs[i].getStart());
- tmpSeq.setEnd(jseqs[i].getEnd());
- tmpSeq.setVamsasId(uniqueSetSuffix + seqId);
- seqRefIds.put(vamsasSeq[vi].getId(), tmpSeq);
- tmpseqs.add(tmpSeq);
- vi++;
- }
-
- if (jseqs[i].hasViewreference() && jseqs[i].getViewreference())
- {
- referenceseqForView = tmpseqs.get(tmpseqs.size() - 1);
- }
-
- if (jseqs[i].getHidden())
- {
- if (hiddenSeqs == null)
- {
- hiddenSeqs = new ArrayList<>();
- }
-
- hiddenSeqs.add(tmpSeq);
- }
- }
-
- // /
- // Create the alignment object from the sequence set
- // ///////////////////////////////
- SequenceI[] orderedSeqs = tmpseqs
- .toArray(new SequenceI[tmpseqs.size()]);
-
- AlignmentI al = null;
- // so we must create or recover the dataset alignment before going further
- // ///////////////////////////////
- if (vamsasSet.getDatasetId() == null || vamsasSet.getDatasetId() == "")
- {
- // older jalview projects do not have a dataset - so creat alignment and
- // dataset
- al = new Alignment(orderedSeqs);
- al.setDataset(null);
- }
- else
- {
- boolean isdsal = object.getJalviewModelSequence()
- .getViewportCount() == 0;
- if (isdsal)
- {
- // we are importing a dataset record, so
- // recover reference to an alignment already materialsed as dataset
- al = getDatasetFor(vamsasSet.getDatasetId());
- }
- if (al == null)
- {
- // materialse the alignment
- al = new Alignment(orderedSeqs);
- }
- if (isdsal)
- {
- addDatasetRef(vamsasSet.getDatasetId(), al);
- }
-
- // finally, verify all data in vamsasSet is actually present in al
- // passing on flag indicating if it is actually a stored dataset
- recoverDatasetFor(vamsasSet, al, isdsal);
- }
-
- if (referenceseqForView != null)
- {
- al.setSeqrep(referenceseqForView);
- }
- // / Add the alignment properties
- for (int i = 0; i < vamsasSet.getSequenceSetPropertiesCount(); i++)
- {
- SequenceSetProperties ssp = vamsasSet.getSequenceSetProperties(i);
- al.setProperty(ssp.getKey(), ssp.getValue());
- }
-
- // ///////////////////////////////
-
- Hashtable pdbloaded = new Hashtable(); // TODO nothing writes to this??
- if (!multipleView)
- {
- // load sequence features, database references and any associated PDB
- // structures for the alignment
- //
- // prior to 2.10, this part would only be executed the first time a
- // sequence was encountered, but not afterwards.
- // now, for 2.10 projects, this is also done if the xml doc includes
- // dataset sequences not actually present in any particular view.
- //
- for (int i = 0; i < vamsasSeq.length; i++)
- {
- if (jseqs[i].getFeaturesCount() > 0)
- {
- Features[] features = jseqs[i].getFeatures();
- for (int f = 0; f < features.length; f++)
- {
- SequenceFeature sf = new SequenceFeature(features[f].getType(),
- features[f].getDescription(), features[f].getBegin(),
- features[f].getEnd(), features[f].getScore(),
- features[f].getFeatureGroup());
- sf.setStatus(features[f].getStatus());
-
- /*
- * load any feature attributes - include map-valued attributes
- */
- Map<String, Map<String, String>> mapAttributes = new HashMap<>();
- for (int od = 0; od < features[f].getOtherDataCount(); od++)
- {
- OtherData keyValue = features[f].getOtherData(od);
- String attributeName = keyValue.getKey();
- String attributeValue = keyValue.getValue();
- if (attributeName.startsWith("LINK"))
- {
- sf.addLink(attributeValue);
- }
- else
- {
- String subAttribute = keyValue.getKey2();
- if (subAttribute == null)
- {
- // simple string-valued attribute
- sf.setValue(attributeName, attributeValue);
- }
- else
- {
- // attribute 'key' has sub-attribute 'key2'
- if (!mapAttributes.containsKey(attributeName))
- {
- mapAttributes.put(attributeName, new HashMap<>());
- }
- mapAttributes.get(attributeName).put(subAttribute,
- attributeValue);
- }
- }
- }
- for (Entry<String, Map<String, String>> mapAttribute : mapAttributes
- .entrySet())
- {
- sf.setValue(mapAttribute.getKey(), mapAttribute.getValue());
- }
-
- // adds feature to datasequence's feature set (since Jalview 2.10)
- al.getSequenceAt(i).addSequenceFeature(sf);
- }
- }
- if (vamsasSeq[i].getDBRefCount() > 0)
- {
- // adds dbrefs to datasequence's set (since Jalview 2.10)
- addDBRefs(
- al.getSequenceAt(i).getDatasetSequence() == null
- ? al.getSequenceAt(i)
- : al.getSequenceAt(i).getDatasetSequence(),
- vamsasSeq[i]);
- }
- if (jseqs[i].getPdbidsCount() > 0)
- {
- Pdbids[] ids = jseqs[i].getPdbids();
- for (int p = 0; p < ids.length; p++)
- {
- jalview.datamodel.PDBEntry entry = new jalview.datamodel.PDBEntry();
- entry.setId(ids[p].getId());
- if (ids[p].getType() != null)
- {
- if (PDBEntry.Type.getType(ids[p].getType()) != null)
- {
- entry.setType(PDBEntry.Type.getType(ids[p].getType()));
- }
- else
- {
- entry.setType(PDBEntry.Type.FILE);
- }
- }
- // jprovider is null when executing 'New View'
- if (ids[p].getFile() != null && jprovider != null)
- {
- if (!pdbloaded.containsKey(ids[p].getFile()))
- {
- entry.setFile(loadPDBFile(jprovider, ids[p].getId(),
- ids[p].getFile()));
- }
- else
- {
- entry.setFile(pdbloaded.get(ids[p].getId()).toString());
- }
- }
- if (ids[p].getPdbentryItem() != null)
- {
- for (PdbentryItem item : ids[p].getPdbentryItem())
- {
- for (Property pr : item.getProperty())
- {
- entry.setProperty(pr.getName(), pr.getValue());
- }
- }
- }
- StructureSelectionManager
- .getStructureSelectionManager(Desktop.instance)
- .registerPDBEntry(entry);
- // adds PDBEntry to datasequence's set (since Jalview 2.10)
- if (al.getSequenceAt(i).getDatasetSequence() != null)
- {
- al.getSequenceAt(i).getDatasetSequence().addPDBId(entry);
- }
- else
- {
- al.getSequenceAt(i).addPDBId(entry);
- }
- }
- }
- }
- } // end !multipleview
-
- // ///////////////////////////////
- // LOAD SEQUENCE MAPPINGS
-
- if (vamsasSet.getAlcodonFrameCount() > 0)
- {
- // TODO Potentially this should only be done once for all views of an
- // alignment
- AlcodonFrame[] alc = vamsasSet.getAlcodonFrame();
- for (int i = 0; i < alc.length; i++)
- {
- AlignedCodonFrame cf = new AlignedCodonFrame();
- if (alc[i].getAlcodMapCount() > 0)
- {
- AlcodMap[] maps = alc[i].getAlcodMap();
- for (int m = 0; m < maps.length; m++)
- {
- SequenceI dnaseq = seqRefIds.get(maps[m].getDnasq());
- // Load Mapping
- jalview.datamodel.Mapping mapping = null;
- // attach to dna sequence reference.
- if (maps[m].getMapping() != null)
- {
- mapping = addMapping(maps[m].getMapping());
- if (dnaseq != null && mapping.getTo() != null)
- {
- cf.addMap(dnaseq, mapping.getTo(), mapping.getMap());
- }
- else
- {
- // defer to later
- frefedSequence.add(
- newAlcodMapRef(maps[m].getDnasq(), cf, mapping));
- }
- }
- }
- al.addCodonFrame(cf);
- }
- }
- }
-
- // ////////////////////////////////
- // LOAD ANNOTATIONS
- List<JvAnnotRow> autoAlan = new ArrayList<>();
-
- /*
- * store any annotations which forward reference a group's ID
- */
- Map<String, List<AlignmentAnnotation>> groupAnnotRefs = new Hashtable<>();
-
- if (vamsasSet.getAnnotationCount() > 0)
- {
- Annotation[] an = vamsasSet.getAnnotation();
-
- for (int i = 0; i < an.length; i++)
- {
- Annotation annotation = an[i];
-
- /**
- * test if annotation is automatically calculated for this view only
- */
- boolean autoForView = false;
- if (annotation.getLabel().equals("Quality")
- || annotation.getLabel().equals("Conservation")
- || annotation.getLabel().equals("Consensus"))
- {
- // Kludge for pre 2.5 projects which lacked the autocalculated flag
- autoForView = true;
- if (!annotation.hasAutoCalculated())
- {
- annotation.setAutoCalculated(true);
- }
- }
- if (autoForView || (annotation.hasAutoCalculated()
- && annotation.isAutoCalculated()))
- {
- // remove ID - we don't recover annotation from other views for
- // view-specific annotation
- annotation.setId(null);
- }
-
- // set visiblity for other annotation in this view
- String annotationId = annotation.getId();
- if (annotationId != null && annotationIds.containsKey(annotationId))
- {
- AlignmentAnnotation jda = annotationIds.get(annotationId);
- // in principle Visible should always be true for annotation displayed
- // in multiple views
- if (annotation.hasVisible())
- {
- jda.visible = annotation.getVisible();
- }
-
- al.addAnnotation(jda);
-
- continue;
- }
- // Construct new annotation from model.
- AnnotationElement[] ae = annotation.getAnnotationElement();
- jalview.datamodel.Annotation[] anot = null;
- java.awt.Color firstColour = null;
- int anpos;
- if (!annotation.getScoreOnly())
- {
- anot = new jalview.datamodel.Annotation[al.getWidth()];
- for (int aa = 0; aa < ae.length && aa < anot.length; aa++)
- {
- anpos = ae[aa].getPosition();
-
- if (anpos >= anot.length)
- {
- continue;
- }
-
- anot[anpos] = new jalview.datamodel.Annotation(
-
- ae[aa].getDisplayCharacter(), ae[aa].getDescription(),
- (ae[aa].getSecondaryStructure() == null
- || ae[aa].getSecondaryStructure().length() == 0)
- ? ' '
- : ae[aa].getSecondaryStructure()
- .charAt(0),
- ae[aa].getValue()
-
- );
- // JBPNote: Consider verifying dataflow for IO of secondary
- // structure annotation read from Stockholm files
- // this was added to try to ensure that
- // if (anot[ae[aa].getPosition()].secondaryStructure>' ')
- // {
- // anot[ae[aa].getPosition()].displayCharacter = "";
- // }
- anot[anpos].colour = new java.awt.Color(ae[aa].getColour());
- if (firstColour == null)
- {
- firstColour = anot[anpos].colour;
- }
- }
- }
- jalview.datamodel.AlignmentAnnotation jaa = null;
-
- if (annotation.getGraph())
- {
- float llim = 0, hlim = 0;
- // if (autoForView || an[i].isAutoCalculated()) {
- // hlim=11f;
- // }
- jaa = new jalview.datamodel.AlignmentAnnotation(
- annotation.getLabel(), annotation.getDescription(), anot,
- llim, hlim, annotation.getGraphType());
-
- jaa.graphGroup = annotation.getGraphGroup();
- jaa._linecolour = firstColour;
- if (annotation.getThresholdLine() != null)
- {
- jaa.setThreshold(new jalview.datamodel.GraphLine(
- annotation.getThresholdLine().getValue(),
- annotation.getThresholdLine().getLabel(),
- new java.awt.Color(
- annotation.getThresholdLine().getColour())));
-
- }
- if (autoForView || annotation.isAutoCalculated())
- {
- // Hardwire the symbol display line to ensure that labels for
- // histograms are displayed
- jaa.hasText = true;
- }
- }
- else
- {
- jaa = new jalview.datamodel.AlignmentAnnotation(an[i].getLabel(),
- an[i].getDescription(), anot);
- jaa._linecolour = firstColour;
- }
- // register new annotation
- if (an[i].getId() != null)
- {
- annotationIds.put(an[i].getId(), jaa);
- jaa.annotationId = an[i].getId();
- }
- // recover sequence association
- String sequenceRef = an[i].getSequenceRef();
- if (sequenceRef != null)
- {
- // from 2.9 sequenceRef is to sequence id (JAL-1781)
- SequenceI sequence = seqRefIds.get(sequenceRef);
- if (sequence == null)
- {
- // in pre-2.9 projects sequence ref is to sequence name
- sequence = al.findName(sequenceRef);
- }
- if (sequence != null)
- {
- jaa.createSequenceMapping(sequence, 1, true);
- sequence.addAlignmentAnnotation(jaa);
- }
- }
- // and make a note of any group association
- if (an[i].getGroupRef() != null && an[i].getGroupRef().length() > 0)
- {
- List<jalview.datamodel.AlignmentAnnotation> aal = groupAnnotRefs
- .get(an[i].getGroupRef());
- if (aal == null)
- {
- aal = new ArrayList<>();
- groupAnnotRefs.put(an[i].getGroupRef(), aal);
- }
- aal.add(jaa);
- }
-
- if (an[i].hasScore())
- {
- jaa.setScore(an[i].getScore());
- }
- if (an[i].hasVisible())
- {
- jaa.visible = an[i].getVisible();
- }
-
- if (an[i].hasCentreColLabels())
- {
- jaa.centreColLabels = an[i].getCentreColLabels();
- }
-
- if (an[i].hasScaleColLabels())
- {
- jaa.scaleColLabel = an[i].getScaleColLabels();
- }
- if (an[i].hasAutoCalculated() && an[i].isAutoCalculated())
- {
- // newer files have an 'autoCalculated' flag and store calculation
- // state in viewport properties
- jaa.autoCalculated = true; // means annotation will be marked for
- // update at end of load.
- }
- if (an[i].hasGraphHeight())
- {
- jaa.graphHeight = an[i].getGraphHeight();
- }
- if (an[i].hasBelowAlignment())
- {
- jaa.belowAlignment = an[i].isBelowAlignment();
- }
- jaa.setCalcId(an[i].getCalcId());
- if (an[i].getPropertyCount() > 0)
- {
- for (jalview.schemabinding.version2.Property prop : an[i]
- .getProperty())
- {
- jaa.setProperty(prop.getName(), prop.getValue());
- }
- }
- if (jaa.autoCalculated)
- {
- autoAlan.add(new JvAnnotRow(i, jaa));
- }
- else
- // if (!autoForView)
- {
- // add autocalculated group annotation and any user created annotation
- // for the view
- al.addAnnotation(jaa);
- }
- }
- }
- // ///////////////////////
- // LOAD GROUPS
- // Create alignment markup and styles for this view
- if (jms.getJGroupCount() > 0)
- {
- JGroup[] groups = jms.getJGroup();
- boolean addAnnotSchemeGroup = false;
- for (int i = 0; i < groups.length; i++)
- {
- JGroup jGroup = groups[i];
- ColourSchemeI cs = null;
- if (jGroup.getColour() != null)
- {
- if (jGroup.getColour().startsWith("ucs"))
- {
- cs = getUserColourScheme(jms, jGroup.getColour());
- }
- else if (jGroup.getColour().equals("AnnotationColourGradient")
- && jGroup.getAnnotationColours() != null)
- {
- addAnnotSchemeGroup = true;
- }
- else
- {
- cs = ColourSchemeProperty.getColourScheme(al,
- jGroup.getColour());
- }
- }
- int pidThreshold = jGroup.getPidThreshold();
-
- Vector<SequenceI> seqs = new Vector<>();
-
- for (int s = 0; s < jGroup.getSeqCount(); s++)
- {
- String seqId = jGroup.getSeq(s) + "";
- SequenceI ts = seqRefIds.get(seqId);
-
- if (ts != null)
- {
- seqs.addElement(ts);
- }
- }
-
- if (seqs.size() < 1)
- {
- continue;
- }
-
- SequenceGroup sg = new SequenceGroup(seqs, jGroup.getName(), cs,
- jGroup.getDisplayBoxes(), jGroup.getDisplayText(),
- jGroup.getColourText(), jGroup.getStart(), jGroup.getEnd());
- sg.getGroupColourScheme().setThreshold(pidThreshold, true);
- sg.getGroupColourScheme()
- .setConservationInc(jGroup.getConsThreshold());
- sg.setOutlineColour(new java.awt.Color(jGroup.getOutlineColour()));
-
- sg.textColour = new java.awt.Color(jGroup.getTextCol1());
- sg.textColour2 = new java.awt.Color(jGroup.getTextCol2());
- sg.setShowNonconserved(
- jGroup.hasShowUnconserved() ? jGroup.isShowUnconserved()
- : false);
- sg.thresholdTextColour = jGroup.getTextColThreshold();
- if (jGroup.hasShowConsensusHistogram())
- {
- sg.setShowConsensusHistogram(jGroup.isShowConsensusHistogram());
- }
- ;
- if (jGroup.hasShowSequenceLogo())
- {
- sg.setshowSequenceLogo(jGroup.isShowSequenceLogo());
- }
- if (jGroup.hasNormaliseSequenceLogo())
- {
- sg.setNormaliseSequenceLogo(jGroup.isNormaliseSequenceLogo());
- }
- if (jGroup.hasIgnoreGapsinConsensus())
- {
- sg.setIgnoreGapsConsensus(jGroup.getIgnoreGapsinConsensus());
- }
- if (jGroup.getConsThreshold() != 0)
- {
- Conservation c = new Conservation("All", sg.getSequences(null), 0,
- sg.getWidth() - 1);
- c.calculate();
- c.verdict(false, 25);
- sg.cs.setConservation(c);
- }
-
- if (jGroup.getId() != null && groupAnnotRefs.size() > 0)
- {
- // re-instate unique group/annotation row reference
- List<AlignmentAnnotation> jaal = groupAnnotRefs
- .get(jGroup.getId());
- if (jaal != null)
- {
- for (AlignmentAnnotation jaa : jaal)
- {
- jaa.groupRef = sg;
- if (jaa.autoCalculated)
- {
- // match up and try to set group autocalc alignment row for this
- // annotation
- if (jaa.label.startsWith("Consensus for "))
- {
- sg.setConsensus(jaa);
- }
- // match up and try to set group autocalc alignment row for this
- // annotation
- if (jaa.label.startsWith("Conservation for "))
- {
- sg.setConservationRow(jaa);
- }
- }
- }
- }
- }
- al.addGroup(sg);
- if (addAnnotSchemeGroup)
- {
- // reconstruct the annotation colourscheme
- sg.setColourScheme(constructAnnotationColour(
- jGroup.getAnnotationColours(), null, al, jms, false));
- }
- }
- }
- if (view == null)
- {
- // only dataset in this model, so just return.
- return null;
- }
- // ///////////////////////////////
- // LOAD VIEWPORT
-
- // If we just load in the same jar file again, the sequenceSetId
- // will be the same, and we end up with multiple references
- // to the same sequenceSet. We must modify this id on load
- // so that each load of the file gives a unique id
- String uniqueSeqSetId = view.getSequenceSetId() + uniqueSetSuffix;
- String viewId = (view.getId() == null ? null
- : view.getId() + uniqueSetSuffix);
- AlignFrame af = null;
- AlignViewport av = null;
- // now check to see if we really need to create a new viewport.
- if (multipleView && viewportsAdded.size() == 0)
- {
- // We recovered an alignment for which a viewport already exists.
- // TODO: fix up any settings necessary for overlaying stored state onto
- // state recovered from another document. (may not be necessary).
- // we may need a binding from a viewport in memory to one recovered from
- // XML.
- // and then recover its containing af to allow the settings to be applied.
- // TODO: fix for vamsas demo
- System.err.println(
- "About to recover a viewport for existing alignment: Sequence set ID is "
- + uniqueSeqSetId);
- Object seqsetobj = retrieveExistingObj(uniqueSeqSetId);
- if (seqsetobj != null)
- {
- if (seqsetobj instanceof String)
- {
- uniqueSeqSetId = (String) seqsetobj;
- System.err.println(
- "Recovered extant sequence set ID mapping for ID : New Sequence set ID is "
- + uniqueSeqSetId);
- }
- else
- {
- System.err.println(
- "Warning : Collision between sequence set ID string and existing jalview object mapping.");
- }
-
- }
- }
- /**
- * indicate that annotation colours are applied across all groups (pre
- * Jalview 2.8.1 behaviour)
- */
- boolean doGroupAnnColour = Jalview2XML.isVersionStringLaterThan("2.8.1",
- object.getVersion());
-
- AlignmentPanel ap = null;
- boolean isnewview = true;
- if (viewId != null)
- {
- // Check to see if this alignment already has a view id == viewId
- jalview.gui.AlignmentPanel views[] = Desktop
- .getAlignmentPanels(uniqueSeqSetId);
- if (views != null && views.length > 0)
- {
- for (int v = 0; v < views.length; v++)
- {
- if (views[v].av.getViewId().equalsIgnoreCase(viewId))
- {
- // recover the existing alignpanel, alignframe, viewport
- af = views[v].alignFrame;
- av = views[v].av;
- ap = views[v];
- // TODO: could even skip resetting view settings if we don't want to
- // change the local settings from other jalview processes
- isnewview = false;
- }
- }
- }
- }
-
- if (isnewview)
- {
- af = loadViewport(file, jseqs, hiddenSeqs, al, jms, view,
- uniqueSeqSetId, viewId, autoAlan);
- av = af.viewport;
- ap = af.alignPanel;
- }
-
- /*
- * Load any trees, PDB structures and viewers
- *
- * Not done if flag is false (when this method is used for New View)
- */
- if (loadTreesAndStructures)
- {
- loadTrees(jms, view, af, av, ap);
- loadPDBStructures(jprovider, jseqs, af, ap);
- loadRnaViewers(jprovider, jseqs, ap);
- }
- // and finally return.
- return af;
- }
-
- /**
- * Instantiate and link any saved RNA (Varna) viewers. The state of the Varna
- * panel is restored from separate jar entries, two (gapped and trimmed) per
- * sequence and secondary structure.
- *
- * Currently each viewer shows just one sequence and structure (gapped and
- * trimmed), however this method is designed to support multiple sequences or
- * structures in viewers if wanted in future.
- *
- * @param jprovider
- * @param jseqs
- * @param ap
- */
- private void loadRnaViewers(jarInputStreamProvider jprovider,
- JSeq[] jseqs, AlignmentPanel ap)
- {
- /*
- * scan the sequences for references to viewers; create each one the first
- * time it is referenced, add Rna models to existing viewers
- */
- for (JSeq jseq : jseqs)
- {
- for (int i = 0; i < jseq.getRnaViewerCount(); i++)
- {
- RnaViewer viewer = jseq.getRnaViewer(i);
- AppVarna appVarna = findOrCreateVarnaViewer(viewer, uniqueSetSuffix,
- ap);
-
- for (int j = 0; j < viewer.getSecondaryStructureCount(); j++)
- {
- SecondaryStructure ss = viewer.getSecondaryStructure(j);
- SequenceI seq = seqRefIds.get(jseq.getId());
- AlignmentAnnotation ann = this.annotationIds
- .get(ss.getAnnotationId());
-
- /*
- * add the structure to the Varna display (with session state copied
- * from the jar to a temporary file)
- */
- boolean gapped = ss.isGapped();
- String rnaTitle = ss.getTitle();
- String sessionState = ss.getViewerState();
- String tempStateFile = copyJarEntry(jprovider, sessionState,
- "varna", null);
- RnaModel rna = new RnaModel(rnaTitle, ann, seq, null, gapped);
- appVarna.addModelSession(rna, rnaTitle, tempStateFile);
- }
- appVarna.setInitialSelection(viewer.getSelectedRna());
- }
- }
- }
-
- /**
- * Locate and return an already instantiated matching AppVarna, or create one
- * if not found
- *
- * @param viewer
- * @param viewIdSuffix
- * @param ap
- * @return
- */
- protected AppVarna findOrCreateVarnaViewer(RnaViewer viewer,
- String viewIdSuffix, AlignmentPanel ap)
- {
- /*
- * on each load a suffix is appended to the saved viewId, to avoid conflicts
- * if load is repeated
- */
- String postLoadId = viewer.getViewId() + viewIdSuffix;
- for (JInternalFrame frame : getAllFrames())
- {
- if (frame instanceof AppVarna)
- {
- AppVarna varna = (AppVarna) frame;
- if (postLoadId.equals(varna.getViewId()))
- {
- // this viewer is already instantiated
- // could in future here add ap as another 'parent' of the
- // AppVarna window; currently just 1-to-many
- return varna;
- }
- }
- }
-
- /*
- * viewer not found - make it
- */
- RnaViewerModel model = new RnaViewerModel(postLoadId, viewer.getTitle(),
- viewer.getXpos(), viewer.getYpos(), viewer.getWidth(),
- viewer.getHeight(), viewer.getDividerLocation());
- AppVarna varna = new AppVarna(model, ap);
-
- return varna;
- }
-
- /**
- * Load any saved trees
- *
- * @param jms
- * @param view
- * @param af
- * @param av
- * @param ap
- */
- protected void loadTrees(JalviewModelSequence jms, Viewport view,
- AlignFrame af, AlignViewport av, AlignmentPanel ap)
- {
- // TODO result of automated refactoring - are all these parameters needed?
- try
- {
- for (int t = 0; t < jms.getTreeCount(); t++)
- {
-
- Tree tree = jms.getTree(t);
-
- TreePanel tp = (TreePanel) retrieveExistingObj(tree.getId());
- if (tp == null)
- {
- tp = af.showNewickTree(
- new jalview.io.NewickFile(tree.getNewick()),
- tree.getTitle(), tree.getWidth(), tree.getHeight(),
- tree.getXpos(), tree.getYpos());
- if (tree.getId() != null)
- {
- // perhaps bind the tree id to something ?
- }
- }
- else
- {
- // update local tree attributes ?
- // TODO: should check if tp has been manipulated by user - if so its
- // settings shouldn't be modified
- tp.setTitle(tree.getTitle());
- tp.setBounds(new Rectangle(tree.getXpos(), tree.getYpos(),
- tree.getWidth(), tree.getHeight()));
- tp.setViewport(av); // af.viewport; // TODO: verify 'associate with all
- // views'
- // works still
- tp.getTreeCanvas().setViewport(av); // af.viewport;
- tp.getTreeCanvas().setAssociatedPanel(ap); // af.alignPanel;
-
- }
- if (tp == null)
- {
- warn("There was a problem recovering stored Newick tree: \n"
- + tree.getNewick());
- continue;
- }
-
- tp.fitToWindow.setState(tree.getFitToWindow());
- tp.fitToWindow_actionPerformed(null);
-
- if (tree.getFontName() != null)
- {
- tp.setTreeFont(new java.awt.Font(tree.getFontName(),
- tree.getFontStyle(), tree.getFontSize()));
- }
- else
- {
- tp.setTreeFont(new java.awt.Font(view.getFontName(),
- view.getFontStyle(), tree.getFontSize()));
- }
-
- tp.showPlaceholders(tree.getMarkUnlinked());
- tp.showBootstrap(tree.getShowBootstrap());
- tp.showDistances(tree.getShowDistances());
-
- tp.getTreeCanvas().setThreshold(tree.getThreshold());
-
- if (tree.getCurrentTree())
- {
- af.viewport.setCurrentTree(tp.getTree());
- }
- }
-
- } catch (Exception ex)
- {
- ex.printStackTrace();
- }
- }
-
- /**
- * Load and link any saved structure viewers.
- *
- * @param jprovider
- * @param jseqs
- * @param af
- * @param ap
- */
- protected void loadPDBStructures(jarInputStreamProvider jprovider,
- JSeq[] jseqs, AlignFrame af, AlignmentPanel ap)
- {
- /*
- * Run through all PDB ids on the alignment, and collect mappings between
- * distinct view ids and all sequences referring to that view.
- */
- Map<String, StructureViewerModel> structureViewers = new LinkedHashMap<>();
-
- for (int i = 0; i < jseqs.length; i++)
- {
- if (jseqs[i].getPdbidsCount() > 0)
- {
- Pdbids[] ids = jseqs[i].getPdbids();
- for (int p = 0; p < ids.length; p++)
- {
- final int structureStateCount = ids[p].getStructureStateCount();
- for (int s = 0; s < structureStateCount; s++)
- {
- // check to see if we haven't already created this structure view
- final StructureState structureState = ids[p]
- .getStructureState(s);
- String sviewid = (structureState.getViewId() == null) ? null
- : structureState.getViewId() + uniqueSetSuffix;
- jalview.datamodel.PDBEntry jpdb = new jalview.datamodel.PDBEntry();
- // Originally : ids[p].getFile()
- // : TODO: verify external PDB file recovery still works in normal
- // jalview project load
- jpdb.setFile(loadPDBFile(jprovider, ids[p].getId(),
- ids[p].getFile()));
- jpdb.setId(ids[p].getId());
-
- int x = structureState.getXpos();
- int y = structureState.getYpos();
- int width = structureState.getWidth();
- int height = structureState.getHeight();
-
- // Probably don't need to do this anymore...
- // Desktop.desktop.getComponentAt(x, y);
- // TODO: NOW: check that this recovers the PDB file correctly.
- String pdbFile = loadPDBFile(jprovider, ids[p].getId(),
- ids[p].getFile());
- jalview.datamodel.SequenceI seq = seqRefIds
- .get(jseqs[i].getId() + "");
- if (sviewid == null)
- {
- sviewid = "_jalview_pre2_4_" + x + "," + y + "," + width + ","
- + height;
- }
- if (!structureViewers.containsKey(sviewid))
- {
- structureViewers.put(sviewid,
- new StructureViewerModel(x, y, width, height, false,
- false, true, structureState.getViewId(),
- structureState.getType()));
- // Legacy pre-2.7 conversion JAL-823 :
- // do not assume any view has to be linked for colour by
- // sequence
- }
-
- // assemble String[] { pdb files }, String[] { id for each
- // file }, orig_fileloc, SequenceI[][] {{ seqs_file 1 }, {
- // seqs_file 2}, boolean[] {
- // linkAlignPanel,superposeWithAlignpanel}} from hash
- StructureViewerModel jmoldat = structureViewers.get(sviewid);
- jmoldat.setAlignWithPanel(jmoldat.isAlignWithPanel()
- | (structureState.hasAlignwithAlignPanel()
- ? structureState.getAlignwithAlignPanel()
- : false));
-
- /*
- * Default colour by linked panel to false if not specified (e.g.
- * for pre-2.7 projects)
- */
- boolean colourWithAlignPanel = jmoldat.isColourWithAlignPanel();
- colourWithAlignPanel |= (structureState
- .hasColourwithAlignPanel()
- ? structureState.getColourwithAlignPanel()
- : false);
- jmoldat.setColourWithAlignPanel(colourWithAlignPanel);
-
- /*
- * Default colour by viewer to true if not specified (e.g. for
- * pre-2.7 projects)
- */
- boolean colourByViewer = jmoldat.isColourByViewer();
- colourByViewer &= structureState.hasColourByJmol()
- ? structureState.getColourByJmol()
- : true;
- jmoldat.setColourByViewer(colourByViewer);
-
- if (jmoldat.getStateData().length() < structureState
- .getContent().length())
- {
- {
- jmoldat.setStateData(structureState.getContent());
- }
- }
- if (ids[p].getFile() != null)
- {
- File mapkey = new File(ids[p].getFile());
- StructureData seqstrmaps = jmoldat.getFileData().get(mapkey);
- if (seqstrmaps == null)
- {
- jmoldat.getFileData().put(mapkey,
- seqstrmaps = jmoldat.new StructureData(pdbFile,
- ids[p].getId()));
- }
- if (!seqstrmaps.getSeqList().contains(seq))
- {
- seqstrmaps.getSeqList().add(seq);
- // TODO and chains?
- }
- }
- else
- {
- errorMessage = ("The Jmol views in this project were imported\nfrom an older version of Jalview.\nPlease review the sequence colour associations\nin the Colour by section of the Jmol View menu.\n\nIn the case of problems, see note at\nhttp://issues.jalview.org/browse/JAL-747");
- warn(errorMessage);
- }
- }
- }
- }
- }
- // Instantiate the associated structure views
- for (Entry<String, StructureViewerModel> entry : structureViewers
- .entrySet())
- {
- try
- {
- createOrLinkStructureViewer(entry, af, ap, jprovider);
- } catch (Exception e)
- {
- System.err.println(
- "Error loading structure viewer: " + e.getMessage());
- // failed - try the next one
- }
- }
- }
-
- /**
- *
- * @param viewerData
- * @param af
- * @param ap
- * @param jprovider
- */
- protected void createOrLinkStructureViewer(
- Entry<String, StructureViewerModel> viewerData, AlignFrame af,
- AlignmentPanel ap, jarInputStreamProvider jprovider)
- {
- final StructureViewerModel stateData = viewerData.getValue();
-
- /*
- * Search for any viewer windows already open from other alignment views
- * that exactly match the stored structure state
- */
- StructureViewerBase comp = findMatchingViewer(viewerData);
-
- if (comp != null)
- {
- linkStructureViewer(ap, comp, stateData);
- return;
- }
-
- /*
- * From 2.9: stateData.type contains JMOL or CHIMERA, data is in jar entry
- * "viewer_"+stateData.viewId
- */
- if (ViewerType.CHIMERA.toString().equals(stateData.getType()))
- {
- createChimeraViewer(viewerData, af, jprovider);
- }
- else
- {
- /*
- * else Jmol (if pre-2.9, stateData contains JMOL state string)
- */
- createJmolViewer(viewerData, af, jprovider);
- }
- }
-
- /**
- * Create a new Chimera viewer.
- *
- * @param data
- * @param af
- * @param jprovider
- */
- protected void createChimeraViewer(
- Entry<String, StructureViewerModel> viewerData, AlignFrame af,
- jarInputStreamProvider jprovider)
- {
- StructureViewerModel data = viewerData.getValue();
- String chimeraSessionFile = data.getStateData();
-
- /*
- * Copy Chimera session from jar entry "viewer_"+viewId to a temporary file
- *
- * NB this is the 'saved' viewId as in the project file XML, _not_ the
- * 'uniquified' sviewid used to reconstruct the viewer here
- */
- String viewerJarEntryName = getViewerJarEntryName(data.getViewId());
- chimeraSessionFile = copyJarEntry(jprovider, viewerJarEntryName,
- "chimera", null);
-
- Set<Entry<File, StructureData>> fileData = data.getFileData()
- .entrySet();
- List<PDBEntry> pdbs = new ArrayList<>();
- List<SequenceI[]> allseqs = new ArrayList<>();
- for (Entry<File, StructureData> pdb : fileData)
- {
- String filePath = pdb.getValue().getFilePath();
- String pdbId = pdb.getValue().getPdbId();
- // pdbs.add(new PDBEntry(filePath, pdbId));
- pdbs.add(new PDBEntry(pdbId, null, PDBEntry.Type.PDB, filePath));
- final List<SequenceI> seqList = pdb.getValue().getSeqList();
- SequenceI[] seqs = seqList.toArray(new SequenceI[seqList.size()]);
- allseqs.add(seqs);
- }
-
- boolean colourByChimera = data.isColourByViewer();
- boolean colourBySequence = data.isColourWithAlignPanel();
-
- // TODO use StructureViewer as a factory here, see JAL-1761
- final PDBEntry[] pdbArray = pdbs.toArray(new PDBEntry[pdbs.size()]);
- final SequenceI[][] seqsArray = allseqs
- .toArray(new SequenceI[allseqs.size()][]);
- String newViewId = viewerData.getKey();
-
- ChimeraViewFrame cvf = new ChimeraViewFrame(chimeraSessionFile,
- af.alignPanel, pdbArray, seqsArray, colourByChimera,
- colourBySequence, newViewId);
- cvf.setSize(data.getWidth(), data.getHeight());
- cvf.setLocation(data.getX(), data.getY());
- }
-
- /**
- * Create a new Jmol window. First parse the Jmol state to translate filenames
- * loaded into the view, and record the order in which files are shown in the
- * Jmol view, so we can add the sequence mappings in same order.
- *
- * @param viewerData
- * @param af
- * @param jprovider
- */
- protected void createJmolViewer(
- final Entry<String, StructureViewerModel> viewerData,
- AlignFrame af, jarInputStreamProvider jprovider)
- {
- final StructureViewerModel svattrib = viewerData.getValue();
- String state = svattrib.getStateData();
-
- /*
- * Pre-2.9: state element value is the Jmol state string
- *
- * 2.9+: @type is "JMOL", state data is in a Jar file member named "viewer_"
- * + viewId
- */
- if (ViewerType.JMOL.toString().equals(svattrib.getType()))
- {
- state = readJarEntry(jprovider,
- getViewerJarEntryName(svattrib.getViewId()));
- }
-
- List<String> pdbfilenames = new ArrayList<>();
- List<SequenceI[]> seqmaps = new ArrayList<>();
- List<String> pdbids = new ArrayList<>();
- StringBuilder newFileLoc = new StringBuilder(64);
- int cp = 0, ncp, ecp;
- Map<File, StructureData> oldFiles = svattrib.getFileData();
- while ((ncp = state.indexOf("load ", cp)) > -1)
- {
- do
- {
- // look for next filename in load statement
- newFileLoc.append(state.substring(cp,
- ncp = (state.indexOf("\"", ncp + 1) + 1)));
- String oldfilenam = state.substring(ncp,
- ecp = state.indexOf("\"", ncp));
- // recover the new mapping data for this old filename
- // have to normalize filename - since Jmol and jalview do
- // filename
- // translation differently.
- StructureData filedat = oldFiles.get(new File(oldfilenam));
- if (filedat == null)
- {
- String reformatedOldFilename = oldfilenam.replaceAll("/", "\\\\");
- filedat = oldFiles.get(new File(reformatedOldFilename));
- }
- newFileLoc.append(Platform.escapeString(filedat.getFilePath()));
- pdbfilenames.add(filedat.getFilePath());
- pdbids.add(filedat.getPdbId());
- seqmaps.add(filedat.getSeqList().toArray(new SequenceI[0]));
- newFileLoc.append("\"");
- cp = ecp + 1; // advance beyond last \" and set cursor so we can
- // look for next file statement.
- } while ((ncp = state.indexOf("/*file*/", cp)) > -1);
- }
- if (cp > 0)
- {
- // just append rest of state
- newFileLoc.append(state.substring(cp));
- }
- else
- {
- System.err.print("Ignoring incomplete Jmol state for PDB ids: ");
- newFileLoc = new StringBuilder(state);
- newFileLoc.append("; load append ");
- for (File id : oldFiles.keySet())
- {
- // add this and any other pdb files that should be present in
- // the viewer
- StructureData filedat = oldFiles.get(id);
- newFileLoc.append(filedat.getFilePath());
- pdbfilenames.add(filedat.getFilePath());
- pdbids.add(filedat.getPdbId());
- seqmaps.add(filedat.getSeqList().toArray(new SequenceI[0]));
- newFileLoc.append(" \"");
- newFileLoc.append(filedat.getFilePath());
- newFileLoc.append("\"");
-
- }
- newFileLoc.append(";");
- }
-
- if (newFileLoc.length() == 0)
- {
- return;
- }
- int histbug = newFileLoc.indexOf("history = ");
- if (histbug > -1)
- {
- /*
- * change "history = [true|false];" to "history = [1|0];"
- */
- histbug += 10;
- int diff = histbug == -1 ? -1 : newFileLoc.indexOf(";", histbug);
- String val = (diff == -1) ? null
- : newFileLoc.substring(histbug, diff);
- if (val != null && val.length() >= 4)
- {
- if (val.contains("e")) // eh? what can it be?
- {
- if (val.trim().equals("true"))
- {
- val = "1";
- }
- else
- {
- val = "0";
- }
- newFileLoc.replace(histbug, diff, val);
- }
- }
- }
-
- final String[] pdbf = pdbfilenames
- .toArray(new String[pdbfilenames.size()]);
- final String[] id = pdbids.toArray(new String[pdbids.size()]);
- final SequenceI[][] sq = seqmaps
- .toArray(new SequenceI[seqmaps.size()][]);
- final String fileloc = newFileLoc.toString();
- final String sviewid = viewerData.getKey();
- final AlignFrame alf = af;
- final Rectangle rect = new Rectangle(svattrib.getX(), svattrib.getY(),
- svattrib.getWidth(), svattrib.getHeight());
- try
- {
- javax.swing.SwingUtilities.invokeAndWait(new Runnable()
- {
- @Override
- public void run()
- {
- JalviewStructureDisplayI sview = null;
- try
- {
- sview = new StructureViewer(
- alf.alignPanel.getStructureSelectionManager())
- .createView(StructureViewer.ViewerType.JMOL,
- pdbf, id, sq, alf.alignPanel, svattrib,
- fileloc, rect, sviewid);
- addNewStructureViewer(sview);
- } catch (OutOfMemoryError ex)
- {
- new OOMWarning("restoring structure view for PDB id " + id,
- (OutOfMemoryError) ex.getCause());
- if (sview != null && sview.isVisible())
- {
- sview.closeViewer(false);
- sview.setVisible(false);
- sview.dispose();
- }
- }
- }
- });
- } catch (InvocationTargetException ex)
- {
- warn("Unexpected error when opening Jmol view.", ex);
-
- } catch (InterruptedException e)
- {
- // e.printStackTrace();
- }
-
- }
-
- /**
- * Generates a name for the entry in the project jar file to hold state
- * information for a structure viewer
- *
- * @param viewId
- * @return
- */
- protected String getViewerJarEntryName(String viewId)
- {
- return VIEWER_PREFIX + viewId;
- }
-
- /**
- * Returns any open frame that matches given structure viewer data. The match
- * is based on the unique viewId, or (for older project versions) the frame's
- * geometry.
- *
- * @param viewerData
- * @return
- */
- protected StructureViewerBase findMatchingViewer(
- Entry<String, StructureViewerModel> viewerData)
- {
- final String sviewid = viewerData.getKey();
- final StructureViewerModel svattrib = viewerData.getValue();
- StructureViewerBase comp = null;
- JInternalFrame[] frames = getAllFrames();
- for (JInternalFrame frame : frames)
- {
- if (frame instanceof StructureViewerBase)
- {
- /*
- * Post jalview 2.4 schema includes structure view id
- */
- if (sviewid != null && ((StructureViewerBase) frame).getViewId()
- .equals(sviewid))
- {
- comp = (StructureViewerBase) frame;
- break; // break added in 2.9
- }
- /*
- * Otherwise test for matching position and size of viewer frame
- */
- else if (frame.getX() == svattrib.getX()
- && frame.getY() == svattrib.getY()
- && frame.getHeight() == svattrib.getHeight()
- && frame.getWidth() == svattrib.getWidth())
- {
- comp = (StructureViewerBase) frame;
- // no break in faint hope of an exact match on viewId
- }
- }
- }
- return comp;
- }
-
- /**
- * Link an AlignmentPanel to an existing structure viewer.
- *
- * @param ap
- * @param viewer
- * @param oldFiles
- * @param useinViewerSuperpos
- * @param usetoColourbyseq
- * @param viewerColouring
- */
- protected void linkStructureViewer(AlignmentPanel ap,
- StructureViewerBase viewer, StructureViewerModel stateData)
- {
- // NOTE: if the jalview project is part of a shared session then
- // view synchronization should/could be done here.
-
- final boolean useinViewerSuperpos = stateData.isAlignWithPanel();
- final boolean usetoColourbyseq = stateData.isColourWithAlignPanel();
- final boolean viewerColouring = stateData.isColourByViewer();
- Map<File, StructureData> oldFiles = stateData.getFileData();
-
- /*
- * Add mapping for sequences in this view to an already open viewer
- */
- final AAStructureBindingModel binding = viewer.getBinding();
- for (File id : oldFiles.keySet())
- {
- // add this and any other pdb files that should be present in the
- // viewer
- StructureData filedat = oldFiles.get(id);
- String pdbFile = filedat.getFilePath();
- SequenceI[] seq = filedat.getSeqList().toArray(new SequenceI[0]);
- binding.getSsm().setMapping(seq, null, pdbFile, DataSourceType.FILE,
- null);
- binding.addSequenceForStructFile(pdbFile, seq);
- }
- // and add the AlignmentPanel's reference to the view panel
- viewer.addAlignmentPanel(ap);
- if (useinViewerSuperpos)
- {
- viewer.useAlignmentPanelForSuperposition(ap);
- }
- else
- {
- viewer.excludeAlignmentPanelForSuperposition(ap);
- }
- if (usetoColourbyseq)
- {
- viewer.useAlignmentPanelForColourbyseq(ap, !viewerColouring);
- }
- else
- {
- viewer.excludeAlignmentPanelForColourbyseq(ap);
- }
- }
-
- /**
- * Get all frames within the Desktop.
- *
- * @return
- */
- protected JInternalFrame[] getAllFrames()
- {
- JInternalFrame[] frames = null;
- // TODO is this necessary - is it safe - risk of hanging?
- do
- {
- try
- {
- frames = Desktop.desktop.getAllFrames();
- } catch (ArrayIndexOutOfBoundsException e)
- {
- // occasional No such child exceptions are thrown here...
- try
- {
- Thread.sleep(10);
- } catch (InterruptedException f)
- {
- }
- }
- } while (frames == null);
- return frames;
- }
-
- /**
- * Answers true if 'version' is equal to or later than 'supported', where each
- * is formatted as major/minor versions like "2.8.3" or "2.3.4b1" for bugfix
- * changes. Development and test values for 'version' are leniently treated
- * i.e. answer true.
- *
- * @param supported
- * - minimum version we are comparing against
- * @param version
- * - version of data being processsed
- * @return
- */
- public static boolean isVersionStringLaterThan(String supported,
- String version)
- {
- if (supported == null || version == null
- || version.equalsIgnoreCase("DEVELOPMENT BUILD")
- || version.equalsIgnoreCase("Test")
- || version.equalsIgnoreCase("AUTOMATED BUILD"))
- {
- System.err.println("Assuming project file with "
- + (version == null ? "null" : version)
- + " is compatible with Jalview version " + supported);
- return true;
- }
- else
- {
- return StringUtils.compareVersions(version, supported, "b") >= 0;
- }
- }
-
- Vector<JalviewStructureDisplayI> newStructureViewers = null;
-
- protected void addNewStructureViewer(JalviewStructureDisplayI sview)
- {
- if (newStructureViewers != null)
- {
- sview.getBinding().setFinishedLoadingFromArchive(false);
- newStructureViewers.add(sview);
- }
- }
-
- protected void setLoadingFinishedForNewStructureViewers()
- {
- if (newStructureViewers != null)
- {
- for (JalviewStructureDisplayI sview : newStructureViewers)
- {
- sview.getBinding().setFinishedLoadingFromArchive(true);
- }
- newStructureViewers.clear();
- newStructureViewers = null;
- }
- }
-
- AlignFrame loadViewport(String file, JSeq[] JSEQ,
- List<SequenceI> hiddenSeqs, AlignmentI al,
- JalviewModelSequence jms, Viewport view, String uniqueSeqSetId,
- String viewId, List<JvAnnotRow> autoAlan)
- {
- AlignFrame af = null;
- af = new AlignFrame(al, view.getWidth(), view.getHeight(),
- uniqueSeqSetId, viewId);
-
- af.setFileName(file, FileFormat.Jalview);
-
- for (int i = 0; i < JSEQ.length; i++)
- {
- af.viewport.setSequenceColour(
- af.viewport.getAlignment().getSequenceAt(i),
- new java.awt.Color(JSEQ[i].getColour()));
- }
-
- if (al.hasSeqrep())
- {
- af.getViewport().setColourByReferenceSeq(true);
- af.getViewport().setDisplayReferenceSeq(true);
- }
-
- af.viewport.setGatherViewsHere(view.getGatheredViews());
-
- if (view.getSequenceSetId() != null)
- {
- AlignmentViewport av = viewportsAdded.get(uniqueSeqSetId);
-
- af.viewport.setSequenceSetId(uniqueSeqSetId);
- if (av != null)
- {
- // propagate shared settings to this new view
- af.viewport.setHistoryList(av.getHistoryList());
- af.viewport.setRedoList(av.getRedoList());
- }
- else
- {
- viewportsAdded.put(uniqueSeqSetId, af.viewport);
- }
- // TODO: check if this method can be called repeatedly without
- // side-effects if alignpanel already registered.
- PaintRefresher.Register(af.alignPanel, uniqueSeqSetId);
- }
- // apply Hidden regions to view.
- if (hiddenSeqs != null)
- {
- for (int s = 0; s < JSEQ.length; s++)
- {
- SequenceGroup hidden = new SequenceGroup();
- boolean isRepresentative = false;
- for (int r = 0; r < JSEQ[s].getHiddenSequencesCount(); r++)
- {
- isRepresentative = true;
- SequenceI sequenceToHide = al
- .getSequenceAt(JSEQ[s].getHiddenSequences(r));
- hidden.addSequence(sequenceToHide, false);
- // remove from hiddenSeqs list so we don't try to hide it twice
- hiddenSeqs.remove(sequenceToHide);
- }
- if (isRepresentative)
- {
- SequenceI representativeSequence = al.getSequenceAt(s);
- hidden.addSequence(representativeSequence, false);
- af.viewport.hideRepSequences(representativeSequence, hidden);
- }
- }
-
- SequenceI[] hseqs = hiddenSeqs
- .toArray(new SequenceI[hiddenSeqs.size()]);
- af.viewport.hideSequence(hseqs);
-
- }
- // recover view properties and display parameters
-
- af.viewport.setShowAnnotation(view.getShowAnnotation());
- af.viewport.setAbovePIDThreshold(view.getPidSelected());
- af.viewport.setThreshold(view.getPidThreshold());
-
- af.viewport.setColourText(view.getShowColourText());
-
- af.viewport.setConservationSelected(view.getConservationSelected());
- af.viewport.setIncrement(view.getConsThreshold());
- af.viewport.setShowJVSuffix(view.getShowFullId());
- af.viewport.setRightAlignIds(view.getRightAlignIds());
- af.viewport.setFont(new java.awt.Font(view.getFontName(),
- view.getFontStyle(), view.getFontSize()), true);
- ViewStyleI vs = af.viewport.getViewStyle();
- vs.setScaleProteinAsCdna(view.isScaleProteinAsCdna());
- af.viewport.setViewStyle(vs);
- // TODO: allow custom charWidth/Heights to be restored by updating them
- // after setting font - which means set above to false
- af.viewport.setRenderGaps(view.getRenderGaps());
- af.viewport.setWrapAlignment(view.getWrapAlignment());
- af.viewport.setShowAnnotation(view.getShowAnnotation());
-
- af.viewport.setShowBoxes(view.getShowBoxes());
-
- af.viewport.setShowText(view.getShowText());
-
- af.viewport.setTextColour(new java.awt.Color(view.getTextCol1()));
- af.viewport.setTextColour2(new java.awt.Color(view.getTextCol2()));
- af.viewport.setThresholdTextColour(view.getTextColThreshold());
- af.viewport.setShowUnconserved(
- view.hasShowUnconserved() ? view.isShowUnconserved() : false);
- af.viewport.getRanges().setStartRes(view.getStartRes());
-
- if (view.getViewName() != null)
- {
- af.viewport.setViewName(view.getViewName());
- af.setInitialTabVisible();
- }
- af.setBounds(view.getXpos(), view.getYpos(), view.getWidth(),
- view.getHeight());
- // startSeq set in af.alignPanel.updateLayout below
- af.alignPanel.updateLayout();
- ColourSchemeI cs = null;
- // apply colourschemes
- if (view.getBgColour() != null)
- {
- if (view.getBgColour().startsWith("ucs"))
- {
- cs = getUserColourScheme(jms, view.getBgColour());
- }
- else if (view.getBgColour().startsWith("Annotation"))
- {
- AnnotationColours viewAnnColour = view.getAnnotationColours();
- cs = constructAnnotationColour(viewAnnColour, af, al, jms, true);
-
- // annpos
-
- }
- else
- {
- cs = ColourSchemeProperty.getColourScheme(al, view.getBgColour());
- }
- }
-
- af.viewport.setGlobalColourScheme(cs);
- af.viewport.getResidueShading().setThreshold(view.getPidThreshold(),
- view.getIgnoreGapsinConsensus());
- af.viewport.getResidueShading()
- .setConsensus(af.viewport.getSequenceConsensusHash());
- af.viewport.setColourAppliesToAllGroups(false);
-
- if (view.getConservationSelected() && cs != null)
- {
- af.viewport.getResidueShading()
- .setConservationInc(view.getConsThreshold());
- }
-
- af.changeColour(cs);
-
- af.viewport.setColourAppliesToAllGroups(true);
-
- af.viewport.setShowSequenceFeatures(view.getShowSequenceFeatures());
-
- if (view.hasCentreColumnLabels())
- {
- af.viewport.setCentreColumnLabels(view.getCentreColumnLabels());
- }
- if (view.hasIgnoreGapsinConsensus())
- {
- af.viewport.setIgnoreGapsConsensus(view.getIgnoreGapsinConsensus(),
- null);
- }
- if (view.hasFollowHighlight())
- {
- af.viewport.setFollowHighlight(view.getFollowHighlight());
- }
- if (view.hasFollowSelection())
- {
- af.viewport.followSelection = view.getFollowSelection();
- }
- if (view.hasShowConsensusHistogram())
- {
- af.viewport
- .setShowConsensusHistogram(view.getShowConsensusHistogram());
- }
- else
- {
- af.viewport.setShowConsensusHistogram(true);
- }
- if (view.hasShowSequenceLogo())
- {
- af.viewport.setShowSequenceLogo(view.getShowSequenceLogo());
- }
- else
- {
- af.viewport.setShowSequenceLogo(false);
- }
- if (view.hasNormaliseSequenceLogo())
- {
- af.viewport.setNormaliseSequenceLogo(view.getNormaliseSequenceLogo());
- }
- if (view.hasShowDbRefTooltip())
- {
- af.viewport.setShowDBRefs(view.getShowDbRefTooltip());
- }
- if (view.hasShowNPfeatureTooltip())
- {
- af.viewport.setShowNPFeats(view.hasShowNPfeatureTooltip());
- }
- if (view.hasShowGroupConsensus())
- {
- af.viewport.setShowGroupConsensus(view.getShowGroupConsensus());
- }
- else
- {
- af.viewport.setShowGroupConsensus(false);
- }
- if (view.hasShowGroupConservation())
- {
- af.viewport.setShowGroupConservation(view.getShowGroupConservation());
- }
- else
- {
- af.viewport.setShowGroupConservation(false);
- }
-
- // recover feature settings
- if (jms.getFeatureSettings() != null)
- {
- FeatureRenderer fr = af.alignPanel.getSeqPanel().seqCanvas
- .getFeatureRenderer();
- FeaturesDisplayed fdi;
- af.viewport.setFeaturesDisplayed(fdi = new FeaturesDisplayed());
- String[] renderOrder = new String[jms.getFeatureSettings()
- .getSettingCount()];
- Map<String, FeatureColourI> featureColours = new Hashtable<>();
- Map<String, Float> featureOrder = new Hashtable<>();
-
- for (int fs = 0; fs < jms.getFeatureSettings()
- .getSettingCount(); fs++)
- {
- Setting setting = jms.getFeatureSettings().getSetting(fs);
- String featureType = setting.getType();
-
- /*
- * restore feature filters (if any)
- */
- MatcherSet filters = setting.getMatcherSet();
- if (filters != null)
- {
- FeatureMatcherSetI filter = Jalview2XML
- .unmarshalFilter(featureType, filters);
- if (!filter.isEmpty())
- {
- fr.setFeatureFilter(featureType, filter);
- }
- }
-
- /*
- * restore feature colour scheme
- */
- Color maxColour = new Color(setting.getColour());
- if (setting.hasMincolour())
- {
- /*
- * minColour is always set unless a simple colour
- * (including for colour by label though it doesn't use it)
- */
- Color minColour = new Color(setting.getMincolour());
- Color noValueColour = minColour;
- NoValueColour noColour = setting.getNoValueColour();
- if (noColour == NoValueColour.NONE)
- {
- noValueColour = null;
- }
- else if (noColour == NoValueColour.MAX)
- {
- noValueColour = maxColour;
- }
- float min = setting.hasMin() ? setting.getMin() : 0f;
- float max = setting.hasMin() ? setting.getMax() : 1f;
- FeatureColourI gc = new FeatureColour(minColour, maxColour,
- noValueColour, min, max);
- if (setting.getAttributeNameCount() > 0)
- {
- gc.setAttributeName(setting.getAttributeName());
- }
- if (setting.hasThreshold())
- {
- gc.setThreshold(setting.getThreshold());
- int threshstate = setting.getThreshstate();
- // -1 = None, 0 = Below, 1 = Above threshold
- if (threshstate == 0)
- {
- gc.setBelowThreshold(true);
- }
- else if (threshstate == 1)
- {
- gc.setAboveThreshold(true);
- }
- }
- gc.setAutoScaled(true); // default
- if (setting.hasAutoScale())
- {
- gc.setAutoScaled(setting.getAutoScale());
- }
- if (setting.hasColourByLabel())
- {
- gc.setColourByLabel(setting.getColourByLabel());
- }
- // and put in the feature colour table.
- featureColours.put(featureType, gc);
- }
- else
- {
- featureColours.put(featureType,
- new FeatureColour(maxColour));
- }
- renderOrder[fs] = featureType;
- if (setting.hasOrder())
- {
- featureOrder.put(featureType, setting.getOrder());
- }
- else
- {
- featureOrder.put(featureType, new Float(
- fs / jms.getFeatureSettings().getSettingCount()));
- }
- if (setting.getDisplay())
- {
- fdi.setVisible(featureType);
- }
- }
- Map<String, Boolean> fgtable = new Hashtable<>();
- for (int gs = 0; gs < jms.getFeatureSettings().getGroupCount(); gs++)
- {
- Group grp = jms.getFeatureSettings().getGroup(gs);
- fgtable.put(grp.getName(), new Boolean(grp.getDisplay()));
- }
- // FeatureRendererSettings frs = new FeatureRendererSettings(renderOrder,
- // fgtable, featureColours, jms.getFeatureSettings().hasTransparency() ?
- // jms.getFeatureSettings().getTransparency() : 0.0, featureOrder);
- FeatureRendererSettings frs = new FeatureRendererSettings(renderOrder,
- fgtable, featureColours, 1.0f, featureOrder);
- fr.transferSettings(frs);
- }
-
- if (view.getHiddenColumnsCount() > 0)
- {
- for (int c = 0; c < view.getHiddenColumnsCount(); c++)
- {
- af.viewport.hideColumns(view.getHiddenColumns(c).getStart(),
- view.getHiddenColumns(c).getEnd() // +1
- );
- }
- }
- if (view.getCalcIdParam() != null)
- {
- for (CalcIdParam calcIdParam : view.getCalcIdParam())
- {
- if (calcIdParam != null)
- {
- if (recoverCalcIdParam(calcIdParam, af.viewport))
- {
- }
- else
- {
- warn("Couldn't recover parameters for "
- + calcIdParam.getCalcId());
- }
- }
- }
- }
- af.setMenusFromViewport(af.viewport);
- af.setTitle(view.getTitle());
- // TODO: we don't need to do this if the viewport is aready visible.
- /*
- * Add the AlignFrame to the desktop (it may be 'gathered' later), unless it
- * has a 'cdna/protein complement' view, in which case save it in order to
- * populate a SplitFrame once all views have been read in.
- */
- String complementaryViewId = view.getComplementId();
- if (complementaryViewId == null)
- {
- Desktop.addInternalFrame(af, view.getTitle(), view.getWidth(),
- view.getHeight());
- // recompute any autoannotation
- af.alignPanel.updateAnnotation(false, true);
- reorderAutoannotation(af, al, autoAlan);
- af.alignPanel.alignmentChanged();
- }
- else
- {
- splitFrameCandidates.put(view, af);
- }
- return af;
- }
-
- /**
- * Reads saved data to restore Colour by Annotation settings
- *
- * @param viewAnnColour
- * @param af
- * @param al
- * @param jms
- * @param checkGroupAnnColour
- * @return
- */
- private ColourSchemeI constructAnnotationColour(
- AnnotationColours viewAnnColour, AlignFrame af, AlignmentI al,
- JalviewModelSequence jms, boolean checkGroupAnnColour)
- {
- boolean propagateAnnColour = false;
- AlignmentI annAlignment = af != null ? af.viewport.getAlignment() : al;
- if (checkGroupAnnColour && al.getGroups() != null
- && al.getGroups().size() > 0)
- {
- // pre 2.8.1 behaviour
- // check to see if we should transfer annotation colours
- propagateAnnColour = true;
- for (SequenceGroup sg : al.getGroups())
- {
- if (sg.getColourScheme() instanceof AnnotationColourGradient)
- {
- propagateAnnColour = false;
- }
- }
- }
-
- /*
- * 2.10.2- : saved annotationId is AlignmentAnnotation.annotationId
- */
- String annotationId = viewAnnColour.getAnnotation();
- AlignmentAnnotation matchedAnnotation = annotationIds.get(annotationId);
-
- /*
- * pre 2.10.2: saved annotationId is AlignmentAnnotation.label
- */
- if (matchedAnnotation == null
- && annAlignment.getAlignmentAnnotation() != null)
- {
- for (int i = 0; i < annAlignment.getAlignmentAnnotation().length; i++)
- {
- if (annotationId
- .equals(annAlignment.getAlignmentAnnotation()[i].label))
- {
- matchedAnnotation = annAlignment.getAlignmentAnnotation()[i];
- break;
- }
- }
- }
- if (matchedAnnotation == null)
- {
- System.err.println("Failed to match annotation colour scheme for "
- + annotationId);
- return null;
- }
- if (matchedAnnotation.getThreshold() == null)
- {
- matchedAnnotation.setThreshold(new GraphLine(
- viewAnnColour.getThreshold(), "Threshold", Color.black));
- }
-
- AnnotationColourGradient cs = null;
- if (viewAnnColour.getColourScheme().equals("None"))
- {
- cs = new AnnotationColourGradient(matchedAnnotation,
- new Color(viewAnnColour.getMinColour()),
- new Color(viewAnnColour.getMaxColour()),
- viewAnnColour.getAboveThreshold());
- }
- else if (viewAnnColour.getColourScheme().startsWith("ucs"))
- {
- cs = new AnnotationColourGradient(matchedAnnotation,
- getUserColourScheme(jms, viewAnnColour.getColourScheme()),
- viewAnnColour.getAboveThreshold());
- }
- else
- {
- cs = new AnnotationColourGradient(matchedAnnotation,
- ColourSchemeProperty.getColourScheme(al,
- viewAnnColour.getColourScheme()),
- viewAnnColour.getAboveThreshold());
- }
-
- boolean perSequenceOnly = viewAnnColour.isPerSequence();
- boolean useOriginalColours = viewAnnColour.isPredefinedColours();
- cs.setSeqAssociated(perSequenceOnly);
- cs.setPredefinedColours(useOriginalColours);
-
- if (propagateAnnColour && al.getGroups() != null)
- {
- // Also use these settings for all the groups
- for (int g = 0; g < al.getGroups().size(); g++)
- {
- SequenceGroup sg = al.getGroups().get(g);
- if (sg.getGroupColourScheme() == null)
- {
- continue;
- }
-
- AnnotationColourGradient groupScheme = new AnnotationColourGradient(
- matchedAnnotation, sg.getColourScheme(),
- viewAnnColour.getAboveThreshold());
- sg.setColourScheme(groupScheme);
- groupScheme.setSeqAssociated(perSequenceOnly);
- groupScheme.setPredefinedColours(useOriginalColours);
- }
- }
- return cs;
- }
-
- private void reorderAutoannotation(AlignFrame af, AlignmentI al,
- List<JvAnnotRow> autoAlan)
- {
- // copy over visualization settings for autocalculated annotation in the
- // view
- if (al.getAlignmentAnnotation() != null)
- {
- /**
- * Kludge for magic autoannotation names (see JAL-811)
- */
- String[] magicNames = new String[] { "Consensus", "Quality",
- "Conservation" };
- JvAnnotRow nullAnnot = new JvAnnotRow(-1, null);
- Hashtable<String, JvAnnotRow> visan = new Hashtable<>();
- for (String nm : magicNames)
- {
- visan.put(nm, nullAnnot);
- }
- for (JvAnnotRow auan : autoAlan)
- {
- visan.put(auan.template.label
- + (auan.template.getCalcId() == null ? ""
- : "\t" + auan.template.getCalcId()),
- auan);
- }
- int hSize = al.getAlignmentAnnotation().length;
- List<JvAnnotRow> reorder = new ArrayList<>();
- // work through any autoCalculated annotation already on the view
- // removing it if it should be placed in a different location on the
- // annotation panel.
- List<String> remains = new ArrayList<>(visan.keySet());
- for (int h = 0; h < hSize; h++)
- {
- jalview.datamodel.AlignmentAnnotation jalan = al
- .getAlignmentAnnotation()[h];
- if (jalan.autoCalculated)
- {
- String k;
- JvAnnotRow valan = visan.get(k = jalan.label);
- if (jalan.getCalcId() != null)
- {
- valan = visan.get(k = jalan.label + "\t" + jalan.getCalcId());
- }
-
- if (valan != null)
- {
- // delete the auto calculated row from the alignment
- al.deleteAnnotation(jalan, false);
- remains.remove(k);
- hSize--;
- h--;
- if (valan != nullAnnot)
- {
- if (jalan != valan.template)
- {
- // newly created autoannotation row instance
- // so keep a reference to the visible annotation row
- // and copy over all relevant attributes
- if (valan.template.graphHeight >= 0)
-
- {
- jalan.graphHeight = valan.template.graphHeight;
- }
- jalan.visible = valan.template.visible;
- }
- reorder.add(new JvAnnotRow(valan.order, jalan));
- }
- }
- }
- }
- // Add any (possibly stale) autocalculated rows that were not appended to
- // the view during construction
- for (String other : remains)
- {
- JvAnnotRow othera = visan.get(other);
- if (othera != nullAnnot && othera.template.getCalcId() != null
- && othera.template.getCalcId().length() > 0)
- {
- reorder.add(othera);
- }
- }
- // now put the automatic annotation in its correct place
- int s = 0, srt[] = new int[reorder.size()];
- JvAnnotRow[] rws = new JvAnnotRow[reorder.size()];
- for (JvAnnotRow jvar : reorder)
- {
- rws[s] = jvar;
- srt[s++] = jvar.order;
- }
- reorder.clear();
- jalview.util.QuickSort.sort(srt, rws);
- // and re-insert the annotation at its correct position
- for (JvAnnotRow jvar : rws)
- {
- al.addAnnotation(jvar.template, jvar.order);
- }
- af.alignPanel.adjustAnnotationHeight();
- }
- }
-
- Hashtable skipList = null;
-
- /**
- * TODO remove this method
- *
- * @param view
- * @return AlignFrame bound to sequenceSetId from view, if one exists. private
- * AlignFrame getSkippedFrame(Viewport view) { if (skipList==null) {
- * throw new Error("Implementation Error. No skipList defined for this
- * Jalview2XML instance."); } return (AlignFrame)
- * skipList.get(view.getSequenceSetId()); }
- */
-
- /**
- * Check if the Jalview view contained in object should be skipped or not.
- *
- * @param object
- * @return true if view's sequenceSetId is a key in skipList
- */
- private boolean skipViewport(JalviewModel object)
- {
- if (skipList == null)
- {
- return false;
- }
- String id;
- if (skipList.containsKey(
- id = object.getJalviewModelSequence().getViewport()[0]
- .getSequenceSetId()))
- {
- if (Cache.log != null && Cache.log.isDebugEnabled())
- {
- Cache.log.debug("Skipping seuqence set id " + id);
- }
- return true;
- }
- return false;
- }
-
- public void addToSkipList(AlignFrame af)
- {
- if (skipList == null)
- {
- skipList = new Hashtable();
- }
- skipList.put(af.getViewport().getSequenceSetId(), af);
- }
-
- public void clearSkipList()
- {
- if (skipList != null)
- {
- skipList.clear();
- skipList = null;
- }
- }
-
- private void recoverDatasetFor(SequenceSet vamsasSet, AlignmentI al,
- boolean ignoreUnrefed)
- {
- jalview.datamodel.AlignmentI ds = getDatasetFor(
- vamsasSet.getDatasetId());
- Vector dseqs = null;
- if (ds == null)
- {
- // create a list of new dataset sequences
- dseqs = new Vector();
- }
- for (int i = 0, iSize = vamsasSet.getSequenceCount(); i < iSize; i++)
- {
- Sequence vamsasSeq = vamsasSet.getSequence(i);
- ensureJalviewDatasetSequence(vamsasSeq, ds, dseqs, ignoreUnrefed, i);
- }
- // create a new dataset
- if (ds == null)
- {
- SequenceI[] dsseqs = new SequenceI[dseqs.size()];
- dseqs.copyInto(dsseqs);
- ds = new jalview.datamodel.Alignment(dsseqs);
- debug("Created new dataset " + vamsasSet.getDatasetId()
- + " for alignment " + System.identityHashCode(al));
- addDatasetRef(vamsasSet.getDatasetId(), ds);
- }
- // set the dataset for the newly imported alignment.
- if (al.getDataset() == null && !ignoreUnrefed)
- {
- al.setDataset(ds);
- }
- }
-
- /**
- *
- * @param vamsasSeq
- * sequence definition to create/merge dataset sequence for
- * @param ds
- * dataset alignment
- * @param dseqs
- * vector to add new dataset sequence to
- * @param ignoreUnrefed
- * - when true, don't create new sequences from vamsasSeq if it's id
- * doesn't already have an asssociated Jalview sequence.
- * @param vseqpos
- * - used to reorder the sequence in the alignment according to the
- * vamsasSeq array ordering, to preserve ordering of dataset
- */
- private void ensureJalviewDatasetSequence(Sequence vamsasSeq,
- AlignmentI ds, Vector dseqs, boolean ignoreUnrefed, int vseqpos)
- {
- // JBP TODO: Check this is called for AlCodonFrames to support recovery of
- // xRef Codon Maps
- SequenceI sq = seqRefIds.get(vamsasSeq.getId());
- boolean reorder = false;
- SequenceI dsq = null;
- if (sq != null && sq.getDatasetSequence() != null)
- {
- dsq = sq.getDatasetSequence();
- }
- else
- {
- reorder = true;
- }
- if (sq == null && ignoreUnrefed)
- {
- return;
- }
- String sqid = vamsasSeq.getDsseqid();
- if (dsq == null)
- {
- // need to create or add a new dataset sequence reference to this sequence
- if (sqid != null)
- {
- dsq = seqRefIds.get(sqid);
- }
- // check again
- if (dsq == null)
- {
- // make a new dataset sequence
- dsq = sq.createDatasetSequence();
- if (sqid == null)
- {
- // make up a new dataset reference for this sequence
- sqid = seqHash(dsq);
- }
- dsq.setVamsasId(uniqueSetSuffix + sqid);
- seqRefIds.put(sqid, dsq);
- if (ds == null)
- {
- if (dseqs != null)
- {
- dseqs.addElement(dsq);
- }
- }
- else
- {
- ds.addSequence(dsq);
- }
- }
- else
- {
- if (sq != dsq)
- { // make this dataset sequence sq's dataset sequence
- sq.setDatasetSequence(dsq);
- // and update the current dataset alignment
- if (ds == null)
- {
- if (dseqs != null)
- {
- if (!dseqs.contains(dsq))
- {
- dseqs.add(dsq);
- }
- }
- else
- {
- if (ds.findIndex(dsq) < 0)
- {
- ds.addSequence(dsq);
- }
- }
- }
- }
- }
- }
- // TODO: refactor this as a merge dataset sequence function
- // now check that sq (the dataset sequence) sequence really is the union of
- // all references to it
- // boolean pre = sq.getStart() < dsq.getStart();
- // boolean post = sq.getEnd() > dsq.getEnd();
- // if (pre || post)
- if (sq != dsq)
- {
- // StringBuffer sb = new StringBuffer();
- String newres = jalview.analysis.AlignSeq.extractGaps(
- jalview.util.Comparison.GapChars, sq.getSequenceAsString());
- if (!newres.equalsIgnoreCase(dsq.getSequenceAsString())
- && newres.length() > dsq.getLength())
- {
- // Update with the longer sequence.
- synchronized (dsq)
- {
- /*
- * if (pre) { sb.insert(0, newres .substring(0, dsq.getStart() -
- * sq.getStart())); dsq.setStart(sq.getStart()); } if (post) {
- * sb.append(newres.substring(newres.length() - sq.getEnd() -
- * dsq.getEnd())); dsq.setEnd(sq.getEnd()); }
- */
- dsq.setSequence(newres);
- }
- // TODO: merges will never happen if we 'know' we have the real dataset
- // sequence - this should be detected when id==dssid
- System.err.println(
- "DEBUG Notice: Merged dataset sequence (if you see this often, post at http://issues.jalview.org/browse/JAL-1474)"); // ("
- // + (pre ? "prepended" : "") + " "
- // + (post ? "appended" : ""));
- }
- }
- else
- {
- // sequence refs are identical. We may need to update the existing dataset
- // alignment with this one, though.
- if (ds != null && dseqs == null)
- {
- int opos = ds.findIndex(dsq);
- SequenceI tseq = null;
- if (opos != -1 && vseqpos != opos)
- {
- // remove from old position
- ds.deleteSequence(dsq);
- }
- if (vseqpos < ds.getHeight())
- {
- if (vseqpos != opos)
- {
- // save sequence at destination position
- tseq = ds.getSequenceAt(vseqpos);
- ds.replaceSequenceAt(vseqpos, dsq);
- ds.addSequence(tseq);
- }
- }
- else
- {
- ds.addSequence(dsq);
- }
- }
- }
- }
-
- /*
- * TODO use AlignmentI here and in related methods - needs
- * AlignmentI.getDataset() changed to return AlignmentI instead of Alignment
- */
- Hashtable<String, AlignmentI> datasetIds = null;
-
- IdentityHashMap<AlignmentI, String> dataset2Ids = null;
-
- private AlignmentI getDatasetFor(String datasetId)
- {
- if (datasetIds == null)
- {
- datasetIds = new Hashtable<>();
- return null;
- }
- if (datasetIds.containsKey(datasetId))
- {
- return datasetIds.get(datasetId);
- }
- return null;
- }
-
- private void addDatasetRef(String datasetId, AlignmentI dataset)
- {
- if (datasetIds == null)
- {
- datasetIds = new Hashtable<>();
- }
- datasetIds.put(datasetId, dataset);
- }
-
- /**
- * make a new dataset ID for this jalview dataset alignment
- *
- * @param dataset
- * @return
- */
- private String getDatasetIdRef(AlignmentI dataset)
- {
- if (dataset.getDataset() != null)
- {
- warn("Serious issue! Dataset Object passed to getDatasetIdRef is not a Jalview DATASET alignment...");
- }
- String datasetId = makeHashCode(dataset, null);
- if (datasetId == null)
- {
- // make a new datasetId and record it
- if (dataset2Ids == null)
- {
- dataset2Ids = new IdentityHashMap<>();
- }
- else
- {
- datasetId = dataset2Ids.get(dataset);
- }
- if (datasetId == null)
- {
- datasetId = "ds" + dataset2Ids.size() + 1;
- dataset2Ids.put(dataset, datasetId);
- }
- }
- return datasetId;
- }
-
- private void addDBRefs(SequenceI datasetSequence, Sequence sequence)
- {
- for (int d = 0; d < sequence.getDBRefCount(); d++)
- {
- DBRef dr = sequence.getDBRef(d);
- jalview.datamodel.DBRefEntry entry = new jalview.datamodel.DBRefEntry(
- sequence.getDBRef(d).getSource(),
- sequence.getDBRef(d).getVersion(),
- sequence.getDBRef(d).getAccessionId());
- if (dr.getMapping() != null)
- {
- entry.setMap(addMapping(dr.getMapping()));
- }
- datasetSequence.addDBRef(entry);
- }
- }
-
- private jalview.datamodel.Mapping addMapping(Mapping m)
- {
- SequenceI dsto = null;
- // Mapping m = dr.getMapping();
- int fr[] = new int[m.getMapListFromCount() * 2];
- Enumeration f = m.enumerateMapListFrom();
- for (int _i = 0; f.hasMoreElements(); _i += 2)
- {
- MapListFrom mf = (MapListFrom) f.nextElement();
- fr[_i] = mf.getStart();
- fr[_i + 1] = mf.getEnd();
- }
- int fto[] = new int[m.getMapListToCount() * 2];
- f = m.enumerateMapListTo();
- for (int _i = 0; f.hasMoreElements(); _i += 2)
- {
- MapListTo mf = (MapListTo) f.nextElement();
- fto[_i] = mf.getStart();
- fto[_i + 1] = mf.getEnd();
- }
- jalview.datamodel.Mapping jmap = new jalview.datamodel.Mapping(dsto, fr,
- fto, (int) m.getMapFromUnit(), (int) m.getMapToUnit());
- if (m.getMappingChoice() != null)
- {
- MappingChoice mc = m.getMappingChoice();
- if (mc.getDseqFor() != null)
- {
- String dsfor = "" + mc.getDseqFor();
- if (seqRefIds.containsKey(dsfor))
- {
- /**
- * recover from hash
- */
- jmap.setTo(seqRefIds.get(dsfor));
- }
- else
- {
- frefedSequence.add(newMappingRef(dsfor, jmap));
- }
- }
- else
- {
- /**
- * local sequence definition
- */
- Sequence ms = mc.getSequence();
- SequenceI djs = null;
- String sqid = ms.getDsseqid();
- if (sqid != null && sqid.length() > 0)
- {
- /*
- * recover dataset sequence
- */
- djs = seqRefIds.get(sqid);
- }
- else
- {
- System.err.println(
- "Warning - making up dataset sequence id for DbRef sequence map reference");
- sqid = ((Object) ms).toString(); // make up a new hascode for
- // undefined dataset sequence hash
- // (unlikely to happen)
- }
-
- if (djs == null)
- {
- /**
- * make a new dataset sequence and add it to refIds hash
- */
- djs = new jalview.datamodel.Sequence(ms.getName(),
- ms.getSequence());
- djs.setStart(jmap.getMap().getToLowest());
- djs.setEnd(jmap.getMap().getToHighest());
- djs.setVamsasId(uniqueSetSuffix + sqid);
- jmap.setTo(djs);
- incompleteSeqs.put(sqid, djs);
- seqRefIds.put(sqid, djs);
-
- }
- jalview.bin.Cache.log.debug("about to recurse on addDBRefs.");
- addDBRefs(djs, ms);
-
- }
- }
- return (jmap);
-
- }
-
- /**
- * Provides a 'copy' of an alignment view (on action New View) by 'saving' the
- * view as XML (but not to file), and then reloading it
- *
- * @param ap
- * @return
- */
- public AlignmentPanel copyAlignPanel(AlignmentPanel ap)
- {
- initSeqRefs();
- JalviewModel jm = saveState(ap, null, null, null);
-
- uniqueSetSuffix = "";
- jm.getJalviewModelSequence().getViewport(0).setId(null);
- // we don't overwrite the view we just copied
-
- if (this.frefedSequence == null)
- {
- frefedSequence = new Vector<>();
- }
-
- viewportsAdded.clear();
-
- AlignFrame af = loadFromObject(jm, null, false, null);
- af.alignPanels.clear();
- af.closeMenuItem_actionPerformed(true);
-
- /*
- * if(ap.av.getAlignment().getAlignmentAnnotation()!=null) { for(int i=0;
- * i<ap.av.getAlignment().getAlignmentAnnotation().length; i++) {
- * if(!ap.av.getAlignment().getAlignmentAnnotation()[i].autoCalculated) {
- * af.alignPanel.av.getAlignment().getAlignmentAnnotation()[i] =
- * ap.av.getAlignment().getAlignmentAnnotation()[i]; } } }
- */
-
- return af.alignPanel;
- }
-
- private Hashtable jvids2vobj;
-
- private void warn(String msg)
- {
- warn(msg, null);
- }
-
- private void warn(String msg, Exception e)
- {
- if (Cache.log != null)
- {
- if (e != null)
- {
- Cache.log.warn(msg, e);
- }
- else
- {
- Cache.log.warn(msg);
- }
- }
- else
- {
- System.err.println("Warning: " + msg);
- if (e != null)
- {
- e.printStackTrace();
- }
- }
- }
-
- private void debug(String string)
- {
- debug(string, null);
- }
-
- private void debug(String msg, Exception e)
- {
- if (Cache.log != null)
- {
- if (e != null)
- {
- Cache.log.debug(msg, e);
- }
- else
- {
- Cache.log.debug(msg);
- }
- }
- else
- {
- System.err.println("Warning: " + msg);
- if (e != null)
- {
- e.printStackTrace();
- }
- }
- }
-
- /**
- * set the object to ID mapping tables used to write/recover objects and XML
- * ID strings for the jalview project. If external tables are provided then
- * finalize and clearSeqRefs will not clear the tables when the Jalview2XML
- * object goes out of scope. - also populates the datasetIds hashtable with
- * alignment objects containing dataset sequences
- *
- * @param vobj2jv
- * Map from ID strings to jalview datamodel
- * @param jv2vobj
- * Map from jalview datamodel to ID strings
- *
- *
- */
- public void setObjectMappingTables(Hashtable vobj2jv,
- IdentityHashMap jv2vobj)
- {
- this.jv2vobj = jv2vobj;
- this.vobj2jv = vobj2jv;
- Iterator ds = jv2vobj.keySet().iterator();
- String id;
- while (ds.hasNext())
- {
- Object jvobj = ds.next();
- id = jv2vobj.get(jvobj).toString();
- if (jvobj instanceof jalview.datamodel.Alignment)
- {
- if (((jalview.datamodel.Alignment) jvobj).getDataset() == null)
- {
- addDatasetRef(id, (jalview.datamodel.Alignment) jvobj);
- }
- }
- else if (jvobj instanceof jalview.datamodel.Sequence)
- {
- // register sequence object so the XML parser can recover it.
- if (seqRefIds == null)
- {
- seqRefIds = new HashMap<>();
- }
- if (seqsToIds == null)
- {
- seqsToIds = new IdentityHashMap<>();
- }
- seqRefIds.put(jv2vobj.get(jvobj).toString(), (SequenceI) jvobj);
- seqsToIds.put((SequenceI) jvobj, id);
- }
- else if (jvobj instanceof jalview.datamodel.AlignmentAnnotation)
- {
- String anid;
- AlignmentAnnotation jvann = (AlignmentAnnotation) jvobj;
- annotationIds.put(anid = jv2vobj.get(jvobj).toString(), jvann);
- if (jvann.annotationId == null)
- {
- jvann.annotationId = anid;
- }
- if (!jvann.annotationId.equals(anid))
- {
- // TODO verify that this is the correct behaviour
- this.warn("Overriding Annotation ID for " + anid
- + " from different id : " + jvann.annotationId);
- jvann.annotationId = anid;
- }
- }
- else if (jvobj instanceof String)
- {
- if (jvids2vobj == null)
- {
- jvids2vobj = new Hashtable();
- jvids2vobj.put(jvobj, jv2vobj.get(jvobj).toString());
- }
- }
- else
- {
- Cache.log.debug("Ignoring " + jvobj.getClass() + " (ID = " + id);
- }
- }
- }
-
- /**
- * set the uniqueSetSuffix used to prefix/suffix object IDs for jalview
- * objects created from the project archive. If string is null (default for
- * construction) then suffix will be set automatically.
- *
- * @param string
- */
- public void setUniqueSetSuffix(String string)
- {
- uniqueSetSuffix = string;
-
- }
-
- /**
- * uses skipList2 as the skipList for skipping views on sequence sets
- * associated with keys in the skipList
- *
- * @param skipList2
- */
- public void setSkipList(Hashtable skipList2)
- {
- skipList = skipList2;
- }
-
- /**
- * Reads the jar entry of given name and returns its contents, or null if the
- * entry is not found.
- *
- * @param jprovider
- * @param jarEntryName
- * @return
- */
- protected String readJarEntry(jarInputStreamProvider jprovider,
- String jarEntryName)
- {
- String result = null;
- BufferedReader in = null;
-
- try
- {
- /*
- * Reopen the jar input stream and traverse its entries to find a matching
- * name
- */
- JarInputStream jin = jprovider.getJarInputStream();
- JarEntry entry = null;
- do
- {
- entry = jin.getNextJarEntry();
- } while (entry != null && !entry.getName().equals(jarEntryName));
-
- if (entry != null)
- {
- StringBuilder out = new StringBuilder(256);
- in = new BufferedReader(new InputStreamReader(jin, UTF_8));
- String data;
-
- while ((data = in.readLine()) != null)
- {
- out.append(data);
- }
- result = out.toString();
- }
- else
- {
- warn("Couldn't find entry in Jalview Jar for " + jarEntryName);
- }
- } catch (Exception ex)
- {
- ex.printStackTrace();
- } finally
- {
- if (in != null)
- {
- try
- {
- in.close();
- } catch (IOException e)
- {
- // ignore
- }
- }
- }
-
- return result;
- }
-
- /**
- * Returns an incrementing counter (0, 1, 2...)
- *
- * @return
- */
- private synchronized int nextCounter()
- {
- return counter++;
- }
-
- /**
- * Populates an XML model of the feature colour scheme for one feature type
- *
- * @param featureType
- * @param fcol
- * @return
- */
- protected static jalview.schemabinding.version2.Colour marshalColour(
- String featureType, FeatureColourI fcol)
- {
- jalview.schemabinding.version2.Colour col = new jalview.schemabinding.version2.Colour();
- if (fcol.isSimpleColour())
- {
- col.setRGB(Format.getHexString(fcol.getColour()));
- }
- else
- {
- col.setRGB(Format.getHexString(fcol.getMaxColour()));
- col.setMin(fcol.getMin());
- col.setMax(fcol.getMax());
- col.setMinRGB(jalview.util.Format.getHexString(fcol.getMinColour()));
- col.setAutoScale(fcol.isAutoScaled());
- col.setThreshold(fcol.getThreshold());
- col.setColourByLabel(fcol.isColourByLabel());
- col.setThreshType(fcol.isAboveThreshold() ? ColourThreshTypeType.ABOVE
- : (fcol.isBelowThreshold() ? ColourThreshTypeType.BELOW
- : ColourThreshTypeType.NONE));
- if (fcol.isColourByAttribute())
- {
- col.setAttributeName(fcol.getAttributeName());
- }
- Color noColour = fcol.getNoColour();
- if (noColour == null)
- {
- col.setNoValueColour(NoValueColour.NONE);
- }
- else if (noColour == fcol.getMaxColour())
- {
- col.setNoValueColour(NoValueColour.MAX);
- }
- else
- {
- col.setNoValueColour(NoValueColour.MIN);
- }
- }
- col.setName(featureType);
- return col;
- }
-
- /**
- * Populates an XML model of the feature filter(s) for one feature type
- *
- * @param firstMatcher
- * the first (or only) match condition)
- * @param filter
- * remaining match conditions (if any)
- * @param and
- * if true, conditions are and-ed, else or-ed
- */
- protected static MatcherSet marshalFilter(FeatureMatcherI firstMatcher,
- Iterator<FeatureMatcherI> filters, boolean and)
- {
- MatcherSet result = new MatcherSet();
-
- if (filters.hasNext())
- {
- /*
- * compound matcher
- */
- CompoundMatcher compound = new CompoundMatcher();
- compound.setAnd(and);
- MatcherSet matcher1 = marshalFilter(firstMatcher,
- Collections.emptyIterator(), and);
- compound.addMatcherSet(matcher1);
- FeatureMatcherI nextMatcher = filters.next();
- MatcherSet matcher2 = marshalFilter(nextMatcher, filters, and);
- compound.addMatcherSet(matcher2);
- result.setCompoundMatcher(compound);
- }
- else
- {
- /*
- * single condition matcher
- */
- MatchCondition matcherModel = new MatchCondition();
- matcherModel.setCondition(
- firstMatcher.getMatcher().getCondition().getStableName());
- matcherModel.setValue(firstMatcher.getMatcher().getPattern());
- if (firstMatcher.isByAttribute())
- {
- matcherModel.setBy(FeatureMatcherByType.BYATTRIBUTE);
- matcherModel.setAttributeName(firstMatcher.getAttribute());
- }
- else if (firstMatcher.isByLabel())
- {
- matcherModel.setBy(FeatureMatcherByType.BYLABEL);
- }
- else if (firstMatcher.isByScore())
- {
- matcherModel.setBy(FeatureMatcherByType.BYSCORE);
- }
- result.setMatchCondition(matcherModel);
- }
-
- return result;
- }
-
- /**
- * Loads one XML model of a feature filter to a Jalview object
- *
- * @param featureType
- * @param matcherSetModel
- * @return
- */
- protected static FeatureMatcherSetI unmarshalFilter(
- String featureType, MatcherSet matcherSetModel)
- {
- FeatureMatcherSetI result = new FeatureMatcherSet();
- try
- {
- unmarshalFilterConditions(result, matcherSetModel, true);
- } catch (IllegalStateException e)
- {
- // mixing AND and OR conditions perhaps
- System.err.println(
- String.format("Error reading filter conditions for '%s': %s",
- featureType, e.getMessage()));
- // return as much as was parsed up to the error
- }
-
- return result;
- }
-
- /**
- * Adds feature match conditions to matcherSet as unmarshalled from XML
- * (possibly recursively for compound conditions)
- *
- * @param matcherSet
- * @param matcherSetModel
- * @param and
- * if true, multiple conditions are AND-ed, else they are OR-ed
- * @throws IllegalStateException
- * if AND and OR conditions are mixed
- */
- protected static void unmarshalFilterConditions(
- FeatureMatcherSetI matcherSet, MatcherSet matcherSetModel,
- boolean and)
- {
- MatchCondition mc = matcherSetModel.getMatchCondition();
- if (mc != null)
- {
- /*
- * single condition
- */
- FeatureMatcherByType filterBy = mc.getBy();
- Condition cond = Condition.fromString(mc.getCondition());
- String pattern = mc.getValue();
- FeatureMatcherI matchCondition = null;
- if (filterBy == FeatureMatcherByType.BYLABEL)
- {
- matchCondition = FeatureMatcher.byLabel(cond, pattern);
- }
- else if (filterBy == FeatureMatcherByType.BYSCORE)
- {
- matchCondition = FeatureMatcher.byScore(cond, pattern);
-
- }
- else if (filterBy == FeatureMatcherByType.BYATTRIBUTE)
- {
- String[] attNames = mc.getAttributeName();
- matchCondition = FeatureMatcher.byAttribute(cond, pattern,
- attNames);
- }
-
- /*
- * note this throws IllegalStateException if AND-ing to a
- * previously OR-ed compound condition, or vice versa
- */
- if (and)
- {
- matcherSet.and(matchCondition);
- }
- else
- {
- matcherSet.or(matchCondition);
- }
- }
- else
- {
- /*
- * compound condition
- */
- MatcherSet[] matchers = matcherSetModel.getCompoundMatcher()
- .getMatcherSet();
- boolean anded = matcherSetModel.getCompoundMatcher().getAnd();
- if (matchers.length == 2)
- {
- unmarshalFilterConditions(matcherSet, matchers[0], anded);
- unmarshalFilterConditions(matcherSet, matchers[1], anded);
- }
- else
- {
- System.err.println("Malformed compound filter condition");
- }
- }
- }
-
- /**
- * Loads one XML model of a feature colour to a Jalview object
- *
- * @param colourModel
- * @return
- */
- protected static FeatureColourI unmarshalColour(
- jalview.schemabinding.version2.Colour colourModel)
- {
- FeatureColourI colour = null;
-
- if (colourModel.hasMax())
- {
- Color mincol = null;
- Color maxcol = null;
- Color noValueColour = null;
-
- try
- {
- mincol = new Color(Integer.parseInt(colourModel.getMinRGB(), 16));
- maxcol = new Color(Integer.parseInt(colourModel.getRGB(), 16));
- } catch (Exception e)
- {
- Cache.log.warn("Couldn't parse out graduated feature color.", e);
- }
-
- NoValueColour noCol = colourModel.getNoValueColour();
- if (noCol == NoValueColour.MIN)
- {
- noValueColour = mincol;
- }
- else if (noCol == NoValueColour.MAX)
- {
- noValueColour = maxcol;
- }
-
- colour = new FeatureColour(mincol, maxcol, noValueColour,
- colourModel.getMin(),
- colourModel.getMax());
- String[] attributes = colourModel.getAttributeName();
- if (attributes != null && attributes.length > 0)
- {
- colour.setAttributeName(attributes);
- }
- if (colourModel.hasAutoScale())
- {
- colour.setAutoScaled(colourModel.getAutoScale());
- }
- if (colourModel.hasColourByLabel())
- {
- colour.setColourByLabel(colourModel.getColourByLabel());
- }
- if (colourModel.hasThreshold())
- {
- colour.setThreshold(colourModel.getThreshold());
- }
- ColourThreshTypeType ttyp = colourModel.getThreshType();
- if (ttyp != null)
- {
- if (ttyp == ColourThreshTypeType.ABOVE)
- {
- colour.setAboveThreshold(true);
- }
- else if (ttyp == ColourThreshTypeType.BELOW)
- {
- colour.setBelowThreshold(true);
- }
- }
- }
- else
- {
- Color color = new Color(Integer.parseInt(colourModel.getRGB(), 16));
- colour = new FeatureColour(color);
- }
-
- return colour;
- }
-}
+++ /dev/null
-/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.gui;
-
-import jalview.analysis.Conservation;
-import jalview.binding.Annotation;
-import jalview.binding.AnnotationElement;
-import jalview.binding.Features;
-import jalview.binding.JGroup;
-import jalview.binding.JSeq;
-import jalview.binding.JalviewModel;
-import jalview.binding.JalviewModelSequence;
-import jalview.binding.Pdbids;
-import jalview.binding.Sequence;
-import jalview.binding.SequenceSet;
-import jalview.binding.Setting;
-import jalview.binding.Tree;
-import jalview.binding.UserColours;
-import jalview.binding.Viewport;
-import jalview.datamodel.PDBEntry;
-import jalview.datamodel.SequenceFeature;
-import jalview.io.FileFormat;
-import jalview.schemes.ColourSchemeI;
-import jalview.schemes.ColourSchemeProperty;
-import jalview.structure.StructureSelectionManager;
-import jalview.util.MessageManager;
-import jalview.util.jarInputStreamProvider;
-import jalview.viewmodel.seqfeatures.FeatureRendererSettings;
-
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.net.UnknownHostException;
-import java.util.Hashtable;
-import java.util.Vector;
-import java.util.jar.JarEntry;
-import java.util.jar.JarInputStream;
-
-/**
- * DOCUMENT ME!
- *
- * @author $author$
- * @version $Revision$
- */
-public class Jalview2XML_V1
-{
- boolean raiseGUI = true;
-
- public Jalview2XML_V1()
- {
-
- };
-
- public Jalview2XML_V1(boolean raiseGUI)
- {
- this.raiseGUI = raiseGUI;
- };
-
- jalview.schemes.UserColourScheme GetUserColourScheme(
- JalviewModelSequence jms, String id)
- {
- UserColours[] uc = jms.getUserColours();
- UserColours colours = null;
-
- for (int i = 0; i < uc.length; i++)
- {
- if (uc[i].getId().equals(id))
- {
- colours = uc[i];
-
- break;
- }
- }
-
- int csize = colours.getUserColourScheme().getColourCount();
- java.awt.Color[] newColours = new java.awt.Color[csize];
-
- for (int i = 0; i < csize; i++)
- {
- newColours[i] = new java.awt.Color(Integer.parseInt(
- colours.getUserColourScheme().getColour(i).getRGB(), 16));
- }
-
- return new jalview.schemes.UserColourScheme(newColours);
- }
-
- /**
- * DOCUMENT ME!
- *
- * @param file
- * DOCUMENT ME!
- */
- public AlignFrame LoadJalviewAlign(final jarInputStreamProvider jprovider)
- {
- final String file = jprovider.getFilename();
- jalview.gui.AlignFrame af = null;
-
- try
- {
- JarInputStream jin = null;
- JarEntry jarentry = null;
- int entryCount = 1;
-
- do
- {
- jin = jprovider.getJarInputStream();
-
- for (int i = 0; i < entryCount; i++)
- {
- jarentry = jin.getNextJarEntry();
- }
-
- if (jarentry != null)
- {
- entryCount++;
- if (jarentry.getName().endsWith(".xml"))
- {
- Reader in = new InputStreamReader(jin, "UTF-8");
- JalviewModel object = new JalviewModel();
-
- object = object.unmarshal(in);
-
- af = LoadFromObject(object, file);
- }
- }
- jin.close();
- } while (jarentry != null);
- } catch (final UnknownHostException ex)
- {
- ex.printStackTrace();
- if (raiseGUI)
- {
- javax.swing.SwingUtilities.invokeLater(new Runnable()
- {
- @Override
- public void run()
- {
-
- System.err.println(
- "Couldn't locate Jalview XML file : " + ex + "\n");
- JvOptionPane.showInternalMessageDialog(Desktop.desktop,
- MessageManager.formatMessage("label.couldnt_locate",
- new String[]
- { file }),
- MessageManager.getString("label.url_not_found"),
- JvOptionPane.WARNING_MESSAGE);
- }
- });
- }
- ;
- } catch (Exception ex)
- {
- System.err.println("Exception whilst loading jalview XML file : ");
- ex.printStackTrace();
- if (raiseGUI)
- {
- javax.swing.SwingUtilities.invokeLater(new Runnable()
- {
- @Override
- public void run()
- {
-
- JvOptionPane.showInternalMessageDialog(Desktop.desktop,
- MessageManager.formatMessage(
- "label.error_loading_file_params", new String[]
- { file }),
- MessageManager
- .getString("label.error_loading_jalview_file"),
- JvOptionPane.WARNING_MESSAGE);
- }
- });
- }
- }
-
- return af;
- }
-
- AlignFrame LoadFromObject(JalviewModel object, String file)
- {
- Vector seqids = new Vector();
- SequenceSet vamsasSet = object.getVamsasModel().getSequenceSet(0);
- Sequence[] vamsasSeq = vamsasSet.getSequence();
-
- JalviewModelSequence jms = object.getJalviewModelSequence();
-
- // ////////////////////////////////
- // LOAD SEQUENCES
- jalview.datamodel.Sequence[] jseqs = new jalview.datamodel.Sequence[vamsasSeq.length];
- JSeq[] JSEQ = object.getJalviewModelSequence().getJSeq();
- for (int i = 0; i < vamsasSeq.length; i++)
- {
- jseqs[i] = new jalview.datamodel.Sequence(vamsasSeq[i].getName(),
- vamsasSeq[i].getSequence());
- jseqs[i].setStart(JSEQ[i].getStart());
- jseqs[i].setEnd(JSEQ[i].getEnd());
- seqids.add(jseqs[i]);
- }
-
- // /SequenceFeatures are added to the DatasetSequence,
- // so we must create the dataset before loading features
- // ///////////////////////////////
- jalview.datamodel.Alignment al = new jalview.datamodel.Alignment(jseqs);
- al.setDataset(null);
- // ///////////////////////////////
-
- for (int i = 0; i < vamsasSeq.length; i++)
- {
- if (JSEQ[i].getFeaturesCount() > 0)
- {
- Features[] features = JSEQ[i].getFeatures();
- for (int f = 0; f < features.length; f++)
- {
- SequenceFeature sf = new SequenceFeature(features[f].getType(),
- features[f].getDescription(), features[f].getBegin(),
- features[f].getEnd(), null);
- sf.setStatus(features[f].getStatus());
- al.getSequenceAt(i).getDatasetSequence().addSequenceFeature(sf);
- }
- }
- if (JSEQ[i].getPdbidsCount() > 0)
- {
- Pdbids[] ids = JSEQ[i].getPdbids();
- for (int p = 0; p < ids.length; p++)
- {
- jalview.datamodel.PDBEntry entry = new jalview.datamodel.PDBEntry();
- entry.setId(ids[p].getId());
- if (ids[p].getType() != null)
- {
- if (ids[p].getType().equalsIgnoreCase("PDB"))
- {
- entry.setType(PDBEntry.Type.PDB);
- }
- else
- {
- entry.setType(PDBEntry.Type.FILE);
- }
- }
- al.getSequenceAt(i).getDatasetSequence().addPDBId(entry);
- StructureSelectionManager
- .getStructureSelectionManager(Desktop.instance)
- .registerPDBEntry(entry);
- }
-
- }
- }
-
- // ///////////////////////////////
- // ////////////////////////////////
- // LOAD ANNOTATIONS
- if (vamsasSet.getAnnotation() != null)
- {
- Annotation[] an = vamsasSet.getAnnotation();
-
- for (int i = 0; i < an.length; i++)
- {
- AnnotationElement[] ae = an[i].getAnnotationElement();
- jalview.datamodel.Annotation[] anot = new jalview.datamodel.Annotation[al
- .getWidth()];
-
- for (int aa = 0; aa < ae.length; aa++)
- {
- anot[ae[aa].getPosition()] = new jalview.datamodel.Annotation(
- ae[aa].getDisplayCharacter(), ae[aa].getDescription(),
- ae[aa].getSecondaryStructure().charAt(0),
- ae[aa].getValue());
- }
-
- jalview.datamodel.AlignmentAnnotation jaa = null;
-
- if (an[i].getGraph())
- {
- jaa = new jalview.datamodel.AlignmentAnnotation(an[i].getLabel(),
- an[i].getDescription(), anot, 0, 0,
- jalview.datamodel.AlignmentAnnotation.BAR_GRAPH);
- }
- else
- {
- jaa = new jalview.datamodel.AlignmentAnnotation(an[i].getLabel(),
- an[i].getDescription(), anot);
- }
-
- al.addAnnotation(jaa);
- }
- }
-
- // ///////////////////////////////
- // LOAD VIEWPORT
- Viewport[] views = jms.getViewport();
- Viewport view = views[0]; // DEAL WITH MULTIPLE VIEWPORTS LATER
-
- AlignFrame af = new AlignFrame(al, view.getWidth(), view.getHeight());
-
- af.setFileName(file, FileFormat.Jalview);
-
- for (int i = 0; i < JSEQ.length; i++)
- {
- af.viewport.setSequenceColour(
- af.viewport.getAlignment().getSequenceAt(i),
- new java.awt.Color(JSEQ[i].getColour()));
- }
-
- // af.changeColour() );
- // ///////////////////////
- // LOAD GROUPS
- if (jms.getJGroupCount() > 0)
- {
- JGroup[] groups = jms.getJGroup();
-
- for (int i = 0; i < groups.length; i++)
- {
- ColourSchemeI cs = null;
-
- if (groups[i].getColour() != null)
- {
- if (groups[i].getColour().startsWith("ucs"))
- {
- cs = GetUserColourScheme(jms, groups[i].getColour());
- }
- else
- {
- cs = ColourSchemeProperty.getColourScheme(al,
- groups[i].getColour());
- }
- }
- int pidThreshold = groups[i].getPidThreshold();
-
- Vector seqs = new Vector();
- int[] ids = groups[i].getSeq();
-
- for (int s = 0; s < ids.length; s++)
- {
- seqs.addElement(seqids.elementAt(ids[s]));
- }
-
- jalview.datamodel.SequenceGroup sg = new jalview.datamodel.SequenceGroup(
- seqs, groups[i].getName(), cs, groups[i].getDisplayBoxes(),
- groups[i].getDisplayText(), groups[i].getColourText(),
- groups[i].getStart(), groups[i].getEnd());
- sg.getGroupColourScheme().setThreshold(pidThreshold, true);
-
- sg.setOutlineColour(
- new java.awt.Color(groups[i].getOutlineColour()));
-
- if (groups[i].getConsThreshold() != 0)
- {
- Conservation c = new Conservation("All", sg.getSequences(null), 0,
- sg.getWidth() - 1);
- c.calculate();
- c.verdict(false, 25);
- sg.cs.setConservation(c);
- }
-
- al.addGroup(sg);
- }
- }
-
- af.setBounds(view.getXpos(), view.getYpos(), view.getWidth(),
- view.getHeight());
- af.viewport.getRanges().setStartRes(view.getStartRes());
- // startSeq set in af.alignPanel.updateLayout below
- af.viewport.setShowAnnotation(view.getShowAnnotation());
- af.viewport.setAbovePIDThreshold(view.getPidSelected());
- af.viewport.setColourText(view.getShowColourText());
- af.viewport.setConservationSelected(view.getConservationSelected());
- af.viewport.setShowJVSuffix(view.getShowFullId());
- af.viewport.setFont(new java.awt.Font(view.getFontName(),
- view.getFontStyle(), view.getFontSize()), true);
-
- af.viewport.setRenderGaps(view.getRenderGaps());
- af.viewport.setWrapAlignment(view.getWrapAlignment());
-
- af.viewport.setShowAnnotation(view.isShowAnnotation());
- af.viewport.setShowBoxes(view.getShowBoxes());
- af.viewport.setShowText(view.getShowText());
-
- ColourSchemeI cs = null;
-
- if (view.getBgColour() != null)
- {
- if (view.getBgColour().startsWith("ucs"))
- {
- cs = GetUserColourScheme(jms, view.getBgColour());
- }
- else
- {
- cs = ColourSchemeProperty.getColourScheme(al, view.getBgColour());
- }
-
- // if (cs != null)
- // {
- // cs.setThreshold(view.getPidThreshold(), true);
- // cs.setConsensus(af.viewport.getSequenceConsensusHash());
- // }
- }
-
- af.viewport.getResidueShading().setThreshold(view.getPidThreshold(),
- true);
- af.viewport.getResidueShading()
- .setConsensus(af.viewport.getSequenceConsensusHash());
- af.viewport.setColourAppliesToAllGroups(false);
- af.alignPanel.updateLayout();
- af.changeColour(cs);
- if (view.getConservationSelected() && cs != null)
- {
- af.viewport.getResidueShading()
- .setConservationInc(view.getConsThreshold());
- }
-
- af.viewport.setColourAppliesToAllGroups(true);
- af.viewport.setShowSequenceFeatures(view.getShowSequenceFeatures());
-
- if (jms.getFeatureSettings() != null)
- {
- Hashtable featuresDisplayed = new Hashtable();
- Hashtable featureColours = new Hashtable();
- String[] renderOrder = new String[jms.getFeatureSettings()
- .getSettingCount()];
- for (int fs = 0; fs < jms.getFeatureSettings()
- .getSettingCount(); fs++)
- {
- Setting setting = jms.getFeatureSettings().getSetting(fs);
-
- featureColours.put(setting.getType(),
- new java.awt.Color(setting.getColour()));
-
- renderOrder[fs] = setting.getType();
-
- if (setting.getDisplay())
- {
- featuresDisplayed.put(setting.getType(),
- new Integer(setting.getColour()));
- }
- }
- FeatureRendererSettings frs = new FeatureRendererSettings(renderOrder,
- new Hashtable(), featureColours, 1.0f, null);
- af.alignPanel.getSeqPanel().seqCanvas.getFeatureRenderer()
- .transferSettings(frs);
- }
-
- af.setMenusFromViewport(af.viewport);
-
- Desktop.addInternalFrame(af, view.getTitle(), view.getWidth(),
- view.getHeight());
-
- // LOAD TREES
- // /////////////////////////////////////
- if (jms.getTreeCount() > 0)
- {
- try
- {
- for (int t = 0; t < jms.getTreeCount(); t++)
- {
-
- Tree tree = jms.getTree(t);
-
- TreePanel tp = af.showNewickTree(
- new jalview.io.NewickFile(tree.getNewick()),
- tree.getTitle(), tree.getWidth(), tree.getHeight(),
- tree.getXpos(), tree.getYpos());
-
- tp.fitToWindow.setState(tree.getFitToWindow());
- tp.fitToWindow_actionPerformed(null);
-
- if (tree.getFontName() != null)
- {
- tp.setTreeFont(new java.awt.Font(tree.getFontName(),
- tree.getFontStyle(), tree.getFontSize()));
- }
- else
- {
- tp.setTreeFont(new java.awt.Font(view.getFontName(),
- view.getFontStyle(), tree.getFontSize()));
- }
-
- tp.showPlaceholders(tree.getMarkUnlinked());
- tp.showBootstrap(tree.getShowBootstrap());
- tp.showDistances(tree.getShowDistances());
-
- tp.getTreeCanvas().setThreshold(tree.getThreshold());
-
- if (tree.getCurrentTree())
- {
- af.viewport.setCurrentTree(tp.getTree());
- }
- }
-
- } catch (Exception ex)
- {
- ex.printStackTrace();
- }
-
- }
-
- return af;
- }
-}
--- /dev/null
+package jalview.gui;
+
+import java.awt.Font;
+import java.awt.event.ActionListener;
+
+import javax.swing.AbstractButton;
+import javax.swing.ButtonGroup;
+import javax.swing.JRadioButton;
+
+public class JalviewBooleanRadioButtons extends AbstractButton
+{
+ private static final Font LABEL_FONT = JvSwingUtils.getLabelFont();
+
+ private ButtonGroup buttonGroup = new ButtonGroup();
+
+ private JRadioButton buttonTrue = new JRadioButton();
+
+ private JRadioButton buttonFalse = new JRadioButton();
+
+ public JalviewBooleanRadioButtons(boolean value, String trueLabel,
+ String falseLabel)
+ {
+ init();
+ this.setLabels(trueLabel, falseLabel);
+ }
+
+ public JalviewBooleanRadioButtons(boolean value)
+ {
+ init();
+ setSelected(value);
+ }
+
+ public JalviewBooleanRadioButtons()
+ {
+ init();
+ }
+
+ protected void init()
+ {
+ buttonTrue.setFont(LABEL_FONT);
+ buttonFalse.setFont(LABEL_FONT);
+ buttonGroup.add(buttonTrue);
+ buttonGroup.add(buttonFalse);
+ }
+
+ public void setLabels(String trueLabel, String falseLabel)
+ {
+ buttonTrue.setText(trueLabel);
+ buttonFalse.setText(falseLabel);
+ }
+
+ @Override
+ public void setSelected(boolean b)
+ {
+ buttonFalse.setSelected(!b);
+ // this should probably happen automatically, no harm in forcing the issue!
+ // setting them this way round so the last setSelected is on buttonTrue
+ buttonTrue.setSelected(b);
+ }
+
+ @Override
+ public boolean isSelected()
+ {
+ // unambiguous selection
+ return buttonTrue.isSelected() && !buttonFalse.isSelected();
+ }
+
+ @Override
+ public void setEnabled(boolean b)
+ {
+ buttonTrue.setEnabled(b);
+ buttonFalse.setEnabled(b);
+ }
+
+ @Override
+ public boolean isEnabled()
+ {
+ return buttonTrue.isEnabled() && buttonFalse.isEnabled();
+ }
+
+ public JRadioButton getTrueButton()
+ {
+ return buttonTrue;
+ }
+
+ public JRadioButton getFalseButton()
+ {
+ return buttonFalse;
+ }
+
+ @Override
+ public void addActionListener(ActionListener l)
+ {
+ buttonTrue.addActionListener(l);
+ buttonFalse.addActionListener(l);
+ }
+
+ public void addTrueActionListener(ActionListener l)
+ {
+ buttonTrue.addActionListener(l);
+ }
+
+ public void addFalseActionListener(ActionListener l)
+ {
+ buttonFalse.addActionListener(l);
+ }
+}
// without this the overview window does not size to fit the overview canvas
setPreferredSize(new Dimension(od.getWidth(), od.getHeight()));
-
+
addComponentListener(new ComponentAdapter()
{
@Override
@Override
public void mouseMoved(MouseEvent evt)
{
- if (!draggingBox)
- // don't bother changing the cursor if we're dragging the box
- // as we can't have moved inside or out of the box in that case
+ if (od.isPositionInBox(evt.getX(), evt.getY()))
{
- if (od.isPositionInBox(evt.getX(), evt.getY()))
- {
- // display drag cursor at mouse position
- setCursor(Cursor.getPredefinedCursor(Cursor.MOVE_CURSOR));
- }
- else
- {
- // reset cursor
- setCursor(Cursor.getPredefinedCursor(Cursor.DEFAULT_CURSOR));
- }
+ /*
+ * using HAND_CURSOR rather than DRAG_CURSOR
+ * as the latter is not supported on Mac
+ */
+ getParent().setCursor(
+ Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
+ }
+ else
+ {
+ // reset cursor
+ getParent().setCursor(
+ Cursor.getPredefinedCursor(Cursor.CROSSHAIR_CURSOR));
}
}
+
});
addMouseListener(new MouseAdapter()
od.updateViewportFromMouse(evt.getX(), evt.getY(),
av.getAlignment().getHiddenSequences(),
av.getAlignment().getHiddenColumns());
+ getParent().setCursor(
+ Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
}
else
{
package jalview.gui;
import jalview.analysis.scoremodels.ScoreModels;
-import jalview.analysis.scoremodels.SimilarityParams;
+import jalview.api.AlignViewportI;
import jalview.api.analysis.ScoreModelI;
import jalview.api.analysis.SimilarityParamsI;
+import jalview.bin.Cache;
import jalview.datamodel.Alignment;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.AlignmentView;
import jalview.gui.ImageExporter.ImageWriterI;
import jalview.gui.JalviewColourChooser.ColourChooserListener;
import jalview.jbgui.GPCAPanel;
+import jalview.math.RotatableMatrix.Axis;
import jalview.util.ImageMaker;
import jalview.util.MessageManager;
import jalview.viewmodel.AlignmentViewport;
import java.awt.print.PrinterJob;
import javax.swing.ButtonGroup;
-import javax.swing.JCheckBoxMenuItem;
import javax.swing.JMenuItem;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.event.InternalFrameAdapter;
import javax.swing.event.InternalFrameEvent;
/**
- * DOCUMENT ME!
- *
- * @author $author$
- * @version $Revision$
+ * The panel holding the Principal Component Analysis 3-D visualisation
*/
public class PCAPanel extends GPCAPanel
implements Runnable, IProgressIndicator
{
+ private static final int MIN_WIDTH = 470;
- private IProgressIndicator progressBar;
+ private static final int MIN_HEIGHT = 250;
- RotatableCanvas rc;
+ private RotatableCanvas rc;
AlignmentPanel ap;
AlignmentViewport av;
- PCAModel pcaModel;
+ private PCAModel pcaModel;
- private static final int MIN_WIDTH = 470;
-
- private static final int MIN_HEIGHT = 250;
+ private int top = 0;
- int top = 0;
+ private IProgressIndicator progressBar;
private boolean working;
/**
- * Creates a new PCAPanel object using default score model and parameters
- *
- * @param alignPanel
- */
- public PCAPanel(AlignmentPanel alignPanel)
- {
- this(alignPanel,
- ScoreModels.getInstance()
- .getDefaultModel(
- !alignPanel.av.getAlignment().isNucleotide())
- .getName(),
- SimilarityParams.SeqSpace);
- }
-
- /**
* Constructor given sequence data, a similarity (or distance) score model
* name, and score calculation parameters
*
ScoreModelI scoreModel = ScoreModels.getInstance()
.getScoreModel(modelName, ap);
- pcaModel = new PCAModel(seqstrings, seqs, nucleotide, scoreModel,
- params);
+ setPcaModel(new PCAModel(seqstrings, seqs, nucleotide, scoreModel,
+ params));
PaintRefresher.Register(this, av.getSequenceSetId());
- rc = new RotatableCanvas(alignPanel);
- this.getContentPane().add(rc, BorderLayout.CENTER);
- Thread worker = new Thread(this);
- worker.start();
+ setRotatableCanvas(new RotatableCanvas(alignPanel));
+ this.getContentPane().add(getRotatableCanvas(), BorderLayout.CENTER);
+
+ addKeyListener(getRotatableCanvas());
+ validate();
+
+ this.setMinimumSize(new Dimension(MIN_WIDTH, MIN_HEIGHT));
}
/**
*/
protected void close_actionPerformed()
{
- pcaModel = null;
- }
-
- /**
- * Repopulate the options and actions under the score model menu when it is
- * selected. Options will depend on whether 'nucleotide' or 'peptide'
- * modelling is selected (and also possibly on whether any additional score
- * models have been added).
- */
- @Override
- protected void scoreModel_menuSelected()
- {
- scoreModelMenu.removeAll();
- for (final ScoreModelI sm : ScoreModels.getInstance().getModels())
- {
- final String name = sm.getName();
- JCheckBoxMenuItem jm = new JCheckBoxMenuItem(name);
-
- /*
- * if the score model doesn't provide a description, try to look one
- * up in the text bundle, falling back on its name
- */
- String tooltip = sm.getDescription();
- if (tooltip == null)
- {
- tooltip = MessageManager.getStringOrReturn("label.score_model_",
- name);
- }
- jm.setToolTipText(tooltip);
- jm.setSelected(pcaModel.getScoreModelName().equals(name));
- if ((pcaModel.isNucleotide() && sm.isDNA())
- || (!pcaModel.isNucleotide() && sm.isProtein()))
- {
- jm.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- if (!pcaModel.getScoreModelName().equals(name))
- {
- ScoreModelI sm2 = ScoreModels.getInstance()
- .getScoreModel(name, ap);
- pcaModel.setScoreModel(sm2);
- Thread worker = new Thread(PCAPanel.this);
- worker.start();
- }
- }
- });
- scoreModelMenu.add(jm);
- }
- }
+ setPcaModel(null);
}
@Override
- public void bgcolour_actionPerformed(ActionEvent e)
+ protected void bgcolour_actionPerformed()
{
String ttl = MessageManager.getString("label.select_background_colour");
ColourChooserListener listener = new ColourChooserListener()
@Override
public void colourSelected(Color c)
{
- rc.bgColour = c;
+ rc.setBgColour(c);
rc.repaint();
}
};
- JalviewColourChooser.showColourChooser(this, ttl, rc.bgColour,
+ JalviewColourChooser.showColourChooser(this, ttl, rc.getBgColour(),
listener);
}
/**
- * DOCUMENT ME!
+ * Calculates the PCA and displays the results
*/
@Override
public void run()
{
+ working = true;
long progId = System.currentTimeMillis();
IProgressIndicator progress = this;
String message = MessageManager.getString("label.pca_recalculating");
message = MessageManager.getString("label.pca_calculating");
}
progress.setProgressBar(message, progId);
- working = true;
try
{
- calcSettings.setEnabled(false);
- pcaModel.run();
- // ////////////////
+ getPcaModel().calculate();
+
xCombobox.setSelectedIndex(0);
yCombobox.setSelectedIndex(1);
zCombobox.setSelectedIndex(2);
- pcaModel.updateRc(rc);
+ getPcaModel().updateRc(getRotatableCanvas());
// rc.invalidate();
- nuclSetting.setSelected(pcaModel.isNucleotide());
- protSetting.setSelected(!pcaModel.isNucleotide());
- top = pcaModel.getTop();
+ setTop(getPcaModel().getTop());
} catch (OutOfMemoryError er)
{
{
progress.setProgressBar("", progId);
}
- calcSettings.setEnabled(true);
+
repaint();
if (getParent() == null)
{
- addKeyListener(rc);
- Desktop.addInternalFrame(this, MessageManager
- .getString("label.principal_component_analysis"), 475, 450);
- this.setMinimumSize(new Dimension(MIN_WIDTH, MIN_HEIGHT));
+ Desktop.addInternalFrame(this,
+ MessageManager.formatMessage("label.calc_title", "PCA",
+ getPcaModel().getScoreModelName()),
+ 475, 450);
}
working = false;
}
- @Override
- protected void nuclSetting_actionPerfomed(ActionEvent arg0)
- {
- if (!pcaModel.isNucleotide())
- {
- pcaModel.setNucleotide(true);
- pcaModel.setScoreModel(
- ScoreModels.getInstance().getDefaultModel(false));
- Thread worker = new Thread(this);
- worker.start();
- }
-
- }
-
- @Override
- protected void protSetting_actionPerfomed(ActionEvent arg0)
- {
-
- if (pcaModel.isNucleotide())
- {
- pcaModel.setNucleotide(false);
- pcaModel.setScoreModel(
- ScoreModels.getInstance().getDefaultModel(true));
- Thread worker = new Thread(this);
- worker.start();
- }
- }
-
/**
- * DOCUMENT ME!
+ * Updates the PCA display after a change of component to use for x, y or z
+ * axis
*/
- void doDimensionChange()
+ @Override
+ protected void doDimensionChange()
{
- if (top == 0)
+ if (getTop() == 0)
{
return;
}
- int dim1 = top - xCombobox.getSelectedIndex();
- int dim2 = top - yCombobox.getSelectedIndex();
- int dim3 = top - zCombobox.getSelectedIndex();
- pcaModel.updateRcView(dim1, dim2, dim3);
- rc.img = null;
- rc.rotmat.setIdentity();
- rc.initAxes();
- rc.paint(rc.getGraphics());
+ int dim1 = getTop() - xCombobox.getSelectedIndex();
+ int dim2 = getTop() - yCombobox.getSelectedIndex();
+ int dim3 = getTop() - zCombobox.getSelectedIndex();
+ getPcaModel().updateRcView(dim1, dim2, dim3);
+ getRotatableCanvas().resetView();
}
/**
- * DOCUMENT ME!
+ * Sets the selected checkbox item index for PCA dimension (1, 2, 3...) for
+ * the given axis (X/Y/Z)
*
- * @param e
- * DOCUMENT ME!
+ * @param index
+ * @param axis
*/
- @Override
- protected void xCombobox_actionPerformed(ActionEvent e)
+ public void setSelectedDimensionIndex(int index, Axis axis)
{
- doDimensionChange();
- }
-
- /**
- * DOCUMENT ME!
- *
- * @param e
- * DOCUMENT ME!
- */
- @Override
- protected void yCombobox_actionPerformed(ActionEvent e)
- {
- doDimensionChange();
- }
-
- /**
- * DOCUMENT ME!
- *
- * @param e
- * DOCUMENT ME!
- */
- @Override
- protected void zCombobox_actionPerformed(ActionEvent e)
- {
- doDimensionChange();
+ switch (axis)
+ {
+ case X:
+ xCombobox.setSelectedIndex(index);
+ break;
+ case Y:
+ yCombobox.setSelectedIndex(index);
+ break;
+ case Z:
+ zCombobox.setSelectedIndex(index);
+ break;
+ default:
+ }
}
@Override
- public void outputValues_actionPerformed(ActionEvent e)
+ protected void outputValues_actionPerformed()
{
CutAndPasteTransfer cap = new CutAndPasteTransfer();
try
{
- cap.setText(pcaModel.getDetails());
+ cap.setText(getPcaModel().getDetails());
Desktop.addInternalFrame(cap,
MessageManager.getString("label.pca_details"), 500, 500);
} catch (OutOfMemoryError oom)
}
@Override
- public void showLabels_actionPerformed(ActionEvent e)
+ protected void showLabels_actionPerformed()
{
- rc.showLabels(showLabels.getState());
+ getRotatableCanvas().showLabels(showLabels.getState());
}
@Override
- public void print_actionPerformed(ActionEvent e)
+ protected void print_actionPerformed()
{
PCAPrinter printer = new PCAPrinter();
printer.start();
}
+ /**
+ * If available, shows the data which formed the inputs for the PCA as a new
+ * alignment
+ */
@Override
- public void originalSeqData_actionPerformed(ActionEvent e)
+ public void originalSeqData_actionPerformed()
{
- // this was cut'n'pasted from the equivalent TreePanel method - we should
- // make this an abstract function of all jalview analysis windows
- if (pcaModel.getSeqtrings() == null)
+ // JAL-2647 disabled after load from project (until save to project done)
+ if (getPcaModel().getInputData() == null)
{
- jalview.bin.Cache.log.info(
+ Cache.log.info(
"Unexpected call to originalSeqData_actionPerformed - should have hidden this menu action.");
return;
}
// decide if av alignment is sufficiently different to original data to
// warrant a new window to be created
- // create new alignmnt window with hidden regions (unhiding hidden regions
+ // create new alignment window with hidden regions (unhiding hidden regions
// yields unaligned seqs)
// or create a selection box around columns in alignment view
// test Alignment(SeqCigar[])
} catch (Exception ex)
{
}
- ;
- Object[] alAndColsel = pcaModel.getSeqtrings()
+
+ Object[] alAndColsel = getPcaModel().getInputData()
.getAlignmentAndHiddenColumns(gc);
if (alAndColsel != null && alAndColsel[0] != null)
{
pg.translate((int) pf.getImageableX(), (int) pf.getImageableY());
- rc.drawBackground(pg, rc.bgColour);
- rc.drawScene(pg);
- if (rc.drawAxes == true)
+ getRotatableCanvas().drawBackground(pg);
+ getRotatableCanvas().drawScene(pg);
+ if (getRotatableCanvas().drawAxes)
{
- rc.drawAxes(pg);
+ getRotatableCanvas().drawAxes(pg);
}
if (pi == 0)
public void makePCAImage(ImageMaker.TYPE type)
{
- int width = rc.getWidth();
- int height = rc.getHeight();
+ int width = getRotatableCanvas().getWidth();
+ int height = getRotatableCanvas().getHeight();
ImageWriterI writer = new ImageWriterI()
{
@Override
public void exportImage(Graphics g) throws Exception
{
- rc.drawBackground(g, Color.black);
- rc.drawScene(g);
- if (rc.drawAxes)
+ RotatableCanvas canvas = getRotatableCanvas();
+ canvas.drawBackground(g);
+ canvas.drawScene(g);
+ if (canvas.drawAxes)
{
- rc.drawAxes(g);
+ canvas.drawAxes(g);
}
}
};
}
@Override
- public void viewMenu_menuSelected()
+ protected void viewMenu_menuSelected()
{
buildAssociatedViewMenu();
}
+ /**
+ * Builds the menu showing the choice of possible views (for the associated
+ * sequence data) to which the PCA may be linked
+ */
void buildAssociatedViewMenu()
{
AlignmentPanel[] aps = PaintRefresher
.getAssociatedPanels(av.getSequenceSetId());
- if (aps.length == 1 && rc.av == aps[0].av)
+ if (aps.length == 1 && getRotatableCanvas().av == aps[0].av)
{
associateViewsMenu.setVisible(false);
return;
JRadioButtonMenuItem item;
ButtonGroup buttonGroup = new ButtonGroup();
- int i, iSize = aps.length;
- final PCAPanel thisPCAPanel = this;
- for (i = 0; i < iSize; i++)
+ int iSize = aps.length;
+
+ for (int i = 0; i < iSize; i++)
{
- final AlignmentPanel ap = aps[i];
- item = new JRadioButtonMenuItem(ap.av.getViewName(), ap.av == rc.av);
+ final AlignmentPanel panel = aps[i];
+ item = new JRadioButtonMenuItem(panel.av.getViewName(),
+ panel.av == getRotatableCanvas().av);
buttonGroup.add(item);
item.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent evt)
{
- rc.applyToAllViews = false;
- rc.av = ap.av;
- rc.ap = ap;
- PaintRefresher.Register(thisPCAPanel, ap.av.getSequenceSetId());
+ selectAssociatedView(panel);
}
});
buttonGroup.add(itemf);
- itemf.setSelected(rc.applyToAllViews);
+ itemf.setSelected(getRotatableCanvas().isApplyToAllViews());
itemf.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent evt)
{
- rc.applyToAllViews = itemf.isSelected();
+ getRotatableCanvas().setApplyToAllViews(itemf.isSelected());
}
});
associateViewsMenu.add(itemf);
* )
*/
@Override
- protected void outputPoints_actionPerformed(ActionEvent e)
+ protected void outputPoints_actionPerformed()
{
CutAndPasteTransfer cap = new CutAndPasteTransfer();
try
{
- cap.setText(pcaModel.getPointsasCsv(false,
+ cap.setText(getPcaModel().getPointsasCsv(false,
xCombobox.getSelectedIndex(), yCombobox.getSelectedIndex(),
zCombobox.getSelectedIndex()));
Desktop.addInternalFrame(cap, MessageManager
* .ActionEvent)
*/
@Override
- protected void outputProjPoints_actionPerformed(ActionEvent e)
+ protected void outputProjPoints_actionPerformed()
{
CutAndPasteTransfer cap = new CutAndPasteTransfer();
try
{
- cap.setText(pcaModel.getPointsasCsv(true,
+ cap.setText(getPcaModel().getPointsasCsv(true,
xCombobox.getSelectedIndex(), yCombobox.getSelectedIndex(),
zCombobox.getSelectedIndex()));
Desktop.addInternalFrame(cap, MessageManager.formatMessage(
}
@Override
- protected void resetButton_actionPerformed(ActionEvent e)
+ protected void resetButton_actionPerformed()
{
- int t = top;
- top = 0; // ugly - prevents dimensionChanged events from being processed
+ int t = getTop();
+ setTop(0); // ugly - prevents dimensionChanged events from being processed
xCombobox.setSelectedIndex(0);
yCombobox.setSelectedIndex(1);
- top = t;
+ setTop(t);
zCombobox.setSelectedIndex(2);
}
{
return working;
}
+
+ /**
+ * Answers the selected checkbox item index for PCA dimension for the X, Y or
+ * Z axis of the display
+ *
+ * @param axis
+ * @return
+ */
+ public int getSelectedDimensionIndex(Axis axis)
+ {
+ switch (axis)
+ {
+ case X:
+ return xCombobox.getSelectedIndex();
+ case Y:
+ return yCombobox.getSelectedIndex();
+ default:
+ return zCombobox.getSelectedIndex();
+ }
+ }
+
+ public void setShowLabels(boolean show)
+ {
+ showLabels.setSelected(show);
+ }
+
+ /**
+ * Sets the input data used to calculate the PCA. This is provided for
+ * 'restore from project', which does not currently support this (AL-2647), so
+ * sets the value to null, and hides the menu option for "Input Data...". J
+ *
+ * @param data
+ */
+ public void setInputData(AlignmentView data)
+ {
+ getPcaModel().setInputData(data);
+ originalSeqData.setVisible(data != null);
+ }
+
+ public AlignViewportI getAlignViewport()
+ {
+ return av;
+ }
+
+ public PCAModel getPcaModel()
+ {
+ return pcaModel;
+ }
+
+ public void setPcaModel(PCAModel pcaModel)
+ {
+ this.pcaModel = pcaModel;
+ }
+
+ public RotatableCanvas getRotatableCanvas()
+ {
+ return rc;
+ }
+
+ public void setRotatableCanvas(RotatableCanvas rc)
+ {
+ this.rc = rc;
+ }
+
+ public int getTop()
+ {
+ return top;
+ }
+
+ public void setTop(int top)
+ {
+ this.top = top;
+ }
+
+ /**
+ * set the associated view for this PCA.
+ *
+ * @param panel
+ */
+ public void selectAssociatedView(AlignmentPanel panel)
+ {
+ getRotatableCanvas().setApplyToAllViews(false);
+
+ ap = panel;
+ av = panel.av;
+
+ getRotatableCanvas().av = panel.av;
+ getRotatableCanvas().ap = panel;
+ PaintRefresher.Register(PCAPanel.this, panel.av.getSequenceSetId());
+ }
}
import jalview.schemes.ColourSchemeI;
import jalview.schemes.ColourSchemes;
import jalview.schemes.PIDColourScheme;
+import jalview.schemes.ResidueColourScheme;
import jalview.util.GroupUrlLink;
import jalview.util.GroupUrlLink.UrlStringTooLongException;
import jalview.util.MessageManager;
import java.util.TreeMap;
import java.util.Vector;
+import javax.swing.ButtonGroup;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JInternalFrame;
import javax.swing.JLabel;
import javax.swing.JMenuItem;
import javax.swing.JPanel;
import javax.swing.JPopupMenu;
+import javax.swing.JRadioButtonMenuItem;
import javax.swing.JScrollPane;
/**
protected JCheckBoxMenuItem conservationMenuItem = new JCheckBoxMenuItem();
+ protected JRadioButtonMenuItem annotationColour;
+
protected JMenuItem modifyConservation = new JMenuItem();
AlignmentPanel ap;
}
}
}
- // for the case when no sequences are even visible
+
+ /*
+ * offer 'Reveal All'
+ * - in the IdPanel (seq not null) if any sequence is hidden
+ * - in the IdPanel or SeqPanel if all sequences are hidden (seq is null)
+ */
if (alignPanel.av.hasHiddenRows())
{
+ boolean addOption = seq != null;
+ if (!addOption && alignPanel.av.getAlignment().getHeight() == 0)
+ {
+ addOption = true;
+ }
+ if (addOption)
{
menuItem = new JMenuItem(
MessageManager.getString("action.reveal_all"));
}
}
});
-
add(menuItem);
}
}
}
});
+ annotationColour = new JRadioButtonMenuItem(
+ MessageManager.getString("action.by_annotation"));
+ annotationColour.setName(ResidueColourScheme.ANNOTATION_COLOUR);
+ annotationColour.setEnabled(false);
+ annotationColour.setToolTipText(
+ MessageManager.getString("label.by_annotation_tooltip"));
+
modifyConservation.setText(MessageManager
.getString("label.modify_conservation_threshold"));
modifyConservation.addActionListener(new ActionListener()
colourMenu.add(textColour);
colourMenu.addSeparator();
- ColourMenuHelper.addMenuItems(colourMenu, this, sg, false);
+ ButtonGroup bg = ColourMenuHelper.addMenuItems(colourMenu, this, sg,
+ false);
+ bg.add(annotationColour);
+ colourMenu.add(annotationColour);
colourMenu.addSeparator();
colourMenu.add(conservationMenuItem);
* switch to the chosen colour scheme (or null for None)
*/
ColourSchemeI colourScheme = ColourSchemes.getInstance()
- .getColourScheme(colourSchemeName, sg,
+ .getColourScheme(colourSchemeName, ap.av, sg,
ap.av.getHiddenRepSequences());
sg.setColourScheme(colourScheme);
if (colourScheme instanceof Blosum62ColourScheme
import jalview.bin.Cache;
import jalview.gui.Help.HelpId;
import jalview.gui.StructureViewer.ViewerType;
+import jalview.io.BackupFiles;
import jalview.io.FileFormatI;
import jalview.io.JalviewFileChooser;
import jalview.io.JalviewFileView;
annotations_actionPerformed(null); // update the display of the annotation
// settings
+
+
+ /*
+ * Set Backups tab defaults
+ */
+ loadLastSavedBackupsOptions();
}
/**
{
wsPrefs.updateAndRefreshWsMenuConfig(false);
}
+
+ /*
+ * Save Backups settings
+ */
+ Cache.applicationProperties.setProperty(BackupFiles.CONFIRM_DELETE_OLD,
+ Boolean.toString(backupfilesConfirmDelete.isSelected()));
+ Cache.applicationProperties.setProperty(BackupFiles.ENABLED,
+ Boolean.toString(enableBackupFiles.isSelected()));
+ Cache.applicationProperties.setProperty(BackupFiles.NO_MAX,
+ Boolean.toString(backupfilesKeepAll.isSelected()));
+ Cache.applicationProperties.setProperty(BackupFiles.REVERSE_ORDER,
+ Boolean.toString(suffixReverse.isSelected()));
+ Cache.applicationProperties.setProperty(BackupFiles.SUFFIX,
+ suffixTemplate.getText());
+ Cache.applicationProperties.setProperty(BackupFiles.ROLL_MAX,
+ Integer.toString(getSpinnerInt(backupfilesRollMaxSpinner, 4)));
+ Cache.applicationProperties.setProperty(BackupFiles.SUFFIX_DIGITS,
+ Integer.toString(getSpinnerInt(suffixDigitsSpinner, 3)));
+ Cache.applicationProperties.setProperty(BackupFiles.NS+"_PRESET",
+ Integer.toString(getComboIntStringKey(backupfilesPresetsCombo)));
+
Cache.saveProperties();
Desktop.instance.doConfigureStructurePrefs();
try
package jalview.gui;
import jalview.api.RotatableCanvasI;
+import jalview.datamodel.Point;
import jalview.datamodel.SequenceGroup;
import jalview.datamodel.SequenceI;
import jalview.datamodel.SequencePoint;
import jalview.math.RotatableMatrix;
+import jalview.math.RotatableMatrix.Axis;
+import jalview.util.ColorUtils;
import jalview.util.MessageManager;
import jalview.viewmodel.AlignmentViewport;
import java.awt.event.MouseMotionListener;
import java.awt.event.MouseWheelEvent;
import java.awt.event.MouseWheelListener;
-import java.util.Vector;
+import java.util.Arrays;
+import java.util.Iterator;
+import java.util.List;
import javax.swing.JPanel;
import javax.swing.ToolTipManager;
/**
- * DOCUMENT ME!
- *
- * @author $author$
- * @version $Revision$
+ * Models a Panel on which a set of points, and optionally x/y/z axes, can be
+ * drawn, and rotated or zoomed with the mouse
*/
public class RotatableCanvas extends JPanel implements MouseListener,
- MouseMotionListener, KeyListener, RotatableCanvasI
+ MouseMotionListener, KeyListener, RotatableCanvasI,
+ MouseWheelListener
{
- RotatableMatrix idmat = new RotatableMatrix(3, 3);
+ private static final float ZOOM_OUT = 0.9f;
- RotatableMatrix objmat = new RotatableMatrix(3, 3);
+ private static final float ZOOM_IN = 1.1f;
- RotatableMatrix rotmat = new RotatableMatrix(3, 3);
+ /*
+ * pixels distance within which tooltip shows sequence name
+ */
+ private static final int NEARBY = 3;
- // RubberbandRectangle rubberband;
- boolean drawAxes = true;
+ private static final List<String> AXES = Arrays.asList("x", "y", "z");
- int omx = 0;
+ private static final Color AXIS_COLOUR = Color.yellow;
- int mx = 0;
+ private static final int DIMS = 3;
- int omy = 0;
+ boolean drawAxes = true;
+
+ int mouseX;
- int my = 0;
+ int mouseY;
Image img;
Graphics ig;
- Dimension prefsize;
-
- float[] centre = new float[3];
+ Dimension prefSize;
- float[] width = new float[3];
-
- float[] max = new float[3];
-
- float[] min = new float[3];
+ /*
+ * the min-max [x, y, z] values of sequence points when the points
+ * were set on the object, or when the view is reset;
+ * x and y ranges are not recomputed as points are rotated, as this
+ * would make scaling (zoom) unstable, but z ranges are (for correct
+ * graduated colour brightness based on z-coordinate)
+ */
+ float[] seqMin;
- float maxwidth;
+ float[] seqMax;
- float scale;
+ /*
+ * a scale factor used in drawing; when equal to 1, the points span
+ * half the available width or height (whichever is less); increase this
+ * factor to zoom in, decrease it to zoom out
+ */
+ private float scaleFactor;
int npoint;
- Vector points;
-
- float[][] orig;
-
- float[][] axes;
-
- int startx;
-
- int starty;
-
- int lastx;
-
- int lasty;
-
- int rectx1;
-
- int recty1;
-
- int rectx2;
+ /*
+ * sequences and their (x, y, z) PCA dimension values
+ */
+ List<SequencePoint> sequencePoints;
- int recty2;
+ /*
+ * x, y, z axis end points (PCA dimension values)
+ */
+ private Point[] axisEndPoints;
- float scalefactor = 1;
+ // fields for 'select rectangle' (JAL-1124)
+ // int rectx1;
+ // int recty1;
+ // int rectx2;
+ // int recty2;
AlignmentViewport av;
AlignmentPanel ap;
- boolean showLabels = false;
+ private boolean showLabels;
- Color bgColour = Color.black;
+ private Color bgColour;
- boolean applyToAllViews = false;
+ private boolean applyToAllViews;
- public RotatableCanvas(AlignmentPanel ap)
+ /**
+ * Constructor
+ *
+ * @param panel
+ */
+ public RotatableCanvas(AlignmentPanel panel)
{
- this.av = ap.av;
- this.ap = ap;
-
- addMouseWheelListener(new MouseWheelListener()
- {
- @Override
- public void mouseWheelMoved(MouseWheelEvent e)
- {
- double wheelRotation = e.getPreciseWheelRotation();
- if (wheelRotation > 0)
- {
- /*
- * zoom in
- */
- scale = (float) (scale * 1.1);
- repaint();
- }
- else if (wheelRotation < 0)
- {
- /*
- * zoom out
- */
- scale = (float) (scale * 0.9);
- repaint();
- }
- }
- });
-
+ this.av = panel.av;
+ this.ap = panel;
+ setAxisEndPoints(new Point[DIMS]);
+ setShowLabels(false);
+ setApplyToAllViews(false);
+ setBgColour(Color.BLACK);
+ resetAxes();
+
+ ToolTipManager.sharedInstance().registerComponent(this);
+
+ addMouseListener(this);
+ addMouseMotionListener(this);
+ addMouseWheelListener(this);
}
- public void showLabels(boolean b)
+ /**
+ * Refreshes the display with labels shown (or not)
+ *
+ * @param show
+ */
+ public void showLabels(boolean show)
{
- showLabels = b;
+ setShowLabels(show);
repaint();
}
- boolean first = true;
-
@Override
- public void setPoints(Vector points, int npoint)
+ public void setPoints(List<SequencePoint> points, int np)
{
- this.points = points;
- this.npoint = npoint;
- if (first)
- {
- ToolTipManager.sharedInstance().registerComponent(this);
- ToolTipManager.sharedInstance().setInitialDelay(0);
- ToolTipManager.sharedInstance().setDismissDelay(10000);
- }
- prefsize = getPreferredSize();
- orig = new float[npoint][3];
+ this.sequencePoints = points;
+ this.npoint = np;
+ prefSize = getPreferredSize();
- for (int i = 0; i < npoint; i++)
- {
- SequencePoint sp = (SequencePoint) points.elementAt(i);
+ findWidths();
- for (int j = 0; j < 3; j++)
- {
- orig[i][j] = sp.coord[j];
- }
- }
-
- // Initialize the matrices to identity
- for (int i = 0; i < 3; i++)
- {
- for (int j = 0; j < 3; j++)
- {
- if (i != j)
- {
- idmat.addElement(i, j, 0);
- objmat.addElement(i, j, 0);
- rotmat.addElement(i, j, 0);
- }
- else
- {
- idmat.addElement(i, j, 0);
- objmat.addElement(i, j, 0);
- rotmat.addElement(i, j, 0);
- }
- }
- }
-
- axes = new float[3][3];
- initAxes();
-
- findCentre();
- findWidth();
-
- scale = findScale();
- if (first)
- {
-
- addMouseListener(this);
-
- addMouseMotionListener(this);
- }
- first = false;
- }
-
- public void initAxes()
- {
- for (int i = 0; i < 3; i++)
- {
- for (int j = 0; j < 3; j++)
- {
- if (i != j)
- {
- axes[i][j] = 0;
- }
- else
- {
- axes[i][j] = 1;
- }
- }
- }
+ setScaleFactor(1f);
}
/**
- * DOCUMENT ME!
+ * Resets axes to the initial state: x-axis to the right, y-axis up, z-axis to
+ * back (so obscured in a 2-D display)
*/
- public void findWidth()
+ protected void resetAxes()
{
- max = new float[3];
- min = new float[3];
-
- max[0] = (float) -1e30;
- max[1] = (float) -1e30;
- max[2] = (float) -1e30;
-
- min[0] = (float) 1e30;
- min[1] = (float) 1e30;
- min[2] = (float) 1e30;
-
- for (int i = 0; i < 3; i++)
- {
- for (int j = 0; j < npoint; j++)
- {
- SequencePoint sp = (SequencePoint) points.elementAt(j);
-
- if (sp.coord[i] >= max[i])
- {
- max[i] = sp.coord[i];
- }
-
- if (sp.coord[i] <= min[i])
- {
- min[i] = sp.coord[i];
- }
- }
- }
-
- // System.out.println("xmax " + max[0] + " min " + min[0]);
- // System.out.println("ymax " + max[1] + " min " + min[1]);
- // System.out.println("zmax " + max[2] + " min " + min[2]);
- width[0] = Math.abs(max[0] - min[0]);
- width[1] = Math.abs(max[1] - min[1]);
- width[2] = Math.abs(max[2] - min[2]);
-
- maxwidth = width[0];
-
- if (width[1] > width[0])
- {
- maxwidth = width[1];
- }
-
- if (width[2] > width[1])
- {
- maxwidth = width[2];
- }
-
- // System.out.println("Maxwidth = " + maxwidth);
- }
-
- /**
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
- public float findScale()
- {
- int dim;
- int width;
- int height;
-
- if (getWidth() != 0)
- {
- width = getWidth();
- height = getHeight();
- }
- else
- {
- width = prefsize.width;
- height = prefsize.height;
- }
-
- if (width < height)
- {
- dim = width;
- }
- else
- {
- dim = height;
- }
-
- return (dim * scalefactor) / (2 * maxwidth);
+ getAxisEndPoints()[0] = new Point(1f, 0f, 0f);
+ getAxisEndPoints()[1] = new Point(0f, 1f, 0f);
+ getAxisEndPoints()[2] = new Point(0f, 0f, 1f);
}
/**
- * DOCUMENT ME!
+ * Computes and saves the min-max ranges of x/y/z positions of the sequence
+ * points
*/
- public void findCentre()
+ protected void findWidths()
{
- // Find centre coordinate
- findWidth();
-
- centre[0] = (max[0] + min[0]) / 2;
- centre[1] = (max[1] + min[1]) / 2;
- centre[2] = (max[2] + min[2]) / 2;
-
- // System.out.println("Centre x " + centre[0]);
- // System.out.println("Centre y " + centre[1]);
- // System.out.println("Centre z " + centre[2]);
+ float[] max = new float[DIMS];
+ float[] min = new float[DIMS];
+
+ max[0] = -Float.MAX_VALUE;
+ max[1] = -Float.MAX_VALUE;
+ max[2] = -Float.MAX_VALUE;
+
+ min[0] = Float.MAX_VALUE;
+ min[1] = Float.MAX_VALUE;
+ min[2] = Float.MAX_VALUE;
+
+ for (SequencePoint sp : sequencePoints)
+ {
+ max[0] = Math.max(max[0], sp.coord.x);
+ max[1] = Math.max(max[1], sp.coord.y);
+ max[2] = Math.max(max[2], sp.coord.z);
+ min[0] = Math.min(min[0], sp.coord.x);
+ min[1] = Math.min(min[1], sp.coord.y);
+ min[2] = Math.min(min[2], sp.coord.z);
+ }
+
+ seqMin = min;
+ seqMax = max;
}
/**
- * DOCUMENT ME!
+ * Answers the preferred size if it has been set, else 400 x 400
*
- * @return DOCUMENT ME!
+ * @return
*/
@Override
public Dimension getPreferredSize()
{
- if (prefsize != null)
+ if (prefSize != null)
{
- return prefsize;
+ return prefSize;
}
else
{
}
/**
- * DOCUMENT ME!
+ * Answers the preferred size
*
- * @return DOCUMENT ME!
+ * @return
+ * @see RotatableCanvas#getPreferredSize()
*/
@Override
public Dimension getMinimumSize()
}
/**
- * DOCUMENT ME!
+ * Repaints the panel
*
* @param g
- * DOCUMENT ME!
*/
@Override
public void paintComponent(Graphics g1)
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
- if (points == null)
+ if (sequencePoints == null)
{
g.setFont(new Font("Verdana", Font.PLAIN, 18));
g.drawString(
}
else
{
- // Only create the image at the beginning -
- if ((img == null) || (prefsize.width != getWidth())
- || (prefsize.height != getHeight()))
+ /*
+ * create the image at the beginning or after a resize
+ */
+ boolean resized = prefSize.width != getWidth()
+ || prefSize.height != getHeight();
+ if (img == null || resized)
{
- prefsize.width = getWidth();
- prefsize.height = getHeight();
+ prefSize.width = getWidth();
+ prefSize.height = getHeight();
- scale = findScale();
-
- // System.out.println("New scale = " + scale);
img = createImage(getWidth(), getHeight());
ig = img.getGraphics();
}
- drawBackground(ig, bgColour);
+ drawBackground(ig);
drawScene(ig);
- if (drawAxes == true)
+ if (drawAxes)
{
drawAxes(ig);
}
}
/**
- * DOCUMENT ME!
+ * Resets the rotation and choice of axes to the initial state (without change
+ * of scale factor)
+ */
+ public void resetView()
+ {
+ img = null;
+ findWidths();
+ resetAxes();
+ repaint();
+ }
+
+ /**
+ * Draws lines for the x, y, z axes
*
* @param g
- * DOCUMENT ME!
*/
public void drawAxes(Graphics g)
{
+ g.setColor(AXIS_COLOUR);
- g.setColor(Color.yellow);
+ int midX = getWidth() / 2;
+ int midY = getHeight() / 2;
+ float maxWidth = Math.max(Math.abs(seqMax[0] - seqMin[0]),
+ Math.abs(seqMax[1] - seqMin[1]));
+ int pix = Math.min(getWidth(), getHeight());
+ float scaleBy = pix * getScaleFactor() / (2f * maxWidth);
- for (int i = 0; i < 3; i++)
+ for (int i = 0; i < DIMS; i++)
{
- g.drawLine(getWidth() / 2, getHeight() / 2,
- (int) ((axes[i][0] * scale * max[0]) + (getWidth() / 2)),
- (int) ((axes[i][1] * scale * max[1]) + (getHeight() / 2)));
+ g.drawLine(midX, midY,
+ midX + (int) (getAxisEndPoints()[i].x * scaleBy * seqMax[0]),
+ midY + (int) (getAxisEndPoints()[i].y * scaleBy * seqMax[1]));
}
}
/**
- * DOCUMENT ME!
+ * Fills the background with the currently configured background colour
*
* @param g
- * DOCUMENT ME!
- * @param col
- * DOCUMENT ME!
*/
- public void drawBackground(Graphics g, Color col)
+ public void drawBackground(Graphics g)
{
- g.setColor(col);
- g.fillRect(0, 0, prefsize.width, prefsize.height);
+ g.setColor(getBgColour());
+ g.fillRect(0, 0, prefSize.width, prefSize.height);
}
/**
- * DOCUMENT ME!
+ * Draws points (6x6 squares) for the sequences of the PCA, and labels
+ * (sequence names) if configured to do so. The sequence points colours are
+ * taken from the sequence ids in the alignment (converting black to white).
+ * Sequences 'at the back' (z-coordinate is negative) are shaded slightly
+ * darker to help give a 3-D sensation.
*
* @param g
- * DOCUMENT ME!
*/
public void drawScene(Graphics g1)
{
-
Graphics2D g = (Graphics2D) g1;
g.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
+ int pix = Math.min(getWidth(), getHeight());
+ float xWidth = Math.abs(seqMax[0] - seqMin[0]);
+ float yWidth = Math.abs(seqMax[1] - seqMin[1]);
+ float maxWidth = Math.max(xWidth, yWidth);
+ float scaleBy = pix * getScaleFactor() / (2f * maxWidth);
- int halfwidth = getWidth() / 2;
- int halfheight = getHeight() / 2;
+ float[] centre = getCentre();
for (int i = 0; i < npoint; i++)
{
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- int x = (int) ((sp.coord[0] - centre[0]) * scale) + halfwidth;
- int y = (int) ((sp.coord[1] - centre[1]) * scale)
- + halfheight;
- float z = sp.coord[1] - centre[2];
-
- if (av.getSequenceColour(sp.sequence) == Color.black)
- {
- g.setColor(Color.white);
- }
- else
- {
- g.setColor(av.getSequenceColour(sp.sequence));
- }
-
- if (av.getSelectionGroup() != null)
- {
- if (av.getSelectionGroup().getSequences(null)
- .contains(((SequencePoint) points.elementAt(i)).sequence))
- {
- g.setColor(Color.gray);
- }
- }
+ /*
+ * sequence point colour as sequence id, but
+ * gray if sequence is currently selected
+ */
+ SequencePoint sp = sequencePoints.get(i);
+ Color sequenceColour = getSequencePointColour(sp);
+ g.setColor(sequenceColour);
+
+ int halfwidth = getWidth() / 2;
+ int halfheight = getHeight() / 2;
+ int x = (int) ((sp.coord.x - centre[0]) * scaleBy) + halfwidth;
+ int y = (int) ((sp.coord.y - centre[1]) * scaleBy) + halfheight;
+ g.fillRect(x - 3, y - 3, 6, 6);
- if (z < 0)
+ if (isShowLabels())
{
- g.setColor(g.getColor().darker());
+ g.setColor(Color.red);
+ g.drawString(sp.getSequence().getName(), x - 3, y - 4);
}
-
- g.fillRect(x - 3, y - 3, 6, 6);
- if (showLabels)
+ }
+ if (isShowLabels())
+ {
+ g.setColor(AXIS_COLOUR);
+ int midX = getWidth() / 2;
+ int midY = getHeight() / 2;
+ Iterator<String> axes = AXES.iterator();
+ for (Point p : getAxisEndPoints())
{
- g.setColor(Color.red);
- g.drawString(
- ((SequencePoint) points.elementAt(i)).sequence.getName(),
- x - 3, y - 4);
+ int x = midX + (int) (p.x * scaleBy * seqMax[0]);
+ int y = midY + (int) (p.y * scaleBy * seqMax[1]);
+ g.drawString(axes.next(), x - 3, y - 4);
}
}
-
// //Now the rectangle
// if (rectx2 != -1 && recty2 != -1) {
// g.setColor(Color.white);
}
/**
- * DOCUMENT ME!
+ * Determines the colour to use when drawing a sequence point. The colour is
+ * taken from the sequence id, with black converted to white, and then
+ * graduated from darker (at the back) to brighter (at the front) based on the
+ * z-axis coordinate of the point.
*
- * @return DOCUMENT ME!
+ * @param sp
+ * @return
*/
- public Dimension minimumsize()
+ protected Color getSequencePointColour(SequencePoint sp)
{
- return prefsize;
- }
+ SequenceI sequence = sp.getSequence();
+ Color sequenceColour = av.getSequenceColour(sequence);
+ if (sequenceColour == Color.black)
+ {
+ sequenceColour = Color.white;
+ }
+ if (av.getSelectionGroup() != null)
+ {
+ if (av.getSelectionGroup().getSequences(null).contains(sequence))
+ {
+ sequenceColour = Color.gray;
+ }
+ }
- /**
- * DOCUMENT ME!
- *
- * @return DOCUMENT ME!
- */
- public Dimension preferredsize()
- {
- return prefsize;
+ /*
+ * graduate brighter for point in front of centre, darker if behind centre
+ */
+ float zCentre = (seqMin[2] + seqMax[2]) / 2f;
+ if (sp.coord.z > zCentre)
+ {
+ sequenceColour = ColorUtils.getGraduatedColour(sp.coord.z, 0,
+ sequenceColour, seqMax[2], sequenceColour.brighter());
+ }
+ else if (sp.coord.z < zCentre)
+ {
+ sequenceColour = ColorUtils.getGraduatedColour(sp.coord.z, seqMin[2],
+ sequenceColour.darker(), 0, sequenceColour);
+ }
+
+ return sequenceColour;
}
- /**
- * DOCUMENT ME!
- *
- * @param evt
- * DOCUMENT ME!
- */
@Override
public void keyTyped(KeyEvent evt)
{
}
- /**
- * DOCUMENT ME!
- *
- * @param evt
- * DOCUMENT ME!
- */
@Override
public void keyReleased(KeyEvent evt)
{
}
/**
- * DOCUMENT ME!
+ * Responds to up or down arrow key by zooming in or out, respectively
*
* @param evt
- * DOCUMENT ME!
*/
@Override
public void keyPressed(KeyEvent evt)
{
- if (evt.getKeyCode() == KeyEvent.VK_UP)
+ int keyCode = evt.getKeyCode();
+ boolean shiftDown = evt.isShiftDown();
+
+ if (keyCode == KeyEvent.VK_UP)
+ {
+ if (shiftDown)
+ {
+ rotate(0f, -1f);
+ }
+ else
+ {
+ zoom(ZOOM_IN);
+ }
+ }
+ else if (keyCode == KeyEvent.VK_DOWN)
+ {
+ if (shiftDown)
+ {
+ rotate(0f, 1f);
+ }
+ else
+ {
+ zoom(ZOOM_OUT);
+ }
+ }
+ else if (shiftDown && keyCode == KeyEvent.VK_LEFT)
{
- scalefactor = (float) (scalefactor * 1.1);
- scale = findScale();
+ rotate(1f, 0f);
}
- else if (evt.getKeyCode() == KeyEvent.VK_DOWN)
+ else if (shiftDown && keyCode == KeyEvent.VK_RIGHT)
{
- scalefactor = (float) (scalefactor * 0.9);
- scale = findScale();
+ rotate(-1f, 0f);
}
else if (evt.getKeyChar() == 's')
{
- System.err.println("DEBUG: Rectangle selection"); // log.debug
-
- if ((rectx2 != -1) && (recty2 != -1))
- {
- rectSelect(rectx1, recty1, rectx2, recty2);
- }
+ // Cache.log.warn("DEBUG: Rectangle selection");
+ // todo not yet enabled as rectx2, recty2 are always -1
+ // need to set them in mouseDragged; JAL-1124
+ // if ((rectx2 != -1) && (recty2 != -1))
+ // {
+ // rectSelect(rectx1, recty1, rectx2, recty2);
+ // }
}
repaint();
}
- /**
- * DOCUMENT ME!
- *
- * @param evt
- * DOCUMENT ME!
- */
+ @Override
+ public void zoom(float factor)
+ {
+ if (factor > 0f)
+ {
+ setScaleFactor(getScaleFactor() * factor);
+ }
+ }
+
@Override
public void mouseClicked(MouseEvent evt)
{
}
- /**
- * DOCUMENT ME!
- *
- * @param evt
- * DOCUMENT ME!
- */
@Override
public void mouseEntered(MouseEvent evt)
{
}
- /**
- * DOCUMENT ME!
- *
- * @param evt
- * DOCUMENT ME!
- */
@Override
public void mouseExited(MouseEvent evt)
{
}
- /**
- * DOCUMENT ME!
- *
- * @param evt
- * DOCUMENT ME!
- */
@Override
public void mouseReleased(MouseEvent evt)
{
}
/**
- * DOCUMENT ME!
- *
- * @param evt
- * DOCUMENT ME!
+ * If the mouse press is at (within 2 pixels of) a sequence point, toggles
+ * (adds or removes) the corresponding sequence as a member of the viewport
+ * selection group. This supports configuring a group in the alignment by
+ * clicking on points in the PCA display.
*/
@Override
public void mousePressed(MouseEvent evt)
int x = evt.getX();
int y = evt.getY();
- mx = x;
- my = y;
-
- omx = mx;
- omy = my;
-
- startx = x;
- starty = y;
+ mouseX = x;
+ mouseY = y;
- rectx1 = x;
- recty1 = y;
+ // rectx1 = x;
+ // recty1 = y;
+ // rectx2 = -1;
+ // recty2 = -1;
- rectx2 = -1;
- recty2 = -1;
-
- SequenceI found = findPoint(x, y);
+ SequenceI found = findSequenceAtPoint(x, y);
if (found != null)
{
repaint();
}
- // private void fireSequenceSelectionEvent(Selection sel) {
- // controller.handleSequenceSelectionEvent(new
- // SequenceSelectionEvent(this,sel));
- // }
+ /**
+ * Sets the tooltip to the name of the sequence within 2 pixels of the mouse
+ * position, or clears the tooltip if none found
+ */
@Override
public void mouseMoved(MouseEvent evt)
{
- SequenceI found = findPoint(evt.getX(), evt.getY());
+ SequenceI found = findSequenceAtPoint(evt.getX(), evt.getY());
- if (found != null)
- {
- this.setToolTipText(found.getName());
- }
- else
- {
- this.setToolTipText(null);
- }
+ this.setToolTipText(found == null ? null : found.getName());
}
/**
- * DOCUMENT ME!
+ * Action handler for a mouse drag. Rotates the display around the X axis (for
+ * up/down mouse movement) and/or the Y axis (for left/right mouse movement).
*
* @param evt
- * DOCUMENT ME!
*/
@Override
public void mouseDragged(MouseEvent evt)
{
- mx = evt.getX();
- my = evt.getY();
+ int xPos = evt.getX();
+ int yPos = evt.getY();
+
+ if (xPos == mouseX && yPos == mouseY)
+ {
+ return;
+ }
+
+ int xDelta = xPos - mouseX;
+ int yDelta = yPos - mouseY;
// Check if this is a rectangle drawing drag
if ((evt.getModifiers() & InputEvent.BUTTON2_MASK) != 0)
}
else
{
- rotmat.setIdentity();
+ rotate(xDelta, yDelta);
- rotmat.rotate(my - omy, 'x');
- rotmat.rotate(mx - omx, 'y');
+ mouseX = xPos;
+ mouseY = yPos;
- for (int i = 0; i < npoint; i++)
- {
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- sp.coord[0] -= centre[0];
- sp.coord[1] -= centre[1];
- sp.coord[2] -= centre[2];
-
- // Now apply the rotation matrix
- sp.coord = rotmat.vectorMultiply(sp.coord);
-
- // Now translate back again
- sp.coord[0] += centre[0];
- sp.coord[1] += centre[1];
- sp.coord[2] += centre[2];
- }
+ // findWidths();
- for (int i = 0; i < 3; i++)
- {
- axes[i] = rotmat.vectorMultiply(axes[i]);
- }
+ repaint();
+ }
+ }
+
+ @Override
+ public void rotate(float x, float y)
+ {
+ if (x == 0f && y == 0f)
+ {
+ return;
+ }
+
+ /*
+ * get the identity transformation...
+ */
+ RotatableMatrix rotmat = new RotatableMatrix();
+
+ /*
+ * rotate around the X axis for change in Y
+ * (mouse movement up/down); note we are equating a
+ * number of pixels with degrees of rotation here!
+ */
+ if (y != 0)
+ {
+ rotmat.rotate(y, Axis.X);
+ }
+
+ /*
+ * rotate around the Y axis for change in X
+ * (mouse movement left/right)
+ */
+ if (x != 0)
+ {
+ rotmat.rotate(x, Axis.Y);
+ }
+
+ /*
+ * apply the composite transformation to sequence points;
+ * update z min-max range (affects colour graduation), but not
+ * x or y min-max (as this would affect axis scaling)
+ */
+ float[] centre = getCentre();
+ float zMin = Float.MAX_VALUE;
+ float zMax = -Float.MAX_VALUE;
+
+ for (int i = 0; i < npoint; i++)
+ {
+ SequencePoint sp = sequencePoints.get(i);
+ sp.translate(-centre[0], -centre[1], -centre[2]);
+
+ // Now apply the rotation matrix
+ sp.coord = rotmat.vectorMultiply(sp.coord);
+
+ // Now translate back again
+ sp.translate(centre[0], centre[1], centre[2]);
+
+ zMin = Math.min(zMin, sp.coord.z);
+ zMax = Math.max(zMax, sp.coord.z);
+ }
- omx = mx;
- omy = my;
+ seqMin[2] = zMin;
+ seqMax[2] = zMax;
- paint(this.getGraphics());
+ /*
+ * rotate the x/y/z axis positions
+ */
+ for (int i = 0; i < DIMS; i++)
+ {
+ getAxisEndPoints()[i] = rotmat.vectorMultiply(getAxisEndPoints()[i]);
}
}
/**
- * DOCUMENT ME!
+ * Answers the x/y/z coordinates that are midway between the maximum and
+ * minimum sequence point values
+ *
+ * @return
+ */
+ private float[] getCentre()
+ {
+ float xCentre = (seqMin[0] + seqMax[0]) / 2f;
+ float yCentre = (seqMin[1] + seqMax[1]) / 2f;
+ float zCentre = (seqMin[2] + seqMax[2]) / 2f;
+
+ return new float[] { xCentre, yCentre, zCentre };
+ }
+
+ /**
+ * Adds any sequences whose displayed points are within the given rectangle to
+ * the viewport's current selection. Intended for key 's' after dragging to
+ * select a region of the PCA.
*
* @param x1
- * DOCUMENT ME!
* @param y1
- * DOCUMENT ME!
* @param x2
- * DOCUMENT ME!
* @param y2
- * DOCUMENT ME!
*/
- public void rectSelect(int x1, int y1, int x2, int y2)
+ protected void rectSelect(int x1, int y1, int x2, int y2)
{
+ float[] centre = getCentre();
+
for (int i = 0; i < npoint; i++)
{
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- int tmp1 = (int) (((sp.coord[0] - centre[0]) * scale)
+ SequencePoint sp = sequencePoints.get(i);
+ int tmp1 = (int) (((sp.coord.x - centre[0]) * getScaleFactor())
+ (getWidth() / 2.0));
- int tmp2 = (int) (((sp.coord[1] - centre[1]) * scale)
+ int tmp2 = (int) (((sp.coord.y - centre[1]) * getScaleFactor())
+ (getHeight() / 2.0));
if ((tmp1 > x1) && (tmp1 < x2) && (tmp2 > y1) && (tmp2 < y2))
{
if (av != null)
{
+ SequenceI sequence = sp.getSequence();
if (!av.getSelectionGroup().getSequences(null)
- .contains(sp.sequence))
+ .contains(sequence))
{
- av.getSelectionGroup().addSequence(sp.sequence, true);
+ av.getSelectionGroup().addSequence(sequence, true);
}
}
}
}
-
- // if (changedSel) {
- // fireSequenceSelectionEvent(av.getSelection());
- // }
}
/**
- * DOCUMENT ME!
+ * Answers the first sequence found whose point on the display is within 2
+ * pixels of the given coordinates, or null if none is found
*
* @param x
- * DOCUMENT ME!
* @param y
- * DOCUMENT ME!
*
- * @return DOCUMENT ME!
+ * @return
*/
- public SequenceI findPoint(int x, int y)
+ protected SequenceI findSequenceAtPoint(int x, int y)
{
int halfwidth = getWidth() / 2;
int halfheight = getHeight() / 2;
int found = -1;
+ int pix = Math.min(getWidth(), getHeight());
+ float xWidth = Math.abs(seqMax[0] - seqMin[0]);
+ float yWidth = Math.abs(seqMax[1] - seqMin[1]);
+ float maxWidth = Math.max(xWidth, yWidth);
+ float scaleBy = pix * getScaleFactor() / (2f * maxWidth);
+
+ float[] centre = getCentre();
for (int i = 0; i < npoint; i++)
{
- SequencePoint sp = (SequencePoint) points.elementAt(i);
- int px = (int) ((sp.coord[0] - centre[0]) * scale)
+ SequencePoint sp = sequencePoints.get(i);
+ int px = (int) ((sp.coord.x - centre[0]) * scaleBy)
+ halfwidth;
- int py = (int) ((sp.coord[1] - centre[1]) * scale)
+ int py = (int) ((sp.coord.y - centre[1]) * scaleBy)
+ halfheight;
- if ((Math.abs(px - x) < 3) && (Math.abs(py - y) < 3))
+ if ((Math.abs(px - x) < NEARBY) && (Math.abs(py - y) < NEARBY))
{
found = i;
+ break;
}
}
if (found != -1)
{
- return ((SequencePoint) points.elementAt(found)).sequence;
+ return sequencePoints.get(found).getSequence();
}
else
{
}
}
+ /**
+ * Answers the panel the PCA is associated with (all panels for this alignment
+ * if 'associate with all panels' is selected).
+ *
+ * @return
+ */
AlignmentPanel[] getAssociatedPanels()
{
- if (applyToAllViews)
+ if (isApplyToAllViews())
{
return PaintRefresher.getAssociatedPanels(av.getSequenceSetId());
}
}
}
+ public Color getBackgroundColour()
+ {
+ return getBgColour();
+ }
+
+ /**
+ * Zooms in or out in response to mouse wheel movement
+ */
+ @Override
+ public void mouseWheelMoved(MouseWheelEvent e)
+ {
+ double wheelRotation = e.getPreciseWheelRotation();
+ if (wheelRotation > 0)
+ {
+ zoom(ZOOM_IN);
+ repaint();
+ }
+ else if (wheelRotation < 0)
+ {
+ zoom(ZOOM_OUT);
+ repaint();
+ }
+ }
+
+ /**
+ * Answers the sequence point minimum [x, y, z] values. Note these are derived
+ * when sequence points are set, but x and y values are not updated on
+ * rotation (because this would result in changes to scaling).
+ *
+ * @return
+ */
+ public float[] getSeqMin()
+ {
+ return seqMin;
+ }
+
+ /**
+ * Answers the sequence point maximum [x, y, z] values. Note these are derived
+ * when sequence points are set, but x and y values are not updated on
+ * rotation (because this would result in changes to scaling).
+ *
+ * @return
+ */
+ public float[] getSeqMax()
+ {
+ return seqMax;
+ }
+
/**
+ * Sets the minimum and maximum [x, y, z] positions for sequence points. For
+ * use when restoring a saved PCA from state data.
*
- * @return x,y,z positions of point s (index into points) under current
- * transform.
+ * @param min
+ * @param max
*/
- public double[] getPointPosition(int s)
+ public void setSeqMinMax(float[] min, float[] max)
+ {
+ seqMin = min;
+ seqMax = max;
+ }
+
+ public float getScaleFactor()
+ {
+ return scaleFactor;
+ }
+
+ public void setScaleFactor(float scaleFactor)
+ {
+ this.scaleFactor = scaleFactor;
+ }
+
+ public boolean isShowLabels()
{
- double pts[] = new double[3];
- float[] p = ((SequencePoint) points.elementAt(s)).coord;
- pts[0] = p[0];
- pts[1] = p[1];
- pts[2] = p[2];
- return pts;
+ return showLabels;
}
+ public void setShowLabels(boolean showLabels)
+ {
+ this.showLabels = showLabels;
+ }
+
+ public boolean isApplyToAllViews()
+ {
+ return applyToAllViews;
+ }
+
+ public void setApplyToAllViews(boolean applyToAllViews)
+ {
+ this.applyToAllViews = applyToAllViews;
+ }
+
+ public Point[] getAxisEndPoints()
+ {
+ return axisEndPoints;
+ }
+
+ public void setAxisEndPoints(Point[] axisEndPoints)
+ {
+ this.axisEndPoints = axisEndPoints;
+ }
+
+ public Color getBgColour()
+ {
+ return bgColour;
+ }
+
+ public void setBgColour(Color bgColour)
+ {
+ this.bgColour = bgColour;
+ }
}
import jalview.datamodel.ColumnSelection;
import jalview.datamodel.HiddenColumns;
import jalview.datamodel.SequenceGroup;
-import jalview.datamodel.SequenceI;
import jalview.renderer.ScaleRenderer;
import jalview.renderer.ScaleRenderer.ScaleMark;
import jalview.util.MessageManager;
protected void rightMouseButtonPressed(MouseEvent evt, final int res)
{
JPopupMenu pop = new JPopupMenu();
- if (reveal != null)
+
+ /*
+ * grab the hidden range in case mouseMoved nulls it
+ */
+ final int[] hiddenRange = reveal;
+ if (hiddenRange != null)
{
JMenuItem item = new JMenuItem(
MessageManager.getString("label.reveal"));
@Override
public void actionPerformed(ActionEvent e)
{
- av.showColumn(reveal[0]);
+ av.showColumn(hiddenRange[0]);
reveal = null;
+ ap.updateLayout();
ap.paintAlignment(true, true);
av.sendSelection();
}
{
av.showAllHiddenColumns();
reveal = null;
+ ap.updateLayout();
ap.paintAlignment(true, true);
av.sendSelection();
}
av.setSelectionGroup(null);
}
+ ap.updateLayout();
ap.paintAlignment(true, true);
av.sendSelection();
}
}
av.getColumnSelection().addElement(res);
- SequenceGroup sg = new SequenceGroup();
- // try to be as quick as possible
- SequenceI[] iVec = av.getAlignment().getSequencesArray();
- for (int i = 0; i < iVec.length; i++)
- {
- sg.addSequence(iVec[i], false);
- iVec[i] = null;
- }
- iVec = null;
+ SequenceGroup sg = new SequenceGroup(av.getAlignment().getSequences());
sg.setStartRes(res);
sg.setEndRes(res);
@Override
public void mouseReleased(MouseEvent evt)
{
+ boolean wasDragging = mouseDragging;
mouseDragging = false;
ap.getSeqPanel().stopScrolling();
// todo res calculation should be a method on AlignViewport
int xCords = Math.max(0, evt.getX()); // prevent negative X coordinates
-
int res = (xCords / av.getCharWidth())
+ av.getRanges().getStartRes();
res = av.getAlignment().getHiddenColumns()
.visibleToAbsoluteColumn(res);
}
- res = Math.min(res, av.getAlignment().getWidth() - 1);
+ res = Math.min(res, av.getRanges().getEndRes());
+ res = Math.max(0, res);
if (!stretchingGroup)
{
{
sg.setStartRes(res);
}
+ if (wasDragging)
+ {
+ min = Math.min(res, min);
+ max = Math.max(res, max);
+ av.getColumnSelection().stretchGroup(res, sg, min, max);
+ }
}
stretchingGroup = false;
ap.paintAlignment(false, false);
+ av.isSelectionGroupChanged(true);
+ av.isColSelChanged(true);
av.sendSelection();
}
/**
* Action on dragging the mouse in the scale panel is to expand or shrink the
- * selection group range (including any hidden columns that it spans)
+ * selection group range (including any hidden columns that it spans). Note
+ * that the selection is only broadcast at the start of the drag (on
+ * mousePressed) and at the end (on mouseReleased), to avoid overload
+ * redrawing of other views.
*
* @param evt
*/
*/
public class SeqCanvas extends JPanel implements ViewportListenerI
{
+ /*
+ * pixels gap between sequences and annotations when in wrapped mode
+ */
+ static final int SEQS_ANNOTATION_GAP = 3;
+
private static final String ZEROS = "0000000000";
final FeatureRenderer fr;
private int labelWidthWest; // label left width in pixels if shown
- private int wrappedSpaceAboveAlignment; // gap between widths
+ int wrappedSpaceAboveAlignment; // gap between widths
- private int wrappedRepeatHeightPx; // height in pixels of wrapped width
+ int wrappedRepeatHeightPx; // height in pixels of wrapped width
private int wrappedVisibleWidths; // number of wrapped widths displayed
calculateWrappedGeometry(canvasWidth, canvasHeight);
/*
- * draw one width at a time (excluding any scales or annotation shown),
+ * draw one width at a time (excluding any scales shown),
* until we have run out of either alignment or vertical space available
*/
int ypos = wrappedSpaceAboveAlignment;
* (av.getScaleAboveWrapped() ? 2 : 1);
/*
- * height in pixels of the wrapped widths
+ * compute height in pixels of the wrapped widths
+ * - start with space above plus sequences
*/
wrappedRepeatHeightPx = wrappedSpaceAboveAlignment;
- // add sequences
wrappedRepeatHeightPx += av.getAlignment().getHeight()
* charHeight;
- // add annotations panel height if shown
- wrappedRepeatHeightPx += getAnnotationHeight();
+
+ /*
+ * add annotations panel height if shown
+ * also gap between sequences and annotations
+ */
+ if (av.isShowAnnotation())
+ {
+ wrappedRepeatHeightPx += getAnnotationHeight();
+ wrappedRepeatHeightPx += SEQS_ANNOTATION_GAP; // 3px
+ }
/*
* number of visible widths (the last one may be part height),
* @param endColumn
* @param canvasHeight
*/
- protected void drawWrappedWidth(Graphics g, int ypos, int startColumn,
- int endColumn, int canvasHeight)
+ protected void drawWrappedWidth(Graphics g, final int ypos,
+ final int startColumn, final int endColumn,
+ final int canvasHeight)
{
ViewportRanges ranges = av.getRanges();
int viewportWidth = ranges.getViewportWidth();
if (av.isShowAnnotation())
{
- g.translate(0, cHeight + ypos + 3);
+ final int yShift = cHeight + ypos + SEQS_ANNOTATION_GAP;
+ g.translate(0, yShift);
if (annotations == null)
{
annotations = new AnnotationPanel(av);
annotations.renderer.drawComponent(annotations, av, g, -1,
startColumn, endx + 1);
- g.translate(0, -cHeight - ypos - 3);
+ g.translate(0, -yShift);
}
g.translate(-xOffset, 0);
}
int startx = startRes;
int endx;
int ypos = hgap; // vertical offset
- int maxwidth = av.getAlignment().getWidth();
-
- if (av.hasHiddenColumns())
- {
- maxwidth = av.getAlignment().getHiddenColumns()
- .absoluteToVisibleColumn(maxwidth);
- }
+ int maxwidth = av.getAlignment().getVisibleWidth();
// chop the wrapped alignment extent up into panel-sized blocks and treat
// each block as if it were a block from an unwrapped alignment
}
ViewportRanges vpRanges = av.getRanges();
- int range = vpRanges.getEndRes() - vpRanges.getStartRes();
+ int range = vpRanges.getEndRes() - vpRanges.getStartRes() + 1;
if (scrollX > range)
{
scrollX = range;
{
ViewportRanges ranges = av.getRanges();
- if (Math.abs(scrollX) > ranges.getViewportWidth())
+ if (Math.abs(scrollX) >= ranges.getViewportWidth())
{
/*
- * shift of more than one view width is
+ * shift of one view width or more is
* overcomplicated to handle in this method
*/
fastPaint = false;
while (y >= 0)
{
+ /*
+ * shift 'widthToCopy' residues by 'positions' places to the right
+ */
gg.copyArea(copyFromLeftStart, y, widthToCopy, heightToCopy,
positions * charWidth, 0);
if (y > 0)
{
+ /*
+ * copy 'positions' residue from the row above (right hand end)
+ * to this row's left hand end
+ */
gg.copyArea(copyFromRightStart, y - wrappedRepeatHeightPx,
positions * charWidth, heightToCopy, -widthToCopy,
wrappedRepeatHeightPx);
import jalview.commands.EditCommand;
import jalview.commands.EditCommand.Action;
import jalview.commands.EditCommand.Edit;
+import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.ColumnSelection;
import jalview.datamodel.HiddenColumns;
implements MouseListener, MouseMotionListener, MouseWheelListener,
SequenceListener, SelectionListener
{
+ /*
+ * a class that holds computed mouse position
+ * - column of the alignment (0...)
+ * - sequence offset (0...)
+ * - annotation row offset (0...)
+ * where annotation offset is -1 unless the alignment is shown
+ * in wrapped mode, annotations are shown, and the mouse is
+ * over an annnotation row
+ */
+ static class MousePos
+ {
+ /*
+ * alignment column position of cursor (0...)
+ */
+ final int column;
+
+ /*
+ * index in alignment of sequence under cursor,
+ * or nearest above if cursor is not over a sequence
+ */
+ final int seqIndex;
+
+ /*
+ * index in annotations array of annotation under the cursor
+ * (only possible in wrapped mode with annotations shown),
+ * or -1 if cursor is not over an annotation row
+ */
+ final int annotationIndex;
+
+ MousePos(int col, int seq, int ann)
+ {
+ column = col;
+ seqIndex = seq;
+ annotationIndex = ann;
+ }
+
+ boolean isOverAnnotation()
+ {
+ return annotationIndex != -1;
+ }
+
+ @Override
+ public boolean equals(Object obj)
+ {
+ if (obj == null || !(obj instanceof MousePos))
+ {
+ return false;
+ }
+ MousePos o = (MousePos) obj;
+ boolean b = (column == o.column && seqIndex == o.seqIndex
+ && annotationIndex == o.annotationIndex);
+ // System.out.println(obj + (b ? "= " : "!= ") + this);
+ return b;
+ }
+
+ /**
+ * A simple hashCode that ensures that instances that satisfy equals() have
+ * the same hashCode
+ */
+ @Override
+ public int hashCode()
+ {
+ return column + seqIndex + annotationIndex;
+ }
+
+ /**
+ * toString method for debug output purposes only
+ */
+ @Override
+ public String toString()
+ {
+ return String.format("c%d:s%d:a%d", column, seqIndex,
+ annotationIndex);
+ }
+ }
+
private static final int MAX_TOOLTIP_LENGTH = 300;
public SeqCanvas seqCanvas;
public AlignmentPanel ap;
/*
- * last column position for mouseMoved event
+ * last position for mouseMoved event
*/
- private int lastMouseColumn;
+ private MousePos lastMousePosition;
- /*
- * last sequence offset for mouseMoved event
- */
- private int lastMouseSeq;
+ protected int editLastRes;
- protected int lastres;
-
- protected int startseq;
+ protected int editStartSeq;
protected AlignViewport av;
ssm.addStructureViewerListener(this);
ssm.addSelectionListener(this);
}
-
- lastMouseColumn = -1;
- lastMouseSeq = -1;
}
int startWrapBlock = -1;
int wrappedBlock = -1;
/**
+ * Computes the column and sequence row (and possibly annotation row when in
+ * wrapped mode) for the given mouse position
+ *
+ * @param evt
+ * @return
+ */
+ MousePos findMousePosition(MouseEvent evt)
+ {
+ int col = findColumn(evt);
+ int seqIndex = -1;
+ int annIndex = -1;
+ int y = evt.getY();
+
+ int charHeight = av.getCharHeight();
+ int alignmentHeight = av.getAlignment().getHeight();
+ if (av.getWrapAlignment())
+ {
+ seqCanvas.calculateWrappedGeometry(seqCanvas.getWidth(),
+ seqCanvas.getHeight());
+
+ /*
+ * yPos modulo height of repeating width
+ */
+ int yOffsetPx = y % seqCanvas.wrappedRepeatHeightPx;
+
+ /*
+ * height of sequences plus space / scale above,
+ * plus gap between sequences and annotations
+ */
+ int alignmentHeightPixels = seqCanvas.wrappedSpaceAboveAlignment
+ + alignmentHeight * charHeight
+ + SeqCanvas.SEQS_ANNOTATION_GAP;
+ if (yOffsetPx >= alignmentHeightPixels)
+ {
+ /*
+ * mouse is over annotations; find annotation index, also set
+ * last sequence above (for backwards compatible behaviour)
+ */
+ AlignmentAnnotation[] anns = av.getAlignment()
+ .getAlignmentAnnotation();
+ int rowOffsetPx = yOffsetPx - alignmentHeightPixels;
+ annIndex = AnnotationPanel.getRowIndex(rowOffsetPx, anns);
+ seqIndex = alignmentHeight - 1;
+ }
+ else
+ {
+ /*
+ * mouse is over sequence (or the space above sequences)
+ */
+ yOffsetPx -= seqCanvas.wrappedSpaceAboveAlignment;
+ if (yOffsetPx >= 0)
+ {
+ seqIndex = Math.min(yOffsetPx / charHeight, alignmentHeight - 1);
+ }
+ }
+ }
+ else
+ {
+ seqIndex = Math.min((y / charHeight) + av.getRanges().getStartSeq(),
+ alignmentHeight - 1);
+ }
+
+ return new MousePos(col, seqIndex, annIndex);
+ }
+ /**
* Returns the aligned sequence position (base 0) at the mouse position, or
* the closest visible one
*
int res = 0;
int x = evt.getX();
- int startRes = av.getRanges().getStartRes();
+ final int startRes = av.getRanges().getStartRes();
+ final int charWidth = av.getCharWidth();
+
if (av.getWrapAlignment())
{
-
int hgap = av.getCharHeight();
if (av.getScaleAboveWrapped())
{
int y = evt.getY();
y = Math.max(0, y - hgap);
- x = Math.max(0, x - seqCanvas.getLabelWidthWest());
+ x -= seqCanvas.getLabelWidthWest();
+ if (x < 0)
+ {
+ // mouse is over left scale
+ return -1;
+ }
int cwidth = seqCanvas.getWrappedCanvasWidth(this.getWidth());
if (cwidth < 1)
{
return 0;
}
+ if (x >= cwidth * charWidth)
+ {
+ // mouse is over right scale
+ return -1;
+ }
wrappedBlock = y / cHeight;
wrappedBlock += startRes / cwidth;
// allow for wrapped view scrolled right (possible from Overview)
int startOffset = startRes % cwidth;
res = wrappedBlock * cwidth + startOffset
- + +Math.min(cwidth - 1, x / av.getCharWidth());
+ + Math.min(cwidth - 1, x / charWidth);
}
else
{
- if (x > seqCanvas.getX() + seqCanvas.getWidth())
- {
- // make sure we calculate relative to visible alignment, rather than
- // right-hand gutter
- x = seqCanvas.getX() + seqCanvas.getWidth();
- }
- res = (x / av.getCharWidth()) + startRes;
- if (res > av.getRanges().getEndRes())
- {
- // moused off right
- res = av.getRanges().getEndRes();
- }
+ /*
+ * make sure we calculate relative to visible alignment,
+ * rather than right-hand gutter
+ */
+ x = Math.min(x, seqCanvas.getX() + seqCanvas.getWidth());
+ res = (x / charWidth) + startRes;
+ res = Math.min(res, av.getRanges().getEndRes());
}
if (av.hasHiddenColumns())
}
return res;
-
- }
-
- int findSeq(MouseEvent evt)
- {
- int seq = 0;
- int y = evt.getY();
-
- if (av.getWrapAlignment())
- {
- int hgap = av.getCharHeight();
- if (av.getScaleAboveWrapped())
- {
- hgap += av.getCharHeight();
- }
-
- int cHeight = av.getAlignment().getHeight() * av.getCharHeight()
- + hgap + seqCanvas.getAnnotationHeight();
-
- y -= hgap;
-
- seq = Math.min((y % cHeight) / av.getCharHeight(),
- av.getAlignment().getHeight() - 1);
- }
- else
- {
- seq = Math.min(
- (y / av.getCharHeight()) + av.getRanges().getStartSeq(),
- av.getAlignment().getHeight() - 1);
- }
-
- return seq;
}
/**
/*
* Tidy up come what may...
*/
- startseq = -1;
- lastres = -1;
+ editStartSeq = -1;
+ editLastRes = -1;
editingSeqs = false;
groupEditing = false;
keyboardNo1 = null;
void insertGapAtCursor(boolean group)
{
groupEditing = group;
- startseq = seqCanvas.cursorY;
- lastres = seqCanvas.cursorX;
+ editStartSeq = seqCanvas.cursorY;
+ editLastRes = seqCanvas.cursorX;
editSequence(true, false, seqCanvas.cursorX + getKeyboardNo1());
endEditing();
}
void deleteGapAtCursor(boolean group)
{
groupEditing = group;
- startseq = seqCanvas.cursorY;
- lastres = seqCanvas.cursorX + getKeyboardNo1();
+ editStartSeq = seqCanvas.cursorY;
+ editLastRes = seqCanvas.cursorX + getKeyboardNo1();
editSequence(false, false, seqCanvas.cursorX);
endEditing();
}
{
// TODO not called - delete?
groupEditing = group;
- startseq = seqCanvas.cursorY;
- lastres = seqCanvas.cursorX;
+ editStartSeq = seqCanvas.cursorY;
+ editLastRes = seqCanvas.cursorX;
editSequence(false, true, seqCanvas.cursorX + getKeyboardNo1());
endEditing();
}
@Override
public void mouseReleased(MouseEvent evt)
{
+ MousePos pos = findMousePosition(evt);
+ if (pos.isOverAnnotation() || pos.seqIndex == -1 || pos.column == -1)
+ {
+ return;
+ }
+
boolean didDrag = mouseDragging; // did we come here after a drag
mouseDragging = false;
mouseWheelPressed = false;
if (evt.isPopupTrigger()) // Windows: mouseReleased
{
- showPopupMenu(evt);
+ showPopupMenu(evt, pos);
evt.consume();
return;
}
public void mousePressed(MouseEvent evt)
{
lastMousePress = evt.getPoint();
+ MousePos pos = findMousePosition(evt);
+ if (pos.isOverAnnotation() || pos.seqIndex == -1 || pos.column == -1)
+ {
+ return;
+ }
if (SwingUtilities.isMiddleMouseButton(evt))
{
}
else
{
- doMousePressedDefineMode(evt);
+ doMousePressedDefineMode(evt, pos);
return;
}
- int seq = findSeq(evt);
- int res = findColumn(evt);
-
- if (seq < 0 || res < 0)
- {
- return;
- }
+ int seq = pos.seqIndex;
+ int res = pos.column;
if ((seq < av.getAlignment().getHeight())
&& (res < av.getAlignment().getSequenceAt(seq).getLength()))
{
- startseq = seq;
- lastres = res;
+ editStartSeq = seq;
+ editLastRes = res;
}
else
{
- startseq = -1;
- lastres = -1;
+ editStartSeq = -1;
+ editLastRes = -1;
}
return;
// over residue to change abruptly, causing highlighted residue in panel 2
// to change, causing a scroll in panel 1 etc)
ap.setToScrollComplementPanel(false);
- wasScrolled = ap.scrollToPosition(results, false);
+ wasScrolled = ap.scrollToPosition(results);
if (wasScrolled)
{
seqCanvas.revalidate();
mouseDragged(evt);
}
- final int column = findColumn(evt);
- final int seq = findSeq(evt);
+ final MousePos mousePos = findMousePosition(evt);
+ if (mousePos.equals(lastMousePosition))
+ {
+ /*
+ * just a pixel move without change of 'cell'
+ */
+ return;
+ }
+ lastMousePosition = mousePos;
- if (column < 0 || seq < 0 || seq >= av.getAlignment().getHeight())
+ if (mousePos.isOverAnnotation())
{
- lastMouseSeq = -1;
+ mouseMovedOverAnnotation(mousePos);
return;
}
- if (column == lastMouseColumn && seq == lastMouseSeq)
+ final int seq = mousePos.seqIndex;
+
+ final int column = mousePos.column;
+ if (column < 0 || seq < 0 || seq >= av.getAlignment().getHeight())
{
- /*
- * just a pixel move without change of residue
- */
+ lastMousePosition = null;
+ setToolTipText(null);
+ lastTooltip = null;
+ ap.alignFrame.setStatus("");
return;
}
- lastMouseColumn = column;
- lastMouseSeq = seq;
SequenceI sequence = av.getAlignment().getSequenceAt(seq);
}
}
-
+ /**
+ * When the view is in wrapped mode, and the mouse is over an annotation row,
+ * shows the corresponding tooltip and status message (if any)
+ *
+ * @param pos
+ * @param column
+ */
+ protected void mouseMovedOverAnnotation(MousePos pos)
+ {
+ final int column = pos.column;
+ final int rowIndex = pos.annotationIndex;
+
+ if (column < 0 || !av.getWrapAlignment() || !av.isShowAnnotation()
+ || rowIndex < 0)
+ {
+ return;
+ }
+ AlignmentAnnotation[] anns = av.getAlignment().getAlignmentAnnotation();
+
+ String tooltip = AnnotationPanel.buildToolTip(anns[rowIndex], column,
+ anns);
+ setToolTipText(tooltip);
+ lastTooltip = tooltip;
+
+ String msg = AnnotationPanel.getStatusMessage(av.getAlignment(), column,
+ anns[rowIndex]);
+ ap.alignFrame.setStatus(msg);
+ }
+
private Point lastp = null;
private JToolTip tempTip = new JLabel().createToolTip();
{
// BH 2018
- if (tooltipText == null || tooltipText.length() == 6)
+ if (tooltipText == null || tooltipText.length() <= 6)
+ {
return null;
+ }
if (lastp != null && event.isShiftDown())
+ {
return lastp;
+ }
Point p = lastp;
int x = event.getX();
// was x += (w - x < 200) ? -(w / 2) : 5;
x = (x + tipWidth < w ? x + 10 : w - tipWidth);
p = new Point(x, y + 20); // BH 2018 was - 20?
- /*
- * TODO: try to modify position region is not obcured by tooltip
- *
- * Done?
- */
return lastp = p;
}
@Override
public void mouseDragged(MouseEvent evt)
{
+ MousePos pos = findMousePosition(evt);
+ if (pos.isOverAnnotation() || pos.column == -1)
+ {
+ return;
+ }
+
if (mouseWheelPressed)
{
boolean inSplitFrame = ap.av.getCodingComplement() != null;
if (!editingSeqs)
{
- doMouseDraggedDefineMode(evt);
+ dragStretchGroup(evt);
return;
}
- int res = findColumn(evt);
+ int res = pos.column;
if (res < 0)
{
res = 0;
}
- if ((lastres == -1) || (lastres == res))
+ if ((editLastRes == -1) || (editLastRes == res))
{
return;
}
- if ((res < av.getAlignment().getWidth()) && (res < lastres))
+ if ((res < av.getAlignment().getWidth()) && (res < editLastRes))
{
// dragLeft, delete gap
editSequence(false, false, res);
}
}
- // TODO: Make it more clever than many booleans
+ /**
+ * Edits the sequence to insert or delete one or more gaps, in response to a
+ * mouse drag or cursor mode command. The number of inserts/deletes may be
+ * specified with the cursor command, or else depends on the mouse event
+ * (normally one column, but potentially more for a fast mouse drag).
+ * <p>
+ * Delete gaps is limited to the number of gaps left of the cursor position
+ * (mouse drag), or at or right of the cursor position (cursor mode).
+ * <p>
+ * In group editing mode (Ctrl or Cmd down), the edit acts on all sequences in
+ * the current selection group.
+ * <p>
+ * In locked editing mode (with a selection group present), inserts/deletions
+ * within the selection group are limited to its boundaries (and edits outside
+ * the group stop at its border).
+ *
+ * @param insertGap
+ * true to insert gaps, false to delete gaps
+ * @param editSeq
+ * (unused parameter)
+ * @param startres
+ * the column at which to perform the action; the number of columns
+ * affected depends on <code>this.editLastRes</code> (cursor column
+ * position)
+ */
synchronized void editSequence(boolean insertGap, boolean editSeq,
- int startres)
+ final int startres)
{
int fixedLeft = -1;
int fixedRight = -1;
boolean fixedColumns = false;
SequenceGroup sg = av.getSelectionGroup();
- SequenceI seq = av.getAlignment().getSequenceAt(startseq);
+ final SequenceI seq = av.getAlignment().getSequenceAt(editStartSeq);
// No group, but the sequence may represent a group
if (!groupEditing && av.hasHiddenRows())
}
}
- StringBuilder message = new StringBuilder(64);
+ StringBuilder message = new StringBuilder(64); // for status bar
+
+ /*
+ * make a name for the edit action, for
+ * status bar message and Undo/Redo menu
+ */
+ String label = null;
if (groupEditing)
{
- message.append("Edit group:");
- if (editCommand == null)
- {
- editCommand = new EditCommand(
- MessageManager.getString("action.edit_group"));
- }
+ message.append("Edit group:");
+ label = MessageManager.getString("action.edit_group");
}
else
{
- message.append("Edit sequence: " + seq.getName());
- String label = seq.getName();
+ message.append("Edit sequence: " + seq.getName());
+ label = seq.getName();
if (label.length() > 10)
{
label = label.substring(0, 10);
}
- if (editCommand == null)
- {
- editCommand = new EditCommand(MessageManager
- .formatMessage("label.edit_params", new String[]
- { label }));
- }
+ label = MessageManager.formatMessage("label.edit_params",
+ new String[]
+ { label });
+ }
+
+ /*
+ * initialise the edit command if there is not
+ * already one being extended
+ */
+ if (editCommand == null)
+ {
+ editCommand = new EditCommand(label);
}
if (insertGap)
message.append(" delete ");
}
- message.append(Math.abs(startres - lastres) + " gaps.");
+ message.append(Math.abs(startres - editLastRes) + " gaps.");
ap.alignFrame.setStatus(message.toString());
- // Are we editing within a selection group?
- if (groupEditing || (sg != null
- && sg.getSequences(av.getHiddenRepSequences()).contains(seq)))
+ /*
+ * is there a selection group containing the sequence being edited?
+ * if so the boundary of the group is the limit of the edit
+ * (but the edit may be inside or outside the selection group)
+ */
+ boolean inSelectionGroup = sg != null
+ && sg.getSequences(av.getHiddenRepSequences()).contains(seq);
+ if (groupEditing || inSelectionGroup)
{
fixedColumns = true;
fixedLeft = sg.getStartRes();
fixedRight = sg.getEndRes();
- if ((startres < fixedLeft && lastres >= fixedLeft)
- || (startres >= fixedLeft && lastres < fixedLeft)
- || (startres > fixedRight && lastres <= fixedRight)
- || (startres <= fixedRight && lastres > fixedRight))
+ if ((startres < fixedLeft && editLastRes >= fixedLeft)
+ || (startres >= fixedLeft && editLastRes < fixedLeft)
+ || (startres > fixedRight && editLastRes <= fixedRight)
+ || (startres <= fixedRight && editLastRes > fixedRight))
{
endEditing();
return;
int y2 = av.getAlignment().getHiddenColumns()
.getNextHiddenBoundary(false, startres);
- if ((insertGap && startres > y1 && lastres < y1)
- || (!insertGap && startres < y2 && lastres > y2))
+ if ((insertGap && startres > y1 && editLastRes < y1)
+ || (!insertGap && startres < y2 && editLastRes > y2))
{
endEditing();
return;
}
}
+ boolean success = doEditSequence(insertGap, editSeq, startres,
+ fixedRight, fixedColumns, sg);
+
+ /*
+ * report what actually happened (might be less than
+ * what was requested), by inspecting the edit commands added
+ */
+ String msg = getEditStatusMessage(editCommand);
+ ap.alignFrame.setStatus(msg == null ? " " : msg);
+ if (!success)
+ {
+ endEditing();
+ }
+
+ editLastRes = startres;
+ seqCanvas.repaint();
+ }
+
+ /**
+ * A helper method that performs the requested editing to insert or delete
+ * gaps (if possible). Answers true if the edit was successful, false if could
+ * only be performed in part or not at all. Failure may occur in 'locked edit'
+ * mode, when an insertion requires a matching gapped position (or column) to
+ * delete, and deletion requires an adjacent gapped position (or column) to
+ * remove.
+ *
+ * @param insertGap
+ * true if inserting gap(s), false if deleting
+ * @param editSeq
+ * (unused parameter, currently always false)
+ * @param startres
+ * the column at which to perform the edit
+ * @param fixedRight
+ * fixed right boundary column of a locked edit (within or to the
+ * left of a selection group)
+ * @param fixedColumns
+ * true if this is a locked edit
+ * @param sg
+ * the sequence group (if group edit is being performed)
+ * @return
+ */
+ protected boolean doEditSequence(final boolean insertGap,
+ final boolean editSeq, final int startres, int fixedRight,
+ final boolean fixedColumns, final SequenceGroup sg)
+ {
+ final SequenceI seq = av.getAlignment().getSequenceAt(editStartSeq);
+ SequenceI[] seqs = new SequenceI[] { seq };
+
if (groupEditing)
{
List<SequenceI> vseqs = sg.getSequences(av.getHiddenRepSequences());
if (sg.getStartRes() == 0 && sg.getEndRes() == fixedRight
&& sg.getEndRes() == av.getAlignment().getWidth() - 1)
{
- sg.setEndRes(av.getAlignment().getWidth() + startres - lastres);
+ sg.setEndRes(
+ av.getAlignment().getWidth() + startres - editLastRes);
fixedRight = sg.getEndRes();
}
// Find the next gap before the end
// of the visible region boundary
boolean blank = false;
- for (; fixedRight > lastres; fixedRight--)
+ for (; fixedRight > editLastRes; fixedRight--)
{
blank = true;
for (g = 0; g < groupSize; g++)
{
- for (int j = 0; j < startres - lastres; j++)
+ for (int j = 0; j < startres - editLastRes; j++)
{
- if (!Comparison.isGap(groupSeqs[g].getCharAt(fixedRight - j)))
+ if (!Comparison
+ .isGap(groupSeqs[g].getCharAt(fixedRight - j)))
{
blank = false;
break;
{
if (sg.getSize() == av.getAlignment().getHeight())
{
- if ((av.hasHiddenColumns() && startres < av.getAlignment()
- .getHiddenColumns()
- .getNextHiddenBoundary(false, startres)))
+ if ((av.hasHiddenColumns()
+ && startres < av.getAlignment().getHiddenColumns()
+ .getNextHiddenBoundary(false, startres)))
{
- endEditing();
- return;
+ return false;
}
int alWidth = av.getAlignment().getWidth();
}
// We can still insert gaps if the selectionGroup
// contains all the sequences
- sg.setEndRes(sg.getEndRes() + startres - lastres);
- fixedRight = alWidth + startres - lastres;
+ sg.setEndRes(sg.getEndRes() + startres - editLastRes);
+ fixedRight = alWidth + startres - editLastRes;
}
else
{
- endEditing();
- return;
+ return false;
}
}
}
for (g = 0; g < groupSize; g++)
{
- for (int j = startres; j < lastres; j++)
+ for (int j = startres; j < editLastRes; j++)
{
if (groupSeqs[g].getLength() <= j)
{
if (!Comparison.isGap(groupSeqs[g].getCharAt(j)))
{
// Not a gap, block edit not valid
- endEditing();
- return;
+ return false;
}
}
}
// dragging to the right
if (fixedColumns && fixedRight != -1)
{
- for (int j = lastres; j < startres; j++)
+ for (int j = editLastRes; j < startres; j++)
{
- insertChar(j, groupSeqs, fixedRight);
+ insertGap(j, groupSeqs, fixedRight);
}
}
else
{
appendEdit(Action.INSERT_GAP, groupSeqs, startres,
- startres - lastres);
+ startres - editLastRes, false);
}
}
else
// dragging to the left
if (fixedColumns && fixedRight != -1)
{
- for (int j = lastres; j > startres; j--)
+ for (int j = editLastRes; j > startres; j--)
{
deleteChar(startres, groupSeqs, fixedRight);
}
else
{
appendEdit(Action.DELETE_GAP, groupSeqs, startres,
- lastres - startres);
+ editLastRes - startres, false);
}
-
}
}
else
- // ///Editing a single sequence///////////
{
+ /*
+ * editing a single sequence
+ */
if (insertGap)
{
// dragging to the right
if (fixedColumns && fixedRight != -1)
{
- for (int j = lastres; j < startres; j++)
+ for (int j = editLastRes; j < startres; j++)
{
- insertChar(j, new SequenceI[] { seq }, fixedRight);
+ if (!insertGap(j, seqs, fixedRight))
+ {
+ /*
+ * e.g. cursor mode command specified
+ * more inserts than are possible
+ */
+ return false;
+ }
}
}
else
{
- appendEdit(Action.INSERT_GAP, new SequenceI[] { seq }, lastres,
- startres - lastres);
+ appendEdit(Action.INSERT_GAP, seqs, editLastRes,
+ startres - editLastRes, false);
}
}
else
// dragging to the left
if (fixedColumns && fixedRight != -1)
{
- for (int j = lastres; j > startres; j--)
+ for (int j = editLastRes; j > startres; j--)
{
if (!Comparison.isGap(seq.getCharAt(startres)))
{
- endEditing();
- break;
+ return false;
}
- deleteChar(startres, new SequenceI[] { seq }, fixedRight);
+ deleteChar(startres, seqs, fixedRight);
}
}
else
{
// could be a keyboard edit trying to delete none gaps
int max = 0;
- for (int m = startres; m < lastres; m++)
+ for (int m = startres; m < editLastRes; m++)
{
if (!Comparison.isGap(seq.getCharAt(m)))
{
}
max++;
}
-
if (max > 0)
{
- appendEdit(Action.DELETE_GAP, new SequenceI[] { seq },
- startres, max);
+ appendEdit(Action.DELETE_GAP, seqs, startres, max, false);
}
}
}
{// insertGap==false AND editSeq==TRUE;
if (fixedColumns && fixedRight != -1)
{
- for (int j = lastres; j < startres; j++)
+ for (int j = editLastRes; j < startres; j++)
{
- insertChar(j, new SequenceI[] { seq }, fixedRight);
+ insertGap(j, seqs, fixedRight);
}
}
else
{
- appendEdit(Action.INSERT_NUC, new SequenceI[] { seq }, lastres,
- startres - lastres);
+ appendEdit(Action.INSERT_NUC, seqs, editLastRes,
+ startres - editLastRes, false);
}
}
}
}
- lastres = startres;
- seqCanvas.repaint();
+ return true;
+ }
+
+ /**
+ * Constructs an informative status bar message while dragging to insert or
+ * delete gaps. Answers null if inserts and deletes cancel out.
+ *
+ * @param editCommand
+ * a command containing the list of individual edits
+ * @return
+ */
+ protected static String getEditStatusMessage(EditCommand editCommand)
+ {
+ if (editCommand == null)
+ {
+ return null;
+ }
+
+ /*
+ * add any inserts, and subtract any deletes,
+ * not counting those auto-inserted when doing a 'locked edit'
+ * (so only counting edits 'under the cursor')
+ */
+ int count = 0;
+ for (Edit cmd : editCommand.getEdits())
+ {
+ if (!cmd.isSystemGenerated())
+ {
+ count += cmd.getAction() == Action.INSERT_GAP ? cmd.getNumber()
+ : -cmd.getNumber();
+ }
+ }
+
+ if (count == 0)
+ {
+ /*
+ * inserts and deletes cancel out
+ */
+ return null;
+ }
+
+ String msgKey = count > 1 ? "label.insert_gaps"
+ : (count == 1 ? "label.insert_gap"
+ : (count == -1 ? "label.delete_gap"
+ : "label.delete_gaps"));
+ count = Math.abs(count);
+
+ return MessageManager.formatMessage(msgKey, String.valueOf(count));
}
- void insertChar(int j, SequenceI[] seq, int fixedColumn)
+ /**
+ * Inserts one gap at column j, deleting the right-most gapped column up to
+ * (and including) fixedColumn. Returns true if the edit is successful, false
+ * if no blank column is available to allow the insertion to be balanced by a
+ * deletion.
+ *
+ * @param j
+ * @param seq
+ * @param fixedColumn
+ * @return
+ */
+ boolean insertGap(int j, SequenceI[] seq, int fixedColumn)
{
int blankColumn = fixedColumn;
for (int s = 0; s < seq.length; s++)
{
blankColumn = fixedColumn;
endEditing();
- return;
+ return false;
}
}
- appendEdit(Action.DELETE_GAP, seq, blankColumn, 1);
+ appendEdit(Action.DELETE_GAP, seq, blankColumn, 1, true);
- appendEdit(Action.INSERT_GAP, seq, j, 1);
+ appendEdit(Action.INSERT_GAP, seq, j, 1, false);
+ return true;
}
/**
- * Helper method to add and perform one edit action.
+ * Helper method to add and perform one edit action
*
* @param action
* @param seq
* @param pos
* @param count
+ * @param systemGenerated
+ * true if the edit is a 'balancing' delete (or insert) to match a
+ * user's insert (or delete) in a locked editing region
*/
protected void appendEdit(Action action, SequenceI[] seq, int pos,
- int count)
+ int count, boolean systemGenerated)
{
final Edit edit = new EditCommand().new Edit(action, seq, pos, count,
av.getAlignment().getGapCharacter());
+ edit.setSystemGenerated(systemGenerated);
editCommand.appendEdit(edit, av.getAlignment(), true, null);
}
- void deleteChar(int j, SequenceI[] seq, int fixedColumn)
+ /**
+ * Deletes the character at column j, and inserts a gap at fixedColumn, in
+ * each of the given sequences. The caller should ensure that all sequences
+ * are gapped in column j.
+ *
+ * @param j
+ * @param seqs
+ * @param fixedColumn
+ */
+ void deleteChar(int j, SequenceI[] seqs, int fixedColumn)
{
+ appendEdit(Action.DELETE_GAP, seqs, j, 1, false);
- appendEdit(Action.DELETE_GAP, seq, j, 1);
-
- appendEdit(Action.INSERT_GAP, seq, fixedColumn, 1);
+ appendEdit(Action.INSERT_GAP, seqs, fixedColumn, 1, true);
}
/**
@Override
public void mouseExited(MouseEvent e)
{
- if (mouseDragging)
+ ap.alignFrame.setStatus(" ");
+ if (av.getWrapAlignment())
+ {
+ return;
+ }
+
+ if (mouseDragging && scrollThread == null)
{
startScrolling(e.getPoint());
}
public void mouseClicked(MouseEvent evt)
{
SequenceGroup sg = null;
- SequenceI sequence = av.getAlignment().getSequenceAt(findSeq(evt));
+ MousePos pos = findMousePosition(evt);
+ if (pos.isOverAnnotation() || pos.seqIndex == -1 || pos.column == -1)
+ {
+ return;
+ }
+
if (evt.getClickCount() > 1)
{
sg = av.getSelectionGroup();
av.setSelectionGroup(null);
}
- int column = findColumn(evt);
+ int column = pos.column;
/*
* find features at the position (if not gapped), or straddling
* the position (if at a gap)
*/
+ SequenceI sequence = av.getAlignment().getSequenceAt(pos.seqIndex);
List<SequenceFeature> features = seqCanvas.getFeatureRenderer()
.findFeaturesAtColumn(sequence, column + 1);
/**
* DOCUMENT ME!
*
- * @param evt
+ * @param pos
* DOCUMENT ME!
*/
- public void doMousePressedDefineMode(MouseEvent evt)
+ protected void doMousePressedDefineMode(MouseEvent evt, MousePos pos)
{
- final int res = findColumn(evt);
- final int seq = findSeq(evt);
- oldSeq = seq;
- updateOverviewAndStructs = false;
-
- startWrapBlock = wrappedBlock;
-
- if (av.getWrapAlignment() && seq > av.getAlignment().getHeight())
+ if (pos.isOverAnnotation() || pos.seqIndex == -1 || pos.column == -1)
{
- JvOptionPane.showInternalMessageDialog(Desktop.desktop,
- MessageManager.getString(
- "label.cannot_edit_annotations_in_wrapped_view"),
- MessageManager.getString("label.wrapped_view_no_edit"),
- JvOptionPane.WARNING_MESSAGE);
return;
}
- if (seq < 0 || res < 0)
- {
- return;
- }
+ final int res = pos.column;
+ final int seq = pos.seqIndex;
+ oldSeq = seq;
+ updateOverviewAndStructs = false;
+
+ startWrapBlock = wrappedBlock;
SequenceI sequence = av.getAlignment().getSequenceAt(seq);
if (evt.isPopupTrigger()) // Mac: mousePressed
{
- showPopupMenu(evt);
+ showPopupMenu(evt, pos);
return;
}
if (av.cursorMode)
{
- seqCanvas.cursorX = findColumn(evt);
- seqCanvas.cursorY = findSeq(evt);
+ seqCanvas.cursorX = res;
+ seqCanvas.cursorY = seq;
seqCanvas.repaint();
return;
}
/**
* Build and show a pop-up menu at the right-click mouse position
- *
+ *
* @param evt
- * @param res
- * @param sequences
+ * @param pos
*/
- void showPopupMenu(MouseEvent evt)
+ void showPopupMenu(MouseEvent evt, MousePos pos)
{
- final int column = findColumn(evt);
- final int seq = findSeq(evt);
+ final int column = pos.column;
+ final int seq = pos.seqIndex;
SequenceI sequence = av.getAlignment().getSequenceAt(seq);
List<SequenceFeature> features = ap.getFeatureRenderer()
.findFeaturesAtColumn(sequence, column + 1);
* true if this event is happening after a mouse drag (rather than a
* mouse down)
*/
- public void doMouseReleasedDefineMode(MouseEvent evt, boolean afterDrag)
+ protected void doMouseReleasedDefineMode(MouseEvent evt,
+ boolean afterDrag)
{
if (stretchGroup == null)
{
&& afterDrag;
if (stretchGroup.cs != null)
{
- stretchGroup.cs.alignmentChanged(stretchGroup,
- av.getHiddenRepSequences());
+ if (afterDrag)
+ {
+ stretchGroup.cs.alignmentChanged(stretchGroup,
+ av.getHiddenRepSequences());
+ }
ResidueShaderI groupColourScheme = stretchGroup
.getGroupColourScheme();
}
/**
- * DOCUMENT ME!
+ * Resizes the borders of a selection group depending on the direction of
+ * mouse drag
*
* @param evt
- * DOCUMENT ME!
*/
- public void doMouseDraggedDefineMode(MouseEvent evt)
+ protected void dragStretchGroup(MouseEvent evt)
{
- int res = findColumn(evt);
- int y = findSeq(evt);
+ if (stretchGroup == null)
+ {
+ return;
+ }
- if (wrappedBlock != startWrapBlock)
+ MousePos pos = findMousePosition(evt);
+ if (pos.isOverAnnotation() || pos.column == -1 || pos.seqIndex == -1)
{
return;
}
- if (stretchGroup == null)
+ int res = pos.column;
+ int y = pos.seqIndex;
+
+ if (wrappedBlock != startWrapBlock)
{
return;
}
{
scrollThread.setMousePosition(evt.getPoint());
}
+
+ /*
+ * construct a status message showing the range of the selection
+ */
+ StringBuilder status = new StringBuilder(64);
+ List<SequenceI> seqs = stretchGroup.getSequences();
+ String name = seqs.get(0).getName();
+ if (name.length() > 20)
+ {
+ name = name.substring(0, 20);
+ }
+ status.append(name).append(" - ");
+ name = seqs.get(seqs.size() - 1).getName();
+ if (name.length() > 20)
+ {
+ name = name.substring(0, 20);
+ }
+ status.append(name).append(" ");
+ int startRes = stretchGroup.getStartRes();
+ status.append(" cols ").append(String.valueOf(startRes + 1))
+ .append("-");
+ int endRes = stretchGroup.getEndRes();
+ status.append(String.valueOf(endRes + 1));
+ status.append(" (").append(String.valueOf(seqs.size())).append(" x ")
+ .append(String.valueOf(endRes - startRes + 1)).append(")");
+ ap.alignFrame.setStatus(status.toString());
}
/**
HiddenColumns hs = new HiddenColumns();
MappingUtils.mapColumnSelection(colsel, hidden, sourceAv, av, cs, hs);
av.setColumnSelection(cs);
- av.getAlignment().setHiddenColumns(hs);
+ boolean hiddenChanged = av.getAlignment().setHiddenColumns(hs);
// lastly, update any dependent dialogs
if (ap.getCalculationDialog() != null)
ap.getCalculationDialog().validateCalcTypes();
}
- PaintRefresher.Refresh(this, av.getSequenceSetId());
+ /*
+ * repaint alignment, and also Overview or Structure
+ * if hidden column selection has changed
+ */
+ ap.paintAlignment(hiddenChanged, hiddenChanged);
return true;
}
import jalview.renderer.ResidueShaderI;
import jalview.util.MessageManager;
+import java.awt.event.ActionEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.beans.PropertyVetoException;
public void setAllGroupsCheckEnabled(boolean b)
{
allGroupsCheck.setEnabled(b);
- allGroupsCheck.setSelected(ap.av.getColourAppliesToAllGroups());
}
/**
{
AlignmentI al = getAlignmentPanel().av.getAlignment();
ColourSchemeI cs = ColourSchemes.getInstance()
- .getColourScheme(colourSchemeName, al, null);
+ .getColourScheme(colourSchemeName, getAlignmentPanel().av, al,
+ null);
getBinding().setJalviewColourScheme(cs);
}
import jalview.datamodel.SequenceNode;
import jalview.gui.JalviewColourChooser.ColourChooserListener;
import jalview.schemes.ColourSchemeI;
-import jalview.schemes.ColourSchemeProperty;
-import jalview.schemes.UserColourScheme;
import jalview.structure.SelectionSource;
import jalview.util.Format;
-import jalview.util.MappingUtils;
import jalview.util.MessageManager;
import java.awt.Color;
return;
}
- if ((node.left() == null) && (node.right() == null)) // TODO: internal node
+ node.color = c;
+ if (node.element() instanceof SequenceI)
{
- node.color = c;
-
- if (node.element() instanceof SequenceI)
+ final SequenceI seq = (SequenceI) node.element();
+ AlignmentPanel[] aps = getAssociatedPanels();
+ if (aps != null)
{
- AlignmentPanel[] aps = getAssociatedPanels();
- if (aps != null)
+ for (int a = 0; a < aps.length; a++)
{
- for (int a = 0; a < aps.length; a++)
- {
- final SequenceI seq = (SequenceI) node.element();
- aps[a].av.setSequenceColour(seq, c);
- }
+ aps[a].av.setSequenceColour(seq, c);
}
}
}
- else
- {
- node.color = c;
- setColor((SequenceNode) node.left(), c);
- setColor((SequenceNode) node.right(), c);
- }
+ setColor((SequenceNode) node.left(), c);
+ setColor((SequenceNode) node.right(), c);
}
/**
.deleteAllGroups();
aps[a].av.getCodingComplement().clearSequenceColours();
}
+ aps[a].av.setUpdateStructures(true);
}
colourGroups(groups);
}
ColourSchemeI cs = null;
- SequenceGroup sg = new SequenceGroup(sequences, null, cs, true, true,
+ SequenceGroup _sg = new SequenceGroup(sequences, null, cs, true, true,
false, 0, av.getAlignment().getWidth() - 1);
- if (av.getGlobalColourScheme() != null)
- {
- if (av.getGlobalColourScheme() instanceof UserColourScheme)
- {
- cs = new UserColourScheme(
- ((UserColourScheme) av.getGlobalColourScheme())
- .getColours());
-
- }
- else
- {
- cs = ColourSchemeProperty.getColourScheme(sg, ColourSchemeProperty
- .getColourName(av.getGlobalColourScheme()));
- }
- // cs is null if shading is an annotationColourGradient
- // if (cs != null)
- // {
- // cs.setThreshold(av.getViewportColourScheme().getThreshold(),
- // av.isIgnoreGapsConsensus());
- // }
- }
- sg.setColourScheme(cs);
- sg.getGroupColourScheme().setThreshold(
- av.getResidueShading().getThreshold(),
- av.isIgnoreGapsConsensus());
- // sg.recalcConservation();
- sg.setName("JTreeGroup:" + sg.hashCode());
- sg.setIdColour(col);
+ _sg.setName("JTreeGroup:" + _sg.hashCode());
+ _sg.setIdColour(col);
for (int a = 0; a < aps.length; a++)
{
- if (aps[a].av.getGlobalColourScheme() != null
- && aps[a].av.getResidueShading().conservationApplied())
- {
- Conservation c = new Conservation("Group", sg.getSequences(null),
- sg.getStartRes(), sg.getEndRes());
- c.calculate();
- c.verdict(false, aps[a].av.getConsPercGaps());
- sg.cs.setConservation(c);
- }
+ SequenceGroup sg = new SequenceGroup(_sg);
+ AlignViewport viewport = aps[a].av;
- aps[a].av.getAlignment().addGroup(new SequenceGroup(sg));
- // TODO can we push all of the below into AlignViewportI?
- final AlignViewportI codingComplement = aps[a].av
- .getCodingComplement();
- if (codingComplement != null)
+ // Propagate group colours in each view
+ if (viewport.getGlobalColourScheme() != null)
{
- SequenceGroup mappedGroup = MappingUtils.mapSequenceGroup(sg, av,
- codingComplement);
- if (mappedGroup.getSequences().size() > 0)
+ cs = viewport.getGlobalColourScheme().getInstance(viewport, sg);
+ sg.setColourScheme(cs);
+ sg.getGroupColourScheme().setThreshold(
+ viewport.getResidueShading().getThreshold(),
+ viewport.isIgnoreGapsConsensus());
+
+ if (viewport.getResidueShading().conservationApplied())
{
- codingComplement.getAlignment().addGroup(mappedGroup);
- for (SequenceI seq : mappedGroup.getSequences())
- {
- codingComplement.setSequenceColour(seq, col.brighter());
- }
+ Conservation c = new Conservation("Group",
+ sg.getSequences(null), sg.getStartRes(),
+ sg.getEndRes());
+ c.calculate();
+ c.verdict(false, viewport.getConsPercGaps());
+ sg.cs.setConservation(c);
}
}
+ // indicate that associated structure views will need an update
+ viewport.setUpdateStructures(true);
+ // propagate structure view update and sequence group to complement view
+ viewport.addSequenceGroup(sg);
}
}
- // notify the panel(s) to redo any group specific stuff.
+ // notify the panel(s) to redo any group specific stuff
+ // also updates structure views if necessary
for (int a = 0; a < aps.length; a++)
{
aps[a].updateAnnotation();
- // TODO: JAL-868 - need to ensure view colour change message is broadcast
- // to any Jmols listening in
final AlignViewportI codingComplement = aps[a].av
.getCodingComplement();
if (codingComplement != null)
{
this.threshold = threshold;
}
+
+ public boolean isApplyToAllViews()
+ {
+ return this.applyToAllViews;
+ }
+
+ public void setApplyToAllViews(boolean applyToAllViews)
+ {
+ this.applyToAllViews = applyToAllViews;
+ }
}
/*
* put them together as <method> Using <model>
*/
- final String ttl = MessageManager.formatMessage("label.treecalc_title",
+ final String ttl = MessageManager.formatMessage("label.calc_title",
treecalcnm, smn);
return ttl;
}
}
else if (key.equalsIgnoreCase("colour"))
{
+ // TODO need to notify colourscheme of view reference once it is
+ // available
sg.cs.setColourScheme(
- ColourSchemeProperty.getColourScheme(al, value));
+ ColourSchemeProperty.getColourScheme(null, al, value));
}
else if (key.equalsIgnoreCase("pidThreshold"))
{
--- /dev/null
+package jalview.io;
+
+import java.io.File;
+import java.io.FilenameFilter;
+import java.io.IOException;
+
+public class BackupFilenameFilter implements FilenameFilter
+{
+
+ public String base;
+
+ public String template;
+
+ public int digits;
+
+ public BackupFilenameFilter(String base, String template, int digits)
+ {
+ this.base = base;
+ this.template = template;
+ this.digits = digits;
+ }
+
+ @Override
+ public boolean accept(File dir, String filename)
+ {
+ try
+ {
+ File file = new File(
+ dir.getCanonicalPath() + File.separatorChar + filename);
+ if (file.isDirectory())
+ {
+ // backup files aren't dirs!
+ return false;
+ }
+ } catch (IOException e)
+ {
+ System.out.println("IOException when checking file '" + filename
+ + "' is a backupfile");
+ }
+
+ BackupFilenameParts bffp = new BackupFilenameParts(filename, base,
+ template, digits);
+ return bffp.isBackupFile();
+ }
+
+}
--- /dev/null
+package jalview.io;
+
+import jalview.bin.Cache;
+
+import java.io.File;
+
+public class BackupFilenameParts
+{
+ private String base;
+
+ private String templateStart;
+
+ private int num;
+
+ private int digits;
+
+ private String templateEnd;
+
+ private boolean isBackupFile;
+
+ private BackupFilenameParts()
+ {
+ this.isBackupFile = false;
+ }
+
+ public BackupFilenameParts(File file, String base, String template,
+ int digits)
+ {
+ this(file.getName(), base, template, digits);
+ }
+
+ public BackupFilenameParts(String filename, String base, String template,
+ int suggesteddigits)
+ {
+ this(filename, base, template, suggesteddigits, false);
+ }
+
+ public BackupFilenameParts(String filename, String base, String template,
+ int suggesteddigits, boolean extensionMatch)
+ {
+ this.isBackupFile = false;
+
+ int numcharstart = template.indexOf(BackupFiles.NUM_PLACEHOLDER);
+ int digits = 0;
+ String templateStart = template;
+ String templateEnd = "";
+ if (numcharstart > -1)
+ {
+ templateStart = template.substring(0, numcharstart);
+ templateEnd = template.substring(
+ numcharstart + BackupFiles.NUM_PLACEHOLDER.length());
+ digits = suggesteddigits;
+ }
+
+ String savedFilename = "";
+ // if extensionOnly is set then reset the filename to the last occurrence of the extension+templateStart and try the match
+ if (extensionMatch)
+ {
+ // only trying to match from extension onwards
+
+ int extensioncharstart = filename
+ .lastIndexOf('.' + base + templateStart);
+ if (extensioncharstart == -1)
+ {
+ return;
+ }
+
+ savedFilename = filename.substring(0, extensioncharstart + 1); // include
+ // the "."
+ filename = filename.substring(extensioncharstart + 1);
+ }
+
+ // full filename match
+
+ // calculate minimum length of a backup filename
+ int minlength = base.length() + template.length()
+ - BackupFiles.NUM_PLACEHOLDER.length() + digits;
+
+ if (!(filename.startsWith(base + templateStart)
+ && filename.endsWith(templateEnd)
+ && filename.length() >= minlength))
+ {
+ // non-starter
+ return;
+ }
+
+ int startLength = base.length() + templateStart.length();
+ int endLength = templateEnd.length();
+ String numString = numcharstart > -1
+ ? filename.substring(startLength, filename.length() - endLength)
+ : "";
+
+ if (filename.length() >= startLength + digits + endLength
+ && filename.startsWith(base + templateStart)
+ && filename.endsWith(templateEnd)
+ // match exactly digits number of number-characters (numString
+ // should be all digits and at least the right length), or more than
+ // digits long with proviso it's not zero-leading.
+ && (numString.matches("[0-9]{" + digits + "}")
+ || numString.matches("[1-9][0-9]{" + digits + ",}")))
+ {
+ this.base = extensionMatch ? savedFilename + base : base;
+ this.templateStart = templateStart;
+ this.num = numString.length() > 0 ? Integer.parseInt(numString) : 0;
+ this.digits = digits;
+ this.templateEnd = templateEnd;
+ this.isBackupFile = true;
+ }
+
+ }
+
+ public static BackupFilenameParts currentBackupFilenameParts(
+ String filename, String base, boolean extensionMatch)
+ {
+ BackupFilenameParts bfp = new BackupFilenameParts();
+ String template = Cache.getDefault(BackupFiles.SUFFIX, null);
+ if (template == null)
+ {
+ return bfp;
+ }
+ int digits;
+ try
+ {
+ digits = Integer
+ .parseInt(Cache.getDefault(BackupFiles.SUFFIX_DIGITS, null));
+ } catch (Exception e)
+ {
+ return bfp;
+ }
+ return new BackupFilenameParts(filename, base, template, digits,
+ extensionMatch);
+ }
+
+ public boolean isBackupFile()
+ {
+ return this.isBackupFile;
+ }
+
+ public int indexNum()
+ {
+ return this.num;
+ }
+
+ public static String getBackupFilename(int index, String base,
+ String template, int digits)
+ {
+ String numString = String.format("%0" + digits + "d", index);
+ String backupSuffix = template.replaceFirst(BackupFiles.NUM_PLACEHOLDER,
+ numString);
+ String backupfilename = base + backupSuffix;
+ return backupfilename;
+ }
+}
--- /dev/null
+package jalview.io;
+
+import jalview.bin.Cache;
+import jalview.gui.Desktop;
+import jalview.gui.JvOptionPane;
+import jalview.util.MessageManager;
+
+import java.io.File;
+import java.io.IOException;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.TreeMap;
+
+/*
+ * BackupFiles used for manipulating (naming rolling/deleting) backup/version files when an alignment or project file is saved.
+ * User configurable options are:
+ * BACKUPFILES_ENABLED - boolean flag as to whether to use this mechanism or act as before, including overwriting files as saved.
+ * BACKUPFILES_SUFFIX - a template to insert after the file extension. Use '%n' to be replaced by a 0-led SUFFIX_DIGITS long integer.
+ * BACKUPFILES_NO_MAX - flag to turn off setting a maximum number of backup files to keep.
+ * BACKUPFILES_ROLL_MAX - the maximum number of backupfiles to keep for any one alignment or project file.
+ * BACKUPFILES_SUFFIX_DIGITS - the number of digits to insert replace %n with (e.g. BACKUPFILES_SUFFIX_DIGITS = 3 would make "001", "002", etc)
+ * BACKUPFILES_REVERSE_ORDER - if true then "logfile" style numbering and file rolling will occur. If false then ever-increasing version numbering will occur, but old files will still be deleted if there are more than ROLL_MAX backup files.
+ * BACKUPFILES_CONFIRM_DELETE_OLD - if true then prompt/confirm with the user when deleting older backup/version files.
+ */
+
+public class BackupFiles
+{
+
+ // labels for saved params in Cache and .jalview_properties
+ public static final String NS = "BACKUPFILES";
+
+ public static final String ENABLED = NS + "_ENABLED";
+
+ public static final String SUFFIX = NS + "_SUFFIX";
+
+ public static final String NO_MAX = NS + "_NO_MAX";
+
+ public static final String ROLL_MAX = NS + "_ROLL_MAX";
+
+ public static final String SUFFIX_DIGITS = NS + "_SUFFIX_DIGITS";
+
+ public static final String NUM_PLACEHOLDER = "%n";
+
+ public static final String REVERSE_ORDER = NS + "_REVERSE_ORDER";
+
+ public static final String CONFIRM_DELETE_OLD = NS
+ + "_CONFIRM_DELETE_OLD";
+
+ private static final String DEFAULT_TEMP_FILE = "jalview_temp_file_" + NS;
+
+ private static final String TEMP_FILE_EXT = ".tmp";
+
+ // file - File object to be backed up and then updated (written over)
+ private File file;
+
+ // enabled - default flag as to whether to do the backup file roll (if not
+ // defined in preferences)
+ private static boolean enabled;
+
+ // confirmDelete - default flag as to whether to confirm with the user before
+ // deleting old backup/version files
+ private static boolean confirmDelete;
+
+ // defaultSuffix - default template to use to append to basename of file
+ private String suffix;
+
+ // noMax - flag to turn off a maximum number of files
+ private boolean noMax;
+
+ // defaultMax - default max number of backup files
+ private int max;
+
+ // defaultDigits - number of zero-led digits to use in the filename
+ private int digits;
+
+ // reverseOrder - set to true to make newest (latest) files lowest number
+ // (like rolled log files)
+ private boolean reverseOrder;
+
+ // temp saved file to become new saved file
+ private File tempFile;
+
+ // flag set to see if file save to temp file was successful
+ private boolean tempFileWriteSuccess;
+
+ // array of files to be deleted, with extra information
+ private ArrayList<File> deleteFiles = new ArrayList<>();
+
+ // date formatting for modification times
+ private static final SimpleDateFormat sdf = new SimpleDateFormat(
+ "yyyy-MM-dd HH:mm:ss");
+
+ public BackupFiles(String filename)
+ {
+ this(new File(filename));
+ }
+
+ // first time defaults for SUFFIX, NO_MAX, ROLL_MAX, SUFFIX_DIGITS and
+ // REVERSE_ORDER
+ public BackupFiles(File file)
+ {
+ this(file, ".bak" + NUM_PLACEHOLDER, false, 3, 3, false);
+ }
+
+ public BackupFiles(File file, String defaultSuffix, boolean defaultNoMax,
+ int defaultMax, int defaultDigits, boolean defaultReverseOrder)
+ {
+ classInit();
+ this.file = file;
+ this.suffix = Cache.getDefault(SUFFIX, defaultSuffix);
+ this.noMax = Cache.getDefault(NO_MAX, defaultNoMax);
+ this.max = Cache.getDefault(ROLL_MAX, defaultMax);
+ this.digits = Cache.getDefault(SUFFIX_DIGITS, defaultDigits);
+ this.reverseOrder = Cache.getDefault(REVERSE_ORDER,
+ defaultReverseOrder);
+
+ // create a temp file to save new data in
+ File temp = null;
+ try
+ {
+ if (file != null)
+ {
+ String tempfilename = file.getName();
+ File tempdir = file.getParentFile();
+ temp = File.createTempFile(tempfilename, TEMP_FILE_EXT + "_newfile",
+ tempdir);
+ }
+ else
+ {
+ temp = File.createTempFile(DEFAULT_TEMP_FILE, TEMP_FILE_EXT);
+ }
+ } catch (IOException e)
+ {
+ System.out.println(
+ "Could not create temp file to save into (IOException)");
+ } catch (Exception e)
+ {
+ System.out.println("Exception ctreating temp file for saving");
+ }
+ this.setTempFile(temp);
+ }
+
+ public static void classInit()
+ {
+ setEnabled(Cache.getDefault(ENABLED, true));
+ setConfirmDelete(Cache.getDefault(CONFIRM_DELETE_OLD, true));
+ }
+
+ public static void setEnabled(boolean flag)
+ {
+ enabled = flag;
+ }
+
+ public static boolean getEnabled()
+ {
+ classInit();
+ return enabled;
+ }
+
+ public static void setConfirmDelete(boolean flag)
+ {
+ confirmDelete = flag;
+ }
+
+ public static boolean getConfirmDelete()
+ {
+ classInit();
+ return confirmDelete;
+ }
+
+ // set, get and rename temp file into place
+ public void setTempFile(File temp)
+ {
+ this.tempFile = temp;
+ }
+
+ public File getTempFile()
+ {
+ return tempFile;
+ }
+
+ public String getTempFilePath()
+ {
+ String path = null;
+ try
+ {
+ path = this.getTempFile().getCanonicalPath();
+ } catch (IOException e)
+ {
+ System.out.println(
+ "IOException when getting Canonical Path of temp file '"
+ + this.getTempFile().getName() + "'");
+ }
+ return path;
+ }
+
+ public boolean setWriteSuccess(boolean flag)
+ {
+ boolean old = this.tempFileWriteSuccess;
+ this.tempFileWriteSuccess = flag;
+ return old;
+ }
+
+ public boolean getWriteSuccess()
+ {
+ return this.tempFileWriteSuccess;
+ }
+
+ public boolean renameTempFile()
+ {
+ return tempFile.renameTo(file);
+ }
+
+ // roll the backupfiles
+ public boolean rollBackupFiles()
+ {
+ return this.rollBackupFiles(true);
+ }
+
+ public boolean rollBackupFiles(boolean tidyUp)
+ {
+ // file doesn't yet exist or backups are not enabled or template is null or
+ // empty
+ if ((!file.exists()) || (!enabled) || max < 0 || suffix == null
+ || suffix.length() == 0)
+ {
+ // nothing to do
+ return true;
+ }
+
+ String dir = "";
+ File dirFile;
+ try
+ {
+ dirFile = file.getParentFile();
+ dir = dirFile.getCanonicalPath();
+ } catch (Exception e)
+ {
+ System.out.println(
+ "Could not get canonical path for file '" + file + "'");
+ return false;
+ }
+ String filename = file.getName();
+ String basename = filename;
+
+ boolean ret = true;
+ // Create/move backups up one
+
+ deleteFiles.clear();
+
+ // find existing backup files
+ BackupFilenameFilter bff = new BackupFilenameFilter(basename, suffix,
+ digits);
+ File[] backupFiles = dirFile.listFiles(bff);
+ int nextIndexNum = 0;
+
+ if (backupFiles.length == 0)
+ {
+ // No other backup files. Just need to move existing file to backupfile_1
+ nextIndexNum = 1;
+ }
+ else
+ {
+ TreeMap<Integer, File> bfTreeMap = sortBackupFilesAsTreeMap(
+ backupFiles, basename);
+ // bfTreeMap now a sorted list of <Integer index>,<File backupfile>
+ // mappings
+
+ if (reverseOrder)
+ {
+ // backup style numbering
+
+
+ int tempMax = noMax ? -1 : max;
+ // noMax == true means no limits
+ // look for first "gap" in backupFiles
+ // if tempMax is -1 at this stage just keep going until there's a gap,
+ // then hopefully tempMax gets set to the right index (a positive
+ // integer so the loop breaks)...
+ // why do I feel a little uneasy about this loop?..
+ for (int i = 1; tempMax < 0 || i <= max; i++)
+ {
+ if (!bfTreeMap.containsKey(i)) // first index without existent
+ // backupfile
+ {
+ tempMax = i;
+ }
+ }
+
+ File previousFile = null;
+ File fileToBeDeleted = null;
+ for (int n = tempMax; n > 0; n--)
+ {
+ String backupfilename = dir + File.separatorChar
+ + BackupFilenameParts.getBackupFilename(n, basename,
+ suffix, digits);
+ File backupfile_n = new File(backupfilename);
+
+ if (!backupfile_n.exists())
+ {
+ // no "oldest" file to delete
+ previousFile = backupfile_n;
+ fileToBeDeleted = null;
+ continue;
+ }
+
+ // check the modification time of this (backupfile_n) and the previous
+ // file (fileToBeDeleted) if the previous file is going to be deleted
+ if (fileToBeDeleted != null)
+ {
+ File replacementFile = backupfile_n;
+ long fileToBeDeletedLMT = fileToBeDeleted.lastModified();
+ long replacementFileLMT = replacementFile.lastModified();
+
+ try
+ {
+ File oldestTempFile = nextTempFile(fileToBeDeleted.getName(),
+ dirFile);
+
+ if (fileToBeDeletedLMT > replacementFileLMT)
+ {
+ String fileToBeDeletedLMTString = sdf
+ .format(fileToBeDeletedLMT);
+ String replacementFileLMTString = sdf
+ .format(replacementFileLMT);
+ System.out.println("WARNING! I am set to delete backupfile "
+ + fileToBeDeleted.getName()
+ + " has modification time "
+ + fileToBeDeletedLMTString
+ + " which is newer than its replacement "
+ + replacementFile.getName()
+ + " with modification time "
+ + replacementFileLMTString);
+
+ boolean delete = confirmNewerDeleteFile(fileToBeDeleted,
+ replacementFile, true);
+
+ if (delete)
+ {
+ // User has confirmed delete -- no need to add it to the list
+ fileToBeDeleted.delete();
+ }
+ else
+ {
+ fileToBeDeleted.renameTo(oldestTempFile);
+ }
+ }
+ else
+ {
+ fileToBeDeleted.renameTo(oldestTempFile);
+ addDeleteFile(oldestTempFile);
+ }
+
+ } catch (Exception e)
+ {
+ System.out.println(
+ "Error occurred, probably making new temp file for '"
+ + fileToBeDeleted.getName() + "'");
+ e.printStackTrace();
+ }
+
+ // reset
+ fileToBeDeleted = null;
+ }
+
+ if (!noMax && n == tempMax && backupfile_n.exists())
+ {
+ fileToBeDeleted = backupfile_n;
+ }
+ else
+ {
+ if (previousFile != null)
+ {
+ ret = ret && backupfile_n.renameTo(previousFile);
+ }
+ }
+
+ previousFile = backupfile_n;
+ }
+
+ // index to use for the latest backup
+ nextIndexNum = 1;
+ }
+ else
+ {
+ // version style numbering (with earliest file deletion if max files
+ // reached)
+
+ bfTreeMap.values().toArray(backupFiles);
+
+ // noMax == true means keep all backup files
+ if ((!noMax) && bfTreeMap.size() >= max)
+ {
+ // need to delete some files to keep number of backups to designated
+ // max
+ int numToDelete = bfTreeMap.size() - max + 1;
+ // the "replacement" file is the latest backup file being kept (it's
+ // not replacing though)
+ File replacementFile = numToDelete < backupFiles.length
+ ? backupFiles[numToDelete]
+ : null;
+ for (int i = 0; i < numToDelete; i++)
+ {
+ // check the deletion files for modification time of the last
+ // backupfile being saved
+ File fileToBeDeleted = backupFiles[i];
+ boolean delete = true;
+
+ boolean newer = false;
+ if (replacementFile != null)
+ {
+ long fileToBeDeletedLMT = fileToBeDeleted.lastModified();
+ long replacementFileLMT = replacementFile != null
+ ? replacementFile.lastModified()
+ : Long.MAX_VALUE;
+ if (fileToBeDeletedLMT > replacementFileLMT)
+ {
+ String fileToBeDeletedLMTString = sdf
+ .format(fileToBeDeletedLMT);
+ String replacementFileLMTString = sdf
+ .format(replacementFileLMT);
+
+ System.out
+ .println("WARNING! I am set to delete backupfile '"
+ + fileToBeDeleted.getName()
+ + "' has modification time "
+ + fileToBeDeletedLMTString
+ + " which is newer than the oldest backupfile being kept '"
+ + replacementFile.getName()
+ + "' with modification time "
+ + replacementFileLMTString);
+
+ delete = confirmNewerDeleteFile(fileToBeDeleted,
+ replacementFile, false);
+ if (delete)
+ {
+ // User has confirmed delete -- no need to add it to the list
+ fileToBeDeleted.delete();
+ delete = false;
+ }
+ else
+ {
+ // keeping file, nothing to do!
+ }
+ }
+ }
+ if (delete)
+ {
+ addDeleteFile(fileToBeDeleted);
+ }
+
+ }
+
+ }
+
+ nextIndexNum = bfTreeMap.lastKey() + 1;
+ }
+ }
+
+ // Let's make the new backup file!! yay, got there at last!
+ String latestBackupFilename = dir + File.separatorChar
+ + BackupFilenameParts.getBackupFilename(nextIndexNum, basename,
+ suffix, digits);
+ ret |= file.renameTo(new File(latestBackupFilename));
+
+ if (tidyUp)
+ {
+ tidyUpFiles();
+ }
+
+ return ret;
+ }
+
+ private static File nextTempFile(String filename, File dirFile)
+ throws IOException
+ {
+ File temp = null;
+ COUNT: for (int i = 1; i < 1000; i++)
+ {
+ File trythis = new File(dirFile,
+ filename + '~' + Integer.toString(i));
+ if (!trythis.exists())
+ {
+ temp = trythis;
+ break COUNT;
+ }
+
+ }
+ if (temp == null)
+ {
+ temp = File.createTempFile(filename, TEMP_FILE_EXT, dirFile);
+ }
+ return temp;
+ }
+
+ private void tidyUpFiles()
+ {
+ deleteOldFiles();
+ }
+
+ private static boolean confirmNewerDeleteFile(File fileToBeDeleted,
+ File replacementFile, boolean replace)
+ {
+ StringBuilder messageSB = new StringBuilder();
+
+ File ftbd = fileToBeDeleted;
+ String ftbdLMT = sdf.format(ftbd.lastModified());
+ String ftbdSize = Long.toString(ftbd.length());
+
+ File rf = replacementFile;
+ String rfLMT = sdf.format(rf.lastModified());
+ String rfSize = Long.toString(rf.length());
+
+ int confirmButton = JvOptionPane.NO_OPTION;
+ if (replace)
+ {
+ File saveFile = null;
+ try
+ {
+ saveFile = nextTempFile(ftbd.getName(), ftbd.getParentFile());
+ } catch (Exception e)
+ {
+ System.out.println(
+ "Error when confirming to keep backup file newer than other backup files.");
+ e.printStackTrace();
+ }
+ messageSB.append(MessageManager.formatMessage(
+ "label.newerdelete_replacement_line", new String[]
+ { ftbd.getName(), rf.getName(), ftbdLMT, rfLMT, ftbdSize,
+ rfSize }));
+ messageSB.append("\n\n");
+ messageSB.append(MessageManager.formatMessage(
+ "label.confirm_deletion_or_rename", new String[]
+ { ftbd.getName(), saveFile.getName() }));
+ String[] options = new String[] {
+ MessageManager.getString("label.delete"),
+ MessageManager.getString("label.rename") };
+
+ confirmButton = JvOptionPane.showOptionDialog(Desktop.desktop,
+ messageSB.toString(),
+ MessageManager.getString("label.backupfiles_confirm_delete"),
+ JvOptionPane.YES_NO_OPTION, JvOptionPane.WARNING_MESSAGE,
+ null, options, options[0]);
+ }
+ else
+ {
+ messageSB.append(MessageManager
+ .formatMessage("label.newerdelete_line", new String[]
+ { ftbd.getName(), rf.getName(), ftbdLMT, rfLMT, ftbdSize,
+ rfSize }));
+ messageSB.append("\n\n");
+ messageSB.append(MessageManager
+ .formatMessage("label.confirm_deletion", new String[]
+ { ftbd.getName() }));
+ String[] options = new String[] {
+ MessageManager.getString("label.delete"),
+ MessageManager.getString("label.keep") };
+
+ confirmButton = JvOptionPane.showOptionDialog(Desktop.desktop,
+ messageSB.toString(),
+ MessageManager.getString("label.backupfiles_confirm_delete"),
+ JvOptionPane.YES_NO_OPTION, JvOptionPane.WARNING_MESSAGE,
+ null, options, options[0]);
+ }
+
+
+ // return should be TRUE if file is to be deleted
+ return (confirmButton == JvOptionPane.YES_OPTION);
+ }
+
+ private void deleteOldFiles()
+ {
+ if (deleteFiles != null && !deleteFiles.isEmpty())
+ {
+ boolean doDelete = false;
+ StringBuilder messageSB = null;
+ if (confirmDelete && deleteFiles.size() > 0)
+ {
+ messageSB = new StringBuilder();
+ messageSB.append(MessageManager
+ .getString("label.backupfiles_confirm_delete_old_files"));
+ for (int i = 0; i < deleteFiles.size(); i++)
+ {
+ File df = deleteFiles.get(i);
+ messageSB.append("\n");
+ messageSB.append(df.getName());
+ messageSB.append(" ");
+ messageSB.append(MessageManager.formatMessage("label.file_info",
+ new String[]
+ { sdf.format(df.lastModified()),
+ Long.toString(df.length()) }));
+ }
+
+ int confirmButton = JvOptionPane.showConfirmDialog(Desktop.desktop,
+ messageSB.toString(),
+ MessageManager
+ .getString("label.backupfiles_confirm_delete"),
+ JvOptionPane.YES_NO_OPTION, JvOptionPane.WARNING_MESSAGE);
+
+ doDelete = (confirmButton == JvOptionPane.YES_OPTION);
+ }
+ else
+ {
+ doDelete = true;
+ }
+
+ if (doDelete)
+ {
+ for (int i = 0; i < deleteFiles.size(); i++)
+ {
+ File fileToDelete = deleteFiles.get(i);
+ fileToDelete.delete();
+ System.out.println("DELETING '" + fileToDelete.getName() + "'");
+ }
+ }
+
+ }
+
+ deleteFiles.clear();
+ }
+
+ private TreeMap<Integer, File> sortBackupFilesAsTreeMap(
+ File[] backupFiles,
+ String basename)
+ {
+ // sort the backup files (based on integer found in the suffix) using a
+ // precomputed Hashmap for speed
+ Map<Integer, File> bfHashMap = new HashMap<>();
+ for (int i = 0; i < backupFiles.length; i++)
+ {
+ File f = backupFiles[i];
+ BackupFilenameParts bfp = new BackupFilenameParts(f, basename, suffix,
+ digits);
+ bfHashMap.put(bfp.indexNum(), f);
+ }
+ TreeMap<Integer, File> bfTreeMap = new TreeMap<>();
+ bfTreeMap.putAll(bfHashMap);
+ return bfTreeMap;
+ }
+
+ public boolean rollBackupsAndRenameTempFile()
+ {
+ boolean write = this.getWriteSuccess();
+
+ boolean roll = false;
+ boolean rename = false;
+ if (write)
+ {
+ roll = this.rollBackupFiles(false);
+ rename = this.renameTempFile();
+ }
+
+ /*
+ * Not sure that this confirmation is desirable. By this stage the new file is
+ * already written successfully, but something (e.g. disk full) has happened while
+ * trying to roll the backup files, and most likely the filename needed will already
+ * be vacant so renaming the temp file is nearly always correct!
+ */
+ boolean okay = roll && rename;
+ if (!okay)
+ {
+ StringBuilder messageSB = new StringBuilder();
+ messageSB.append(MessageManager.getString( "label.backupfiles_confirm_save_file_backupfiles_roll_wrong"));
+ if (rename)
+ {
+ if (messageSB.length() > 0)
+ {
+ messageSB.append("\n");
+ }
+ messageSB.append(MessageManager.getString(
+ "label.backupfiles_confirm_save_new_saved_file_ok"));
+ }
+ else
+ {
+ if (messageSB.length() > 0)
+ {
+ messageSB.append("\n");
+ }
+ messageSB.append(MessageManager.getString(
+ "label.backupfiles_confirm_save_new_saved_file_not_ok"));
+ }
+
+ int confirmButton = JvOptionPane.showConfirmDialog(Desktop.desktop,
+ messageSB.toString(),
+ MessageManager
+ .getString("label.backupfiles_confirm_save_file"),
+ JvOptionPane.OK_OPTION, JvOptionPane.WARNING_MESSAGE);
+ okay = confirmButton == JvOptionPane.OK_OPTION;
+ }
+ if (okay)
+ {
+ tidyUpFiles();
+ }
+
+ return rename;
+ }
+
+ public static TreeMap<Integer, File> getBackupFilesAsTreeMap(
+ String fileName, String suffix, int digits)
+ {
+ File[] backupFiles = null;
+
+ File file = new File(fileName);
+
+ File dirFile;
+ try
+ {
+ dirFile = file.getParentFile();
+ } catch (Exception e)
+ {
+ System.out.println(
+ "Could not get canonical path for file '" + file + "'");
+ return new TreeMap<>();
+ }
+
+ String filename = file.getName();
+ String basename = filename;
+
+ // find existing backup files
+ BackupFilenameFilter bff = new BackupFilenameFilter(basename, suffix,
+ digits);
+ backupFiles = dirFile.listFiles(bff); // is clone needed?
+
+ // sort the backup files (based on integer found in the suffix) using a
+ // precomputed Hashmap for speed
+ Map<Integer, File> bfHashMap = new HashMap<>();
+ for (int i = 0; i < backupFiles.length; i++)
+ {
+ File f = backupFiles[i];
+ BackupFilenameParts bfp = new BackupFilenameParts(f, basename, suffix,
+ digits);
+ bfHashMap.put(bfp.indexNum(), f);
+ }
+ TreeMap<Integer, File> bfTreeMap = new TreeMap<>();
+ bfTreeMap.putAll(bfHashMap);
+
+ return bfTreeMap;
+ }
+
+ /*
+ private boolean addDeleteFile(File fileToBeDeleted, File originalFile,
+ boolean delete, boolean newer)
+ {
+ return addDeleteFile(fileToBeDeleted, originalFile, null, delete, newer);
+ }
+ */
+ private boolean addDeleteFile(File fileToBeDeleted)
+ {
+ boolean ret = false;
+ int pos = deleteFiles.indexOf(fileToBeDeleted);
+ if (pos > -1)
+ {
+ return true;
+ }
+ else
+ {
+ deleteFiles.add(fileToBeDeleted);
+ }
+ return ret;
+ }
+
+}
import jalview.analysis.SequenceIdMatcher;
import jalview.api.AlignViewportI;
import jalview.api.FeatureColourI;
+import jalview.api.FeatureRenderer;
import jalview.api.FeaturesSourceI;
import jalview.datamodel.AlignedCodonFrame;
import jalview.datamodel.Alignment;
}
/**
- * Returns contents of a Jalview format features file, for visible features, as
- * filtered by type and group. Features with a null group are displayed if their
- * feature type is visible. Non-positional features may optionally be included
- * (with no check on type or group).
+ * Returns contents of a Jalview format features file, for visible features,
+ * as filtered by type and group. Features with a null group are displayed if
+ * their feature type is visible. Non-positional features may optionally be
+ * included (with no check on type or group).
*
* @param sequences
- * source of features
- * @param visible
- * map of colour for each visible feature type
- * @param featureFilters
- * @param visibleFeatureGroups
+ * @param fr
* @param includeNonPositional
* if true, include non-positional features (regardless of group or
* type)
* @return
*/
public String printJalviewFormat(SequenceI[] sequences,
- Map<String, FeatureColourI> visible,
- Map<String, FeatureMatcherSetI> featureFilters,
- List<String> visibleFeatureGroups, boolean includeNonPositional)
+ FeatureRenderer fr, boolean includeNonPositional)
{
- if (!includeNonPositional && (visible == null || visible.isEmpty()))
+ Map<String, FeatureColourI> visibleColours = fr
+ .getDisplayedFeatureCols();
+ Map<String, FeatureMatcherSetI> featureFilters = fr.getFeatureFilters();
+
+ if (!includeNonPositional
+ && (visibleColours == null || visibleColours.isEmpty()))
{
// no point continuing.
return "No Features Visible";
*/
// TODO: decide if feature links should also be written here ?
StringBuilder out = new StringBuilder(256);
- if (visible != null)
+ if (visibleColours != null)
{
- for (Entry<String, FeatureColourI> featureColour : visible.entrySet())
+ for (Entry<String, FeatureColourI> featureColour : visibleColours
+ .entrySet())
{
FeatureColourI colour = featureColour.getValue();
out.append(colour.toJalviewFormat(featureColour.getKey())).append(
}
}
- String[] types = visible == null ? new String[0] : visible.keySet()
- .toArray(new String[visible.keySet().size()]);
+ String[] types = visibleColours == null ? new String[0]
+ : visibleColours.keySet()
+ .toArray(new String[visibleColours.keySet().size()]);
/*
* feature filters if any
*/
- outputFeatureFilters(out, visible, featureFilters);
-
- /*
- * sort groups alphabetically, and ensure that features with a
- * null or empty group are output after those in named groups
- */
- List<String> sortedGroups = new ArrayList<>(visibleFeatureGroups);
- sortedGroups.remove(null);
- sortedGroups.remove("");
- Collections.sort(sortedGroups);
- sortedGroups.add(null);
- sortedGroups.add("");
-
- boolean foundSome = false;
-
- /*
- * first output any non-positional features
- */
- if (includeNonPositional)
- {
- for (int i = 0; i < sequences.length; i++)
- {
- String sequenceName = sequences[i].getName();
- for (SequenceFeature feature : sequences[i].getFeatures()
- .getNonPositionalFeatures())
- {
- foundSome = true;
- out.append(formatJalviewFeature(sequenceName, feature));
- }
- }
- }
+ outputFeatureFilters(out, visibleColours, featureFilters);
/*
- * positional features within groups
+ * output features within groups
*/
- foundSome |= outputFeaturesByGroup(out, sortedGroups, types, sequences);
+ int count = outputFeaturesByGroup(out, fr, types, sequences,
+ includeNonPositional);
- return foundSome ? out.toString() : "No Features Visible";
+ return count > 0 ? out.toString() : "No Features Visible";
}
/**
}
if (!first)
{
- out.append(ENDFILTERS).append(newline).append(newline);
+ out.append(ENDFILTERS).append(newline);
}
}
/**
- * Appends output of sequence features within feature groups to the output
- * buffer. Groups other than the null or empty group are sandwiched by
- * STARTGROUP and ENDGROUP lines.
+ * Appends output of visible sequence features within feature groups to the
+ * output buffer. Groups other than the null or empty group are sandwiched by
+ * STARTGROUP and ENDGROUP lines. Answers the number of features written.
*
* @param out
- * @param groups
+ * @param fr
* @param featureTypes
* @param sequences
+ * @param includeNonPositional
* @return
*/
- private boolean outputFeaturesByGroup(StringBuilder out,
- List<String> groups, String[] featureTypes, SequenceI[] sequences)
+ private int outputFeaturesByGroup(StringBuilder out,
+ FeatureRenderer fr, String[] featureTypes,
+ SequenceI[] sequences, boolean includeNonPositional)
{
- boolean foundSome = false;
- for (String group : groups)
+ List<String> featureGroups = fr.getFeatureGroups();
+
+ /*
+ * sort groups alphabetically, and ensure that features with a
+ * null or empty group are output after those in named groups
+ */
+ List<String> sortedGroups = new ArrayList<>(featureGroups);
+ sortedGroups.remove(null);
+ sortedGroups.remove("");
+ Collections.sort(sortedGroups);
+ sortedGroups.add(null);
+ sortedGroups.add("");
+
+ int count = 0;
+ List<String> visibleGroups = fr.getDisplayedFeatureGroups();
+
+ /*
+ * loop over all groups (may be visible or not);
+ * non-positional features are output even if group is not visible
+ */
+ for (String group : sortedGroups)
{
- boolean isNamedGroup = (group != null && !"".equals(group));
- if (isNamedGroup)
- {
- out.append(newline);
- out.append(STARTGROUP).append(TAB);
- out.append(group);
- out.append(newline);
- }
+ boolean firstInGroup = true;
+ boolean isNullGroup = group == null || "".equals(group);
- /*
- * output positional features within groups
- */
for (int i = 0; i < sequences.length; i++)
{
String sequenceName = sequences[i].getName();
List<SequenceFeature> features = new ArrayList<>();
- if (featureTypes.length > 0)
+
+ /*
+ * get any non-positional features in this group, if wanted
+ * (for any feature type, whether visible or not)
+ */
+ if (includeNonPositional)
+ {
+ features.addAll(sequences[i].getFeatures()
+ .getFeaturesForGroup(false, group));
+ }
+
+ /*
+ * add positional features for visible feature types, but
+ * (for named groups) only if feature group is visible
+ */
+ if (featureTypes.length > 0
+ && (isNullGroup || visibleGroups.contains(group)))
{
features.addAll(sequences[i].getFeatures().getFeaturesForGroup(
true, group, featureTypes));
}
- for (SequenceFeature sequenceFeature : features)
+ for (SequenceFeature sf : features)
{
- foundSome = true;
- out.append(formatJalviewFeature(sequenceName, sequenceFeature));
+ if (sf.isNonPositional() || fr.isVisible(sf))
+ {
+ count++;
+ if (firstInGroup)
+ {
+ out.append(newline);
+ if (!isNullGroup)
+ {
+ out.append(STARTGROUP).append(TAB).append(group)
+ .append(newline);
+ }
+ }
+ firstInGroup = false;
+ out.append(formatJalviewFeature(sequenceName, sf));
+ }
}
}
- if (isNamedGroup)
+ if (!isNullGroup && !firstInGroup)
{
- out.append(ENDGROUP).append(TAB);
- out.append(group);
- out.append(newline);
+ out.append(ENDGROUP).append(TAB).append(group).append(newline);
}
}
- return foundSome;
+ return count;
}
/**
* @return
*/
public String printGffFormat(SequenceI[] sequences,
- Map<String, FeatureColourI> visible,
- List<String> visibleFeatureGroups,
- boolean includeNonPositionalFeatures)
+ FeatureRenderer fr, boolean includeNonPositionalFeatures)
{
+ Map<String, FeatureColourI> visibleColours = fr.getDisplayedFeatureCols();
+
StringBuilder out = new StringBuilder(256);
out.append(String.format("%s %d\n", GFF_VERSION, gffVersion == 0 ? 2 : gffVersion));
if (!includeNonPositionalFeatures
- && (visible == null || visible.isEmpty()))
+ && (visibleColours == null || visibleColours.isEmpty()))
{
return out.toString();
}
- String[] types = visible == null ? new String[0] : visible.keySet()
- .toArray(
- new String[visible.keySet().size()]);
+ String[] types = visibleColours == null ? new String[0]
+ : visibleColours.keySet()
+ .toArray(new String[visibleColours.keySet().size()]);
for (SequenceI seq : sequences)
{
{
features.addAll(seq.getFeatures().getNonPositionalFeatures());
}
- if (visible != null && !visible.isEmpty())
+ if (visibleColours != null && !visibleColours.isEmpty())
{
features.addAll(seq.getFeatures().getPositionalFeatures(types));
}
for (SequenceFeature sf : features)
{
- String source = sf.featureGroup;
- if (!sf.isNonPositional() && source != null
- && !visibleFeatureGroups.contains(source))
+ if (!sf.isNonPositional() && !fr.isVisible(sf))
{
- // group is not visible
+ /*
+ * feature hidden by group visibility, colour threshold,
+ * or feature filter condition
+ */
continue;
}
+ String source = sf.featureGroup;
if (source == null)
{
source = sf.getDescription();
import java.awt.Dimension;
import java.awt.EventQueue;
import java.awt.HeadlessException;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.beans.PropertyChangeEvent;
import java.util.StringTokenizer;
import java.util.Vector;
+import javax.swing.BoxLayout;
import javax.swing.DefaultListCellRenderer;
+import javax.swing.JCheckBox;
import javax.swing.JFileChooser;
import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.SpringLayout;
+import javax.swing.filechooser.FileFilter;
import javax.swing.plaf.basic.BasicFileChooserUI;
/**
File selectedFile = null;
/**
+ * backupfilesCheckBox = "Include backup files" checkbox includeBackupfiles =
+ * flag set by checkbox
+ */
+ private JCheckBox backupfilesCheckBox = null;
+
+ protected boolean includeBackupFiles = false;
+
+ /**
* Factory method to return a file chooser that offers readable alignment file
* formats
*
public static JalviewFileChooser forRead(String directory,
String selected)
{
+ return JalviewFileChooser.forRead(directory, selected, false);
+ }
+
+ public static JalviewFileChooser forRead(String directory,
+ String selected, boolean allowBackupFiles)
+ {
List<String> extensions = new ArrayList<>();
List<String> descs = new ArrayList<>();
for (FileFormatI format : FileFormats.getInstance().getFormats())
descs.add(format.getName());
}
}
+
return new JalviewFileChooser(directory,
extensions.toArray(new String[extensions.size()]),
- descs.toArray(new String[descs.size()]), selected, true);
+ descs.toArray(new String[descs.size()]), selected, true,
+ allowBackupFiles);
}
/**
JalviewFileChooser(String dir, String[] extensions, String[] descs,
String selected, boolean acceptAny)
{
+ this(dir, extensions, descs, selected, acceptAny, false);
+ }
+
+ public JalviewFileChooser(String dir, String[] extensions, String[] descs,
+ String selected, boolean acceptAny, boolean allowBackupFiles)
+ {
super(safePath(dir));
if (extensions.length == descs.length)
{
{
formats.add(new String[] { extensions[i], descs[i] });
}
- init(formats, selected, acceptAny);
+ init(formats, selected, acceptAny, allowBackupFiles);
}
else
{
*/
void init(List<String[]> formats, String selected, boolean acceptAny)
{
+ init(formats, selected, acceptAny, false);
+ }
+
+ void init(List<String[]> formats, String selected, boolean acceptAny,
+ boolean allowBackupFiles)
+ {
JalviewFileFilter chosen = null;
for (String[] format : formats)
{
JalviewFileFilter jvf = new JalviewFileFilter(format[0], format[1]);
+ if (allowBackupFiles)
+ {
+ jvf.setParentJFC(this);
+ }
addChoosableFileFilter(jvf);
if ((selected != null) && selected.equalsIgnoreCase(format[1]))
{
setFileFilter(chosen);
}
- setAccessory(new RecentlyOpened());
+ if (allowBackupFiles)
+ {
+ JPanel multi = new JPanel();
+ multi.setLayout(new BoxLayout(multi, BoxLayout.PAGE_AXIS));
+ if (backupfilesCheckBox == null)
+ {
+ try {
+ includeBackupFiles = Boolean.parseBoolean(
+ Cache.getProperty(BackupFiles.NS + "_FC_INCLUDE"));
+ } catch (Exception e)
+ {
+ includeBackupFiles = false;
+ }
+ backupfilesCheckBox = new JCheckBox(
+ MessageManager.getString("label.include_backup_files"),
+ includeBackupFiles);
+ backupfilesCheckBox.setAlignmentX(Component.CENTER_ALIGNMENT);
+ JalviewFileChooser jfc = this;
+ backupfilesCheckBox.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ includeBackupFiles = backupfilesCheckBox.isSelected();
+ Cache.setProperty(BackupFiles.NS + "_FC_INCLUDE",
+ String.valueOf(includeBackupFiles));
+
+ FileFilter f = jfc.getFileFilter();
+ // deselect the selected file if it's no longer choosable
+ File selectedFile = jfc.getSelectedFile();
+ if (selectedFile != null && !f.accept(selectedFile))
+ {
+ jfc.setSelectedFile(null);
+ }
+ // fake the OK button changing (to force it to upate)
+ String s = jfc.getApproveButtonText();
+ jfc.firePropertyChange(
+ APPROVE_BUTTON_TEXT_CHANGED_PROPERTY, null, s);
+ // fake the file filter changing (its behaviour actually has)
+ jfc.firePropertyChange(FILE_FILTER_CHANGED_PROPERTY, null, f);
+
+ jfc.rescanCurrentDirectory();
+ jfc.revalidate();
+ jfc.repaint();
+ }
+ });
+ }
+ multi.add(new RecentlyOpened());
+ multi.add(backupfilesCheckBox);
+ setAccessory(multi);
+ }
+ else
+ {
+ // set includeBackupFiles=false to avoid other file choosers from picking
+ // up backup files (Just In Case)
+ includeBackupFiles = false;
+ setAccessory(new RecentlyOpened());
+ }
}
@Override
MessageManager.getString("label.overwrite_existing_file"),
MessageManager.getString("label.file_already_exists"),
JvOptionPane.YES_NO_OPTION);
+
if (confirm != JvOptionPane.YES_OPTION)
{
return;
private boolean useExtensionsInDescription = true;
+ private JalviewFileChooser parentJFC = null;
+
public JalviewFileFilter(String extension, String description)
{
StringTokenizer st = new StringTokenizer(extension, ",");
@Override
public boolean accept(File f)
{
+
if (f != null)
{
String extension = getExtension(f);
{
return true;
}
+
}
+ if (parentJFC != null && parentJFC.includeBackupFiles)
+ {
+ Iterator<String> it = filters.keySet().iterator();
+ EXTENSION: while (it.hasNext())
+ {
+ String ext = it.next();
+
+ // quick negative test
+ if (!f.getName().contains(ext))
+ {
+ continue EXTENSION;
+ }
+
+ BackupFilenameParts bfp = BackupFilenameParts
+ .currentBackupFilenameParts(f.getName(), ext, true);
+ if (bfp.isBackupFile())
+ {
+ return true;
+ }
+ }
+ }
+
return false;
}
{
return useExtensionsInDescription;
}
+
+ protected void setParentJFC(JalviewFileChooser p)
+ {
+ this.parentJFC = p;
+ }
+
}
*/
package jalview.io;
+import jalview.util.MessageManager;
+
import java.io.File;
import java.net.URL;
import java.util.HashMap;
+import java.util.Iterator;
import java.util.Map;
import javax.swing.Icon;
public String getTypeDescription(File f)
{
String extension = getExtension(f);
+
String type = getDescriptionForExtension(extension);
+
if (extension != null)
{
if (extensions.containsKey(extension))
{
String extension = getExtension(f);
Icon icon = null;
+ String type = getDescriptionForExtension(extension);
+
+ if (type == null)
+ {
+ Iterator<String> it = extensions.keySet().iterator();
+ EXTENSION: while (it.hasNext())
+ {
+ String ext = it.next();
+
+ // quick negative test
+ if (!f.getName().contains(ext))
+ {
+ continue EXTENSION;
+ }
+
+ BackupFilenameParts bfp = BackupFilenameParts
+ .currentBackupFilenameParts(f.getName(), ext, true);
+ if (bfp.isBackupFile())
+ {
+ extension = ext;
+ type = getDescriptionForExtension(extension)
+ + MessageManager.getString("label.backup");
+ break;
+ }
+ }
+ }
- if (getDescriptionForExtension(extension) != null)
+ if (type != null)
{
icon = getImageIcon("/images/file.png");
}
import jalview.io.vamsas.DatastoreItem;
import jalview.io.vamsas.DatastoreRegistry;
import jalview.io.vamsas.Rangetype;
+import jalview.project.Jalview2XML;
import jalview.util.MessageManager;
import jalview.viewmodel.AlignmentViewport;
// client data is shared over all app clients
try
{
- jalview.gui.Jalview2XML fromxml = new jalview.gui.Jalview2XML();
+ // jalview.gui.Jalview2XML fromxml = new jalview.gui.Jalview2XML();
+ Jalview2XML fromxml = new Jalview2XML();
fromxml.attemptversion1parse = false;
fromxml.setUniqueSetSuffix("");
fromxml.setObjectMappingTables(vobj2jv, jv2vobj); // mapKeysToString
// user data overrides data shared over all app clients ?
try
{
- jalview.gui.Jalview2XML fromxml = new jalview.gui.Jalview2XML();
+ Jalview2XML fromxml = new Jalview2XML();
fromxml.attemptversion1parse = false;
fromxml.setUniqueSetSuffix("");
fromxml.setSkipList(skipList);
{
try
{
- jalview.gui.Jalview2XML jxml = new jalview.gui.Jalview2XML();
+ Jalview2XML jxml = new Jalview2XML();
jxml.setObjectMappingTables(mapKeysToString(vobj2jv),
mapValuesToString(jv2vobj));
jxml.setSkipList(skipList);
}
/**
- * A convenience method to get the AF value for the given alternate allele
- * index
- *
- * @param variant
- * @param alleleIndex
- * @return
- */
- protected float getAlleleFrequency(VariantContext variant, int alleleIndex)
- {
- float score = 0f;
- String attributeValue = getAttributeValue(variant,
- ALLELE_FREQUENCY_KEY, alleleIndex);
- if (attributeValue != null)
- {
- try
- {
- score = Float.parseFloat(attributeValue);
- } catch (NumberFormatException e)
- {
- // leave as 0
- }
- }
-
- return score;
- }
-
- /**
* A convenience method to get an attribute value for an alternate allele
*
* @param variant
type = getOntologyTerm(consequence);
}
- float score = getAlleleFrequency(variant, altAlleleIndex);
-
SequenceFeature sf = new SequenceFeature(type, alleles, featureStart,
- featureEnd, score, FEATURE_GROUP_VCF);
+ featureEnd, FEATURE_GROUP_VCF);
sf.setSource(sourceId);
sf.setValue(Gff3Helper.ALLELES, alleles);
package jalview.jbgui;
import jalview.analysis.AnnotationSorter.SequenceAnnotationOrder;
+import jalview.analysis.GeneticCodeI;
+import jalview.analysis.GeneticCodes;
import jalview.api.SplitContainerI;
import jalview.bin.Cache;
import jalview.gui.JvSwingUtils;
import jalview.gui.Preferences;
import jalview.io.FileFormats;
+import jalview.schemes.ResidueColourScheme;
import jalview.util.MessageManager;
import jalview.util.Platform;
protected JMenu sortByAnnotScore = new JMenu();
- public JLabel statusBar = new JLabel();
+ protected JLabel statusBar = new JLabel();
protected JMenu outputTextboxMenu = new JMenu();
protected JMenuItem modifyPID;
- protected JMenuItem annotationColour;
+ protected JRadioButtonMenuItem annotationColour;
protected JMenu sortByTreeMenu = new JMenu();
protected JCheckBoxMenuItem showDbRefsMenuitem = new JCheckBoxMenuItem();
- protected JMenuItem showTranslation = new JMenuItem();
+ protected JMenu showTranslation = new JMenu();
protected JMenuItem showReverse = new JMenuItem();
private boolean showAutoCalculatedAbove = false;
- private Map<KeyStroke, JMenuItem> accelerators = new HashMap<KeyStroke, JMenuItem>();
+ private Map<KeyStroke, JMenuItem> accelerators = new HashMap<>();
private SplitContainerI splitFrame;
vamsasStore_actionPerformed(e);
}
});
- showTranslation
- .setText(MessageManager.getString("label.translate_cDNA"));
- showTranslation.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
+
+ /*
+ * Translate as cDNA with sub-menu of translation tables
+ */
+ showTranslation.setText(MessageManager
+ .getString("label.translate_cDNA"));
+ boolean first = true;
+ for (final GeneticCodeI table : GeneticCodes.getInstance()
+ .getCodeTables())
+ {
+ JMenuItem item = new JMenuItem(table.getId() + " " + table.getName());
+ showTranslation.add(item);
+ item.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ showTranslation_actionPerformed(table);
+ }
+ });
+ if (first)
{
- showTranslation_actionPerformed(e);
+ showTranslation.addSeparator();
}
- });
+ first = false;
+ }
+
showReverse.setText(MessageManager.getString("label.reverse"));
showReverse.addActionListener(new ActionListener()
{
}
});
- annotationColour = new JMenuItem(
+ annotationColour = new JRadioButtonMenuItem(
MessageManager.getString("action.by_annotation"));
+ annotationColour.setName(ResidueColourScheme.ANNOTATION_COLOUR);
annotationColour.addActionListener(new ActionListener()
{
@Override
}
- public void showTranslation_actionPerformed(ActionEvent e)
+ public void showTranslation_actionPerformed(GeneticCodeI codeTable)
{
}
+++ /dev/null
-/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.jbgui;
-
-import jalview.util.MessageManager;
-
-import java.awt.BorderLayout;
-import java.awt.Dimension;
-import java.awt.FlowLayout;
-import java.awt.Font;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.Insets;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-
-import javax.swing.BorderFactory;
-import javax.swing.JButton;
-import javax.swing.JEditorPane;
-import javax.swing.JLabel;
-import javax.swing.JList;
-import javax.swing.JPanel;
-import javax.swing.JProgressBar;
-import javax.swing.JScrollPane;
-import javax.swing.JTable;
-import javax.swing.JTextField;
-import javax.swing.SwingConstants;
-import javax.swing.border.TitledBorder;
-import javax.swing.event.HyperlinkEvent;
-import javax.swing.event.HyperlinkListener;
-
-public class GDasSourceBrowser extends JPanel
-{
- public GDasSourceBrowser()
- {
- try
- {
- jbInit();
- } catch (Exception ex)
- {
- ex.printStackTrace();
- }
- }
-
- private void jbInit() throws Exception
- {
- this.setLayout(gridBagLayout1);
- refresh.setText(
- MessageManager.getString("label.refresh_available_sources"));
- refresh.addActionListener(new ActionListener()
- {
- public void actionPerformed(ActionEvent e)
- {
- refresh_actionPerformed(e);
- }
- });
- progressBar.setPreferredSize(new Dimension(450, 20));
- progressBar.setString("");
- scrollPane.setBorder(titledBorder1);
- scrollPane.setBorder(BorderFactory.createEtchedBorder());
- fullDetailsScrollpane.setBorder(BorderFactory.createEtchedBorder());
- fullDetails.addHyperlinkListener(new HyperlinkListener()
- {
- public void hyperlinkUpdate(HyperlinkEvent e)
- {
- fullDetails_hyperlinkUpdate(e);
- }
- });
- fullDetails.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- fullDetails.setEditable(false);
- registryLabel.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- registryLabel.setHorizontalAlignment(SwingConstants.TRAILING);
- registryLabel.setText(MessageManager.getString("label.use_registry"));
- addLocal.setText(MessageManager.getString("label.add_local_source"));
- addLocal.addActionListener(new ActionListener()
- {
- public void actionPerformed(ActionEvent e)
- {
- amendLocal(true);
- }
- });
- jPanel1.setLayout(flowLayout1);
- jPanel1.setMinimumSize(new Dimension(596, 30));
- jPanel1.setPreferredSize(new Dimension(596, 30));
- jScrollPane2.setBorder(titledBorder3);
- jScrollPane3.setBorder(titledBorder4);
- jScrollPane4.setBorder(titledBorder5);
- titledBorder2
- .setTitleFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- titledBorder3
- .setTitleFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- titledBorder4
- .setTitleFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- filter1.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- filter2.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- filter3.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- table.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- reset.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- reset.setMargin(new Insets(2, 2, 2, 2));
- reset.setText(MessageManager.getString("action.reset"));
- reset.addActionListener(new ActionListener()
- {
- public void actionPerformed(ActionEvent e)
- {
- reset_actionPerformed(e);
- }
- });
- jPanel2.setLayout(borderLayout1);
- borderLayout1.setHgap(5);
- registryURL.setFont(new java.awt.Font("Verdana", Font.PLAIN, 10));
- scrollPane.getViewport().add(table);
- fullDetailsScrollpane.getViewport().add(fullDetails);
- jScrollPane3.getViewport().add(filter2);
- jScrollPane4.getViewport().add(filter3);
- jPanel1.add(refresh, null);
- jPanel1.add(addLocal, null);
- jPanel1.add(progressBar, null);
- jScrollPane2.getViewport().add(filter1);
- this.add(jPanel1, new GridBagConstraints(0, 3, 3, 1, 1.0, 1.0,
- GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL,
- new Insets(0, 0, 0, 0), 0, 0));
- this.add(fullDetailsScrollpane,
- new GridBagConstraints(1, 0, 2, 1, 1.0, 1.0,
- GridBagConstraints.CENTER, GridBagConstraints.BOTH,
- new Insets(3, 0, 0, 3), 240, 130));
- this.add(scrollPane,
- new GridBagConstraints(0, 0, 1, 1, 1.0, 1.0,
- GridBagConstraints.CENTER, GridBagConstraints.BOTH,
- new Insets(3, 2, 0, 0), 150, 130));
- jPanel2.add(registryLabel, java.awt.BorderLayout.WEST);
- jPanel2.add(registryURL, java.awt.BorderLayout.CENTER);
- jPanel2.add(reset, java.awt.BorderLayout.EAST);
- this.add(jPanel2, new GridBagConstraints(0, 2, 3, 1, 0.0, 0.0,
- GridBagConstraints.CENTER, GridBagConstraints.HORIZONTAL,
- new Insets(5, 10, 0, 10), 339, 0));
- this.add(jScrollPane2,
- new GridBagConstraints(0, 1, 1, 1, 1.0, 1.0,
- GridBagConstraints.CENTER, GridBagConstraints.BOTH,
- new Insets(0, 0, 0, 60), 80, 60));
- this.add(jScrollPane4,
- new GridBagConstraints(2, 1, 1, 1, 1.0, 1.0,
- GridBagConstraints.CENTER, GridBagConstraints.BOTH,
- new Insets(0, -80, 0, 0), 80, 60));
- this.add(jScrollPane3,
- new GridBagConstraints(1, 1, 1, 1, 1.0, 1.0,
- GridBagConstraints.CENTER, GridBagConstraints.BOTH,
- new Insets(0, -60, 0, 80), 80, 60));
- }
-
- protected JTable table = new JTable();
-
- protected JEditorPane fullDetails = new JEditorPane("text/html", "");
-
- TitledBorder titledBorder1 = new TitledBorder(
- MessageManager.getString("label.available_das_sources"));
-
- protected JButton refresh = new JButton();
-
- protected JProgressBar progressBar = new JProgressBar();
-
- protected JScrollPane scrollPane = new JScrollPane();
-
- TitledBorder titledBorder2 = new TitledBorder(
- MessageManager.getString("label.full_details"));
-
- protected JScrollPane fullDetailsScrollpane = new JScrollPane();
-
- protected JList filter1 = new JList();
-
- protected JList filter2 = new JList();
-
- protected JList filter3 = new JList();
-
- JScrollPane jScrollPane2 = new JScrollPane();
-
- JScrollPane jScrollPane3 = new JScrollPane();
-
- JScrollPane jScrollPane4 = new JScrollPane();
-
- protected JTextField registryURL = new JTextField();
-
- protected JLabel registryLabel = new JLabel();
-
- protected JButton addLocal = new JButton();
-
- JPanel jPanel1 = new JPanel();
-
- FlowLayout flowLayout1 = new FlowLayout();
-
- GridBagLayout gridBagLayout1 = new GridBagLayout();
-
- TitledBorder titledBorder3 = new TitledBorder(
- MessageManager.getString("label.authority") + ":");
-
- TitledBorder titledBorder4 = new TitledBorder(
- MessageManager.getString("label.type") + ":");
-
- TitledBorder titledBorder5 = new TitledBorder(
- MessageManager.getString("label.label") + ":");
-
- JButton reset = new JButton();
-
- JPanel jPanel2 = new JPanel();
-
- BorderLayout borderLayout1 = new BorderLayout();
-
- public void refresh_actionPerformed(ActionEvent e)
- {
-
- }
-
- public void fullDetails_hyperlinkUpdate(HyperlinkEvent e)
- {
- try
- {
-
- if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED)
- {
- jalview.util.BrowserLauncher.openURL(e.getURL().toString());
- }
- } catch (Exception ex)
- {
- System.out.println(e.getURL());
- ex.printStackTrace();
- }
- }
-
- public void amendLocal(boolean newSource)
- {
-
- }
-
- public void reset_actionPerformed(ActionEvent e)
- {
-
- }
-
-}
JMenuItem saveState = new JMenuItem();
+ JMenuItem saveAsState = new JMenuItem();
+
JMenuItem loadState = new JMenuItem();
JMenu inputMenu = new JMenu();
@Override
public void actionPerformed(ActionEvent e)
{
- saveState_actionPerformed(true);
+ saveState_actionPerformed();
}
});
- JMenuItem saveAsJaxb = new JMenuItem("Save Project as JAXB");
- saveAsJaxb.addActionListener(new ActionListener()
+ saveAsState.setText(MessageManager.getString("action.save_project_as"));
+ saveAsState.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
- saveState_actionPerformed(false);
+ saveAsState_actionPerformed(e);
}
});
loadState.setText(MessageManager.getString("action.load_project"));
@Override
public void actionPerformed(ActionEvent e)
{
- loadState_actionPerformed(true);
- }
- });
- JMenuItem loadAsJaxb = new JMenuItem("Load Project as JAXB");
- loadAsJaxb.addActionListener(new ActionListener()
- {
- @Override
- public void actionPerformed(ActionEvent e)
- {
- loadState_actionPerformed(false);
+ loadState_actionPerformed();
}
});
inputMenu.setText(MessageManager.getString("label.input_alignment"));
FileMenu.add(inputMenu);
FileMenu.add(inputSequence);
FileMenu.addSeparator();
- FileMenu.add(saveAsJaxb);
- FileMenu.add(loadAsJaxb);
- if (!Platform.isJS())
- {
- FileMenu.add(saveState);
- FileMenu.add(loadState);
- }
+ FileMenu.add(saveState);
+ FileMenu.add(saveAsState);
+ FileMenu.add(loadState);
FileMenu.addSeparator();
FileMenu.add(quit);
HelpMenu.add(aboutMenuItem);
* @param e
* DOCUMENT ME!
*/
- public void SaveState_actionPerformed(ActionEvent e)
+ protected void preferences_actionPerformed(ActionEvent e)
{
}
* @param e
* DOCUMENT ME!
*/
- protected void preferences_actionPerformed(ActionEvent e)
+ public void saveState_actionPerformed()
{
}
- /**
- * DOCUMENT ME!
- *
- * @param e
- * DOCUMENT ME!
- */
- public void saveState_actionPerformed(boolean asCastor)
+ public void saveAsState_actionPerformed(ActionEvent e)
{
}
* @param e
* DOCUMENT ME!
*/
- public void loadState_actionPerformed(boolean asCastor)
+ public void loadState_actionPerformed()
{
}
public class GFinder extends JPanel
{
- JLabel jLabelFind = new JLabel();
+ private static final java.awt.Font VERDANA_12 = new java.awt.Font("Verdana", 0,
+ 12);
- protected JButton findAll = new JButton();
-
- protected JButton findNext = new JButton();
-
- JPanel actionsPanel = new JPanel();
-
- GridLayout gridLayout1 = new GridLayout();
+ private static final String FINDER_CACHE_KEY = "CACHE.FINDER";
protected JButton createFeatures = new JButton();
- protected JvCacheableInputBox<String> searchBox = new JvCacheableInputBox<String>(
+ protected JvCacheableInputBox<String> searchBox = new JvCacheableInputBox<>(
getCacheKey());
- BorderLayout mainBorderLayout = new BorderLayout();
-
- JPanel jPanel2 = new JPanel();
-
- JPanel jPanel3 = new JPanel();
-
- JPanel jPanel4 = new JPanel();
-
- BorderLayout borderLayout2 = new BorderLayout();
-
- JPanel jPanel6 = new JPanel();
-
protected JCheckBox caseSensitive = new JCheckBox();
protected JCheckBox searchDescription = new JCheckBox();
- GridLayout optionsGridLayout = new GridLayout();
-
- private static final String FINDER_CACHE_KEY = "CACHE.FINDER";
-
public GFinder()
{
try
private void jbInit() throws Exception
{
- jLabelFind.setFont(new java.awt.Font("Verdana", 0, 12));
- jLabelFind.setText(MessageManager.getString("label.find"));
+ BorderLayout mainBorderLayout = new BorderLayout();
this.setLayout(mainBorderLayout);
- findAll.setFont(new java.awt.Font("Verdana", 0, 12));
- findAll.setText(MessageManager.getString("action.find_all"));
+ mainBorderLayout.setHgap(5);
+ mainBorderLayout.setVgap(5);
+
+ JLabel jLabelFind = new JLabel(MessageManager.getString("label.find"));
+ jLabelFind.setFont(VERDANA_12);
+
+ JButton findAll = new JButton(
+ MessageManager.getString("action.find_all"));
+ findAll.setFont(VERDANA_12);
findAll.addActionListener(new java.awt.event.ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
- findAll_actionPerformed(e);
+ findAll_actionPerformed();
}
});
- findNext.setFont(new java.awt.Font("Verdana", 0, 12));
- findNext.setText(MessageManager.getString("action.find_next"));
+
+ JButton findNext = new JButton(
+ MessageManager.getString("action.find_next"));
+ findNext.setFont(VERDANA_12);
findNext.addActionListener(new java.awt.event.ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
- findNext_actionPerformed(e);
+ findNext_actionPerformed();
}
});
+
+ JPanel actionsPanel = new JPanel();
+ GridLayout gridLayout1 = new GridLayout();
actionsPanel.setLayout(gridLayout1);
gridLayout1.setHgap(0);
gridLayout1.setRows(3);
gridLayout1.setVgap(2);
+
createFeatures.setEnabled(false);
- createFeatures.setFont(new java.awt.Font("Verdana", 0, 12));
+ createFeatures.setFont(VERDANA_12);
createFeatures.setMargin(new Insets(0, 0, 0, 0));
createFeatures.setText(MessageManager.getString("label.new_feature"));
createFeatures.addActionListener(new java.awt.event.ActionListener()
@Override
public void caretUpdate(CaretEvent e)
{
- textfield_caretUpdate(e);
+ textfield_caretUpdate();
}
});
searchBox.addKeyListener(new java.awt.event.KeyAdapter()
textfield_keyPressed(e);
}
});
- mainBorderLayout.setHgap(5);
- mainBorderLayout.setVgap(5);
- jPanel4.setLayout(borderLayout2);
- jPanel2.setPreferredSize(new Dimension(10, 1));
- jPanel3.setPreferredSize(new Dimension(10, 1));
+
caseSensitive.setHorizontalAlignment(SwingConstants.LEFT);
caseSensitive.setText(MessageManager.getString("label.match_case"));
actionsPanel.add(createFeatures, null);
this.add(jLabelFind, java.awt.BorderLayout.WEST);
this.add(actionsPanel, java.awt.BorderLayout.EAST);
- // this.add(jPanel2, java.awt.BorderLayout.SOUTH);
+
+ JPanel jPanel2 = new JPanel();
+ jPanel2.setPreferredSize(new Dimension(10, 1));
+ JPanel jPanel3 = new JPanel();
+ jPanel3.setPreferredSize(new Dimension(10, 1));
+ JPanel jPanel4 = new JPanel();
+ jPanel4.setLayout(new BorderLayout());
+ this.add(jPanel2, java.awt.BorderLayout.SOUTH);
this.add(jPanel3, java.awt.BorderLayout.NORTH);
this.add(jPanel4, java.awt.BorderLayout.CENTER);
jPanel4.add(searchBox.getComponent(), java.awt.BorderLayout.NORTH);
JPanel optionsPanel = new JPanel();
+ GridLayout optionsGridLayout = new GridLayout();
optionsGridLayout.setHgap(0);
optionsGridLayout.setRows(2);
optionsGridLayout.setVgap(2);
if (!searchBox.isPopupVisible())
{
e.consume();
- findNext_actionPerformed(null);
+ findNext_actionPerformed();
}
}
}
- protected void findNext_actionPerformed(ActionEvent e)
+ protected void findNext_actionPerformed()
{
}
- protected void findAll_actionPerformed(ActionEvent e)
+ protected void findAll_actionPerformed()
{
}
{
}
- public void textfield_caretUpdate(CaretEvent e)
+ public void textfield_caretUpdate()
{
- if (searchBox.getUserInput().indexOf(">") > -1)
+ // disabled as appears to be running a non-functional
+ if (false && searchBox.getUserInput().indexOf(">") > -1)
{
SwingUtilities.invokeLater(new Runnable()
{
str = jalview.analysis.AlignSeq.extractGaps(
jalview.util.Comparison.GapChars,
al.getSequenceAt(0).getSequenceAsString());
-
+ // todo and what? set str as searchBox text?
}
}
});
{
private static final Font VERDANA_12 = new Font("Verdana", 0, 12);
- protected JComboBox<String> xCombobox = new JComboBox<String>();
+ protected JComboBox<String> xCombobox = new JComboBox<>();
- protected JComboBox<String> yCombobox = new JComboBox<String>();
+ protected JComboBox<String> yCombobox = new JComboBox<>();
- protected JComboBox<String> zCombobox = new JComboBox<String>();
-
- protected JMenu scoreModelMenu = new JMenu();
+ protected JComboBox<String> zCombobox = new JComboBox<>();
protected JMenu viewMenu = new JMenu();
protected JMenu associateViewsMenu = new JMenu();
- protected JMenu calcSettings = new JMenu();
-
- protected JCheckBoxMenuItem nuclSetting = new JCheckBoxMenuItem();
-
- protected JCheckBoxMenuItem protSetting = new JCheckBoxMenuItem();
-
protected JLabel statusBar = new JLabel();
protected JPanel statusPanel = new JPanel();
+ protected JMenuItem originalSeqData;
+
+ /**
+ * Constructor
+ */
public GPCAPanel()
{
try
@Override
public void actionPerformed(ActionEvent e)
{
- zCombobox_actionPerformed(e);
+ doDimensionChange();
}
});
yCombobox.setFont(VERDANA_12);
@Override
public void actionPerformed(ActionEvent e)
{
- yCombobox_actionPerformed(e);
+ doDimensionChange();
}
});
xCombobox.setFont(VERDANA_12);
@Override
public void actionPerformed(ActionEvent e)
{
- xCombobox_actionPerformed(e);
+ doDimensionChange();
}
});
JButton resetButton = new JButton();
@Override
public void actionPerformed(ActionEvent e)
{
- resetButton_actionPerformed(e);
+ resetButton_actionPerformed();
}
});
JMenu fileMenu = new JMenu();
@Override
public void actionPerformed(ActionEvent e)
{
- outputValues_actionPerformed(e);
+ outputValues_actionPerformed();
}
});
JMenuItem outputPoints = new JMenuItem();
@Override
public void actionPerformed(ActionEvent e)
{
- outputPoints_actionPerformed(e);
+ outputPoints_actionPerformed();
}
});
JMenuItem outputProjPoints = new JMenuItem();
@Override
public void actionPerformed(ActionEvent e)
{
- outputProjPoints_actionPerformed(e);
+ outputProjPoints_actionPerformed();
}
});
JMenuItem print = new JMenuItem();
@Override
public void actionPerformed(ActionEvent e)
{
- print_actionPerformed(e);
+ print_actionPerformed();
}
});
viewMenu.setText(MessageManager.getString("action.view"));
{
}
});
- scoreModelMenu
- .setText(MessageManager.getString("label.select_score_model"));
- scoreModelMenu.addMenuListener(new MenuListener()
- {
- @Override
- public void menuSelected(MenuEvent e)
- {
- scoreModel_menuSelected();
- }
-
- @Override
- public void menuDeselected(MenuEvent e)
- {
- }
-
- @Override
- public void menuCanceled(MenuEvent e)
- {
- }
- });
showLabels.setText(MessageManager.getString("label.show_labels"));
showLabels.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
- showLabels_actionPerformed(e);
+ showLabels_actionPerformed();
}
});
JMenuItem bgcolour = new JMenuItem();
@Override
public void actionPerformed(ActionEvent e)
{
- bgcolour_actionPerformed(e);
+ bgcolour_actionPerformed();
}
});
- JMenuItem originalSeqData = new JMenuItem();
+ originalSeqData = new JMenuItem();
originalSeqData.setText(MessageManager.getString("label.input_data"));
originalSeqData.addActionListener(new ActionListener()
{
@Override
public void actionPerformed(ActionEvent e)
{
- originalSeqData_actionPerformed(e);
+ originalSeqData_actionPerformed();
}
});
associateViewsMenu.setText(
MessageManager.getString("label.associate_nodes_with"));
- calcSettings.setText(MessageManager.getString("action.change_params"));
- nuclSetting
- .setText(MessageManager.getString("label.nucleotide_matrix"));
- protSetting.setText(MessageManager.getString("label.protein_matrix"));
- nuclSetting.addActionListener(new ActionListener()
- {
-
- @Override
- public void actionPerformed(ActionEvent arg0)
- {
- nuclSetting_actionPerfomed(arg0);
- }
- });
- protSetting.addActionListener(new ActionListener()
- {
-
- @Override
- public void actionPerformed(ActionEvent arg0)
- {
- protSetting_actionPerfomed(arg0);
- }
- });
- calcSettings.add(nuclSetting);
- calcSettings.add(protSetting);
- calcSettings.add(scoreModelMenu);
statusPanel.setLayout(new GridLayout());
statusBar.setFont(VERDANA_12);
// statusPanel.setBackground(Color.lightGray);
JMenuBar jMenuBar1 = new JMenuBar();
jMenuBar1.add(fileMenu);
jMenuBar1.add(viewMenu);
- jMenuBar1.add(calcSettings);
setJMenuBar(jMenuBar1);
fileMenu.add(saveMenu);
fileMenu.add(outputValues);
viewMenu.add(associateViewsMenu);
}
- protected void scoreModel_menuSelected()
- {
- // TODO Auto-generated method stub
-
- }
-
- protected void resetButton_actionPerformed(ActionEvent e)
- {
- // TODO Auto-generated method stub
-
- }
-
- protected void protSetting_actionPerfomed(ActionEvent arg0)
+ protected void resetButton_actionPerformed()
{
- // TODO Auto-generated method stub
-
}
- protected void nuclSetting_actionPerfomed(ActionEvent arg0)
+ protected void outputPoints_actionPerformed()
{
- // TODO Auto-generated method stub
-
}
- protected void outputPoints_actionPerformed(ActionEvent e)
+ protected void outputProjPoints_actionPerformed()
{
- // TODO Auto-generated method stub
-
}
- protected void outputProjPoints_actionPerformed(ActionEvent e)
- {
- // TODO Auto-generated method stub
-
- }
-
- protected void xCombobox_actionPerformed(ActionEvent e)
+ public void makePCAImage(TYPE imageType)
{
}
- protected void yCombobox_actionPerformed(ActionEvent e)
+ protected void outputValues_actionPerformed()
{
}
- protected void zCombobox_actionPerformed(ActionEvent e)
+ protected void print_actionPerformed()
{
}
- public void makePCAImage(TYPE imageType)
+ protected void showLabels_actionPerformed()
{
}
- public void outputValues_actionPerformed(ActionEvent e)
+ protected void bgcolour_actionPerformed()
{
-
}
- public void print_actionPerformed(ActionEvent e)
+ protected void originalSeqData_actionPerformed()
{
-
}
- public void showLabels_actionPerformed(ActionEvent e)
+ protected void viewMenu_menuSelected()
{
-
}
- public void bgcolour_actionPerformed(ActionEvent e)
+ protected void doDimensionChange()
{
-
- }
-
- public void originalSeqData_actionPerformed(ActionEvent e)
- {
-
- }
-
- public void viewMenu_menuSelected()
- {
-
}
}
*/
package jalview.jbgui;
+import jalview.bin.Cache;
import jalview.fts.core.FTSDataColumnPreferences;
import jalview.fts.core.FTSDataColumnPreferences.PreferenceSource;
import jalview.fts.service.pdb.PDBFTSRestClient;
+import jalview.gui.Desktop;
+import jalview.gui.JalviewBooleanRadioButtons;
+import jalview.gui.JvOptionPane;
import jalview.gui.JvSwingUtils;
import jalview.gui.StructureViewer.ViewerType;
+import jalview.io.BackupFilenameParts;
+import jalview.io.BackupFiles;
import jalview.util.MessageManager;
import jalview.util.Platform;
import java.awt.event.ActionListener;
import java.awt.event.FocusEvent;
import java.awt.event.KeyEvent;
+import java.awt.event.KeyListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
+import java.util.HashMap;
+import java.util.Map;
import javax.swing.AbstractCellEditor;
import javax.swing.BorderFactory;
import javax.swing.JComboBox;
import javax.swing.JFileChooser;
import javax.swing.JLabel;
+import javax.swing.JList;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
+import javax.swing.JSpinner;
import javax.swing.JTabbedPane;
import javax.swing.JTable;
+import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
+import javax.swing.SpinnerModel;
+import javax.swing.SpinnerNumberModel;
import javax.swing.SwingConstants;
import javax.swing.border.Border;
import javax.swing.border.EmptyBorder;
private static final Font LABEL_FONT_ITALIC = JvSwingUtils
.getLabelFont(false, true);
+ private static final Font LABEL_FONT_BOLD = JvSwingUtils
+ .getLabelFont(true, false);
+
/*
* Visual tab components
*/
protected JCheckBox sortByTree = new JCheckBox();
-
/*
* Web Services tab
*/
protected JPanel wsTab = new JPanel();
+ /*
+ * Backups tab components
+ * a lot of these are member variables instead of local variables only so that they
+ * can be enabled/disabled easily in one go
+ */
+
+ protected JCheckBox enableBackupFiles = new JCheckBox();
+
+ protected JPanel presetsPanel = new JPanel();
+
+ protected JButton revertButton = new JButton();
+
+ protected JComboBox<IntKeyStringValueEntry> backupfilesPresetsCombo = new JComboBox<>();
+
+ protected JPanel suffixPanel = new JPanel();
+
+ protected JPanel keepfilesPanel = new JPanel();
+
+ protected JPanel exampleFilesPanel = new JPanel();
+
+ protected JTextField suffixTemplate = new JTextField(null, 8);
+
+ protected JLabel suffixTemplateLabel = new JLabel();
+
+ protected JLabel suffixDigitsLabel = new JLabel();
+
+ protected JSpinner suffixDigitsSpinner = new JSpinner();
+
+ protected JalviewBooleanRadioButtons suffixReverse = new JalviewBooleanRadioButtons();
+
+ protected JalviewBooleanRadioButtons backupfilesKeepAll = new JalviewBooleanRadioButtons();
+
+ public JSpinner backupfilesRollMaxSpinner = new JSpinner();
+
+ protected JLabel oldBackupFilesLabel = new JLabel();
+
+ protected JalviewBooleanRadioButtons backupfilesConfirmDelete = new JalviewBooleanRadioButtons();
+
+ protected JTextArea backupfilesExampleLabel = new JTextArea();
+
/**
* Creates a new GPreferences object.
*/
tabbedPane.add(initConnectionsTab(),
MessageManager.getString("label.connections"));
+ tabbedPane.add(initBackupsTab(),
+ MessageManager.getString("label.backups"));
+
tabbedPane.add(initLinksTab(),
MessageManager.getString("label.urllinks"));
linkTab.setLayout(new GridBagLayout());
// Set up table for Url links
+ linkUrlTable.getTableHeader().setReorderingAllowed(false);
linkUrlTable.setFillsViewportHeight(true);
linkUrlTable.setAutoResizeMode(JTable.AUTO_RESIZE_ALL_COLUMNS);
linkUrlTable.setAutoCreateRowSorter(true);
hiddenColour_actionPerformed(hiddenColour);
}
});
-
+
useLegacyGap = new JCheckBox(
MessageManager.getString("label.ov_legacy_gap"));
useLegacyGap.setFont(LABEL_FONT);
useLegacyGap.setHorizontalAlignment(SwingConstants.LEFT);
useLegacyGap.setVerticalTextPosition(SwingConstants.TOP);
- gapLabel = new JLabel(
- MessageManager.getString("label.gap_colour"));
+ gapLabel = new JLabel(MessageManager.getString("label.gap_colour"));
gapLabel.setFont(LABEL_FONT);
gapLabel.setHorizontalAlignment(SwingConstants.LEFT);
gapLabel.setVerticalTextPosition(SwingConstants.TOP);
return visualTab;
}
+ /**
+ * Load the saved Backups options EXCEPT "Enabled" and "Scheme"
+ */
+
+ protected void loadLastSavedBackupsOptions()
+ {
+ enableBackupFiles
+ .setSelected(Cache.getDefault(BackupFiles.ENABLED, true));
+ setComboIntStringKey(backupfilesPresetsCombo,
+ Cache.getDefault(BackupFiles.NS + "_PRESET", 1));
+ suffixTemplate.setText(Cache.getDefault(BackupFiles.SUFFIX,
+ ".bak" + BackupFiles.NUM_PLACEHOLDER));
+ suffixDigitsSpinner
+ .setValue(Cache.getDefault(BackupFiles.SUFFIX_DIGITS, 3));
+ suffixReverse.setSelected(
+ Cache.getDefault(BackupFiles.REVERSE_ORDER, false));
+ backupfilesKeepAll
+ .setSelected(Cache.getDefault(BackupFiles.NO_MAX, false));
+ backupfilesRollMaxSpinner
+ .setValue(Cache.getDefault(BackupFiles.ROLL_MAX, 3));
+ backupfilesConfirmDelete.setSelected(
+ Cache.getDefault(BackupFiles.CONFIRM_DELETE_OLD, true));
+
+ backupsOptionsSetEnabled();
+ updateBackupFilesExampleLabel();
+ }
+
+ private boolean warnAboutSuffixReverseChange()
+ {
+ boolean savedSuffixReverse = Cache.getDefault(BackupFiles.REVERSE_ORDER,
+ false);
+ int savedSuffixDigits = Cache.getDefault(BackupFiles.SUFFIX_DIGITS, 3);
+ String savedSuffixTemplate = Cache.getDefault(BackupFiles.SUFFIX,
+ ".bak" + BackupFiles.NUM_PLACEHOLDER);
+
+ boolean nowSuffixReverse = suffixReverse.isSelected();
+ int nowSuffixDigits = getSpinnerInt(suffixDigitsSpinner, 3);
+ String nowSuffixTemplate = suffixTemplate.getText();
+ return nowSuffixReverse != savedSuffixReverse
+ && nowSuffixDigits == savedSuffixDigits
+ && nowSuffixTemplate != null
+ && nowSuffixTemplate.equals(savedSuffixTemplate);
+ }
+
+ /**
+ * Initialises the Backups tabbed panel.
+ *
+ * @return
+ */
+ private JPanel initBackupsTab()
+ {
+ JPanel backupsTab = new JPanel();
+ backupsTab.setBorder(new TitledBorder(
+ MessageManager.getString("label.backup_files")));
+ backupsTab.setLayout(new GridBagLayout());
+
+ GridBagConstraints gbc = new GridBagConstraints();
+ gbc.weightx = 0.0;
+ gbc.weighty = 0.0;
+ gbc.anchor = GridBagConstraints.FIRST_LINE_START;
+ gbc.fill = GridBagConstraints.NONE;
+
+ initBackupsTabPresetsPanel();
+ initBackupsTabSuffixPanel();
+ initBackupsTabKeepFilesPanel();
+ initBackupsTabFilenameExamplesPanel();
+
+ enableBackupFiles.setFont(LABEL_FONT_BOLD);
+ enableBackupFiles
+ .setText(MessageManager.getString("label.enable_backupfiles"));
+ enableBackupFiles.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ // enable other options only when the first is checked
+ backupsOptionsSetEnabled();
+ }
+ });
+
+
+ // enable checkbox 1 col
+ gbc.gridwidth = 1;
+ gbc.gridheight = 1;
+ gbc.gridx = 0;
+ gbc.gridy = 0; // row 0
+ backupsTab.add(enableBackupFiles, gbc);
+
+ // summary of scheme box (over two rows)
+ gbc.gridx = 1;
+ gbc.weightx = 0.0;
+ gbc.gridheight = 2;
+ gbc.anchor = GridBagConstraints.FIRST_LINE_END;
+ gbc.fill = GridBagConstraints.BOTH;
+ backupsTab.add(exampleFilesPanel, gbc);
+ gbc.gridheight = 1;
+ gbc.anchor = GridBagConstraints.FIRST_LINE_START;
+ gbc.fill = GridBagConstraints.NONE;
+
+ // fill empty space on right
+ gbc.gridx++;
+ gbc.weightx = 1.0;
+ backupsTab.add(new JPanel(), gbc);
+
+ // schemes box
+ gbc.weightx = 0.0;
+ gbc.gridx = 0;
+ gbc.gridy++; // row 1
+ backupsTab.add(presetsPanel, gbc);
+
+ // gbc.anchor = GridBagConstraints.NORTHWEST;
+ // now using whole row
+ gbc.gridwidth = 2;
+ gbc.gridheight = 1;
+ // keep files box
+ gbc.gridx = 0;
+ gbc.gridy++; // row 2
+ backupsTab.add(keepfilesPanel, gbc);
+
+ // filename strategy box
+ gbc.gridy++; // row 3
+ backupsTab.add(suffixPanel, gbc);
+
+ // fill empty space
+ gbc.gridy++; // row 4
+ gbc.weighty = 1.0;
+ backupsTab.add(new JPanel(), gbc);
+
+ backupsOptionsSetEnabled();
+ return backupsTab;
+ }
+
+ protected static final int BACKUPFILESSCHEMECUSTOMISE = 0;
+
+ private static final IntKeyStringValueEntry[] backupfilesPresetEntries = {
+ new IntKeyStringValueEntry(1,
+ MessageManager.getString("label.default")),
+ new IntKeyStringValueEntry(2,
+ MessageManager.getString("label.single_file")),
+ new IntKeyStringValueEntry(3,
+ MessageManager.getString("label.keep_all_versions")),
+ new IntKeyStringValueEntry(4,
+ MessageManager.getString("label.rolled_backups")),
+ // ...
+ // IMPORTANT, keep "Custom" entry with key 0 (even though it appears last)
+ new IntKeyStringValueEntry(BACKUPFILESSCHEMECUSTOMISE,
+ MessageManager.getString("label.customise")) };
+
+ private static final Map<Integer, BackupFilesPresetEntry> backupfilesPresetEntriesValues = new HashMap<Integer, BackupFilesPresetEntry>()
+ {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 125L;
+
+ {
+ put(1, new BackupFilesPresetEntry(
+ ".bak" + BackupFiles.NUM_PLACEHOLDER, 3, false, false, 3,
+ false));
+ put(2, new BackupFilesPresetEntry("~", 1, false, false, 1, false));
+ put(3, new BackupFilesPresetEntry(".v" + BackupFiles.NUM_PLACEHOLDER,
+ 3, false, true, 10, true));
+ put(4, new BackupFilesPresetEntry(
+ "_bak." + BackupFiles.NUM_PLACEHOLDER, 1, true, false, 9,
+ false));
+ }
+ };
+
+ private JPanel initBackupsTabPresetsPanel()
+ {
+
+ String title = MessageManager.getString("label.schemes");
+ // TitledBorder tb = new TitledBorder(new EmptyBorder(0, 0, 0, 0), title);
+ // TitledBorder tb = new TitledBorder(title);
+ // tb.setTitleFont(LABEL_FONT);
+ // presetsPanel.setBorder(tb);
+
+ presetsPanel.setLayout(new GridBagLayout());
+
+ GridBagConstraints gbc = new GridBagConstraints();
+ gbc.weightx = 0.0;
+ gbc.weighty = 0.0;
+ gbc.anchor = GridBagConstraints.BASELINE_LEADING;
+ gbc.fill = GridBagConstraints.NONE;
+ gbc.gridwidth = 1;
+ gbc.gridheight = 1;
+
+ // "Scheme: "
+ gbc.gridx = 0;
+ gbc.gridy = 0;
+ presetsPanel.add(new JLabel(title + ":"), gbc);
+
+ for (int i = 0; i < backupfilesPresetEntries.length; i++)
+ {
+ backupfilesPresetsCombo.addItem(backupfilesPresetEntries[i]);
+ }
+
+ // put "Previously saved scheme" item in italics (it's not really
+ // selectable, as such -- it deselects itself when selected) and
+ // "Customise" in bold
+ backupfilesPresetsCombo
+ .setRenderer(new BackupFilesPresetsComboBoxRenderer());
+ backupfilesPresetsCombo.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ backupsTabUpdatePresets();
+ }
+ });
+
+ // dropdown list of preset schemes
+ gbc.gridx = 1;
+ presetsPanel.add(backupfilesPresetsCombo, gbc);
+
+ revertButton.setText(MessageManager.getString("label.cancel_changes"));
+ revertButton.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ loadLastSavedBackupsOptions();
+ }
+
+ });
+ revertButton.setFont(LABEL_FONT);
+
+ // "Cancel changes" button (aligned with combo box above)
+ gbc.gridx = 1;
+ gbc.gridy++;
+ presetsPanel.add(revertButton, gbc);
+
+ return presetsPanel;
+ }
+
+ private JPanel initBackupsTabFilenameExamplesPanel()
+ {
+ String title = MessageManager
+ .getString("label.summary_of_backups_scheme");
+ TitledBorder tb = new TitledBorder(title);
+ exampleFilesPanel.setBorder(tb);
+ exampleFilesPanel.setLayout(new GridBagLayout());
+
+
+ backupfilesExampleLabel.setEditable(false);
+ backupfilesExampleLabel
+ .setBackground(exampleFilesPanel.getBackground());
+
+ updateBackupFilesExampleLabel();
+
+ GridBagConstraints gbc = new GridBagConstraints();
+ gbc.weightx = 1.0;
+ gbc.weighty = 1.0;
+ gbc.fill = GridBagConstraints.NONE;
+ gbc.anchor = GridBagConstraints.FIRST_LINE_START;
+
+ exampleFilesPanel.add(backupfilesExampleLabel, gbc);
+ return exampleFilesPanel;
+ }
+
+ private void backupsTabUpdatePresets()
+ {
+ IntKeyStringValueEntry entry = (IntKeyStringValueEntry) backupfilesPresetsCombo
+ .getSelectedItem();
+ int key = entry.getKey();
+ String value = entry.getValue();
+
+ // BACKUPFILESSCHEMECUSTOMISE (==0) reserved for "Custom"
+ if (key != BACKUPFILESSCHEMECUSTOMISE)
+ {
+ if (backupfilesPresetEntriesValues.containsKey(key))
+ {
+ backupsSetOptions(backupfilesPresetEntriesValues.get(key));
+ }
+ else
+ {
+ System.out.println("Preset '" + value + "' not implemented");
+ }
+ }
+
+ backupfilesCustomOptionsSetEnabled();
+ updateBackupFilesExampleLabel();
+ }
+
+ protected int getComboIntStringKey(JComboBox<IntKeyStringValueEntry> c)
+ {
+ IntKeyStringValueEntry e = (IntKeyStringValueEntry) c.getSelectedItem();
+ return e != null ? e.getKey() : 0;
+ }
+
+ protected void setComboIntStringKey(JComboBox<IntKeyStringValueEntry> c,
+ int key)
+ {
+ for (int i = 0; i < c.getItemCount(); i++)
+ {
+ IntKeyStringValueEntry e = c.getItemAt(i);
+ if (e.getKey() == key)
+ {
+ c.setSelectedIndex(i);
+ break;
+ }
+ }
+ backupsTabUpdatePresets();
+ }
+
+ private JPanel initBackupsTabSuffixPanel()
+ {
+ suffixPanel.setBorder(new TitledBorder(
+ MessageManager.getString("label.backup_filename_strategy")));
+ suffixPanel.setLayout(new GridBagLayout());
+
+ suffixTemplateLabel
+ .setText(MessageManager.getString("label.append_to_filename"));
+ suffixTemplateLabel.setHorizontalAlignment(SwingConstants.LEFT);
+ suffixTemplateLabel.setFont(LABEL_FONT);
+
+ final String tooltip = JvSwingUtils.wrapTooltip(true,
+ MessageManager.getString("label.append_to_filename_tooltip"));
+ suffixTemplate.setToolTipText(tooltip);
+ suffixTemplate.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ updateBackupFilesExampleLabel();
+ backupfilesCustomOptionsSetEnabled();
+ }
+
+ });
+ KeyListener kl = new KeyListener()
+ {
+ @Override
+ public void keyReleased(KeyEvent e)
+ {
+ updateBackupFilesExampleLabel();
+ backupfilesCustomOptionsSetEnabled();
+ }
+
+ @Override
+ public void keyPressed(KeyEvent e)
+ {
+ }
+
+ // disable use of ':' or '/' or '\'
+ @Override
+ public void keyTyped(KeyEvent e)
+ {
+ char c = e.getKeyChar();
+ if (c == ':' || c == '/' || c == '\\')
+ {
+ // don't process ':' or '/' or '\'
+ e.consume();
+ }
+ }
+
+ };
+ suffixTemplate.addKeyListener(kl);
+
+ // digits spinner
+ suffixDigitsLabel
+ .setText(MessageManager.getString("label.index_digits"));
+ suffixDigitsLabel.setHorizontalAlignment(SwingConstants.LEFT);
+ suffixDigitsLabel.setFont(LABEL_FONT);
+ int defaultmin = 1;
+ int defaultmax = 6;
+ ChangeListener c = new ChangeListener()
+ {
+ @Override
+ public void stateChanged(ChangeEvent e)
+ {
+ updateBackupFilesExampleLabel();
+ }
+
+ };
+ setIntegerSpinner(suffixDigitsSpinner, defaultmin, defaultmax, 3, c);
+
+ suffixReverse.setLabels(MessageManager.getString("label.reverse_roll"),
+ MessageManager.getString("label.increment_index"));
+ suffixReverse.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ boolean okay = true;
+ if (warnAboutSuffixReverseChange())
+ {
+ // Warning popup
+ okay = confirmSuffixReverseChange();
+ }
+ if (okay)
+ {
+ updateBackupFilesExampleLabel();
+ }
+ else
+ {
+ boolean savedSuffixReverse = Cache
+ .getDefault(BackupFiles.REVERSE_ORDER, false);
+ suffixReverse.setSelected(savedSuffixReverse);
+ }
+ }
+ });
+
+ GridBagConstraints sgbc = new GridBagConstraints();
+
+ // first row (template text box)
+ sgbc.anchor = GridBagConstraints.WEST;
+ sgbc.gridx = 0;
+ sgbc.gridy = 0;
+ sgbc.gridwidth = 1;
+ sgbc.gridheight = 1;
+ sgbc.weightx = 1.0;
+ sgbc.weighty = 0.0;
+ sgbc.fill = GridBagConstraints.NONE;
+ suffixPanel.add(suffixTemplateLabel, sgbc);
+
+ sgbc.gridx = 1;
+ sgbc.fill = GridBagConstraints.HORIZONTAL;
+ suffixPanel.add(suffixTemplate, sgbc);
+
+ // second row (number of digits spinner)
+ sgbc.gridy = 1;
+
+ sgbc.gridx = 0;
+ sgbc.fill = GridBagConstraints.NONE;
+ suffixPanel.add(suffixDigitsLabel, sgbc);
+
+ sgbc.gridx = 1;
+ sgbc.fill = GridBagConstraints.HORIZONTAL;
+ suffixPanel.add(suffixDigitsSpinner, sgbc);
+
+ // third row (forward order radio selection)
+ sgbc.gridx = 0;
+ sgbc.gridy = 2;
+ sgbc.gridwidth = GridBagConstraints.REMAINDER;
+ sgbc.fill = GridBagConstraints.HORIZONTAL;
+ suffixPanel.add(suffixReverse.getFalseButton(), sgbc);
+
+ // fourth row (reverse order radio selection)
+ sgbc.gridy = 3;
+ suffixPanel.add(suffixReverse.getTrueButton(), sgbc);
+ return suffixPanel;
+ }
+
+ private boolean confirmSuffixReverseChange()
+ {
+ boolean ret = false;
+ String warningMessage = MessageManager
+ .getString("label.warning_confirm_change_reverse");
+ int confirm = JvOptionPane.showConfirmDialog(Desktop.desktop,
+ warningMessage,
+ MessageManager.getString("label.change_increment_decrement"),
+ JvOptionPane.YES_NO_OPTION, JvOptionPane.WARNING_MESSAGE);
+
+ ret = (confirm == JvOptionPane.YES_OPTION);
+ return ret;
+ }
+
+ private JPanel initBackupsTabKeepFilesPanel()
+ {
+ keepfilesPanel.setBorder(
+ new TitledBorder(MessageManager.getString("label.keep_files")));
+ keepfilesPanel.setLayout(new GridBagLayout());
+
+ backupfilesKeepAll.setLabels(
+ MessageManager.getString("label.keep_all_backup_files"),
+ MessageManager.getString(
+ "label.keep_only_this_number_of_backup_files"));
+ backupfilesKeepAll.addTrueActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ updateBackupFilesExampleLabel();
+ }
+ });
+ backupfilesKeepAll.addActionListener(new ActionListener()
+ {
+ @Override
+ public void actionPerformed(ActionEvent e)
+ {
+ keepRollMaxOptionsEnabled();
+ updateBackupFilesExampleLabel();
+ }
+ });
+
+ ChangeListener c = new ChangeListener()
+ {
+ @Override
+ public void stateChanged(ChangeEvent e)
+ {
+ updateBackupFilesExampleLabel();
+ }
+
+ };
+ setIntegerSpinner(backupfilesRollMaxSpinner, 1, 999, 4, true, c);
+
+ backupfilesConfirmDelete.setLabels(
+ MessageManager.getString("label.always_ask"),
+ MessageManager.getString("label.auto_delete"));
+ // update the enabled section
+ keepRollMaxOptionsEnabled();
+
+ GridBagConstraints kgbc = new GridBagConstraints();
+
+ // first row (template text box)
+ kgbc.anchor = GridBagConstraints.WEST;
+ kgbc.gridx = 0;
+ kgbc.gridy = 0;
+ kgbc.gridwidth = GridBagConstraints.REMAINDER;
+ kgbc.gridheight = 1;
+ kgbc.weightx = 1.0;
+ kgbc.weighty = 0.0;
+ kgbc.fill = GridBagConstraints.HORIZONTAL;
+ keepfilesPanel.add(backupfilesKeepAll.getTrueButton(), kgbc);
+
+ // second row
+ kgbc.gridy = 1;
+
+ kgbc.gridx = 0;
+ kgbc.gridwidth = GridBagConstraints.RELATIVE;
+ keepfilesPanel.add(backupfilesKeepAll.getFalseButton(), kgbc);
+
+ kgbc.gridx = 1;
+ kgbc.gridwidth = GridBagConstraints.REMAINDER;
+ keepfilesPanel.add(backupfilesRollMaxSpinner, kgbc);
+
+ // third row (indented)
+ kgbc.gridy = 2;
+ kgbc.insets = new Insets(0, 20, 0, 0);
+
+ kgbc.gridx = 0;
+ kgbc.gridwidth = GridBagConstraints.REMAINDER;
+ kgbc.fill = GridBagConstraints.HORIZONTAL;
+ kgbc.weightx = 1.0;
+ /*
+ keepfilesPanel.add(backupfilesConfirmDelete.getTrueButton(), kgbc);
+
+ // fourth row (indented)
+ kgbc.gridy = 3;
+ keepfilesPanel.add(backupfilesConfirmDelete.getFalseButton(), kgbc);
+ */
+
+ JPanel jp = new JPanel();
+ jp.setLayout(new FlowLayout());
+ oldBackupFilesLabel
+ .setText(MessageManager
+ .getString("label.autodelete_old_backup_files"));
+ oldBackupFilesLabel.setFont(LABEL_FONT);
+ oldBackupFilesLabel.setHorizontalAlignment(SwingConstants.LEFT);
+ jp.add(oldBackupFilesLabel);
+ jp.add(backupfilesConfirmDelete.getTrueButton());
+ jp.add(backupfilesConfirmDelete.getFalseButton());
+ keepfilesPanel.add(jp, kgbc);
+
+ return keepfilesPanel;
+ }
+
+ protected void updateBackupFilesExampleLabel()
+ {
+ int exampleindex = 12;
+ String base = MessageManager.getString("label.filename") + ".fa";
+ if (base == null || base.length() == 0)
+ {
+ base = "file_name.fa";
+ }
+
+ boolean reverse = suffixReverse.isSelected();
+ boolean keepAll = backupfilesKeepAll.isSelected();
+ int rollMax = 4;
+ String suffix = suffixTemplate.getText();
+ int digits = 3;
+
+ backupfilesExampleLabel.setFont(LABEL_FONT_ITALIC);
+ if (suffix == null || suffix.length() == 0)
+ {
+ backupfilesExampleLabel
+ .setText(MessageManager.getString("label.no_backup_files"));
+ backupfilesExampleLabel.setFont(LABEL_FONT_BOLD);
+ return;
+ }
+
+ rollMax = getSpinnerInt(backupfilesRollMaxSpinner, 4);
+ rollMax = rollMax < 1 ? 1 : rollMax;
+
+ if (suffix.indexOf(BackupFiles.NUM_PLACEHOLDER) == -1)
+ {
+ rollMax = 1;
+ }
+
+ digits = getSpinnerInt(suffixDigitsSpinner, 3);
+ digits = digits < 1 ? 1 : digits;
+
+ int lowersurround = 2;
+ int uppersurround = 0;
+ StringBuilder exampleSB = new StringBuilder();
+ boolean firstLine = true;
+ if (reverse)
+ {
+
+ int min = 1;
+ int max = keepAll ? exampleindex : rollMax;
+ for (int index = min; index <= max; index++)
+ {
+ if (index == min + lowersurround && index < max - uppersurround - 1)
+ {
+ exampleSB.append("\n...");
+ }
+ else if (index > min + lowersurround && index < max - uppersurround)
+ {
+ // nothing
+ }
+ else
+ {
+ if (firstLine)
+ {
+ firstLine = false;
+ }
+ else
+ {
+ exampleSB.append("\n");
+ }
+ exampleSB.append(BackupFilenameParts.getBackupFilename(index,
+ base, suffix, digits));
+ if (min == max)
+ {
+ // no extra text needed
+ }
+ else if (index == min)
+ {
+ String newest = MessageManager.getString("label.braced_newest");
+ if (newest != null && newest.length() > 0)
+ {
+ exampleSB.append(" " + newest);
+ }
+ }
+ else if (index == max)
+ {
+ String oldest = MessageManager.getString("label.braced_oldest");
+ if (oldest != null && oldest.length() > 0)
+ {
+ exampleSB.append(" " + oldest);
+ }
+ }
+ }
+ }
+ }
+ else
+ {
+
+ int min = (keepAll || exampleindex - rollMax < 0) ? 1
+ : exampleindex - rollMax + 1;
+ int max = exampleindex;
+
+ for (int index = min; index <= max; index++)
+ {
+
+ if (index == min + lowersurround && index < max - uppersurround - 1)
+ {
+ exampleSB.append("\n...");
+ }
+ else if (index > min + lowersurround && index < max - uppersurround)
+ {
+ // nothing
+ }
+ else
+ {
+ if (firstLine)
+ {
+ firstLine = false;
+ }
+ else
+ {
+ exampleSB.append("\n");
+ }
+ exampleSB.append(BackupFilenameParts.getBackupFilename(index,
+ base, suffix, digits));
+ if (min == max)
+ {
+ // no extra text needed
+ }
+ else if (index == min)
+ {
+ String oldest = MessageManager.getString("label.braced_oldest");
+ if (oldest != null && oldest.length() > 0)
+ {
+ exampleSB.append(" " + oldest);
+ }
+ }
+ else if (index == max)
+ {
+ String newest = MessageManager.getString("label.braced_newest");
+ if (newest != null && newest.length() > 0)
+ {
+ exampleSB.append(" " + newest);
+ }
+ }
+ }
+ }
+
+ }
+
+ backupfilesExampleLabel.setText(exampleSB.toString());
+ }
+
+ protected void setIntegerSpinner(JSpinner s, int min, int max, int def,
+ boolean useExistingVal, ChangeListener c)
+ {
+ int i = def;
+ if (useExistingVal)
+ {
+ try
+ {
+ i = Integer.parseInt((String) s.getValue());
+ } catch (Exception e)
+ {
+ System.out.println(
+ "Exception casting the initial value of s.getValue()");
+ }
+ }
+
+ setIntegerSpinner(s, min, max, i, c);
+ }
+
+ protected void setIntegerSpinner(JSpinner s, int min, int max, int def,
+ ChangeListener c)
+ {
+ // integer spinner for number of digits
+ if (def > max)
+ {
+ max = def;
+ }
+ SpinnerModel sModel = new SpinnerNumberModel(def, min, max, 1);
+ s.setModel(sModel);
+
+ s.addChangeListener(c);
+
+ }
+
+ protected static int getSpinnerInt(JSpinner s, int def)
+ {
+ int i = def;
+ try
+ {
+ s.commitEdit();
+ i = (Integer) s.getValue();
+ } catch (Exception e)
+ {
+ System.out.println("Failed casting (Integer) JSpinner s.getValue()");
+ }
+ return i;
+ }
+
+ private void keepRollMaxOptionsEnabled()
+ {
+ boolean enabled = backupfilesKeepAll.isEnabled()
+ && !backupfilesKeepAll.isSelected();
+ oldBackupFilesLabel.setEnabled(enabled);
+ backupfilesRollMaxSpinner.setEnabled(enabled);
+ backupfilesConfirmDelete.setEnabled(enabled);
+ }
+
+ private void backupfilesKeepAllSetEnabled(boolean tryEnabled)
+ {
+ boolean enabled = tryEnabled && enableBackupFiles.isSelected()
+ && getComboIntStringKey(backupfilesPresetsCombo) == 0
+ && suffixTemplate.getText()
+ .indexOf(BackupFiles.NUM_PLACEHOLDER) > -1;
+ keepfilesPanel.setEnabled(enabled);
+ backupfilesKeepAll.setEnabled(enabled);
+ oldBackupFilesLabel.setEnabled(enabled);
+ keepRollMaxOptionsEnabled();
+ }
+
+ private void backupfilesSuffixTemplateDigitsSetEnabled()
+ {
+ boolean enabled = suffixTemplate.isEnabled() && suffixTemplate.getText()
+ .indexOf(BackupFiles.NUM_PLACEHOLDER) > -1;
+ suffixDigitsLabel.setEnabled(enabled);
+ suffixDigitsSpinner.setEnabled(enabled);
+ suffixReverse.setEnabled(enabled);
+ }
+
+ private void backupfilesSuffixTemplateSetEnabled(boolean tryEnabled)
+ {
+ boolean enabled = tryEnabled && enableBackupFiles.isSelected()
+ && getComboIntStringKey(backupfilesPresetsCombo) == 0;
+ suffixPanel.setEnabled(enabled);
+ suffixTemplateLabel.setEnabled(enabled);
+ suffixTemplate.setEnabled(enabled);
+ backupfilesSuffixTemplateDigitsSetEnabled();
+ }
+
+ protected void backupfilesCustomOptionsSetEnabled()
+ {
+ int scheme = getComboIntStringKey(backupfilesPresetsCombo);
+ boolean enabled = scheme == 0 && enableBackupFiles.isSelected();
+
+ backupfilesSuffixTemplateSetEnabled(enabled);
+ backupfilesKeepAllSetEnabled(enabled);
+ }
+
+ private void backupfilesSummarySetEnabled()
+ {
+ boolean enabled = enableBackupFiles.isSelected();
+ backupfilesExampleLabel.setEnabled(enabled);
+ exampleFilesPanel.setEnabled(enabled);
+ }
+
+ private void backupfilesPresetsSetEnabled()
+ {
+ boolean enabled = enableBackupFiles.isSelected();
+ presetsPanel.setEnabled(enabled);
+ backupfilesPresetsCombo.setEnabled(enabled);
+ }
+
+ protected void backupsOptionsSetEnabled()
+ {
+ backupfilesPresetsSetEnabled();
+ backupfilesSummarySetEnabled();
+ backupfilesCustomOptionsSetEnabled();
+ }
+
+ protected void backupsSetOptions(String suffix, int digits,
+ boolean reverse, boolean keepAll, int rollMax,
+ boolean confirmDelete)
+ {
+ suffixTemplate.setText(suffix);
+ suffixDigitsSpinner.setValue(digits);
+ suffixReverse.setSelected(reverse);
+ backupfilesKeepAll.setSelected(keepAll);
+ backupfilesRollMaxSpinner.setValue(rollMax);
+ backupfilesConfirmDelete.setSelected(confirmDelete);
+ }
+
+ protected void backupsSetOptions(BackupFilesPresetEntry p)
+ {
+ backupsSetOptions(p.suffix, p.digits, p.reverse, p.keepAll, p.rollMax,
+ p.confirmDelete);
+ }
+
protected void autoIdWidth_actionPerformed()
{
// TODO Auto-generated method stub
}
}
+
+class IntKeyStringValueEntry
+{
+ int k;
+
+ String v;
+
+ public IntKeyStringValueEntry(int k, String v)
+ {
+ this.k = k;
+ this.v = v;
+ }
+
+ @Override
+ public String toString()
+ {
+ return this.getValue();
+ }
+
+ public int getKey()
+ {
+ return k;
+ }
+
+ public String getValue()
+ {
+ return v;
+ }
+}
+
+class BackupFilesPresetEntry
+{
+ String suffix;
+
+ int digits;
+
+ boolean reverse;
+
+ boolean keepAll;
+
+ int rollMax;
+
+ boolean confirmDelete;
+
+ public BackupFilesPresetEntry(String suffix, int digits, boolean reverse,
+ boolean keepAll, int rollMax, boolean confirmDelete)
+ {
+ this.suffix = suffix;
+ this.digits = digits;
+ this.reverse = reverse;
+ this.keepAll = keepAll;
+ this.rollMax = rollMax;
+ this.confirmDelete = confirmDelete;
+ }
+}
+
+class BackupFilesPresetsComboBoxRenderer extends DefaultListCellRenderer
+{
+ /**
+ *
+ */
+ private static final long serialVersionUID = 88L;
+
+ @Override
+ public Component getListCellRendererComponent(JList list, Object value,
+ int index, boolean isSelected, boolean cellHasFocus)
+ {
+ super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
+
+ try {
+ IntKeyStringValueEntry e = (IntKeyStringValueEntry) value;
+ if (e.getKey() == GPreferences.BACKUPFILESSCHEMECUSTOMISE)
+ {
+ // "Customise" item
+ this.setFont(this.getFont().deriveFont(Font.BOLD));
+ }
+ } catch (Exception e) {
+ return this;
+ }
+
+ return this;
+ }
+}
refreshWs.setText(MessageManager.getString("action.refresh_services"));
refreshWs.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
refreshWs_actionPerformed(e);
resetWs.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
resetWs_actionPerformed(e);
.getString("label.index_web_services_menu_by_host_site"));
indexByHost.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
indexByHost_actionPerformed(e);
indexByType.setText(MessageManager.getString("label.index_by_type"));
indexByType.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
indexByType_actionPerformed(e);
MessageManager.getString("label.enable_jabaws_services"));
enableJws2Services.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
enableJws2Services_actionPerformed(e);
"label.option_want_informed_web_service_URL_cannot_be_accessed_jalview_when_starts_up"));
displayWsWarning.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
displayWsWarning_actionPerformed(e);
newWsUrl.setText(MessageManager.getString("label.new_service_url"));
newWsUrl.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
newWsUrl_actionPerformed(e);
editWsUrl.setText(MessageManager.getString("label.edit_service_url"));
editWsUrl.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
editWsUrl_actionPerformed(e);
.setText(MessageManager.getString("label.delete_service_url"));
deleteWsUrl.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
deleteWsUrl_actionPerformed(e);
.setToolTipText(MessageManager.getString("label.move_url_up"));
moveWsUrlUp.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
moveWsUrlUp_actionPerformed(e);
MessageManager.getString("label.move_url_down"));
moveWsUrlDown.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
moveWsUrlDown_actionPerformed(e);
.setText(MessageManager.getString("label.add_sbrs_definition"));
newSbrsUrl.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
newSbrsUrl_actionPerformed(e);
MessageManager.getString("label.edit_sbrs_definition"));
editSbrsUrl.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
editSbrsUrl_actionPerformed(e);
MessageManager.getString("label.delete_sbrs_definition"));
deleteSbrsUrl.addActionListener(new ActionListener()
{
+ @Override
public void actionPerformed(ActionEvent e)
{
deleteSbrsUrl_actionPerformed(e);
wsListUrlPanel.setBorder(BorderFactory.createEtchedBorder());
wsListUrlPanel.setLayout(new BorderLayout());
wsListPane.setBorder(BorderFactory.createEtchedBorder());
- wsListPane.getViewport().add(wsList);
wsList.setPreferredSize(new Dimension(482, 202));
+ wsList.getTableHeader().setReorderingAllowed(false);
+ wsListPane.getViewport().add(wsList);
wsListPane.setPreferredSize(new Dimension(380, 80));
wsList.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
wsList.setColumnSelectionAllowed(false);
wsList.addMouseListener(new MouseListener()
{
+ @Override
public void mouseClicked(MouseEvent e)
{
if (e.getClickCount() > 1)
}
+ @Override
public void mouseEntered(MouseEvent e)
{
}
+ @Override
public void mouseExited(MouseEvent e)
{
}
+ @Override
public void mousePressed(MouseEvent e)
{
}
+ @Override
public void mouseReleased(MouseEvent e)
{
sbrsList.addMouseListener(new MouseListener()
{
+ @Override
public void mouseClicked(MouseEvent e)
{
if (e.getClickCount() > 1)
}
+ @Override
public void mouseEntered(MouseEvent e)
{
}
+ @Override
public void mouseExited(MouseEvent e)
{
}
+ @Override
public void mousePressed(MouseEvent e)
{
}
+ @Override
public void mouseReleased(MouseEvent e)
{
import jalview.util.MessageManager;
import java.io.PrintStream;
+import java.util.Arrays;
/**
* A class to model rectangular matrices of double values and operations on them
public class Matrix implements MatrixI
{
/*
- * the cell values in row-major order
+ * maximum number of iterations for tqli
*/
- private double[][] value;
+ private static final int MAX_ITER = 45;
+ // fudge - add 15 iterations, just in case
/*
* the number of rows
*/
- protected int rows;
+ final protected int rows;
/*
* the number of columns
*/
- protected int cols;
+ final protected int cols;
+
+ /*
+ * the cell values in row-major order
+ */
+ private double[][] value;
protected double[] d; // Diagonal
protected double[] e; // off diagonal
/**
- * maximum number of iterations for tqli
+ * Constructor given number of rows and columns
*
+ * @param colCount
+ * @param rowCount
*/
- private static final int maxIter = 45; // fudge - add 15 iterations, just in
- // case
-
- /**
- * Default constructor
- */
- public Matrix()
+ protected Matrix(int rowCount, int colCount)
{
-
+ rows = rowCount;
+ cols = colCount;
}
/**
}
}
- /**
- * Returns a new matrix which is the transpose of this one
- *
- * @return
- */
@Override
public MatrixI transpose()
{
}
}
- /**
- * Returns a new matrix which is the result of premultiplying this matrix by
- * the supplied argument. If this of size AxB (A rows and B columns), and the
- * argument is CxA (C rows and A columns), the result is of size CxB.
- *
- * @param in
- *
- * @return
- * @throws IllegalArgumentException
- * if the number of columns in the pre-multiplier is not equal to
- * the number of rows in the multiplicand (this)
- */
@Override
public MatrixI preMultiply(MatrixI in)
{
return out;
}
- /**
- * Returns a new matrix which is the result of postmultiplying this matrix by
- * the supplied argument. If this of size AxB (A rows and B columns), and the
- * argument is BxC (B rows and C columns), the result is of size AxC.
- * <p>
- * This method simply returns the result of in.preMultiply(this)
- *
- * @param in
- *
- * @return
- * @throws IllegalArgumentException
- * if the number of rows in the post-multiplier is not equal to the
- * number of columns in the multiplicand (this)
- * @see #preMultiply(Matrix)
- */
@Override
public MatrixI postMultiply(MatrixI in)
{
return in.preMultiply(this);
}
- /**
- * Answers a new matrix with a copy of the values in this one
- *
- * @return
- */
@Override
public MatrixI copy()
{
System.arraycopy(value[i], 0, newmat[i], 0, value[i].length);
}
- return new Matrix(newmat);
+ Matrix m = new Matrix(newmat);
+ if (this.d != null)
+ {
+ m.d = Arrays.copyOf(this.d, this.d.length);
+ }
+ if (this.e != null)
+ {
+ m.e = Arrays.copyOf(this.e, this.e.length);
+ }
+
+ return m;
}
/**
{
iter++;
- if (iter == maxIter)
+ if (iter == MAX_ITER)
{
throw new Exception(MessageManager.formatMessage(
"exception.matrix_too_many_iteration", new String[]
- { "tqli", Integer.valueOf(maxIter).toString() }));
+ { "tqli", Integer.valueOf(MAX_ITER).toString() }));
}
else
{
{
iter++;
- if (iter == maxIter)
+ if (iter == MAX_ITER)
{
throw new Exception(MessageManager.formatMessage(
"exception.matrix_too_many_iteration", new String[]
- { "tqli2", Integer.valueOf(maxIter).toString() }));
+ { "tqli2", Integer.valueOf(MAX_ITER).toString() }));
}
else
{
}
}
}
+
+ @Override
+ public void setD(double[] v)
+ {
+ d = v;
+ }
+
+ @Override
+ public void setE(double[] v)
+ {
+ e = v;
+ }
+
+ public double getTotal()
+ {
+ double d = 0d;
+ for (int i = 0; i < this.height(); i++)
+ {
+ for (int j = 0; j < this.width(); j++)
+ {
+ d += value[i][j];
+ }
+ }
+ return d;
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public boolean equals(MatrixI m2, double delta)
+ {
+ if (m2 == null || this.height() != m2.height()
+ || this.width() != m2.width())
+ {
+ return false;
+ }
+ for (int i = 0; i < this.height(); i++)
+ {
+ for (int j = 0; j < this.width(); j++)
+ {
+ double diff = this.getValue(i, j) - m2.getValue(i, j);
+ if (Math.abs(diff) > delta)
+ {
+ return false;
+ }
+ }
+ }
+ return true;
+ }
}
import java.io.PrintStream;
+/**
+ * An interface that describes a rectangular matrix of double values and
+ * operations on it
+ */
public interface MatrixI
{
/**
*/
double[] getRow(int i);
+ /**
+ * Answers a new matrix with a copy of the values in this one
+ *
+ * @return
+ */
MatrixI copy();
+ /**
+ * Returns a new matrix which is the transpose of this one
+ *
+ * @return
+ */
MatrixI transpose();
+ /**
+ * Returns a new matrix which is the result of premultiplying this matrix by
+ * the supplied argument. If this of size AxB (A rows and B columns), and the
+ * argument is CxA (C rows and A columns), the result is of size CxB.
+ *
+ * @param in
+ *
+ * @return
+ * @throws IllegalArgumentException
+ * if the number of columns in the pre-multiplier is not equal to
+ * the number of rows in the multiplicand (this)
+ */
MatrixI preMultiply(MatrixI m);
+ /**
+ * Returns a new matrix which is the result of postmultiplying this matrix by
+ * the supplied argument. If this of size AxB (A rows and B columns), and the
+ * argument is BxC (B rows and C columns), the result is of size AxC.
+ * <p>
+ * This method simply returns the result of in.preMultiply(this)
+ *
+ * @param in
+ *
+ * @return
+ * @throws IllegalArgumentException
+ * if the number of rows in the post-multiplier is not equal to the
+ * number of columns in the multiplicand (this)
+ * @see #preMultiply(Matrix)
+ */
MatrixI postMultiply(MatrixI m);
double[] getD();
double[] getE();
+ void setD(double[] v);
+
+ void setE(double[] v);
+
void print(PrintStream ps, String format);
void printD(PrintStream ps, String format);
* @param d
*/
void multiply(double d);
+
+ /**
+ * Answers true if the two matrices have the same dimensions, and corresponding values all differ by no
+ * more than delta (which should be a positive value), else false
+ *
+ * @param m2
+ * @param delta
+ * @return
+ */
+ boolean equals(MatrixI m2, double delta);
}
*/
package jalview.math;
+import jalview.datamodel.Point;
+
+import java.util.HashMap;
+import java.util.Map;
+
/**
- * DOCUMENT ME!
- *
- * @author $author$
- * @version $Revision$
+ * Model for a 3x3 matrix which provides methods for rotation in 3-D space
*/
public class RotatableMatrix
{
- float[][] matrix;
+ private static final int DIMS = 3;
- float[] temp;
+ /*
+ * cache the most used rotations: +/- 1, 2, 3, 4 degrees around x or y axis
+ */
+ private static Map<Axis, Map<Float, float[][]>> cachedRotations;
- float[][] rot;
+ static
+ {
+ cachedRotations = new HashMap<>();
+ for (Axis axis : Axis.values())
+ {
+ HashMap<Float, float[][]> map = new HashMap<>();
+ cachedRotations.put(axis, map);
+ for (int deg = 1; deg < 5; deg++)
+ {
+ float[][] rotation = getRotation(deg, axis);
+ map.put(Float.valueOf(deg), rotation);
+ rotation = getRotation(-deg, axis);
+ map.put(Float.valueOf(-deg), rotation);
+ }
+ }
+ }
- /**
- * Creates a new RotatableMatrix object.
- *
- * @param rows
- * DOCUMENT ME!
- * @param cols
- * DOCUMENT ME!
- */
- public RotatableMatrix(int rows, int cols)
+ public enum Axis
{
- matrix = new float[rows][cols];
+ X, Y, Z
+ };
- temp = new float[3];
+ float[][] matrix;
- rot = new float[3][3];
+ /**
+ * Constructor creates a new identity matrix (all values zero except for 1 on
+ * the diagonal)
+ */
+ public RotatableMatrix()
+ {
+ matrix = new float[DIMS][DIMS];
+ for (int j = 0; j < DIMS; j++)
+ {
+ matrix[j][j] = 1f;
+ }
}
/**
- * DOCUMENT ME!
+ * Sets the value at position (i, j) of the matrix
*
* @param i
- * DOCUMENT ME!
* @param j
- * DOCUMENT ME!
* @param value
- * DOCUMENT ME!
*/
- public void addElement(int i, int j, float value)
+ public void setValue(int i, int j, float value)
{
matrix[i][j] = value;
}
/**
- * DOCUMENT ME!
+ * Answers the value at position (i, j) of the matrix
+ *
+ * @param i
+ * @param j
+ * @return
+ */
+ public float getValue(int i, int j)
+ {
+ return matrix[i][j];
+ }
+
+ /**
+ * Prints the matrix in rows of space-delimited values
*/
public void print()
{
}
/**
- * DOCUMENT ME!
+ * Rotates the matrix through the specified number of degrees around the
+ * specified axis
*
* @param degrees
- * DOCUMENT ME!
* @param axis
- * DOCUMENT ME!
*/
- public void rotate(float degrees, char axis)
+ public void rotate(float degrees, Axis axis)
{
- float costheta = (float) Math.cos((degrees * Math.PI) / (float) 180.0);
+ float[][] rot = getRotation(degrees, axis);
- float sintheta = (float) Math.sin((degrees * Math.PI) / (float) 180.0);
+ preMultiply(rot);
+ }
- if (axis == 'z')
+ /**
+ * Answers a matrix which, when it pre-multiplies another matrix, applies a
+ * rotation of the specified number of degrees around the specified axis
+ *
+ * @param degrees
+ * @param axis
+ * @return
+ * @see https://en.wikipedia.org/wiki/Rotation_matrix#Basic_rotations
+ */
+ protected static float[][] getRotation(float degrees, Axis axis)
+ {
+ Float floatValue = Float.valueOf(degrees);
+ if (cachedRotations.get(axis).containsKey(floatValue))
{
- rot[0][0] = (float) costheta;
-
- rot[0][1] = (float) -sintheta;
-
- rot[0][2] = (float) 0.0;
-
- rot[1][0] = (float) sintheta;
-
- rot[1][1] = (float) costheta;
-
- rot[1][2] = (float) 0.0;
-
- rot[2][0] = (float) 0.0;
-
- rot[2][1] = (float) 0.0;
-
- rot[2][2] = (float) 1.0;
-
- preMultiply(rot);
+ // System.out.println("getRotation from cache: " + (int) degrees);
+ return cachedRotations.get(axis).get(floatValue);
}
- if (axis == 'x')
- {
- rot[0][0] = (float) 1.0;
-
- rot[0][1] = (float) 0.0;
-
- rot[0][2] = (float) 0.0;
-
- rot[1][0] = (float) 0.0;
+ float costheta = (float) Math.cos(degrees * Math.PI / 180f);
- rot[1][1] = (float) costheta;
+ float sintheta = (float) Math.sin(degrees * Math.PI / 180f);
- rot[1][2] = (float) sintheta;
+ float[][] rot = new float[DIMS][DIMS];
- rot[2][0] = (float) 0.0;
-
- rot[2][1] = (float) -sintheta;
-
- rot[2][2] = (float) costheta;
-
- preMultiply(rot);
- }
-
- if (axis == 'y')
+ switch (axis)
{
- rot[0][0] = (float) costheta;
-
- rot[0][1] = (float) 0.0;
-
- rot[0][2] = (float) -sintheta;
-
- rot[1][0] = (float) 0.0;
-
- rot[1][1] = (float) 1.0;
-
- rot[1][2] = (float) 0.0;
-
- rot[2][0] = (float) sintheta;
-
- rot[2][1] = (float) 0.0;
-
- rot[2][2] = (float) costheta;
-
- preMultiply(rot);
+ case X:
+ rot[0][0] = 1f;
+ rot[1][1] = costheta;
+ rot[1][2] = sintheta;
+ rot[2][1] = -sintheta;
+ rot[2][2] = costheta;
+ break;
+ case Y:
+ rot[0][0] = costheta;
+ rot[0][2] = -sintheta;
+ rot[1][1] = 1f;
+ rot[2][0] = sintheta;
+ rot[2][2] = costheta;
+ break;
+ case Z:
+ rot[0][0] = costheta;
+ rot[0][1] = -sintheta;
+ rot[1][0] = sintheta;
+ rot[1][1] = costheta;
+ rot[2][2] = 1f;
+ break;
}
+ return rot;
}
/**
- * DOCUMENT ME!
+ * Answers a new array of float values which is the result of pre-multiplying
+ * this matrix by the given vector. Each value of the result is the dot
+ * product of the vector with one column of this matrix. The matrix and input
+ * vector are not modified.
*
* @param vect
- * DOCUMENT ME!
*
- * @return DOCUMENT ME!
+ * @return
*/
public float[] vectorMultiply(float[] vect)
{
- temp[0] = vect[0];
-
- temp[1] = vect[1];
-
- temp[2] = vect[2];
+ float[] result = new float[DIMS];
- for (int i = 0; i < 3; i++)
+ for (int i = 0; i < DIMS; i++)
{
- temp[i] = (matrix[i][0] * vect[0]) + (matrix[i][1] * vect[1])
+ result[i] = (matrix[i][0] * vect[0]) + (matrix[i][1] * vect[1])
+ (matrix[i][2] * vect[2]);
}
- vect[0] = temp[0];
-
- vect[1] = temp[1];
-
- vect[2] = temp[2];
-
- return vect;
+ return result;
}
/**
- * DOCUMENT ME!
+ * Performs pre-multiplication of this matrix by the given one. Value (i, j)
+ * of the result is the dot product of the i'th row of <code>mat</code> with
+ * the j'th column of this matrix.
*
* @param mat
- * DOCUMENT ME!
*/
public void preMultiply(float[][] mat)
{
- float[][] tmp = new float[3][3];
+ float[][] tmp = new float[DIMS][DIMS];
- for (int i = 0; i < 3; i++)
+ for (int i = 0; i < DIMS; i++)
{
- for (int j = 0; j < 3; j++)
+ for (int j = 0; j < DIMS; j++)
{
tmp[i][j] = (mat[i][0] * matrix[0][j]) + (mat[i][1] * matrix[1][j])
+ (mat[i][2] * matrix[2][j]);
}
}
- for (int i = 0; i < 3; i++)
- {
- for (int j = 0; j < 3; j++)
- {
- matrix[i][j] = tmp[i][j];
- }
- }
+ matrix = tmp;
}
/**
- * DOCUMENT ME!
+ * Performs post-multiplication of this matrix by the given one. Value (i, j)
+ * of the result is the dot product of the i'th row of this matrix with the
+ * j'th column of <code>mat</code>.
*
* @param mat
- * DOCUMENT ME!
*/
public void postMultiply(float[][] mat)
{
- float[][] tmp = new float[3][3];
+ float[][] tmp = new float[DIMS][DIMS];
- for (int i = 0; i < 3; i++)
+ for (int i = 0; i < DIMS; i++)
{
- for (int j = 0; j < 3; j++)
+ for (int j = 0; j < DIMS; j++)
{
tmp[i][j] = (matrix[i][0] * mat[0][j]) + (matrix[i][1] * mat[1][j])
+ (matrix[i][2] * mat[2][j]);
}
}
- for (int i = 0; i < 3; i++)
- {
- for (int j = 0; j < 3; j++)
- {
- matrix[i][j] = tmp[i][j];
- }
- }
+ matrix = tmp;
}
/**
*/
public static void main(String[] args)
{
- RotatableMatrix m = new RotatableMatrix(3, 3);
+ RotatableMatrix m = new RotatableMatrix();
- m.addElement(0, 0, 1);
+ m.setValue(0, 0, 1);
- m.addElement(0, 1, 0);
+ m.setValue(0, 1, 0);
- m.addElement(0, 2, 0);
+ m.setValue(0, 2, 0);
- m.addElement(1, 0, 0);
+ m.setValue(1, 0, 0);
- m.addElement(1, 1, 2);
+ m.setValue(1, 1, 2);
- m.addElement(1, 2, 0);
+ m.setValue(1, 2, 0);
- m.addElement(2, 0, 0);
+ m.setValue(2, 0, 0);
- m.addElement(2, 1, 0);
+ m.setValue(2, 1, 0);
- m.addElement(2, 2, 1);
+ m.setValue(2, 2, 1);
m.print();
- RotatableMatrix n = new RotatableMatrix(3, 3);
+ RotatableMatrix n = new RotatableMatrix();
- n.addElement(0, 0, 2);
+ n.setValue(0, 0, 2);
- n.addElement(0, 1, 1);
+ n.setValue(0, 1, 1);
- n.addElement(0, 2, 1);
+ n.setValue(0, 2, 1);
- n.addElement(1, 0, 2);
+ n.setValue(1, 0, 2);
- n.addElement(1, 1, 1);
+ n.setValue(1, 1, 1);
- n.addElement(1, 2, 1);
+ n.setValue(1, 2, 1);
- n.addElement(2, 0, 2);
+ n.setValue(2, 0, 2);
- n.addElement(2, 1, 1);
+ n.setValue(2, 1, 1);
- n.addElement(2, 2, 1);
+ n.setValue(2, 2, 1);
n.print();
}
/**
- * DOCUMENT ME!
+ * Performs a vector multiplication whose result is the Point representing the
+ * input point's value vector post-multiplied by this matrix.
+ *
+ * @param coord
+ * @return
*/
- public void setIdentity()
+ public Point vectorMultiply(Point coord)
{
- matrix[0][0] = (float) 1.0;
-
- matrix[1][1] = (float) 1.0;
-
- matrix[2][2] = (float) 1.0;
-
- matrix[0][1] = (float) 0.0;
-
- matrix[0][2] = (float) 0.0;
-
- matrix[1][0] = (float) 0.0;
-
- matrix[1][2] = (float) 0.0;
-
- matrix[2][0] = (float) 0.0;
-
- matrix[2][1] = (float) 0.0;
+ float[] v = vectorMultiply(new float[] { coord.x, coord.y, coord.z });
+ return new Point(v[0], v[1], v[2]);
}
}
*/
public SparseMatrix(double[][] v)
{
- rows = v.length;
- if (rows > 0)
- {
- cols = v[0].length;
- }
+ super(v.length, v.length > 0 ? v[0].length : 0);
+
sparseColumns = new SparseDoubleArray[cols];
/*
*/
package jalview.project;
+import static jalview.math.RotatableMatrix.Axis.X;
+import static jalview.math.RotatableMatrix.Axis.Y;
+import static jalview.math.RotatableMatrix.Axis.Z;
+
import jalview.analysis.Conservation;
+import jalview.analysis.PCA;
+import jalview.analysis.scoremodels.ScoreModels;
+import jalview.analysis.scoremodels.SimilarityParams;
import jalview.api.FeatureColourI;
import jalview.api.ViewStyleI;
+import jalview.api.analysis.ScoreModelI;
+import jalview.api.analysis.SimilarityParamsI;
import jalview.api.structures.JalviewStructureDisplayI;
import jalview.bin.Cache;
import jalview.datamodel.AlignedCodonFrame;
import jalview.datamodel.DBRefEntry;
import jalview.datamodel.GraphLine;
import jalview.datamodel.PDBEntry;
+import jalview.datamodel.Point;
import jalview.datamodel.RnaViewerModel;
import jalview.datamodel.SequenceFeature;
import jalview.datamodel.SequenceGroup;
import jalview.gui.ChimeraViewFrame;
import jalview.gui.Desktop;
import jalview.gui.FeatureRenderer;
-import jalview.gui.Jalview2XML_V1;
import jalview.gui.JvOptionPane;
import jalview.gui.OOMWarning;
+import jalview.gui.PCAPanel;
import jalview.gui.PaintRefresher;
import jalview.gui.SplitFrame;
import jalview.gui.StructureViewer;
import jalview.gui.StructureViewer.ViewerType;
import jalview.gui.StructureViewerBase;
import jalview.gui.TreePanel;
+import jalview.io.BackupFiles;
import jalview.io.DataSourceType;
import jalview.io.FileFormat;
import jalview.io.NewickFile;
+import jalview.math.Matrix;
+import jalview.math.MatrixI;
import jalview.renderer.ResidueShaderI;
import jalview.schemes.AnnotationColourGradient;
import jalview.schemes.ColourSchemeI;
import jalview.util.jarInputStreamProvider;
import jalview.util.matcher.Condition;
import jalview.viewmodel.AlignmentViewport;
+import jalview.viewmodel.PCAModel;
import jalview.viewmodel.ViewportRanges;
import jalview.viewmodel.seqfeatures.FeatureRendererSettings;
import jalview.viewmodel.seqfeatures.FeaturesDisplayed;
import jalview.xml.binding.jalview.Annotation.ThresholdLine;
import jalview.xml.binding.jalview.AnnotationColourScheme;
import jalview.xml.binding.jalview.AnnotationElement;
+import jalview.xml.binding.jalview.DoubleMatrix;
+import jalview.xml.binding.jalview.DoubleVector;
import jalview.xml.binding.jalview.Feature;
import jalview.xml.binding.jalview.Feature.OtherData;
import jalview.xml.binding.jalview.FeatureMatcherSet.CompoundMatcher;
import jalview.xml.binding.jalview.JalviewModel.JSeq.Pdbids.StructureState;
import jalview.xml.binding.jalview.JalviewModel.JSeq.RnaViewer;
import jalview.xml.binding.jalview.JalviewModel.JSeq.RnaViewer.SecondaryStructure;
+import jalview.xml.binding.jalview.JalviewModel.PcaViewer;
+import jalview.xml.binding.jalview.JalviewModel.PcaViewer.Axis;
+import jalview.xml.binding.jalview.JalviewModel.PcaViewer.SeqPointMax;
+import jalview.xml.binding.jalview.JalviewModel.PcaViewer.SeqPointMin;
+import jalview.xml.binding.jalview.JalviewModel.PcaViewer.SequencePoint;
import jalview.xml.binding.jalview.JalviewModel.Tree;
import jalview.xml.binding.jalview.JalviewModel.UserColours;
import jalview.xml.binding.jalview.JalviewModel.Viewport;
import jalview.xml.binding.jalview.Mapping;
import jalview.xml.binding.jalview.NoValueColour;
import jalview.xml.binding.jalview.ObjectFactory;
+import jalview.xml.binding.jalview.PcaDataType;
import jalview.xml.binding.jalview.Pdbentry.Property;
import jalview.xml.binding.jalview.Sequence;
import jalview.xml.binding.jalview.Sequence.DBRef;
private static final String UTF_8 = "UTF-8";
+ /**
+ * prefix for recovering datasets for alignments with multiple views where
+ * non-existent dataset IDs were written for some views
+ */
+ private static final String UNIQSEQSETID = "uniqueSeqSetId.";
+
// use this with nextCounter() to make unique names for entities
private int counter = 0;
public void saveState(File statefile)
{
FileOutputStream fos = null;
+
try
{
+
fos = new FileOutputStream(statefile);
+
JarOutputStream jout = new JarOutputStream(fos);
saveState(jout);
+ fos.close();
} catch (Exception e)
{
+ Cache.log.error("Couln't write Jalview state to " + statefile, e);
// TODO: inform user of the problem - they need to know if their data was
// not saved !
if (errorMessage == null)
{
- errorMessage = "Couldn't write Jalview Archive to output file '"
+ errorMessage = "Did't write Jalview Archive to output file '"
+ statefile + "' - See console error log for details";
}
else
{
- errorMessage += "(output file was '" + statefile + "')";
+ errorMessage += "(Didn't write Jalview Archive to output file '"
+ + statefile + ")";
}
e.printStackTrace();
} finally
{
try
{
- FileOutputStream fos = new FileOutputStream(jarFile);
+ // create backupfiles object and get new temp filename destination
+ BackupFiles backupfiles = new BackupFiles(jarFile);
+ FileOutputStream fos = new FileOutputStream(
+ backupfiles.getTempFilePath());
+
JarOutputStream jout = new JarOutputStream(fos);
List<AlignFrame> frames = new ArrayList<>();
}
;
jout.close();
- return true;
+ boolean success = true;
+
+ backupfiles.setWriteSuccess(success);
+ success = backupfiles.rollBackupsAndRenameTempFile();
+
+ return success;
} catch (Exception ex)
{
errorMessage = "Couldn't Write alignment view to Jalview Archive - see error output for details";
tree.setXpos(tp.getX());
tree.setYpos(tp.getY());
tree.setId(makeHashCode(tp, null));
+ tree.setLinkToAllViews(
+ tp.getTreeCanvas().isApplyToAllViews());
+
// jms.addTree(tree);
object.getTree().add(tree);
}
}
}
+ /*
+ * save PCA viewers
+ */
+ if (!storeDS && Desktop.desktop != null)
+ {
+ for (JInternalFrame frame : Desktop.desktop.getAllFrames())
+ {
+ if (frame instanceof PCAPanel)
+ {
+ PCAPanel panel = (PCAPanel) frame;
+ if (panel.getAlignViewport().getAlignment() == jal)
+ {
+ savePCA(panel, object);
+ }
+ }
+ }
+ }
+
// SAVE ANNOTATIONS
/**
* store forward refs from an annotationRow to any groups
}
/**
+ * Writes PCA viewer attributes and computed values to an XML model object and
+ * adds it to the JalviewModel. Any exceptions are reported by logging.
+ */
+ protected void savePCA(PCAPanel panel, JalviewModel object)
+ {
+ try
+ {
+ PcaViewer viewer = new PcaViewer();
+ viewer.setHeight(panel.getHeight());
+ viewer.setWidth(panel.getWidth());
+ viewer.setXpos(panel.getX());
+ viewer.setYpos(panel.getY());
+ viewer.setTitle(panel.getTitle());
+ PCAModel pcaModel = panel.getPcaModel();
+ viewer.setScoreModelName(pcaModel.getScoreModelName());
+ viewer.setXDim(panel.getSelectedDimensionIndex(X));
+ viewer.setYDim(panel.getSelectedDimensionIndex(Y));
+ viewer.setZDim(panel.getSelectedDimensionIndex(Z));
+ viewer.setBgColour(
+ panel.getRotatableCanvas().getBackgroundColour().getRGB());
+ viewer.setScaleFactor(panel.getRotatableCanvas().getScaleFactor());
+ float[] spMin = panel.getRotatableCanvas().getSeqMin();
+ SeqPointMin spmin = new SeqPointMin();
+ spmin.setXPos(spMin[0]);
+ spmin.setYPos(spMin[1]);
+ spmin.setZPos(spMin[2]);
+ viewer.setSeqPointMin(spmin);
+ float[] spMax = panel.getRotatableCanvas().getSeqMax();
+ SeqPointMax spmax = new SeqPointMax();
+ spmax.setXPos(spMax[0]);
+ spmax.setYPos(spMax[1]);
+ spmax.setZPos(spMax[2]);
+ viewer.setSeqPointMax(spmax);
+ viewer.setShowLabels(panel.getRotatableCanvas().isShowLabels());
+ viewer.setLinkToAllViews(
+ panel.getRotatableCanvas().isApplyToAllViews());
+ SimilarityParamsI sp = pcaModel.getSimilarityParameters();
+ viewer.setIncludeGaps(sp.includeGaps());
+ viewer.setMatchGaps(sp.matchGaps());
+ viewer.setIncludeGappedColumns(sp.includeGappedColumns());
+ viewer.setDenominateByShortestLength(sp.denominateByShortestLength());
+
+ /*
+ * sequence points on display
+ */
+ for (jalview.datamodel.SequencePoint spt : pcaModel
+ .getSequencePoints())
+ {
+ SequencePoint point = new SequencePoint();
+ point.setSequenceRef(seqHash(spt.getSequence()));
+ point.setXPos(spt.coord.x);
+ point.setYPos(spt.coord.y);
+ point.setZPos(spt.coord.z);
+ viewer.getSequencePoint().add(point);
+ }
+
+ /*
+ * (end points of) axes on display
+ */
+ for (Point p : panel.getRotatableCanvas().getAxisEndPoints())
+ {
+
+ Axis axis = new Axis();
+ axis.setXPos(p.x);
+ axis.setYPos(p.y);
+ axis.setZPos(p.z);
+ viewer.getAxis().add(axis);
+ }
+
+ /*
+ * raw PCA data (note we are not restoring PCA inputs here -
+ * alignment view, score model, similarity parameters)
+ */
+ PcaDataType data = new PcaDataType();
+ viewer.setPcaData(data);
+ PCA pca = pcaModel.getPcaData();
+
+ DoubleMatrix pm = new DoubleMatrix();
+ saveDoubleMatrix(pca.getPairwiseScores(), pm);
+ data.setPairwiseMatrix(pm);
+
+ DoubleMatrix tm = new DoubleMatrix();
+ saveDoubleMatrix(pca.getTridiagonal(), tm);
+ data.setTridiagonalMatrix(tm);
+
+ DoubleMatrix eigenMatrix = new DoubleMatrix();
+ data.setEigenMatrix(eigenMatrix);
+ saveDoubleMatrix(pca.getEigenmatrix(), eigenMatrix);
+
+ object.getPcaViewer().add(viewer);
+ } catch (Throwable t)
+ {
+ Cache.log.error("Error saving PCA: " + t.getMessage());
+ }
+ }
+
+ /**
+ * Stores values from a matrix into an XML element, including (if present) the
+ * D or E vectors
+ *
+ * @param m
+ * @param xmlMatrix
+ * @see #loadDoubleMatrix(DoubleMatrix)
+ */
+ protected void saveDoubleMatrix(MatrixI m, DoubleMatrix xmlMatrix)
+ {
+ xmlMatrix.setRows(m.height());
+ xmlMatrix.setColumns(m.width());
+ for (int i = 0; i < m.height(); i++)
+ {
+ DoubleVector row = new DoubleVector();
+ for (int j = 0; j < m.width(); j++)
+ {
+ row.getV().add(m.getValue(i, j));
+ }
+ xmlMatrix.getRow().add(row);
+ }
+ if (m.getD() != null)
+ {
+ DoubleVector dVector = new DoubleVector();
+ for (double d : m.getD())
+ {
+ dVector.getV().add(d);
+ }
+ xmlMatrix.setD(dVector);
+ }
+ if (m.getE() != null)
+ {
+ DoubleVector eVector = new DoubleVector();
+ for (double e : m.getE())
+ {
+ eVector.getV().add(e);
+ }
+ xmlMatrix.setE(eVector);
+ }
+ }
+
+ /**
+ * Loads XML matrix data into a new Matrix object, including the D and/or E
+ * vectors (if present)
+ *
+ * @param mData
+ * @return
+ * @see Jalview2XML#saveDoubleMatrix(MatrixI, DoubleMatrix)
+ */
+ protected MatrixI loadDoubleMatrix(DoubleMatrix mData)
+ {
+ int rows = mData.getRows();
+ double[][] vals = new double[rows][];
+
+ for (int i = 0; i < rows; i++)
+ {
+ List<Double> dVector = mData.getRow().get(i).getV();
+ vals[i] = new double[dVector.size()];
+ int dvi = 0;
+ for (Double d : dVector)
+ {
+ vals[i][dvi++] = d;
+ }
+ }
+
+ MatrixI m = new Matrix(vals);
+
+ if (mData.getD() != null)
+ {
+ List<Double> dVector = mData.getD().getV();
+ double[] vec = new double[dVector.size()];
+ int dvi = 0;
+ for (Double d : dVector)
+ {
+ vec[dvi++] = d;
+ }
+ m.setD(vec);
+ }
+ if (mData.getE() != null)
+ {
+ List<Double> dVector = mData.getE().getV();
+ double[] vec = new double[dVector.size()];
+ int dvi = 0;
+ for (Double d : dVector)
+ {
+ vec[dvi++] = d;
+ }
+ m.setE(vec);
+ }
+
+ return m;
+ }
+
+ /**
* Save any Varna viewers linked to this sequence. Writes an rnaViewer element
* for each viewer, with
* <ul>
ex.printStackTrace(System.err);
if (attemptversion1parse)
{
- // Is Version 1 Jar file?
- try
- {
- af = new Jalview2XML_V1(raiseGUI).LoadJalviewAlign(jprovider);
- } catch (Exception ex2)
- {
- System.err.println("Exception whilst loading as jalviewXMLV1:");
- ex2.printStackTrace();
- af = null;
- }
+ // used to attempt to parse as V1 castor-generated xml
}
if (Desktop.instance != null)
{
: null;
// ////////////////////////////////
+ // INITIALISE ALIGNMENT SEQUENCESETID AND VIEWID
+ //
+ //
+ // If we just load in the same jar file again, the sequenceSetId
+ // will be the same, and we end up with multiple references
+ // to the same sequenceSet. We must modify this id on load
+ // so that each load of the file gives a unique id
+
+ /**
+ * used to resolve correct alignment dataset for alignments with multiple
+ * views
+ */
+ String uniqueSeqSetId = null;
+ String viewId = null;
+ if (view != null)
+ {
+ uniqueSeqSetId = view.getSequenceSetId() + uniqueSetSuffix;
+ viewId = (view.getId() == null ? null
+ : view.getId() + uniqueSetSuffix);
+ }
+
+ // ////////////////////////////////
// LOAD SEQUENCES
List<SequenceI> hiddenSeqs = null;
// finally, verify all data in vamsasSet is actually present in al
// passing on flag indicating if it is actually a stored dataset
- recoverDatasetFor(vamsasSet, al, isdsal);
+ recoverDatasetFor(vamsasSet, al, isdsal, uniqueSeqSetId);
}
if (referenceseqForView != null)
}
else
{
- cs = ColourSchemeProperty.getColourScheme(al,
+ cs = ColourSchemeProperty.getColourScheme(null, al,
jGroup.getColour());
}
}
// ///////////////////////////////
// LOAD VIEWPORT
- // If we just load in the same jar file again, the sequenceSetId
- // will be the same, and we end up with multiple references
- // to the same sequenceSet. We must modify this id on load
- // so that each load of the file gives a unique id
- String uniqueSeqSetId = view.getSequenceSetId() + uniqueSetSuffix;
- String viewId = (view.getId() == null ? null
- : view.getId() + uniqueSetSuffix);
AlignFrame af = null;
AlignViewport av = null;
// now check to see if we really need to create a new viewport.
if (loadTreesAndStructures)
{
loadTrees(jalviewModel, view, af, av, ap);
+ loadPCAViewers(jalviewModel, ap);
loadPDBStructures(jprovider, jseqs, af, ap);
loadRnaViewers(jprovider, jseqs, ap);
}
// TODO: verify 'associate with all views' works still
tp.getTreeCanvas().setViewport(av); // af.viewport;
tp.getTreeCanvas().setAssociatedPanel(ap); // af.alignPanel;
+ // FIXME: should we use safeBoolean here ?
+ tp.getTreeCanvas().setApplyToAllViews(tree.isLinkToAllViews());
}
if (tp == null)
}
else
{
- cs = ColourSchemeProperty.getColourScheme(al, view.getBgColour());
+ cs = ColourSchemeProperty.getColourScheme(af.getViewport(), al,
+ view.getBgColour());
}
}
+ /*
+ * turn off 'alignment colour applies to all groups'
+ * while restoring global colour scheme
+ */
+ viewport.setColourAppliesToAllGroups(false);
viewport.setGlobalColourScheme(cs);
viewport.getResidueShading().setThreshold(pidThreshold,
view.isIgnoreGapsinConsensus());
viewport.getResidueShading()
.setConsensus(viewport.getSequenceConsensusHash());
- viewport.setColourAppliesToAllGroups(false);
-
if (safeBoolean(view.isConservationSelected()) && cs != null)
{
viewport.getResidueShading()
.setConservationInc(safeInt(view.getConsThreshold()));
}
-
af.changeColour(cs);
-
viewport.setColourAppliesToAllGroups(true);
viewport
float min = safeFloat(safeFloat(setting.getMin()));
float max = setting.getMax() == null ? 1f
: setting.getMax().floatValue();
- FeatureColourI gc = new FeatureColour(minColour, maxColour,
+ FeatureColourI gc = new FeatureColour(maxColour, minColour,
+ maxColour,
noValueColour, min, max);
if (setting.getAttributeName().size() > 0)
{
else
{
cs = new AnnotationColourGradient(matchedAnnotation,
- ColourSchemeProperty.getColourScheme(al,
+ ColourSchemeProperty.getColourScheme(af.getViewport(), al,
viewAnnColour.getColourScheme()),
safeInt(viewAnnColour.getAboveThreshold()));
}
}
private void recoverDatasetFor(SequenceSet vamsasSet, AlignmentI al,
- boolean ignoreUnrefed)
+ boolean ignoreUnrefed, String uniqueSeqSetId)
{
jalview.datamodel.AlignmentI ds = getDatasetFor(
vamsasSet.getDatasetId());
+ AlignmentI xtant_ds = ds;
+ if (xtant_ds == null)
+ {
+ // good chance we are about to create a new dataset, but check if we've
+ // seen some of the dataset sequence IDs before.
+ // TODO: skip this check if we are working with project generated by
+ // version 2.11 or later
+ xtant_ds = checkIfHasDataset(vamsasSet.getSequence());
+ if (xtant_ds != null)
+ {
+ ds = xtant_ds;
+ addDatasetRef(vamsasSet.getDatasetId(), ds);
+ }
+ }
Vector dseqs = null;
+ if (!ignoreUnrefed)
+ {
+ // recovering an alignment View
+ AlignmentI seqSetDS = getDatasetFor(UNIQSEQSETID + uniqueSeqSetId);
+ if (seqSetDS != null)
+ {
+ if (ds != null && ds != seqSetDS)
+ {
+ warn("JAL-3171 regression: Overwriting a dataset reference for an alignment"
+ + " - CDS/Protein crossreference data may be lost");
+ if (xtant_ds != null)
+ {
+ // This can only happen if the unique sequence set ID was bound to a
+ // dataset that did not contain any of the sequences in the view
+ // currently being restored.
+ warn("JAL-3171 SERIOUS! TOTAL CONFUSION - please consider contacting the Jalview Development team so they can investigate why your project caused this message to be displayed.");
+ }
+ }
+ ds = seqSetDS;
+ addDatasetRef(vamsasSet.getDatasetId(), ds);
+ }
+ }
if (ds == null)
{
+ // try even harder to restore dataset
+ AlignmentI xtantDS = checkIfHasDataset(vamsasSet.getSequence());
// create a list of new dataset sequences
dseqs = new Vector();
}
if (al.getDataset() == null && !ignoreUnrefed)
{
al.setDataset(ds);
+ // register dataset for the alignment's uniqueSeqSetId for legacy projects
+ addDatasetRef(UNIQSEQSETID + uniqueSeqSetId, ds);
}
+ updateSeqDatasetBinding(vamsasSet.getSequence(), ds);
}
/**
+ * XML dataset sequence ID to materialised dataset reference
+ */
+ HashMap<String, AlignmentI> seqToDataset = new HashMap<>();
+
+ /**
+ * @return the first materialised dataset reference containing a dataset
+ * sequence referenced in the given view
+ * @param list
+ * - sequences from the view
+ */
+ AlignmentI checkIfHasDataset(List<Sequence> list)
+ {
+ for (Sequence restoredSeq : list)
+ {
+ AlignmentI datasetFor = seqToDataset.get(restoredSeq.getDsseqid());
+ if (datasetFor != null)
+ {
+ return datasetFor;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Register ds as the containing dataset for the dataset sequences referenced
+ * by sequences in list
+ *
+ * @param list
+ * - sequences in a view
+ * @param ds
+ */
+ void updateSeqDatasetBinding(List<Sequence> list, AlignmentI ds)
+ {
+ for (Sequence restoredSeq : list)
+ {
+ AlignmentI prevDS = seqToDataset.put(restoredSeq.getDsseqid(), ds);
+ if (prevDS != null && prevDS != ds)
+ {
+ warn("Dataset sequence appears in many datasets: "
+ + restoredSeq.getDsseqid());
+ // TODO: try to merge!
+ }
+ }
+ }
+ /**
*
* @param vamsasSeq
* sequence definition to create/merge dataset sequence for
jalview.datamodel.Mapping jmap = new jalview.datamodel.Mapping(dsto, fr,
fto, m.getMapFromUnit().intValue(),
m.getMapToUnit().intValue());
- // if (m.getMappingChoice() != null)
- // {
- // MappingChoice mc = m.getMappingChoice();
+
+ /*
+ * (optional) choice of dseqFor or Sequence
+ */
if (m.getDseqFor() != null)
{
String dsfor = m.getDseqFor();
if (seqRefIds.containsKey(dsfor))
{
- /**
+ /*
* recover from hash
*/
jmap.setTo(seqRefIds.get(dsfor));
frefedSequence.add(newMappingRef(dsfor, jmap));
}
}
- else
+ else if (m.getSequence() != null)
{
- /**
+ /*
* local sequence definition
*/
Sequence ms = m.getSequence();
initSeqRefs();
JalviewModel jm = saveState(ap, null, null, null);
+ addDatasetRef(
+ jm.getVamsasModel().getSequenceSet().get(0).getDatasetId(),
+ ap.getAlignment().getDataset());
+
uniqueSetSuffix = "";
// jm.getJalviewModelSequence().getViewport(0).setId(null);
jm.getViewport().get(0).setId(null);
}
/**
+ * Loads any saved PCA viewers
+ *
+ * @param jms
+ * @param ap
+ */
+ protected void loadPCAViewers(JalviewModel model, AlignmentPanel ap)
+ {
+ try
+ {
+ List<PcaViewer> pcaviewers = model.getPcaViewer();
+ for (PcaViewer viewer : pcaviewers)
+ {
+ String modelName = viewer.getScoreModelName();
+ SimilarityParamsI params = new SimilarityParams(
+ viewer.isIncludeGappedColumns(), viewer.isMatchGaps(),
+ viewer.isIncludeGaps(),
+ viewer.isDenominateByShortestLength());
+
+ /*
+ * create the panel (without computing the PCA)
+ */
+ PCAPanel panel = new PCAPanel(ap, modelName, params);
+
+ panel.setTitle(viewer.getTitle());
+ panel.setBounds(new Rectangle(viewer.getXpos(), viewer.getYpos(),
+ viewer.getWidth(), viewer.getHeight()));
+
+ boolean showLabels = viewer.isShowLabels();
+ panel.setShowLabels(showLabels);
+ panel.getRotatableCanvas().setShowLabels(showLabels);
+ panel.getRotatableCanvas()
+ .setBgColour(new Color(viewer.getBgColour()));
+ panel.getRotatableCanvas()
+ .setApplyToAllViews(viewer.isLinkToAllViews());
+
+ /*
+ * load PCA output data
+ */
+ ScoreModelI scoreModel = ScoreModels.getInstance()
+ .getScoreModel(modelName, ap);
+ PCA pca = new PCA(null, scoreModel, params);
+ PcaDataType pcaData = viewer.getPcaData();
+
+ MatrixI pairwise = loadDoubleMatrix(pcaData.getPairwiseMatrix());
+ pca.setPairwiseScores(pairwise);
+
+ MatrixI triDiag = loadDoubleMatrix(pcaData.getTridiagonalMatrix());
+ pca.setTridiagonal(triDiag);
+
+ MatrixI result = loadDoubleMatrix(pcaData.getEigenMatrix());
+ pca.setEigenmatrix(result);
+
+ panel.getPcaModel().setPCA(pca);
+
+ /*
+ * we haven't saved the input data! (JAL-2647 to do)
+ */
+ panel.setInputData(null);
+
+ /*
+ * add the sequence points for the PCA display
+ */
+ List<jalview.datamodel.SequencePoint> seqPoints = new ArrayList<>();
+ for (SequencePoint sp : viewer.getSequencePoint())
+ {
+ String seqId = sp.getSequenceRef();
+ SequenceI seq = seqRefIds.get(seqId);
+ if (seq == null)
+ {
+ throw new IllegalStateException(
+ "Unmatched seqref for PCA: " + seqId);
+ }
+ Point pt = new Point(sp.getXPos(), sp.getYPos(), sp.getZPos());
+ jalview.datamodel.SequencePoint seqPoint = new jalview.datamodel.SequencePoint(
+ seq, pt);
+ seqPoints.add(seqPoint);
+ }
+ panel.getRotatableCanvas().setPoints(seqPoints, seqPoints.size());
+
+ /*
+ * set min-max ranges and scale after setPoints (which recomputes them)
+ */
+ panel.getRotatableCanvas().setScaleFactor(viewer.getScaleFactor());
+ SeqPointMin spMin = viewer.getSeqPointMin();
+ float[] min = new float[] { spMin.getXPos(), spMin.getYPos(),
+ spMin.getZPos() };
+ SeqPointMax spMax = viewer.getSeqPointMax();
+ float[] max = new float[] { spMax.getXPos(), spMax.getYPos(),
+ spMax.getZPos() };
+ panel.getRotatableCanvas().setSeqMinMax(min, max);
+
+ // todo: hold points list in PCAModel only
+ panel.getPcaModel().setSequencePoints(seqPoints);
+
+ panel.setSelectedDimensionIndex(viewer.getXDim(), X);
+ panel.setSelectedDimensionIndex(viewer.getYDim(), Y);
+ panel.setSelectedDimensionIndex(viewer.getZDim(), Z);
+
+ // is this duplication needed?
+ panel.setTop(seqPoints.size() - 1);
+ panel.getPcaModel().setTop(seqPoints.size() - 1);
+
+ /*
+ * add the axes' end points for the display
+ */
+ for (int i = 0; i < 3; i++)
+ {
+ Axis axis = viewer.getAxis().get(i);
+ panel.getRotatableCanvas().getAxisEndPoints()[i] = new Point(
+ axis.getXPos(), axis.getYPos(), axis.getZPos());
+ }
+
+ Desktop.addInternalFrame(panel, MessageManager.formatMessage(
+ "label.calc_title", "PCA", modelName), 475, 450);
+ }
+ } catch (Exception ex)
+ {
+ Cache.log.error("Error loading PCA: " + ex.toString());
+ }
+ }
+
+ /**
* Populates an XML model of the feature colour scheme for one feature type
*
* @param featureType
noValueColour = maxcol;
}
- colour = new FeatureColour(mincol, maxcol, noValueColour,
+ colour = new FeatureColour(maxcol, mincol, maxcol, noValueColour,
safeFloat(colourModel.getMin()),
safeFloat(colourModel.getMax()));
final List<String> attributeName = colourModel.getAttributeName();
import jalview.api.AlignViewportI;
import jalview.api.FeatureColourI;
-import jalview.datamodel.Range;
+import jalview.datamodel.ContiguousI;
import jalview.datamodel.SequenceFeature;
import jalview.datamodel.SequenceI;
import jalview.util.Comparison;
/*
* if columns are all gapped, or sequence has no features, nothing to do
*/
- Range visiblePositions = seq.findPositions(start+1, end+1);
+ ContiguousI visiblePositions = seq.findPositions(start + 1, end + 1);
if (visiblePositions == null || !seq.getFeatures().hasFeatures())
{
return null;
+++ /dev/null
-#Thu Dec 14 09:10:14 GMT 2017
-jalview.schemabinding.version2.ThresholdLine=jalview.schemabinding.version2.descriptors.ThresholdLineDescriptor
-jalview.schemabinding.version2.SequenceSetProperties=jalview.schemabinding.version2.descriptors.SequenceSetPropertiesDescriptor
-jalview.schemabinding.version2.StructureState=jalview.schemabinding.version2.descriptors.StructureStateDescriptor
-jalview.schemabinding.version2.CalcIdParam=jalview.schemabinding.version2.descriptors.CalcIdParamDescriptor
-jalview.schemabinding.version2.Tree=jalview.schemabinding.version2.descriptors.TreeDescriptor
-jalview.schemabinding.version2.JalviewModel=jalview.schemabinding.version2.descriptors.JalviewModelDescriptor
-jalview.schemabinding.version2.SequenceType=jalview.schemabinding.version2.descriptors.SequenceTypeDescriptor
-jalview.schemabinding.version2.OtherData=jalview.schemabinding.version2.descriptors.OtherDataDescriptor
-jalview.schemabinding.version2.Setting=jalview.schemabinding.version2.descriptors.SettingDescriptor
-jalview.schemabinding.version2.AlcodonFrame=jalview.schemabinding.version2.descriptors.AlcodonFrameDescriptor
-jalview.schemabinding.version2.AnnotationElement=jalview.schemabinding.version2.descriptors.AnnotationElementDescriptor
-jalview.schemabinding.version2.FeatureMatcherSet=jalview.schemabinding.version2.descriptors.FeatureMatcherSetDescriptor
-jalview.schemabinding.version2.SecondaryStructure=jalview.schemabinding.version2.descriptors.SecondaryStructureDescriptor
-jalview.schemabinding.version2.MatchCondition=jalview.schemabinding.version2.descriptors.MatchConditionDescriptor
-jalview.schemabinding.version2.SequenceSet=jalview.schemabinding.version2.descriptors.SequenceSetDescriptor
-jalview.schemabinding.version2.Viewport=jalview.schemabinding.version2.descriptors.ViewportDescriptor
-jalview.schemabinding.version2.RnaViewer=jalview.schemabinding.version2.descriptors.RnaViewerDescriptor
-jalview.schemabinding.version2.MapListType=jalview.schemabinding.version2.descriptors.MapListTypeDescriptor
-jalview.schemabinding.version2.Property=jalview.schemabinding.version2.descriptors.PropertyDescriptor
-jalview.schemabinding.version2.UserColourScheme=jalview.schemabinding.version2.descriptors.UserColourSchemeDescriptor
-jalview.schemabinding.version2.DBRef=jalview.schemabinding.version2.descriptors.DBRefDescriptor
-jalview.schemabinding.version2.AlcodMap=jalview.schemabinding.version2.descriptors.AlcodMapDescriptor
-jalview.schemabinding.version2.Annotation=jalview.schemabinding.version2.descriptors.AnnotationDescriptor
-jalview.schemabinding.version2.JSeq=jalview.schemabinding.version2.descriptors.JSeqDescriptor
-jalview.schemabinding.version2.MatcherSet=jalview.schemabinding.version2.descriptors.MatcherSetDescriptor
-jalview.schemabinding.version2.Sequence=jalview.schemabinding.version2.descriptors.SequenceDescriptor
-jalview.schemabinding.version2.WebServiceParameterSet=jalview.schemabinding.version2.descriptors.WebServiceParameterSetDescriptor
-jalview.schemabinding.version2.Alcodon=jalview.schemabinding.version2.descriptors.AlcodonDescriptor
-jalview.schemabinding.version2.Filter=jalview.schemabinding.version2.descriptors.FilterDescriptor
-jalview.schemabinding.version2.AnnotationColours=jalview.schemabinding.version2.descriptors.AnnotationColoursDescriptor
-jalview.schemabinding.version2.Pdbids=jalview.schemabinding.version2.descriptors.PdbidsDescriptor
-jalview.schemabinding.version2.AnnotationColourScheme=jalview.schemabinding.version2.descriptors.AnnotationColourSchemeDescriptor
-jalview.schemabinding.version2.Mapping=jalview.schemabinding.version2.descriptors.MappingDescriptor
-jalview.schemabinding.version2.CompoundMatcher=jalview.schemabinding.version2.descriptors.CompoundMatcherDescriptor
-jalview.schemabinding.version2.JalviewModelSequence=jalview.schemabinding.version2.descriptors.JalviewModelSequenceDescriptor
-jalview.schemabinding.version2.Group=jalview.schemabinding.version2.descriptors.GroupDescriptor
-jalview.schemabinding.version2.MappingChoice=jalview.schemabinding.version2.descriptors.MappingChoiceDescriptor
-jalview.schemabinding.version2.Feature=jalview.schemabinding.version2.descriptors.FeatureDescriptor
-jalview.schemabinding.version2.UserColours=jalview.schemabinding.version2.descriptors.UserColoursDescriptor
-jalview.schemabinding.version2.Colour=jalview.schemabinding.version2.descriptors.ColourDescriptor
-jalview.schemabinding.version2.PdbentryItem=jalview.schemabinding.version2.descriptors.PdbentryItemDescriptor
-jalview.schemabinding.version2.MapListFrom=jalview.schemabinding.version2.descriptors.MapListFromDescriptor
-jalview.schemabinding.version2.FeatureSettings=jalview.schemabinding.version2.descriptors.FeatureSettingsDescriptor
-jalview.schemabinding.version2.JGroup=jalview.schemabinding.version2.descriptors.JGroupDescriptor
-jalview.schemabinding.version2.MapListTo=jalview.schemabinding.version2.descriptors.MapListToDescriptor
-jalview.schemabinding.version2.JalviewUserColours=jalview.schemabinding.version2.descriptors.JalviewUserColoursDescriptor
-jalview.schemabinding.version2.VamsasModel=jalview.schemabinding.version2.descriptors.VamsasModelDescriptor
-jalview.schemabinding.version2.Pdbentry=jalview.schemabinding.version2.descriptors.PdbentryDescriptor
-jalview.schemabinding.version2.HiddenColumns=jalview.schemabinding.version2.descriptors.HiddenColumnsDescriptor
-jalview.schemabinding.version2.Features=jalview.schemabinding.version2.descriptors.FeaturesDescriptor
-jalview.schemabinding.version2.VAMSAS=jalview.schemabinding.version2.descriptors.VAMSASDescriptor
-jalview.schemabinding.version2.FeatureMatcher=jalview.schemabinding.version2.descriptors.FeatureMatcherDescriptor
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class AlcodMap.
- *
- * @version $Revision$ $Date$
- */
-public class AlcodMap implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * internal jalview id for the dnasq for this mapping.
- *
- */
- private java.lang.String _dnasq;
-
- /**
- * a Mapping entry and an associated protein sequence
- *
- */
- private jalview.schemabinding.version2.Mapping _mapping;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AlcodMap()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'dnasq'. The field 'dnasq' has the following
- * description: internal jalview id for the dnasq for this mapping.
- *
- *
- * @return the value of field 'Dnasq'.
- */
- public java.lang.String getDnasq()
- {
- return this._dnasq;
- }
-
- /**
- * Returns the value of field 'mapping'. The field 'mapping' has the following
- * description: a Mapping entry and an associated protein sequence
- *
- *
- * @return the value of field 'Mapping'.
- */
- public jalview.schemabinding.version2.Mapping getMapping()
- {
- return this._mapping;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'dnasq'. The field 'dnasq' has the following
- * description: internal jalview id for the dnasq for this mapping.
- *
- *
- * @param dnasq
- * the value of field 'dnasq'.
- */
- public void setDnasq(final java.lang.String dnasq)
- {
- this._dnasq = dnasq;
- }
-
- /**
- * Sets the value of field 'mapping'. The field 'mapping' has the following
- * description: a Mapping entry and an associated protein sequence
- *
- *
- * @param mapping
- * the value of field 'mapping'.
- */
- public void setMapping(
- final jalview.schemabinding.version2.Mapping mapping)
- {
- this._mapping = mapping;
- }
-
- /**
- * 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.schemabinding.version2.AlcodMap
- */
- public static jalview.schemabinding.version2.AlcodMap unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.AlcodMap) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.AlcodMap.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Alcodon.
- *
- * @version $Revision$ $Date$
- */
-public class Alcodon implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _pos1.
- */
- private long _pos1;
-
- /**
- * keeps track of state for field: _pos1
- */
- private boolean _has_pos1;
-
- /**
- * Field _pos2.
- */
- private long _pos2;
-
- /**
- * keeps track of state for field: _pos2
- */
- private boolean _has_pos2;
-
- /**
- * Field _pos3.
- */
- private long _pos3;
-
- /**
- * keeps track of state for field: _pos3
- */
- private boolean _has_pos3;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Alcodon()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deletePos1()
- {
- this._has_pos1 = false;
- }
-
- /**
- */
- public void deletePos2()
- {
- this._has_pos2 = false;
- }
-
- /**
- */
- public void deletePos3()
- {
- this._has_pos3 = false;
- }
-
- /**
- * Returns the value of field 'pos1'.
- *
- * @return the value of field 'Pos1'.
- */
- public long getPos1()
- {
- return this._pos1;
- }
-
- /**
- * Returns the value of field 'pos2'.
- *
- * @return the value of field 'Pos2'.
- */
- public long getPos2()
- {
- return this._pos2;
- }
-
- /**
- * Returns the value of field 'pos3'.
- *
- * @return the value of field 'Pos3'.
- */
- public long getPos3()
- {
- return this._pos3;
- }
-
- /**
- * Method hasPos1.
- *
- * @return true if at least one Pos1 has been added
- */
- public boolean hasPos1()
- {
- return this._has_pos1;
- }
-
- /**
- * Method hasPos2.
- *
- * @return true if at least one Pos2 has been added
- */
- public boolean hasPos2()
- {
- return this._has_pos2;
- }
-
- /**
- * Method hasPos3.
- *
- * @return true if at least one Pos3 has been added
- */
- public boolean hasPos3()
- {
- return this._has_pos3;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'pos1'.
- *
- * @param pos1
- * the value of field 'pos1'.
- */
- public void setPos1(final long pos1)
- {
- this._pos1 = pos1;
- this._has_pos1 = true;
- }
-
- /**
- * Sets the value of field 'pos2'.
- *
- * @param pos2
- * the value of field 'pos2'.
- */
- public void setPos2(final long pos2)
- {
- this._pos2 = pos2;
- this._has_pos2 = true;
- }
-
- /**
- * Sets the value of field 'pos3'.
- *
- * @param pos3
- * the value of field 'pos3'.
- */
- public void setPos3(final long pos3)
- {
- this._pos3 = pos3;
- this._has_pos3 = true;
- }
-
- /**
- * 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.schemabinding.version2.Alcodo
- */
- public static jalview.schemabinding.version2.Alcodon unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Alcodon) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.Alcodon.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class AlcodonFrame.
- *
- * @version $Revision$ $Date$
- */
-public class AlcodonFrame implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _alcodonList.
- */
- private java.util.Vector _alcodonList;
-
- /**
- * Field _alcodMapList.
- */
- private java.util.Vector _alcodMapList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AlcodonFrame()
- {
- super();
- this._alcodonList = new java.util.Vector();
- this._alcodMapList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAlcodMap
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAlcodMap(
- final jalview.schemabinding.version2.AlcodMap vAlcodMap)
- throws java.lang.IndexOutOfBoundsException
- {
- this._alcodMapList.addElement(vAlcodMap);
- }
-
- /**
- *
- *
- * @param index
- * @param vAlcodMap
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAlcodMap(final int index,
- final jalview.schemabinding.version2.AlcodMap vAlcodMap)
- throws java.lang.IndexOutOfBoundsException
- {
- this._alcodMapList.add(index, vAlcodMap);
- }
-
- /**
- *
- *
- * @param vAlcodon
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAlcodon(
- final jalview.schemabinding.version2.Alcodon vAlcodon)
- throws java.lang.IndexOutOfBoundsException
- {
- this._alcodonList.addElement(vAlcodon);
- }
-
- /**
- *
- *
- * @param index
- * @param vAlcodon
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAlcodon(final int index,
- final jalview.schemabinding.version2.Alcodon vAlcodon)
- throws java.lang.IndexOutOfBoundsException
- {
- this._alcodonList.add(index, vAlcodon);
- }
-
- /**
- * Method enumerateAlcodMap.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.AlcodMap
- * elements
- */
- public java.util.Enumeration enumerateAlcodMap()
- {
- return this._alcodMapList.elements();
- }
-
- /**
- * Method enumerateAlcodon.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Alcodon
- * elements
- */
- public java.util.Enumeration enumerateAlcodon()
- {
- return this._alcodonList.elements();
- }
-
- /**
- * Method getAlcodMap.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.AlcodMap at the
- * given index
- */
- public jalview.schemabinding.version2.AlcodMap getAlcodMap(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._alcodMapList.size())
- {
- throw new IndexOutOfBoundsException("getAlcodMap: Index value '"
- + index + "' not in range [0.."
- + (this._alcodMapList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.AlcodMap) _alcodMapList
- .get(index);
- }
-
- /**
- * Method getAlcodMap.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.AlcodMap[] getAlcodMap()
- {
- jalview.schemabinding.version2.AlcodMap[] array = new jalview.schemabinding.version2.AlcodMap[0];
- return (jalview.schemabinding.version2.AlcodMap[]) this._alcodMapList
- .toArray(array);
- }
-
- /**
- * Method getAlcodMapCount.
- *
- * @return the size of this collection
- */
- public int getAlcodMapCount()
- {
- return this._alcodMapList.size();
- }
-
- /**
- * Method getAlcodon.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.Alcodon at the
- * given index
- */
- public jalview.schemabinding.version2.Alcodon getAlcodon(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._alcodonList.size())
- {
- throw new IndexOutOfBoundsException("getAlcodon: Index value '"
- + index + "' not in range [0.."
- + (this._alcodonList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Alcodon) _alcodonList.get(index);
- }
-
- /**
- * Method getAlcodon.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Alcodon[] getAlcodon()
- {
- jalview.schemabinding.version2.Alcodon[] array = new jalview.schemabinding.version2.Alcodon[0];
- return (jalview.schemabinding.version2.Alcodon[]) this._alcodonList
- .toArray(array);
- }
-
- /**
- * Method getAlcodonCount.
- *
- * @return the size of this collection
- */
- public int getAlcodonCount()
- {
- return this._alcodonList.size();
- }
-
- /**
- * 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);
- }
-
- /**
- * Method removeAlcodMap.
- *
- * @param vAlcodMap
- * @return true if the object was removed from the collection.
- */
- public boolean removeAlcodMap(
- final jalview.schemabinding.version2.AlcodMap vAlcodMap)
- {
- boolean removed = _alcodMapList.remove(vAlcodMap);
- return removed;
- }
-
- /**
- * Method removeAlcodMapAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.AlcodMap removeAlcodMapAt(
- final int index)
- {
- java.lang.Object obj = this._alcodMapList.remove(index);
- return (jalview.schemabinding.version2.AlcodMap) obj;
- }
-
- /**
- * Method removeAlcodon.
- *
- * @param vAlcodon
- * @return true if the object was removed from the collection.
- */
- public boolean removeAlcodon(
- final jalview.schemabinding.version2.Alcodon vAlcodon)
- {
- boolean removed = _alcodonList.remove(vAlcodon);
- return removed;
- }
-
- /**
- * Method removeAlcodonAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Alcodon removeAlcodonAt(
- final int index)
- {
- java.lang.Object obj = this._alcodonList.remove(index);
- return (jalview.schemabinding.version2.Alcodon) obj;
- }
-
- /**
- */
- public void removeAllAlcodMap()
- {
- this._alcodMapList.clear();
- }
-
- /**
- */
- public void removeAllAlcodon()
- {
- this._alcodonList.clear();
- }
-
- /**
- *
- *
- * @param index
- * @param vAlcodMap
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAlcodMap(final int index,
- final jalview.schemabinding.version2.AlcodMap vAlcodMap)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._alcodMapList.size())
- {
- throw new IndexOutOfBoundsException("setAlcodMap: Index value '"
- + index + "' not in range [0.."
- + (this._alcodMapList.size() - 1) + "]");
- }
-
- this._alcodMapList.set(index, vAlcodMap);
- }
-
- /**
- *
- *
- * @param vAlcodMapArray
- */
- public void setAlcodMap(
- final jalview.schemabinding.version2.AlcodMap[] vAlcodMapArray)
- {
- // -- copy array
- _alcodMapList.clear();
-
- for (int i = 0; i < vAlcodMapArray.length; i++)
- {
- this._alcodMapList.add(vAlcodMapArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vAlcodon
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAlcodon(final int index,
- final jalview.schemabinding.version2.Alcodon vAlcodon)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._alcodonList.size())
- {
- throw new IndexOutOfBoundsException("setAlcodon: Index value '"
- + index + "' not in range [0.."
- + (this._alcodonList.size() - 1) + "]");
- }
-
- this._alcodonList.set(index, vAlcodon);
- }
-
- /**
- *
- *
- * @param vAlcodonArray
- */
- public void setAlcodon(
- final jalview.schemabinding.version2.Alcodon[] vAlcodonArray)
- {
- // -- copy array
- _alcodonList.clear();
-
- for (int i = 0; i < vAlcodonArray.length; i++)
- {
- this._alcodonList.add(vAlcodonArray[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.schemabinding.version2.AlcodonFrame
- */
- public static jalview.schemabinding.version2.AlcodonFrame unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.AlcodonFrame) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.AlcodonFrame.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Annotation.
- *
- * @version $Revision$ $Date$
- */
-public class Annotation implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _graph.
- */
- private boolean _graph;
-
- /**
- * keeps track of state for field: _graph
- */
- private boolean _has_graph;
-
- /**
- * Field _graphType.
- */
- private int _graphType;
-
- /**
- * keeps track of state for field: _graphType
- */
- private boolean _has_graphType;
-
- /**
- * Field _sequenceRef.
- */
- private java.lang.String _sequenceRef;
-
- /**
- * Field _groupRef.
- */
- private java.lang.String _groupRef;
-
- /**
- * Field _graphColour.
- */
- private int _graphColour;
-
- /**
- * keeps track of state for field: _graphColour
- */
- private boolean _has_graphColour;
-
- /**
- * Field _graphGroup.
- */
- private int _graphGroup;
-
- /**
- * keeps track of state for field: _graphGroup
- */
- private boolean _has_graphGroup;
-
- /**
- * height in pixels for the graph if this is a graph-type annotation.
- */
- private int _graphHeight;
-
- /**
- * keeps track of state for field: _graphHeight
- */
- private boolean _has_graphHeight;
-
- /**
- * Field _id.
- */
- private java.lang.String _id;
-
- /**
- * Field _scoreOnly.
- */
- private boolean _scoreOnly = false;
-
- /**
- * keeps track of state for field: _scoreOnly
- */
- private boolean _has_scoreOnly;
-
- /**
- * Field _score.
- */
- private double _score;
-
- /**
- * keeps track of state for field: _score
- */
- private boolean _has_score;
-
- /**
- * Field _visible.
- */
- private boolean _visible;
-
- /**
- * keeps track of state for field: _visible
- */
- private boolean _has_visible;
-
- /**
- * Field _centreColLabels.
- */
- private boolean _centreColLabels;
-
- /**
- * keeps track of state for field: _centreColLabels
- */
- private boolean _has_centreColLabels;
-
- /**
- * Field _scaleColLabels.
- */
- private boolean _scaleColLabels;
-
- /**
- * keeps track of state for field: _scaleColLabels
- */
- private boolean _has_scaleColLabels;
-
- /**
- * Field _showAllColLabels.
- */
- private boolean _showAllColLabels;
-
- /**
- * keeps track of state for field: _showAllColLabels
- */
- private boolean _has_showAllColLabels;
-
- /**
- * is an autocalculated annotation row
- */
- private boolean _autoCalculated = false;
-
- /**
- * keeps track of state for field: _autoCalculated
- */
- private boolean _has_autoCalculated;
-
- /**
- * is to be shown below the alignment - introduced in Jalview 2.8 for
- * visualizing T-COFFEE alignment scores
- */
- private boolean _belowAlignment = true;
-
- /**
- * keeps track of state for field: _belowAlignment
- */
- private boolean _has_belowAlignment;
-
- /**
- * Optional string identifier used to group sets of annotation produced by a
- * particular calculation. Values are opaque strings but have semantic meaning
- * to Jalview's renderer, data importer and calculation system.
- */
- private java.lang.String _calcId;
-
- /**
- * Field _annotationElementList.
- */
- private java.util.Vector _annotationElementList;
-
- /**
- * Field _label.
- */
- private java.lang.String _label;
-
- /**
- * Field _description.
- */
- private java.lang.String _description;
-
- /**
- * Field _thresholdLine.
- */
- private jalview.schemabinding.version2.ThresholdLine _thresholdLine;
-
- /**
- * Field _propertyList.
- */
- private java.util.Vector _propertyList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Annotation()
- {
- super();
- this._annotationElementList = new java.util.Vector();
- this._propertyList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAnnotationElement
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAnnotationElement(
- final jalview.schemabinding.version2.AnnotationElement vAnnotationElement)
- throws java.lang.IndexOutOfBoundsException
- {
- this._annotationElementList.addElement(vAnnotationElement);
- }
-
- /**
- *
- *
- * @param index
- * @param vAnnotationElement
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAnnotationElement(
- final int index,
- final jalview.schemabinding.version2.AnnotationElement vAnnotationElement)
- throws java.lang.IndexOutOfBoundsException
- {
- this._annotationElementList.add(index, vAnnotationElement);
- }
-
- /**
- *
- *
- * @param vProperty
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addProperty(
- final jalview.schemabinding.version2.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- this._propertyList.addElement(vProperty);
- }
-
- /**
- *
- *
- * @param index
- * @param vProperty
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addProperty(final int index,
- final jalview.schemabinding.version2.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- this._propertyList.add(index, vProperty);
- }
-
- /**
- */
- public void deleteAutoCalculated()
- {
- this._has_autoCalculated = false;
- }
-
- /**
- */
- public void deleteBelowAlignment()
- {
- this._has_belowAlignment = false;
- }
-
- /**
- */
- public void deleteCentreColLabels()
- {
- this._has_centreColLabels = false;
- }
-
- /**
- */
- public void deleteGraph()
- {
- this._has_graph = false;
- }
-
- /**
- */
- public void deleteGraphColour()
- {
- this._has_graphColour = false;
- }
-
- /**
- */
- public void deleteGraphGroup()
- {
- this._has_graphGroup = false;
- }
-
- /**
- */
- public void deleteGraphHeight()
- {
- this._has_graphHeight = false;
- }
-
- /**
- */
- public void deleteGraphType()
- {
- this._has_graphType = false;
- }
-
- /**
- */
- public void deleteScaleColLabels()
- {
- this._has_scaleColLabels = false;
- }
-
- /**
- */
- public void deleteScore()
- {
- this._has_score = false;
- }
-
- /**
- */
- public void deleteScoreOnly()
- {
- this._has_scoreOnly = false;
- }
-
- /**
- */
- public void deleteShowAllColLabels()
- {
- this._has_showAllColLabels = false;
- }
-
- /**
- */
- public void deleteVisible()
- {
- this._has_visible = false;
- }
-
- /**
- * Method enumerateAnnotationElement.
- *
- * @return an Enumeration over all
- * jalview.schemabinding.version2.AnnotationElement elements
- */
- public java.util.Enumeration enumerateAnnotationElement()
- {
- return this._annotationElementList.elements();
- }
-
- /**
- * Method enumerateProperty.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Property
- * elements
- */
- public java.util.Enumeration enumerateProperty()
- {
- return this._propertyList.elements();
- }
-
- /**
- * Method getAnnotationElement.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.AnnotationElement
- * at the given index
- */
- public jalview.schemabinding.version2.AnnotationElement getAnnotationElement(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._annotationElementList.size())
- {
- throw new IndexOutOfBoundsException(
- "getAnnotationElement: Index value '" + index
- + "' not in range [0.."
- + (this._annotationElementList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.AnnotationElement) _annotationElementList
- .get(index);
- }
-
- /**
- * Method getAnnotationElement.Returns the contents of the collection in an
- * Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.AnnotationElement[] getAnnotationElement()
- {
- jalview.schemabinding.version2.AnnotationElement[] array = new jalview.schemabinding.version2.AnnotationElement[0];
- return (jalview.schemabinding.version2.AnnotationElement[]) this._annotationElementList
- .toArray(array);
- }
-
- /**
- * Method getAnnotationElementCount.
- *
- * @return the size of this collection
- */
- public int getAnnotationElementCount()
- {
- return this._annotationElementList.size();
- }
-
- /**
- * Returns the value of field 'autoCalculated'. The field 'autoCalculated' has
- * the following description: is an autocalculated annotation row
- *
- * @return the value of field 'AutoCalculated'.
- */
- public boolean getAutoCalculated()
- {
- return this._autoCalculated;
- }
-
- /**
- * Returns the value of field 'belowAlignment'. The field 'belowAlignment' has
- * the following description: is to be shown below the alignment - introduced
- * in Jalview 2.8 for visualizing T-COFFEE alignment scores
- *
- * @return the value of field 'BelowAlignment'.
- */
- public boolean getBelowAlignment()
- {
- return this._belowAlignment;
- }
-
- /**
- * Returns the value of field 'calcId'. The field 'calcId' has the following
- * description: Optional string identifier used to group sets of annotation
- * produced by a particular calculation. Values are opaque strings but have
- * semantic meaning to Jalview's renderer, data importer and calculation
- * system.
- *
- * @return the value of field 'CalcId'.
- */
- public java.lang.String getCalcId()
- {
- return this._calcId;
- }
-
- /**
- * Returns the value of field 'centreColLabels'.
- *
- * @return the value of field 'CentreColLabels'.
- */
- public boolean getCentreColLabels()
- {
- return this._centreColLabels;
- }
-
- /**
- * Returns the value of field 'description'.
- *
- * @return the value of field 'Description'.
- */
- public java.lang.String getDescription()
- {
- return this._description;
- }
-
- /**
- * Returns the value of field 'graph'.
- *
- * @return the value of field 'Graph'.
- */
- public boolean getGraph()
- {
- return this._graph;
- }
-
- /**
- * Returns the value of field 'graphColour'.
- *
- * @return the value of field 'GraphColour'.
- */
- public int getGraphColour()
- {
- return this._graphColour;
- }
-
- /**
- * Returns the value of field 'graphGroup'.
- *
- * @return the value of field 'GraphGroup'.
- */
- public int getGraphGroup()
- {
- return this._graphGroup;
- }
-
- /**
- * Returns the value of field 'graphHeight'. The field 'graphHeight' has the
- * following description: height in pixels for the graph if this is a
- * graph-type annotation.
- *
- * @return the value of field 'GraphHeight'.
- */
- public int getGraphHeight()
- {
- return this._graphHeight;
- }
-
- /**
- * Returns the value of field 'graphType'.
- *
- * @return the value of field 'GraphType'.
- */
- public int getGraphType()
- {
- return this._graphType;
- }
-
- /**
- * Returns the value of field 'groupRef'.
- *
- * @return the value of field 'GroupRef'.
- */
- public java.lang.String getGroupRef()
- {
- return this._groupRef;
- }
-
- /**
- * Returns the value of field 'id'.
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Returns the value of field 'label'.
- *
- * @return the value of field 'Label'.
- */
- public java.lang.String getLabel()
- {
- return this._label;
- }
-
- /**
- * Method getProperty.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.Property at the
- * given index
- */
- public jalview.schemabinding.version2.Property getProperty(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._propertyList.size())
- {
- throw new IndexOutOfBoundsException("getProperty: Index value '"
- + index + "' not in range [0.."
- + (this._propertyList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Property) _propertyList
- .get(index);
- }
-
- /**
- * Method getProperty.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Property[] getProperty()
- {
- jalview.schemabinding.version2.Property[] array = new jalview.schemabinding.version2.Property[0];
- return (jalview.schemabinding.version2.Property[]) this._propertyList
- .toArray(array);
- }
-
- /**
- * Method getPropertyCount.
- *
- * @return the size of this collection
- */
- public int getPropertyCount()
- {
- return this._propertyList.size();
- }
-
- /**
- * Returns the value of field 'scaleColLabels'.
- *
- * @return the value of field 'ScaleColLabels'.
- */
- public boolean getScaleColLabels()
- {
- return this._scaleColLabels;
- }
-
- /**
- * Returns the value of field 'score'.
- *
- * @return the value of field 'Score'.
- */
- public double getScore()
- {
- return this._score;
- }
-
- /**
- * Returns the value of field 'scoreOnly'.
- *
- * @return the value of field 'ScoreOnly'.
- */
- public boolean getScoreOnly()
- {
- return this._scoreOnly;
- }
-
- /**
- * Returns the value of field 'sequenceRef'.
- *
- * @return the value of field 'SequenceRef'.
- */
- public java.lang.String getSequenceRef()
- {
- return this._sequenceRef;
- }
-
- /**
- * Returns the value of field 'showAllColLabels'.
- *
- * @return the value of field 'ShowAllColLabels'.
- */
- public boolean getShowAllColLabels()
- {
- return this._showAllColLabels;
- }
-
- /**
- * Returns the value of field 'thresholdLine'.
- *
- * @return the value of field 'ThresholdLine'.
- */
- public jalview.schemabinding.version2.ThresholdLine getThresholdLine()
- {
- return this._thresholdLine;
- }
-
- /**
- * Returns the value of field 'visible'.
- *
- * @return the value of field 'Visible'.
- */
- public boolean getVisible()
- {
- return this._visible;
- }
-
- /**
- * Method hasAutoCalculated.
- *
- * @return true if at least one AutoCalculated has been added
- */
- public boolean hasAutoCalculated()
- {
- return this._has_autoCalculated;
- }
-
- /**
- * Method hasBelowAlignment.
- *
- * @return true if at least one BelowAlignment has been added
- */
- public boolean hasBelowAlignment()
- {
- return this._has_belowAlignment;
- }
-
- /**
- * Method hasCentreColLabels.
- *
- * @return true if at least one CentreColLabels has been added
- */
- public boolean hasCentreColLabels()
- {
- return this._has_centreColLabels;
- }
-
- /**
- * Method hasGraph.
- *
- * @return true if at least one Graph has been added
- */
- public boolean hasGraph()
- {
- return this._has_graph;
- }
-
- /**
- * Method hasGraphColour.
- *
- * @return true if at least one GraphColour has been added
- */
- public boolean hasGraphColour()
- {
- return this._has_graphColour;
- }
-
- /**
- * Method hasGraphGroup.
- *
- * @return true if at least one GraphGroup has been added
- */
- public boolean hasGraphGroup()
- {
- return this._has_graphGroup;
- }
-
- /**
- * Method hasGraphHeight.
- *
- * @return true if at least one GraphHeight has been added
- */
- public boolean hasGraphHeight()
- {
- return this._has_graphHeight;
- }
-
- /**
- * Method hasGraphType.
- *
- * @return true if at least one GraphType has been added
- */
- public boolean hasGraphType()
- {
- return this._has_graphType;
- }
-
- /**
- * Method hasScaleColLabels.
- *
- * @return true if at least one ScaleColLabels has been added
- */
- public boolean hasScaleColLabels()
- {
- return this._has_scaleColLabels;
- }
-
- /**
- * Method hasScore.
- *
- * @return true if at least one Score has been added
- */
- public boolean hasScore()
- {
- return this._has_score;
- }
-
- /**
- * Method hasScoreOnly.
- *
- * @return true if at least one ScoreOnly has been added
- */
- public boolean hasScoreOnly()
- {
- return this._has_scoreOnly;
- }
-
- /**
- * Method hasShowAllColLabels.
- *
- * @return true if at least one ShowAllColLabels has been added
- */
- public boolean hasShowAllColLabels()
- {
- return this._has_showAllColLabels;
- }
-
- /**
- * Method hasVisible.
- *
- * @return true if at least one Visible has been added
- */
- public boolean hasVisible()
- {
- return this._has_visible;
- }
-
- /**
- * Returns the value of field 'autoCalculated'. The field 'autoCalculated' has
- * the following description: is an autocalculated annotation row
- *
- * @return the value of field 'AutoCalculated'.
- */
- public boolean isAutoCalculated()
- {
- return this._autoCalculated;
- }
-
- /**
- * Returns the value of field 'belowAlignment'. The field 'belowAlignment' has
- * the following description: is to be shown below the alignment - introduced
- * in Jalview 2.8 for visualizing T-COFFEE alignment scores
- *
- * @return the value of field 'BelowAlignment'.
- */
- public boolean isBelowAlignment()
- {
- return this._belowAlignment;
- }
-
- /**
- * Returns the value of field 'centreColLabels'.
- *
- * @return the value of field 'CentreColLabels'.
- */
- public boolean isCentreColLabels()
- {
- return this._centreColLabels;
- }
-
- /**
- * Returns the value of field 'graph'.
- *
- * @return the value of field 'Graph'.
- */
- public boolean isGraph()
- {
- return this._graph;
- }
-
- /**
- * Returns the value of field 'scaleColLabels'.
- *
- * @return the value of field 'ScaleColLabels'.
- */
- public boolean isScaleColLabels()
- {
- return this._scaleColLabels;
- }
-
- /**
- * Returns the value of field 'scoreOnly'.
- *
- * @return the value of field 'ScoreOnly'.
- */
- public boolean isScoreOnly()
- {
- return this._scoreOnly;
- }
-
- /**
- * Returns the value of field 'showAllColLabels'.
- *
- * @return the value of field 'ShowAllColLabels'.
- */
- public boolean isShowAllColLabels()
- {
- return this._showAllColLabels;
- }
-
- /**
- * 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;
- }
-
- /**
- * Returns the value of field 'visible'.
- *
- * @return the value of field 'Visible'.
- */
- public boolean isVisible()
- {
- return this._visible;
- }
-
- /**
- *
- *
- * @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 removeAllAnnotationElement()
- {
- this._annotationElementList.clear();
- }
-
- /**
- */
- public void removeAllProperty()
- {
- this._propertyList.clear();
- }
-
- /**
- * Method removeAnnotationElement.
- *
- * @param vAnnotationElement
- * @return true if the object was removed from the collection.
- */
- public boolean removeAnnotationElement(
- final jalview.schemabinding.version2.AnnotationElement vAnnotationElement)
- {
- boolean removed = _annotationElementList.remove(vAnnotationElement);
- return removed;
- }
-
- /**
- * Method removeAnnotationElementAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.AnnotationElement removeAnnotationElementAt(
- final int index)
- {
- java.lang.Object obj = this._annotationElementList.remove(index);
- return (jalview.schemabinding.version2.AnnotationElement) obj;
- }
-
- /**
- * Method removeProperty.
- *
- * @param vProperty
- * @return true if the object was removed from the collection.
- */
- public boolean removeProperty(
- final jalview.schemabinding.version2.Property vProperty)
- {
- boolean removed = _propertyList.remove(vProperty);
- return removed;
- }
-
- /**
- * Method removePropertyAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Property removePropertyAt(
- final int index)
- {
- java.lang.Object obj = this._propertyList.remove(index);
- return (jalview.schemabinding.version2.Property) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vAnnotationElement
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAnnotationElement(
- final int index,
- final jalview.schemabinding.version2.AnnotationElement vAnnotationElement)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._annotationElementList.size())
- {
- throw new IndexOutOfBoundsException(
- "setAnnotationElement: Index value '" + index
- + "' not in range [0.."
- + (this._annotationElementList.size() - 1) + "]");
- }
-
- this._annotationElementList.set(index, vAnnotationElement);
- }
-
- /**
- *
- *
- * @param vAnnotationElementArray
- */
- public void setAnnotationElement(
- final jalview.schemabinding.version2.AnnotationElement[] vAnnotationElementArray)
- {
- // -- copy array
- _annotationElementList.clear();
-
- for (int i = 0; i < vAnnotationElementArray.length; i++)
- {
- this._annotationElementList.add(vAnnotationElementArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'autoCalculated'. The field 'autoCalculated' has
- * the following description: is an autocalculated annotation row
- *
- * @param autoCalculated
- * the value of field 'autoCalculated'.
- */
- public void setAutoCalculated(final boolean autoCalculated)
- {
- this._autoCalculated = autoCalculated;
- this._has_autoCalculated = true;
- }
-
- /**
- * Sets the value of field 'belowAlignment'. The field 'belowAlignment' has
- * the following description: is to be shown below the alignment - introduced
- * in Jalview 2.8 for visualizing T-COFFEE alignment scores
- *
- * @param belowAlignment
- * the value of field 'belowAlignment'.
- */
- public void setBelowAlignment(final boolean belowAlignment)
- {
- this._belowAlignment = belowAlignment;
- this._has_belowAlignment = true;
- }
-
- /**
- * Sets the value of field 'calcId'. The field 'calcId' has the following
- * description: Optional string identifier used to group sets of annotation
- * produced by a particular calculation. Values are opaque strings but have
- * semantic meaning to Jalview's renderer, data importer and calculation
- * system.
- *
- * @param calcId
- * the value of field 'calcId'.
- */
- public void setCalcId(final java.lang.String calcId)
- {
- this._calcId = calcId;
- }
-
- /**
- * Sets the value of field 'centreColLabels'.
- *
- * @param centreColLabels
- * the value of field 'centreColLabels'.
- */
- public void setCentreColLabels(final boolean centreColLabels)
- {
- this._centreColLabels = centreColLabels;
- this._has_centreColLabels = true;
- }
-
- /**
- * Sets the value of field 'description'.
- *
- * @param description
- * the value of field 'description'.
- */
- public void setDescription(final java.lang.String description)
- {
- this._description = description;
- }
-
- /**
- * Sets the value of field 'graph'.
- *
- * @param graph
- * the value of field 'graph'.
- */
- public void setGraph(final boolean graph)
- {
- this._graph = graph;
- this._has_graph = true;
- }
-
- /**
- * Sets the value of field 'graphColour'.
- *
- * @param graphColour
- * the value of field 'graphColour'.
- */
- public void setGraphColour(final int graphColour)
- {
- this._graphColour = graphColour;
- this._has_graphColour = true;
- }
-
- /**
- * Sets the value of field 'graphGroup'.
- *
- * @param graphGroup
- * the value of field 'graphGroup'.
- */
- public void setGraphGroup(final int graphGroup)
- {
- this._graphGroup = graphGroup;
- this._has_graphGroup = true;
- }
-
- /**
- * Sets the value of field 'graphHeight'. The field 'graphHeight' has the
- * following description: height in pixels for the graph if this is a
- * graph-type annotation.
- *
- * @param graphHeight
- * the value of field 'graphHeight'.
- */
- public void setGraphHeight(final int graphHeight)
- {
- this._graphHeight = graphHeight;
- this._has_graphHeight = true;
- }
-
- /**
- * Sets the value of field 'graphType'.
- *
- * @param graphType
- * the value of field 'graphType'.
- */
- public void setGraphType(final int graphType)
- {
- this._graphType = graphType;
- this._has_graphType = true;
- }
-
- /**
- * Sets the value of field 'groupRef'.
- *
- * @param groupRef
- * the value of field 'groupRef'.
- */
- public void setGroupRef(final java.lang.String groupRef)
- {
- this._groupRef = groupRef;
- }
-
- /**
- * Sets the value of field 'id'.
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- * Sets the value of field 'label'.
- *
- * @param label
- * the value of field 'label'.
- */
- public void setLabel(final java.lang.String label)
- {
- this._label = label;
- }
-
- /**
- *
- *
- * @param index
- * @param vProperty
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setProperty(final int index,
- final jalview.schemabinding.version2.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._propertyList.size())
- {
- throw new IndexOutOfBoundsException("setProperty: Index value '"
- + index + "' not in range [0.."
- + (this._propertyList.size() - 1) + "]");
- }
-
- this._propertyList.set(index, vProperty);
- }
-
- /**
- *
- *
- * @param vPropertyArray
- */
- public void setProperty(
- final jalview.schemabinding.version2.Property[] vPropertyArray)
- {
- // -- copy array
- _propertyList.clear();
-
- for (int i = 0; i < vPropertyArray.length; i++)
- {
- this._propertyList.add(vPropertyArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'scaleColLabels'.
- *
- * @param scaleColLabels
- * the value of field 'scaleColLabels'.
- */
- public void setScaleColLabels(final boolean scaleColLabels)
- {
- this._scaleColLabels = scaleColLabels;
- this._has_scaleColLabels = true;
- }
-
- /**
- * Sets the value of field 'score'.
- *
- * @param score
- * the value of field 'score'.
- */
- public void setScore(final double score)
- {
- this._score = score;
- this._has_score = true;
- }
-
- /**
- * Sets the value of field 'scoreOnly'.
- *
- * @param scoreOnly
- * the value of field 'scoreOnly'.
- */
- public void setScoreOnly(final boolean scoreOnly)
- {
- this._scoreOnly = scoreOnly;
- this._has_scoreOnly = true;
- }
-
- /**
- * Sets the value of field 'sequenceRef'.
- *
- * @param sequenceRef
- * the value of field 'sequenceRef'.
- */
- public void setSequenceRef(final java.lang.String sequenceRef)
- {
- this._sequenceRef = sequenceRef;
- }
-
- /**
- * Sets the value of field 'showAllColLabels'.
- *
- * @param showAllColLabels
- * the value of field 'showAllColLabels'
- */
- public void setShowAllColLabels(final boolean showAllColLabels)
- {
- this._showAllColLabels = showAllColLabels;
- this._has_showAllColLabels = true;
- }
-
- /**
- * Sets the value of field 'thresholdLine'.
- *
- * @param thresholdLine
- * the value of field 'thresholdLine'.
- */
- public void setThresholdLine(
- final jalview.schemabinding.version2.ThresholdLine thresholdLine)
- {
- this._thresholdLine = thresholdLine;
- }
-
- /**
- * Sets the value of field 'visible'.
- *
- * @param visible
- * the value of field 'visible'.
- */
- public void setVisible(final boolean visible)
- {
- this._visible = visible;
- this._has_visible = true;
- }
-
- /**
- * 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.schemabinding.version2.Annotation
- */
- public static jalview.schemabinding.version2.Annotation unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Annotation) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.Annotation.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class AnnotationColourScheme.
- *
- * @version $Revision$ $Date$
- */
-public class AnnotationColourScheme implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _aboveThreshold.
- */
- private int _aboveThreshold;
-
- /**
- * keeps track of state for field: _aboveThreshold
- */
- private boolean _has_aboveThreshold;
-
- /**
- * Field _annotation.
- */
- private java.lang.String _annotation;
-
- /**
- * Field _minColour.
- */
- private int _minColour;
-
- /**
- * keeps track of state for field: _minColour
- */
- private boolean _has_minColour;
-
- /**
- * Field _maxColour.
- */
- private int _maxColour;
-
- /**
- * keeps track of state for field: _maxColour
- */
- private boolean _has_maxColour;
-
- /**
- * Field _colourScheme.
- */
- private java.lang.String _colourScheme;
-
- /**
- * Field _threshold.
- */
- private float _threshold;
-
- /**
- * keeps track of state for field: _threshold
- */
- private boolean _has_threshold;
-
- /**
- * Field _perSequence.
- */
- private boolean _perSequence;
-
- /**
- * keeps track of state for field: _perSequence
- */
- private boolean _has_perSequence;
-
- /**
- * Field _predefinedColours.
- */
- private boolean _predefinedColours;
-
- /**
- * keeps track of state for field: _predefinedColours
- */
- private boolean _has_predefinedColours;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AnnotationColourScheme()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteAboveThreshold()
- {
- this._has_aboveThreshold = false;
- }
-
- /**
- */
- public void deleteMaxColour()
- {
- this._has_maxColour = false;
- }
-
- /**
- */
- public void deleteMinColour()
- {
- this._has_minColour = false;
- }
-
- /**
- */
- public void deletePerSequence()
- {
- this._has_perSequence = false;
- }
-
- /**
- */
- public void deletePredefinedColours()
- {
- this._has_predefinedColours = false;
- }
-
- /**
- */
- public void deleteThreshold()
- {
- this._has_threshold = false;
- }
-
- /**
- * Returns the value of field 'aboveThreshold'.
- *
- * @return the value of field 'AboveThreshold'.
- */
- public int getAboveThreshold()
- {
- return this._aboveThreshold;
- }
-
- /**
- * Returns the value of field 'annotation'.
- *
- * @return the value of field 'Annotation'.
- */
- public java.lang.String getAnnotation()
- {
- return this._annotation;
- }
-
- /**
- * Returns the value of field 'colourScheme'.
- *
- * @return the value of field 'ColourScheme'.
- */
- public java.lang.String getColourScheme()
- {
- return this._colourScheme;
- }
-
- /**
- * Returns the value of field 'maxColour'.
- *
- * @return the value of field 'MaxColour'.
- */
- public int getMaxColour()
- {
- return this._maxColour;
- }
-
- /**
- * Returns the value of field 'minColour'.
- *
- * @return the value of field 'MinColour'.
- */
- public int getMinColour()
- {
- return this._minColour;
- }
-
- /**
- * Returns the value of field 'perSequence'.
- *
- * @return the value of field 'PerSequence'.
- */
- public boolean getPerSequence()
- {
- return this._perSequence;
- }
-
- /**
- * Returns the value of field 'predefinedColours'.
- *
- * @return the value of field 'PredefinedColours'.
- */
- public boolean getPredefinedColours()
- {
- return this._predefinedColours;
- }
-
- /**
- * Returns the value of field 'threshold'.
- *
- * @return the value of field 'Threshold'.
- */
- public float getThreshold()
- {
- return this._threshold;
- }
-
- /**
- * Method hasAboveThreshold.
- *
- * @return true if at least one AboveThreshold has been added
- */
- public boolean hasAboveThreshold()
- {
- return this._has_aboveThreshold;
- }
-
- /**
- * Method hasMaxColour.
- *
- * @return true if at least one MaxColour has been added
- */
- public boolean hasMaxColour()
- {
- return this._has_maxColour;
- }
-
- /**
- * Method hasMinColour.
- *
- * @return true if at least one MinColour has been added
- */
- public boolean hasMinColour()
- {
- return this._has_minColour;
- }
-
- /**
- * Method hasPerSequence.
- *
- * @return true if at least one PerSequence has been added
- */
- public boolean hasPerSequence()
- {
- return this._has_perSequence;
- }
-
- /**
- * Method hasPredefinedColours.
- *
- * @return true if at least one PredefinedColours has been added
- */
- public boolean hasPredefinedColours()
- {
- return this._has_predefinedColours;
- }
-
- /**
- * Method hasThreshold.
- *
- * @return true if at least one Threshold has been added
- */
- public boolean hasThreshold()
- {
- return this._has_threshold;
- }
-
- /**
- * Returns the value of field 'perSequence'.
- *
- * @return the value of field 'PerSequence'.
- */
- public boolean isPerSequence()
- {
- return this._perSequence;
- }
-
- /**
- * Returns the value of field 'predefinedColours'.
- *
- * @return the value of field 'PredefinedColours'.
- */
- public boolean isPredefinedColours()
- {
- return this._predefinedColours;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'aboveThreshold'.
- *
- * @param aboveThreshold
- * the value of field 'aboveThreshold'.
- */
- public void setAboveThreshold(final int aboveThreshold)
- {
- this._aboveThreshold = aboveThreshold;
- this._has_aboveThreshold = true;
- }
-
- /**
- * Sets the value of field 'annotation'.
- *
- * @param annotation
- * the value of field 'annotation'.
- */
- public void setAnnotation(final java.lang.String annotation)
- {
- this._annotation = annotation;
- }
-
- /**
- * Sets the value of field 'colourScheme'.
- *
- * @param colourScheme
- * the value of field 'colourScheme'.
- */
- public void setColourScheme(final java.lang.String colourScheme)
- {
- this._colourScheme = colourScheme;
- }
-
- /**
- * Sets the value of field 'maxColour'.
- *
- * @param maxColour
- * the value of field 'maxColour'.
- */
- public void setMaxColour(final int maxColour)
- {
- this._maxColour = maxColour;
- this._has_maxColour = true;
- }
-
- /**
- * Sets the value of field 'minColour'.
- *
- * @param minColour
- * the value of field 'minColour'.
- */
- public void setMinColour(final int minColour)
- {
- this._minColour = minColour;
- this._has_minColour = true;
- }
-
- /**
- * Sets the value of field 'perSequence'.
- *
- * @param perSequence
- * the value of field 'perSequence'.
- */
- public void setPerSequence(final boolean perSequence)
- {
- this._perSequence = perSequence;
- this._has_perSequence = true;
- }
-
- /**
- * Sets the value of field 'predefinedColours'.
- *
- * @param predefinedColours
- * the value of field 'predefinedColours'.
- */
- public void setPredefinedColours(final boolean predefinedColours)
- {
- this._predefinedColours = predefinedColours;
- this._has_predefinedColours = true;
- }
-
- /**
- * Sets the value of field 'threshold'.
- *
- * @param threshold
- * the value of field 'threshold'.
- */
- public void setThreshold(final float threshold)
- {
- this._threshold = threshold;
- this._has_threshold = true;
- }
-
- /**
- * 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.schemabinding.version2.AnnotationColourScheme
- */
- public static jalview.schemabinding.version2.AnnotationColourScheme unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.AnnotationColourScheme) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.AnnotationColourScheme.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class AnnotationColours.
- *
- * @version $Revision$ $Date$
- */
-public class AnnotationColours extends AnnotationColourScheme implements
- java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AnnotationColours()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.schemabinding.version2.AnnotationColourScheme
- */
- public static jalview.schemabinding.version2.AnnotationColourScheme unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.AnnotationColourScheme) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.AnnotationColours.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class AnnotationElement.
- *
- * @version $Revision$ $Date$
- */
-public class AnnotationElement implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _position.
- */
- private int _position;
-
- /**
- * keeps track of state for field: _position
- */
- private boolean _has_position;
-
- /**
- * Field _colour.
- */
- private int _colour;
-
- /**
- * keeps track of state for field: _colour
- */
- private boolean _has_colour;
-
- /**
- * Field _displayCharacter.
- */
- private java.lang.String _displayCharacter;
-
- /**
- * Field _description.
- */
- private java.lang.String _description;
-
- /**
- * Field _secondaryStructure.
- */
- private java.lang.String _secondaryStructure;
-
- /**
- * Field _value.
- */
- private float _value;
-
- /**
- * keeps track of state for field: _value
- */
- private boolean _has_value;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AnnotationElement()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteColour()
- {
- this._has_colour = false;
- }
-
- /**
- */
- public void deletePosition()
- {
- this._has_position = false;
- }
-
- /**
- */
- public void deleteValue()
- {
- this._has_value = false;
- }
-
- /**
- * Returns the value of field 'colour'.
- *
- * @return the value of field 'Colour'.
- */
- public int getColour()
- {
- return this._colour;
- }
-
- /**
- * Returns the value of field 'description'.
- *
- * @return the value of field 'Description'.
- */
- public java.lang.String getDescription()
- {
- return this._description;
- }
-
- /**
- * Returns the value of field 'displayCharacter'.
- *
- * @return the value of field 'DisplayCharacter'.
- */
- public java.lang.String getDisplayCharacter()
- {
- return this._displayCharacter;
- }
-
- /**
- * Returns the value of field 'position'.
- *
- * @return the value of field 'Position'.
- */
- public int getPosition()
- {
- return this._position;
- }
-
- /**
- * Returns the value of field 'secondaryStructure'.
- *
- * @return the value of field 'SecondaryStructure'.
- */
- public java.lang.String getSecondaryStructure()
- {
- return this._secondaryStructure;
- }
-
- /**
- * Returns the value of field 'value'.
- *
- * @return the value of field 'Value'.
- */
- public float getValue()
- {
- return this._value;
- }
-
- /**
- * Method hasColour.
- *
- * @return true if at least one Colour has been added
- */
- public boolean hasColour()
- {
- return this._has_colour;
- }
-
- /**
- * Method hasPosition.
- *
- * @return true if at least one Position has been added
- */
- public boolean hasPosition()
- {
- return this._has_position;
- }
-
- /**
- * Method hasValue.
- *
- * @return true if at least one Value has been added
- */
- public boolean hasValue()
- {
- return this._has_value;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'colour'.
- *
- * @param colour
- * the value of field 'colour'.
- */
- public void setColour(final int colour)
- {
- this._colour = colour;
- this._has_colour = true;
- }
-
- /**
- * Sets the value of field 'description'.
- *
- * @param description
- * the value of field 'description'.
- */
- public void setDescription(final java.lang.String description)
- {
- this._description = description;
- }
-
- /**
- * Sets the value of field 'displayCharacter'.
- *
- * @param displayCharacter
- * the value of field 'displayCharacter'
- */
- public void setDisplayCharacter(final java.lang.String displayCharacter)
- {
- this._displayCharacter = displayCharacter;
- }
-
- /**
- * Sets the value of field 'position'.
- *
- * @param position
- * the value of field 'position'.
- */
- public void setPosition(final int position)
- {
- this._position = position;
- this._has_position = true;
- }
-
- /**
- * Sets the value of field 'secondaryStructure'.
- *
- * @param secondaryStructure
- * the value of field 'secondaryStructure'.
- */
- public void setSecondaryStructure(
- final java.lang.String secondaryStructure)
- {
- this._secondaryStructure = secondaryStructure;
- }
-
- /**
- * Sets the value of field 'value'.
- *
- * @param value
- * the value of field 'value'.
- */
- public void setValue(final float value)
- {
- this._value = value;
- this._has_value = true;
- }
-
- /**
- * 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.schemabinding.version2.AnnotationElement
- */
- public static jalview.schemabinding.version2.AnnotationElement unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.AnnotationElement) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.AnnotationElement.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class CalcIdParam.
- *
- * @version $Revision$ $Date$
- */
-public class CalcIdParam extends WebServiceParameterSet implements
- java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * handle for the calculation which uses this parameter set
- *
- */
- private java.lang.String _calcId;
-
- /**
- * should the calculation be performed immediately after loading in order to
- * refresh results
- *
- */
- private boolean _needsUpdate = false;
-
- /**
- * keeps track of state for field: _needsUpdate
- */
- private boolean _has_needsUpdate;
-
- /**
- * should the calculation be automatically performed on edits
- *
- */
- private boolean _autoUpdate;
-
- /**
- * keeps track of state for field: _autoUpdate
- */
- private boolean _has_autoUpdate;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public CalcIdParam()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteAutoUpdate()
- {
- this._has_autoUpdate = false;
- }
-
- /**
- */
- public void deleteNeedsUpdate()
- {
- this._has_needsUpdate = false;
- }
-
- /**
- * Returns the value of field 'autoUpdate'. The field 'autoUpdate' has the
- * following description: should the calculation be automatically performed on
- * edits
- *
- *
- * @return the value of field 'AutoUpdate'.
- */
- public boolean getAutoUpdate()
- {
- return this._autoUpdate;
- }
-
- /**
- * Returns the value of field 'calcId'. The field 'calcId' has the following
- * description: handle for the calculation which uses this parameter set
- *
- *
- * @return the value of field 'CalcId'.
- */
- public java.lang.String getCalcId()
- {
- return this._calcId;
- }
-
- /**
- * Returns the value of field 'needsUpdate'. The field 'needsUpdate' has the
- * following description: should the calculation be performed immediately
- * after loading in order to refresh results
- *
- *
- * @return the value of field 'NeedsUpdate'.
- */
- public boolean getNeedsUpdate()
- {
- return this._needsUpdate;
- }
-
- /**
- * Method hasAutoUpdate.
- *
- * @return true if at least one AutoUpdate has been added
- */
- public boolean hasAutoUpdate()
- {
- return this._has_autoUpdate;
- }
-
- /**
- * Method hasNeedsUpdate.
- *
- * @return true if at least one NeedsUpdate has been added
- */
- public boolean hasNeedsUpdate()
- {
- return this._has_needsUpdate;
- }
-
- /**
- * Returns the value of field 'autoUpdate'. The field 'autoUpdate' has the
- * following description: should the calculation be automatically performed on
- * edits
- *
- *
- * @return the value of field 'AutoUpdate'.
- */
- public boolean isAutoUpdate()
- {
- return this._autoUpdate;
- }
-
- /**
- * Returns the value of field 'needsUpdate'. The field 'needsUpdate' has the
- * following description: should the calculation be performed immediately
- * after loading in order to refresh results
- *
- *
- * @return the value of field 'NeedsUpdate'.
- */
- public boolean isNeedsUpdate()
- {
- return this._needsUpdate;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'autoUpdate'. The field 'autoUpdate' has the
- * following description: should the calculation be automatically performed on
- * edits
- *
- *
- * @param autoUpdate
- * the value of field 'autoUpdate'.
- */
- public void setAutoUpdate(final boolean autoUpdate)
- {
- this._autoUpdate = autoUpdate;
- this._has_autoUpdate = true;
- }
-
- /**
- * Sets the value of field 'calcId'. The field 'calcId' has the following
- * description: handle for the calculation which uses this parameter set
- *
- *
- * @param calcId
- * the value of field 'calcId'.
- */
- public void setCalcId(final java.lang.String calcId)
- {
- this._calcId = calcId;
- }
-
- /**
- * Sets the value of field 'needsUpdate'. The field 'needsUpdate' has the
- * following description: should the calculation be performed immediately
- * after loading in order to refresh results
- *
- *
- * @param needsUpdate
- * the value of field 'needsUpdate'.
- */
- public void setNeedsUpdate(final boolean needsUpdate)
- {
- this._needsUpdate = needsUpdate;
- this._has_needsUpdate = true;
- }
-
- /**
- * 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.schemabinding.version2.CalcIdParam
- */
- public static jalview.schemabinding.version2.CalcIdParam unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.CalcIdParam) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.CalcIdParam.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Colour.
- *
- * @version $Revision$ $Date$
- */
-public class Colour implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Single letter residue code for an alignment colour scheme, or feature type
- * for a feature colour scheme
- */
- private java.lang.String _name;
-
- /**
- * Field _RGB.
- */
- private java.lang.String _RGB;
-
- /**
- * Field _minRGB.
- */
- private java.lang.String _minRGB;
-
- /**
- * Field _noValueColour.
- */
- private jalview.schemabinding.version2.types.NoValueColour _noValueColour = jalview.schemabinding.version2.types.NoValueColour
- .valueOf("Min");
-
- /**
- * Field _threshType.
- */
- private jalview.schemabinding.version2.types.ColourThreshTypeType _threshType;
-
- /**
- * Field _threshold.
- */
- private float _threshold;
-
- /**
- * keeps track of state for field: _threshold
- */
- private boolean _has_threshold;
-
- /**
- * Field _max.
- */
- private float _max;
-
- /**
- * keeps track of state for field: _max
- */
- private boolean _has_max;
-
- /**
- * Field _min.
- */
- private float _min;
-
- /**
- * keeps track of state for field: _min
- */
- private boolean _has_min;
-
- /**
- * Field _colourByLabel.
- */
- private boolean _colourByLabel;
-
- /**
- * keeps track of state for field: _colourByLabel
- */
- private boolean _has_colourByLabel;
-
- /**
- * Field _autoScale.
- */
- private boolean _autoScale;
-
- /**
- * keeps track of state for field: _autoScale
- */
- private boolean _has_autoScale;
-
- /**
- * name of feature attribute to colour by, or attribute and sub-attribute
- */
- private java.util.Vector _attributeNameList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Colour()
- {
- super();
- setNoValueColour(jalview.schemabinding.version2.types.NoValueColour
- .valueOf("Min"));
- this._attributeNameList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.addElement(vAttributeName);
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.add(index, vAttributeName);
- }
-
- /**
- */
- public void deleteAutoScale()
- {
- this._has_autoScale = false;
- }
-
- /**
- */
- public void deleteColourByLabel()
- {
- this._has_colourByLabel = false;
- }
-
- /**
- */
- public void deleteMax()
- {
- this._has_max = false;
- }
-
- /**
- */
- public void deleteMin()
- {
- this._has_min = false;
- }
-
- /**
- */
- public void deleteThreshold()
- {
- this._has_threshold = false;
- }
-
- /**
- * Method enumerateAttributeName.
- *
- * @return an Enumeration over all java.lang.String elements
- */
- public java.util.Enumeration enumerateAttributeName()
- {
- return this._attributeNameList.elements();
- }
-
- /**
- * Method getAttributeName.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the java.lang.String at the given index
- */
- public java.lang.String getAttributeName(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("getAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- return (java.lang.String) _attributeNameList.get(index);
- }
-
- /**
- * Method getAttributeName.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public java.lang.String[] getAttributeName()
- {
- java.lang.String[] array = new java.lang.String[0];
- return (java.lang.String[]) this._attributeNameList.toArray(array);
- }
-
- /**
- * Method getAttributeNameCount.
- *
- * @return the size of this collection
- */
- public int getAttributeNameCount()
- {
- return this._attributeNameList.size();
- }
-
- /**
- * Returns the value of field 'autoScale'.
- *
- * @return the value of field 'AutoScale'.
- */
- public boolean getAutoScale()
- {
- return this._autoScale;
- }
-
- /**
- * Returns the value of field 'colourByLabel'.
- *
- * @return the value of field 'ColourByLabel'.
- */
- public boolean getColourByLabel()
- {
- return this._colourByLabel;
- }
-
- /**
- * Returns the value of field 'max'.
- *
- * @return the value of field 'Max'.
- */
- public float getMax()
- {
- return this._max;
- }
-
- /**
- * Returns the value of field 'min'.
- *
- * @return the value of field 'Min'.
- */
- public float getMin()
- {
- return this._min;
- }
-
- /**
- * Returns the value of field 'minRGB'.
- *
- * @return the value of field 'MinRGB'.
- */
- public java.lang.String getMinRGB()
- {
- return this._minRGB;
- }
-
- /**
- * Returns the value of field 'name'. The field 'name' has the following
- * description: Single letter residue code for an alignment colour scheme, or
- * feature type for a feature colour scheme
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Returns the value of field 'noValueColour'.
- *
- * @return the value of field 'NoValueColour'.
- */
- public jalview.schemabinding.version2.types.NoValueColour getNoValueColour()
- {
- return this._noValueColour;
- }
-
- /**
- * Returns the value of field 'RGB'.
- *
- * @return the value of field 'RGB'.
- */
- public java.lang.String getRGB()
- {
- return this._RGB;
- }
-
- /**
- * Returns the value of field 'threshType'.
- *
- * @return the value of field 'ThreshType'.
- */
- public jalview.schemabinding.version2.types.ColourThreshTypeType getThreshType()
- {
- return this._threshType;
- }
-
- /**
- * Returns the value of field 'threshold'.
- *
- * @return the value of field 'Threshold'.
- */
- public float getThreshold()
- {
- return this._threshold;
- }
-
- /**
- * Method hasAutoScale.
- *
- * @return true if at least one AutoScale has been added
- */
- public boolean hasAutoScale()
- {
- return this._has_autoScale;
- }
-
- /**
- * Method hasColourByLabel.
- *
- * @return true if at least one ColourByLabel has been added
- */
- public boolean hasColourByLabel()
- {
- return this._has_colourByLabel;
- }
-
- /**
- * Method hasMax.
- *
- * @return true if at least one Max has been added
- */
- public boolean hasMax()
- {
- return this._has_max;
- }
-
- /**
- * Method hasMin.
- *
- * @return true if at least one Min has been added
- */
- public boolean hasMin()
- {
- return this._has_min;
- }
-
- /**
- * Method hasThreshold.
- *
- * @return true if at least one Threshold has been added
- */
- public boolean hasThreshold()
- {
- return this._has_threshold;
- }
-
- /**
- * Returns the value of field 'autoScale'.
- *
- * @return the value of field 'AutoScale'.
- */
- public boolean isAutoScale()
- {
- return this._autoScale;
- }
-
- /**
- * Returns the value of field 'colourByLabel'.
- *
- * @return the value of field 'ColourByLabel'.
- */
- public boolean isColourByLabel()
- {
- return this._colourByLabel;
- }
-
- /**
- * 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 removeAllAttributeName()
- {
- this._attributeNameList.clear();
- }
-
- /**
- * Method removeAttributeName.
- *
- * @param vAttributeName
- * @return true if the object was removed from the collection.
- */
- public boolean removeAttributeName(final java.lang.String vAttributeName)
- {
- boolean removed = _attributeNameList.remove(vAttributeName);
- return removed;
- }
-
- /**
- * Method removeAttributeNameAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public java.lang.String removeAttributeNameAt(final int index)
- {
- java.lang.Object obj = this._attributeNameList.remove(index);
- return (java.lang.String) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("setAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- this._attributeNameList.set(index, vAttributeName);
- }
-
- /**
- *
- *
- * @param vAttributeNameArray
- */
- public void setAttributeName(final java.lang.String[] vAttributeNameArray)
- {
- // -- copy array
- _attributeNameList.clear();
-
- for (int i = 0; i < vAttributeNameArray.length; i++)
- {
- this._attributeNameList.add(vAttributeNameArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'autoScale'.
- *
- * @param autoScale
- * the value of field 'autoScale'.
- */
- public void setAutoScale(final boolean autoScale)
- {
- this._autoScale = autoScale;
- this._has_autoScale = true;
- }
-
- /**
- * Sets the value of field 'colourByLabel'.
- *
- * @param colourByLabel
- * the value of field 'colourByLabel'.
- */
- public void setColourByLabel(final boolean colourByLabel)
- {
- this._colourByLabel = colourByLabel;
- this._has_colourByLabel = true;
- }
-
- /**
- * Sets the value of field 'max'.
- *
- * @param max
- * the value of field 'max'.
- */
- public void setMax(final float max)
- {
- this._max = max;
- this._has_max = true;
- }
-
- /**
- * Sets the value of field 'min'.
- *
- * @param min
- * the value of field 'min'.
- */
- public void setMin(final float min)
- {
- this._min = min;
- this._has_min = true;
- }
-
- /**
- * Sets the value of field 'minRGB'.
- *
- * @param minRGB
- * the value of field 'minRGB'.
- */
- public void setMinRGB(final java.lang.String minRGB)
- {
- this._minRGB = minRGB;
- }
-
- /**
- * Sets the value of field 'name'. The field 'name' has the following
- * description: Single letter residue code for an alignment colour scheme, or
- * feature type for a feature colour scheme
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * Sets the value of field 'noValueColour'.
- *
- * @param noValueColour
- * the value of field 'noValueColour'.
- */
- public void setNoValueColour(
- final jalview.schemabinding.version2.types.NoValueColour noValueColour)
- {
- this._noValueColour = noValueColour;
- }
-
- /**
- * Sets the value of field 'RGB'.
- *
- * @param RGB
- * the value of field 'RGB'.
- */
- public void setRGB(final java.lang.String RGB)
- {
- this._RGB = RGB;
- }
-
- /**
- * Sets the value of field 'threshType'.
- *
- * @param threshType
- * the value of field 'threshType'.
- */
- public void setThreshType(
- final jalview.schemabinding.version2.types.ColourThreshTypeType threshType)
- {
- this._threshType = threshType;
- }
-
- /**
- * Sets the value of field 'threshold'.
- *
- * @param threshold
- * the value of field 'threshold'.
- */
- public void setThreshold(final float threshold)
- {
- this._threshold = threshold;
- this._has_threshold = true;
- }
-
- /**
- * 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.schemabinding.version2.Colour
- */
- public static jalview.schemabinding.version2.Colour unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Colour) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.Colour.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class CompoundMatcher.
- *
- * @version $Revision$ $Date$
- */
-public class CompoundMatcher implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * If true, matchers are AND-ed, if false they are OR-ed
- */
- private boolean _and;
-
- /**
- * keeps track of state for field: _and
- */
- private boolean _has_and;
-
- /**
- * Field _matcherSetList.
- */
- private java.util.Vector _matcherSetList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public CompoundMatcher()
- {
- super();
- this._matcherSetList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vMatcherSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addMatcherSet(
- final jalview.schemabinding.version2.MatcherSet vMatcherSet)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._matcherSetList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addMatcherSet has a maximum of 2");
- }
-
- this._matcherSetList.addElement(vMatcherSet);
- }
-
- /**
- *
- *
- * @param index
- * @param vMatcherSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addMatcherSet(final int index,
- final jalview.schemabinding.version2.MatcherSet vMatcherSet)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._matcherSetList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addMatcherSet has a maximum of 2");
- }
-
- this._matcherSetList.add(index, vMatcherSet);
- }
-
- /**
- */
- public void deleteAnd()
- {
- this._has_and = false;
- }
-
- /**
- * Method enumerateMatcherSet.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.MatcherSet
- * elements
- */
- public java.util.Enumeration enumerateMatcherSet()
- {
- return this._matcherSetList.elements();
- }
-
- /**
- * Returns the value of field 'and'. The field 'and' has the following
- * description: If true, matchers are AND-ed, if false they are OR-ed
- *
- * @return the value of field 'And'.
- */
- public boolean getAnd()
- {
- return this._and;
- }
-
- /**
- * Method getMatcherSet.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.MatcherSet at the
- * given index
- */
- public jalview.schemabinding.version2.MatcherSet getMatcherSet(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._matcherSetList.size())
- {
- throw new IndexOutOfBoundsException(
- "getMatcherSet: Index value '" + index + "' not in range [0.."
- + (this._matcherSetList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.MatcherSet) _matcherSetList
- .get(index);
- }
-
- /**
- * Method getMatcherSet.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.MatcherSet[] getMatcherSet()
- {
- jalview.schemabinding.version2.MatcherSet[] array = new jalview.schemabinding.version2.MatcherSet[0];
- return (jalview.schemabinding.version2.MatcherSet[]) this._matcherSetList
- .toArray(array);
- }
-
- /**
- * Method getMatcherSetCount.
- *
- * @return the size of this collection
- */
- public int getMatcherSetCount()
- {
- return this._matcherSetList.size();
- }
-
- /**
- * Method hasAnd.
- *
- * @return true if at least one And has been added
- */
- public boolean hasAnd()
- {
- return this._has_and;
- }
-
- /**
- * Returns the value of field 'and'. The field 'and' has the following
- * description: If true, matchers are AND-ed, if false they are OR-ed
- *
- * @return the value of field 'And'.
- */
- public boolean isAnd()
- {
- return this._and;
- }
-
- /**
- * 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 removeAllMatcherSet()
- {
- this._matcherSetList.clear();
- }
-
- /**
- * Method removeMatcherSet.
- *
- * @param vMatcherSet
- * @return true if the object was removed from the collection.
- */
- public boolean removeMatcherSet(
- final jalview.schemabinding.version2.MatcherSet vMatcherSet)
- {
- boolean removed = _matcherSetList.remove(vMatcherSet);
- return removed;
- }
-
- /**
- * Method removeMatcherSetAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.MatcherSet removeMatcherSetAt(
- final int index)
- {
- java.lang.Object obj = this._matcherSetList.remove(index);
- return (jalview.schemabinding.version2.MatcherSet) obj;
- }
-
- /**
- * Sets the value of field 'and'. The field 'and' has the following
- * description: If true, matchers are AND-ed, if false they are OR-ed
- *
- * @param and
- * the value of field 'and'.
- */
- public void setAnd(final boolean and)
- {
- this._and = and;
- this._has_and = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vMatcherSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setMatcherSet(final int index,
- final jalview.schemabinding.version2.MatcherSet vMatcherSet)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._matcherSetList.size())
- {
- throw new IndexOutOfBoundsException(
- "setMatcherSet: Index value '" + index + "' not in range [0.."
- + (this._matcherSetList.size() - 1) + "]");
- }
-
- this._matcherSetList.set(index, vMatcherSet);
- }
-
- /**
- *
- *
- * @param vMatcherSetArray
- */
- public void setMatcherSet(
- final jalview.schemabinding.version2.MatcherSet[] vMatcherSetArray)
- {
- // -- copy array
- _matcherSetList.clear();
-
- for (int i = 0; i < vMatcherSetArray.length; i++)
- {
- this._matcherSetList.add(vMatcherSetArray[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.schemabinding.version2.CompoundMatcher
- */
- public static jalview.schemabinding.version2.CompoundMatcher unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.CompoundMatcher) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.CompoundMatcher.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class DBRef.
- *
- * @version $Revision$ $Date$
- */
-public class DBRef implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _source.
- */
- private java.lang.String _source;
-
- /**
- * Field _version.
- */
- private java.lang.String _version;
-
- /**
- * Field _accessionId.
- */
- private java.lang.String _accessionId;
-
- /**
- * Field _mapping.
- */
- private jalview.schemabinding.version2.Mapping _mapping;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public DBRef()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'accessionId'.
- *
- * @return the value of field 'AccessionId'.
- */
- public java.lang.String getAccessionId()
- {
- return this._accessionId;
- }
-
- /**
- * Returns the value of field 'mapping'.
- *
- * @return the value of field 'Mapping'.
- */
- public jalview.schemabinding.version2.Mapping getMapping()
- {
- return this._mapping;
- }
-
- /**
- * Returns the value of field 'source'.
- *
- * @return the value of field 'Source'.
- */
- public java.lang.String getSource()
- {
- return this._source;
- }
-
- /**
- * Returns the value of field 'version'.
- *
- * @return the value of field 'Version'.
- */
- public java.lang.String getVersion()
- {
- return this._version;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'accessionId'.
- *
- * @param accessionId
- * the value of field 'accessionId'.
- */
- public void setAccessionId(final java.lang.String accessionId)
- {
- this._accessionId = accessionId;
- }
-
- /**
- * Sets the value of field 'mapping'.
- *
- * @param mapping
- * the value of field 'mapping'.
- */
- public void setMapping(
- final jalview.schemabinding.version2.Mapping mapping)
- {
- this._mapping = mapping;
- }
-
- /**
- * Sets the value of field 'source'.
- *
- * @param source
- * the value of field 'source'.
- */
- public void setSource(final java.lang.String source)
- {
- this._source = source;
- }
-
- /**
- * Sets the value of field 'version'.
- *
- * @param version
- * the value of field 'version'.
- */
- public void setVersion(final java.lang.String version)
- {
- this._version = version;
- }
-
- /**
- * 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.schemabinding.version2.DBRef
- */
- public static jalview.schemabinding.version2.DBRef unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.DBRef) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.DBRef.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Feature.
- *
- * @version $Revision$ $Date$
- */
-public class Feature implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _begin.
- */
- private int _begin;
-
- /**
- * keeps track of state for field: _begin
- */
- private boolean _has_begin;
-
- /**
- * Field _end.
- */
- private int _end;
-
- /**
- * keeps track of state for field: _end
- */
- private boolean _has_end;
-
- /**
- * Field _type.
- */
- private java.lang.String _type;
-
- /**
- * Field _description.
- */
- private java.lang.String _description;
-
- /**
- * Field _status.
- */
- private java.lang.String _status;
-
- /**
- * Field _featureGroup.
- */
- private java.lang.String _featureGroup;
-
- /**
- * Field _score.
- */
- private float _score;
-
- /**
- * keeps track of state for field: _score
- */
- private boolean _has_score;
-
- /**
- * Field _otherDataList.
- */
- private java.util.Vector _otherDataList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Feature()
- {
- super();
- this._otherDataList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vOtherData
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addOtherData(
- final jalview.schemabinding.version2.OtherData vOtherData)
- throws java.lang.IndexOutOfBoundsException
- {
- this._otherDataList.addElement(vOtherData);
- }
-
- /**
- *
- *
- * @param index
- * @param vOtherData
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addOtherData(final int index,
- final jalview.schemabinding.version2.OtherData vOtherData)
- throws java.lang.IndexOutOfBoundsException
- {
- this._otherDataList.add(index, vOtherData);
- }
-
- /**
- */
- public void deleteBegin()
- {
- this._has_begin = false;
- }
-
- /**
- */
- public void deleteEnd()
- {
- this._has_end = false;
- }
-
- /**
- */
- public void deleteScore()
- {
- this._has_score = false;
- }
-
- /**
- * Method enumerateOtherData.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.OtherData
- * elements
- */
- public java.util.Enumeration enumerateOtherData()
- {
- return this._otherDataList.elements();
- }
-
- /**
- * Returns the value of field 'begin'.
- *
- * @return the value of field 'Begin'.
- */
- public int getBegin()
- {
- return this._begin;
- }
-
- /**
- * Returns the value of field 'description'.
- *
- * @return the value of field 'Description'.
- */
- public java.lang.String getDescription()
- {
- return this._description;
- }
-
- /**
- * Returns the value of field 'end'.
- *
- * @return the value of field 'End'.
- */
- public int getEnd()
- {
- return this._end;
- }
-
- /**
- * Returns the value of field 'featureGroup'.
- *
- * @return the value of field 'FeatureGroup'.
- */
- public java.lang.String getFeatureGroup()
- {
- return this._featureGroup;
- }
-
- /**
- * Method getOtherData.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.OtherData at the
- * given index
- */
- public jalview.schemabinding.version2.OtherData getOtherData(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._otherDataList.size())
- {
- throw new IndexOutOfBoundsException("getOtherData: Index value '"
- + index + "' not in range [0.."
- + (this._otherDataList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.OtherData) _otherDataList
- .get(index);
- }
-
- /**
- * Method getOtherData.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.OtherData[] getOtherData()
- {
- jalview.schemabinding.version2.OtherData[] array = new jalview.schemabinding.version2.OtherData[0];
- return (jalview.schemabinding.version2.OtherData[]) this._otherDataList
- .toArray(array);
- }
-
- /**
- * Method getOtherDataCount.
- *
- * @return the size of this collection
- */
- public int getOtherDataCount()
- {
- return this._otherDataList.size();
- }
-
- /**
- * Returns the value of field 'score'.
- *
- * @return the value of field 'Score'.
- */
- public float getScore()
- {
- return this._score;
- }
-
- /**
- * Returns the value of field 'status'.
- *
- * @return the value of field 'Status'.
- */
- public java.lang.String getStatus()
- {
- return this._status;
- }
-
- /**
- * Returns the value of field 'type'.
- *
- * @return the value of field 'Type'.
- */
- public java.lang.String getType()
- {
- return this._type;
- }
-
- /**
- * Method hasBegin.
- *
- * @return true if at least one Begin has been added
- */
- public boolean hasBegin()
- {
- return this._has_begin;
- }
-
- /**
- * Method hasEnd.
- *
- * @return true if at least one End has been added
- */
- public boolean hasEnd()
- {
- return this._has_end;
- }
-
- /**
- * Method hasScore.
- *
- * @return true if at least one Score has been added
- */
- public boolean hasScore()
- {
- return this._has_score;
- }
-
- /**
- * 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 removeAllOtherData()
- {
- this._otherDataList.clear();
- }
-
- /**
- * Method removeOtherData.
- *
- * @param vOtherData
- * @return true if the object was removed from the collection.
- */
- public boolean removeOtherData(
- final jalview.schemabinding.version2.OtherData vOtherData)
- {
- boolean removed = _otherDataList.remove(vOtherData);
- return removed;
- }
-
- /**
- * Method removeOtherDataAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.OtherData removeOtherDataAt(
- final int index)
- {
- java.lang.Object obj = this._otherDataList.remove(index);
- return (jalview.schemabinding.version2.OtherData) obj;
- }
-
- /**
- * Sets the value of field 'begin'.
- *
- * @param begin
- * the value of field 'begin'.
- */
- public void setBegin(final int begin)
- {
- this._begin = begin;
- this._has_begin = true;
- }
-
- /**
- * Sets the value of field 'description'.
- *
- * @param description
- * the value of field 'description'.
- */
- public void setDescription(final java.lang.String description)
- {
- this._description = description;
- }
-
- /**
- * Sets the value of field 'end'.
- *
- * @param end
- * the value of field 'end'.
- */
- public void setEnd(final int end)
- {
- this._end = end;
- this._has_end = true;
- }
-
- /**
- * Sets the value of field 'featureGroup'.
- *
- * @param featureGroup
- * the value of field 'featureGroup'.
- */
- public void setFeatureGroup(final java.lang.String featureGroup)
- {
- this._featureGroup = featureGroup;
- }
-
- /**
- *
- *
- * @param index
- * @param vOtherData
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setOtherData(final int index,
- final jalview.schemabinding.version2.OtherData vOtherData)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._otherDataList.size())
- {
- throw new IndexOutOfBoundsException("setOtherData: Index value '"
- + index + "' not in range [0.."
- + (this._otherDataList.size() - 1) + "]");
- }
-
- this._otherDataList.set(index, vOtherData);
- }
-
- /**
- *
- *
- * @param vOtherDataArray
- */
- public void setOtherData(
- final jalview.schemabinding.version2.OtherData[] vOtherDataArray)
- {
- // -- copy array
- _otherDataList.clear();
-
- for (int i = 0; i < vOtherDataArray.length; i++)
- {
- this._otherDataList.add(vOtherDataArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'score'.
- *
- * @param score
- * the value of field 'score'.
- */
- public void setScore(final float score)
- {
- this._score = score;
- this._has_score = true;
- }
-
- /**
- * Sets the value of field 'status'.
- *
- * @param status
- * the value of field 'status'.
- */
- public void setStatus(final java.lang.String status)
- {
- this._status = status;
- }
-
- /**
- * Sets the value of field 'type'.
- *
- * @param type
- * the value of field 'type'.
- */
- public void setType(final java.lang.String type)
- {
- this._type = type;
- }
-
- /**
- * 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.schemabinding.version2.Featur
- */
- public static jalview.schemabinding.version2.Feature unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Feature) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.Feature.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class FeatureMatcher.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureMatcher implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _by.
- */
- private jalview.schemabinding.version2.types.FeatureMatcherByType _by;
-
- /**
- * name of feature attribute to filter on, or attribute and sub-attribute
- */
- private java.util.Vector _attributeNameList;
-
- /**
- * Field _condition.
- */
- private java.lang.String _condition;
-
- /**
- * Field _value.
- */
- private java.lang.String _value;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureMatcher()
- {
- super();
- this._attributeNameList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.addElement(vAttributeName);
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.add(index, vAttributeName);
- }
-
- /**
- * Method enumerateAttributeName.
- *
- * @return an Enumeration over all java.lang.String elements
- */
- public java.util.Enumeration enumerateAttributeName()
- {
- return this._attributeNameList.elements();
- }
-
- /**
- * Method getAttributeName.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the java.lang.String at the given index
- */
- public java.lang.String getAttributeName(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("getAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- return (java.lang.String) _attributeNameList.get(index);
- }
-
- /**
- * Method getAttributeName.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public java.lang.String[] getAttributeName()
- {
- java.lang.String[] array = new java.lang.String[0];
- return (java.lang.String[]) this._attributeNameList.toArray(array);
- }
-
- /**
- * Method getAttributeNameCount.
- *
- * @return the size of this collection
- */
- public int getAttributeNameCount()
- {
- return this._attributeNameList.size();
- }
-
- /**
- * Returns the value of field 'by'.
- *
- * @return the value of field 'By'.
- */
- public jalview.schemabinding.version2.types.FeatureMatcherByType getBy()
- {
- return this._by;
- }
-
- /**
- * Returns the value of field 'condition'.
- *
- * @return the value of field 'Condition'.
- */
- public java.lang.String getCondition()
- {
- return this._condition;
- }
-
- /**
- * Returns the value of field 'value'.
- *
- * @return the value of field 'Value'.
- */
- public java.lang.String getValue()
- {
- return this._value;
- }
-
- /**
- * 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 removeAllAttributeName()
- {
- this._attributeNameList.clear();
- }
-
- /**
- * Method removeAttributeName.
- *
- * @param vAttributeName
- * @return true if the object was removed from the collection.
- */
- public boolean removeAttributeName(final java.lang.String vAttributeName)
- {
- boolean removed = _attributeNameList.remove(vAttributeName);
- return removed;
- }
-
- /**
- * Method removeAttributeNameAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public java.lang.String removeAttributeNameAt(final int index)
- {
- java.lang.Object obj = this._attributeNameList.remove(index);
- return (java.lang.String) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("setAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- this._attributeNameList.set(index, vAttributeName);
- }
-
- /**
- *
- *
- * @param vAttributeNameArray
- */
- public void setAttributeName(final java.lang.String[] vAttributeNameArray)
- {
- // -- copy array
- _attributeNameList.clear();
-
- for (int i = 0; i < vAttributeNameArray.length; i++)
- {
- this._attributeNameList.add(vAttributeNameArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'by'.
- *
- * @param by
- * the value of field 'by'.
- */
- public void setBy(
- final jalview.schemabinding.version2.types.FeatureMatcherByType by)
- {
- this._by = by;
- }
-
- /**
- * Sets the value of field 'condition'.
- *
- * @param condition
- * the value of field 'condition'.
- */
- public void setCondition(final java.lang.String condition)
- {
- this._condition = condition;
- }
-
- /**
- * Sets the value of field 'value'.
- *
- * @param value
- * the value of field 'value'.
- */
- public void setValue(final java.lang.String value)
- {
- this._value = value;
- }
-
- /**
- * 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.schemabinding.version2.FeatureMatcher
- */
- public static jalview.schemabinding.version2.FeatureMatcher unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.FeatureMatcher) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.FeatureMatcher.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * A feature match condition, which may be simple or compound
- *
- * @version $Revision$ $Date$
- */
-public class FeatureMatcherSet implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Internal choice value storage
- */
- private java.lang.Object _choiceValue;
-
- /**
- * Field _matchCondition.
- */
- private MatchCondition _matchCondition;
-
- /**
- * Field _compoundMatcher.
- */
- private CompoundMatcher _compoundMatcher;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureMatcherSet()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'choiceValue'. The field 'choiceValue' has the
- * following description: Internal choice value storage
- *
- * @return the value of field 'ChoiceValue'.
- */
- public java.lang.Object getChoiceValue()
- {
- return this._choiceValue;
- }
-
- /**
- * Returns the value of field 'compoundMatcher'.
- *
- * @return the value of field 'CompoundMatcher'.
- */
- public CompoundMatcher getCompoundMatcher()
- {
- return this._compoundMatcher;
- }
-
- /**
- * Returns the value of field 'matchCondition'.
- *
- * @return the value of field 'MatchCondition'.
- */
- public MatchCondition getMatchCondition()
- {
- return this._matchCondition;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'compoundMatcher'.
- *
- * @param compoundMatcher
- * the value of field 'compoundMatcher'.
- */
- public void setCompoundMatcher(final CompoundMatcher compoundMatcher)
- {
- this._compoundMatcher = compoundMatcher;
- this._choiceValue = compoundMatcher;
- }
-
- /**
- * Sets the value of field 'matchCondition'.
- *
- * @param matchCondition
- * the value of field 'matchCondition'.
- */
- public void setMatchCondition(final MatchCondition matchCondition)
- {
- this._matchCondition = matchCondition;
- this._choiceValue = matchCondition;
- }
-
- /**
- * 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.schemabinding.version2.FeatureMatcherSet
- */
- public static jalview.schemabinding.version2.FeatureMatcherSet unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.FeatureMatcherSet) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.FeatureMatcherSet.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class FeatureSettings.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureSettings implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _settingList.
- */
- private java.util.Vector _settingList;
-
- /**
- * Field _groupList.
- */
- private java.util.Vector _groupList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureSettings()
- {
- super();
- this._settingList = new java.util.Vector();
- this._groupList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vGroup
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addGroup(final jalview.schemabinding.version2.Group vGroup)
- throws java.lang.IndexOutOfBoundsException
- {
- this._groupList.addElement(vGroup);
- }
-
- /**
- *
- *
- * @param index
- * @param vGroup
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addGroup(final int index,
- final jalview.schemabinding.version2.Group vGroup)
- throws java.lang.IndexOutOfBoundsException
- {
- this._groupList.add(index, vGroup);
- }
-
- /**
- *
- *
- * @param vSetting
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSetting(
- final jalview.schemabinding.version2.Setting vSetting)
- throws java.lang.IndexOutOfBoundsException
- {
- this._settingList.addElement(vSetting);
- }
-
- /**
- *
- *
- * @param index
- * @param vSetting
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSetting(final int index,
- final jalview.schemabinding.version2.Setting vSetting)
- throws java.lang.IndexOutOfBoundsException
- {
- this._settingList.add(index, vSetting);
- }
-
- /**
- * Method enumerateGroup.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Group
- * elements
- */
- public java.util.Enumeration enumerateGroup()
- {
- return this._groupList.elements();
- }
-
- /**
- * Method enumerateSetting.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Setting
- * elements
- */
- public java.util.Enumeration enumerateSetting()
- {
- return this._settingList.elements();
- }
-
- /**
- * Method getGroup.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.Group at the given
- * index
- */
- public jalview.schemabinding.version2.Group getGroup(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._groupList.size())
- {
- throw new IndexOutOfBoundsException("getGroup: Index value '" + index
- + "' not in range [0.." + (this._groupList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Group) _groupList.get(index);
- }
-
- /**
- * Method getGroup.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Group[] getGroup()
- {
- jalview.schemabinding.version2.Group[] array = new jalview.schemabinding.version2.Group[0];
- return (jalview.schemabinding.version2.Group[]) this._groupList
- .toArray(array);
- }
-
- /**
- * Method getGroupCount.
- *
- * @return the size of this collection
- */
- public int getGroupCount()
- {
- return this._groupList.size();
- }
-
- /**
- * Method getSetting.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.Setting at the
- * given index
- */
- public jalview.schemabinding.version2.Setting getSetting(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._settingList.size())
- {
- throw new IndexOutOfBoundsException("getSetting: Index value '"
- + index + "' not in range [0.."
- + (this._settingList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Setting) _settingList.get(index);
- }
-
- /**
- * Method getSetting.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Setting[] getSetting()
- {
- jalview.schemabinding.version2.Setting[] array = new jalview.schemabinding.version2.Setting[0];
- return (jalview.schemabinding.version2.Setting[]) this._settingList
- .toArray(array);
- }
-
- /**
- * Method getSettingCount.
- *
- * @return the size of this collection
- */
- public int getSettingCount()
- {
- return this._settingList.size();
- }
-
- /**
- * 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 removeAllGroup()
- {
- this._groupList.clear();
- }
-
- /**
- */
- public void removeAllSetting()
- {
- this._settingList.clear();
- }
-
- /**
- * Method removeGroup.
- *
- * @param vGroup
- * @return true if the object was removed from the collection.
- */
- public boolean removeGroup(
- final jalview.schemabinding.version2.Group vGroup)
- {
- boolean removed = _groupList.remove(vGroup);
- return removed;
- }
-
- /**
- * Method removeGroupAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Group removeGroupAt(final int index)
- {
- java.lang.Object obj = this._groupList.remove(index);
- return (jalview.schemabinding.version2.Group) obj;
- }
-
- /**
- * Method removeSetting.
- *
- * @param vSetting
- * @return true if the object was removed from the collection.
- */
- public boolean removeSetting(
- final jalview.schemabinding.version2.Setting vSetting)
- {
- boolean removed = _settingList.remove(vSetting);
- return removed;
- }
-
- /**
- * Method removeSettingAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Setting removeSettingAt(
- final int index)
- {
- java.lang.Object obj = this._settingList.remove(index);
- return (jalview.schemabinding.version2.Setting) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vGroup
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setGroup(final int index,
- final jalview.schemabinding.version2.Group vGroup)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._groupList.size())
- {
- throw new IndexOutOfBoundsException("setGroup: Index value '" + index
- + "' not in range [0.." + (this._groupList.size() - 1) + "]");
- }
-
- this._groupList.set(index, vGroup);
- }
-
- /**
- *
- *
- * @param vGroupArray
- */
- public void setGroup(
- final jalview.schemabinding.version2.Group[] vGroupArray)
- {
- // -- copy array
- _groupList.clear();
-
- for (int i = 0; i < vGroupArray.length; i++)
- {
- this._groupList.add(vGroupArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vSetting
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setSetting(final int index,
- final jalview.schemabinding.version2.Setting vSetting)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._settingList.size())
- {
- throw new IndexOutOfBoundsException("setSetting: Index value '"
- + index + "' not in range [0.."
- + (this._settingList.size() - 1) + "]");
- }
-
- this._settingList.set(index, vSetting);
- }
-
- /**
- *
- *
- * @param vSettingArray
- */
- public void setSetting(
- final jalview.schemabinding.version2.Setting[] vSettingArray)
- {
- // -- copy array
- _settingList.clear();
-
- for (int i = 0; i < vSettingArray.length; i++)
- {
- this._settingList.add(vSettingArray[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.schemabinding.version2.FeatureSettings
- */
- public static jalview.schemabinding.version2.FeatureSettings unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.FeatureSettings) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.FeatureSettings.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Features.
- *
- * @version $Revision$ $Date$
- */
-public class Features extends Feature implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Features()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.schemabinding.version2.Featur
- */
- public static jalview.schemabinding.version2.Feature unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Feature) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.Features.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Filter.
- *
- * @version $Revision$ $Date$
- */
-public class Filter implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _featureType.
- */
- private java.lang.String _featureType;
-
- /**
- * Field _matcherSet.
- */
- private jalview.schemabinding.version2.MatcherSet _matcherSet;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Filter()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'featureType'.
- *
- * @return the value of field 'FeatureType'.
- */
- public java.lang.String getFeatureType()
- {
- return this._featureType;
- }
-
- /**
- * Returns the value of field 'matcherSet'.
- *
- * @return the value of field 'MatcherSet'.
- */
- public jalview.schemabinding.version2.MatcherSet getMatcherSet()
- {
- return this._matcherSet;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'featureType'.
- *
- * @param featureType
- * the value of field 'featureType'.
- */
- public void setFeatureType(final java.lang.String featureType)
- {
- this._featureType = featureType;
- }
-
- /**
- * Sets the value of field 'matcherSet'.
- *
- * @param matcherSet
- * the value of field 'matcherSet'.
- */
- public void setMatcherSet(
- final jalview.schemabinding.version2.MatcherSet matcherSet)
- {
- this._matcherSet = matcherSet;
- }
-
- /**
- * 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.schemabinding.version2.Filter
- */
- public static jalview.schemabinding.version2.Filter unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Filter) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.Filter.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Group.
- *
- * @version $Revision$ $Date$
- */
-public class Group implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _name.
- */
- private java.lang.String _name;
-
- /**
- * Field _display.
- */
- private boolean _display;
-
- /**
- * keeps track of state for field: _display
- */
- private boolean _has_display;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Group()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteDisplay()
- {
- this._has_display = false;
- }
-
- /**
- * Returns the value of field 'display'.
- *
- * @return the value of field 'Display'.
- */
- public boolean getDisplay()
- {
- return this._display;
- }
-
- /**
- * Returns the value of field 'name'.
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Method hasDisplay.
- *
- * @return true if at least one Display has been added
- */
- public boolean hasDisplay()
- {
- return this._has_display;
- }
-
- /**
- * Returns the value of field 'display'.
- *
- * @return the value of field 'Display'.
- */
- public boolean isDisplay()
- {
- return this._display;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'display'.
- *
- * @param display
- * the value of field 'display'.
- */
- public void setDisplay(final boolean display)
- {
- this._display = display;
- this._has_display = true;
- }
-
- /**
- * Sets the value of field 'name'.
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * 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.schemabinding.version2.Group
- */
- public static jalview.schemabinding.version2.Group unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Group) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.Group.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class HiddenColumns.
- *
- * @version $Revision$ $Date$
- */
-public class HiddenColumns implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _start.
- */
- private int _start;
-
- /**
- * keeps track of state for field: _start
- */
- private boolean _has_start;
-
- /**
- * Field _end.
- */
- private int _end;
-
- /**
- * keeps track of state for field: _end
- */
- private boolean _has_end;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public HiddenColumns()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteEnd()
- {
- this._has_end = false;
- }
-
- /**
- */
- public void deleteStart()
- {
- this._has_start = false;
- }
-
- /**
- * Returns the value of field 'end'.
- *
- * @return the value of field 'End'.
- */
- public int getEnd()
- {
- return this._end;
- }
-
- /**
- * Returns the value of field 'start'.
- *
- * @return the value of field 'Start'.
- */
- public int getStart()
- {
- return this._start;
- }
-
- /**
- * Method hasEnd.
- *
- * @return true if at least one End has been added
- */
- public boolean hasEnd()
- {
- return this._has_end;
- }
-
- /**
- * Method hasStart.
- *
- * @return true if at least one Start has been added
- */
- public boolean hasStart()
- {
- return this._has_start;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'end'.
- *
- * @param end
- * the value of field 'end'.
- */
- public void setEnd(final int end)
- {
- this._end = end;
- this._has_end = true;
- }
-
- /**
- * Sets the value of field 'start'.
- *
- * @param start
- * the value of field 'start'.
- */
- public void setStart(final int start)
- {
- this._start = start;
- this._has_start = true;
- }
-
- /**
- * 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.schemabinding.version2.HiddenColumns
- */
- public static jalview.schemabinding.version2.HiddenColumns unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.HiddenColumns) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.HiddenColumns.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JGroup.
- *
- * @version $Revision$ $Date$
- */
-public class JGroup implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _start.
- */
- private int _start;
-
- /**
- * keeps track of state for field: _start
- */
- private boolean _has_start;
-
- /**
- * Field _end.
- */
- private int _end;
-
- /**
- * keeps track of state for field: _end
- */
- private boolean _has_end;
-
- /**
- * Field _name.
- */
- private java.lang.String _name;
-
- /**
- * Field _colour.
- */
- private java.lang.String _colour;
-
- /**
- * Field _consThreshold.
- */
- private int _consThreshold;
-
- /**
- * keeps track of state for field: _consThreshold
- */
- private boolean _has_consThreshold;
-
- /**
- * Field _pidThreshold.
- */
- private int _pidThreshold;
-
- /**
- * keeps track of state for field: _pidThreshold
- */
- private boolean _has_pidThreshold;
-
- /**
- * Field _outlineColour.
- */
- private int _outlineColour;
-
- /**
- * keeps track of state for field: _outlineColour
- */
- private boolean _has_outlineColour;
-
- /**
- * Field _displayBoxes.
- */
- private boolean _displayBoxes;
-
- /**
- * keeps track of state for field: _displayBoxes
- */
- private boolean _has_displayBoxes;
-
- /**
- * Field _displayText.
- */
- private boolean _displayText;
-
- /**
- * keeps track of state for field: _displayText
- */
- private boolean _has_displayText;
-
- /**
- * Field _colourText.
- */
- private boolean _colourText;
-
- /**
- * keeps track of state for field: _colourText
- */
- private boolean _has_colourText;
-
- /**
- * Field _textCol1.
- */
- private int _textCol1;
-
- /**
- * keeps track of state for field: _textCol1
- */
- private boolean _has_textCol1;
-
- /**
- * Field _textCol2.
- */
- private int _textCol2;
-
- /**
- * keeps track of state for field: _textCol2
- */
- private boolean _has_textCol2;
-
- /**
- * Field _textColThreshold.
- */
- private int _textColThreshold;
-
- /**
- * keeps track of state for field: _textColThreshold
- */
- private boolean _has_textColThreshold;
-
- /**
- * Field _showUnconserved.
- */
- private boolean _showUnconserved;
-
- /**
- * keeps track of state for field: _showUnconserved
- */
- private boolean _has_showUnconserved;
-
- /**
- * Field _ignoreGapsinConsensus.
- */
- private boolean _ignoreGapsinConsensus = true;
-
- /**
- * keeps track of state for field: _ignoreGapsinConsensus
- */
- private boolean _has_ignoreGapsinConsensus;
-
- /**
- * Field _showConsensusHistogram.
- */
- private boolean _showConsensusHistogram = true;
-
- /**
- * keeps track of state for field: _showConsensusHistogram
- */
- private boolean _has_showConsensusHistogram;
-
- /**
- * Field _showSequenceLogo.
- */
- private boolean _showSequenceLogo = false;
-
- /**
- * keeps track of state for field: _showSequenceLogo
- */
- private boolean _has_showSequenceLogo;
-
- /**
- * Field _normaliseSequenceLogo.
- */
- private boolean _normaliseSequenceLogo = false;
-
- /**
- * keeps track of state for field: _normaliseSequenceLogo
- */
- private boolean _has_normaliseSequenceLogo;
-
- /**
- * Optional sequence group ID (only needs to be unique for this alignment)
- *
- */
- private java.lang.String _id;
-
- /**
- * Field _seqList.
- */
- private java.util.Vector _seqList;
-
- /**
- * Field _annotationColours.
- */
- private jalview.schemabinding.version2.AnnotationColours _annotationColours;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JGroup()
- {
- super();
- this._seqList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSeq(final java.lang.String vSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- this._seqList.addElement(vSeq);
- }
-
- /**
- *
- *
- * @param index
- * @param vSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSeq(final int index, final java.lang.String vSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- this._seqList.add(index, vSeq);
- }
-
- /**
- */
- public void deleteColourText()
- {
- this._has_colourText = false;
- }
-
- /**
- */
- public void deleteConsThreshold()
- {
- this._has_consThreshold = false;
- }
-
- /**
- */
- public void deleteDisplayBoxes()
- {
- this._has_displayBoxes = false;
- }
-
- /**
- */
- public void deleteDisplayText()
- {
- this._has_displayText = false;
- }
-
- /**
- */
- public void deleteEnd()
- {
- this._has_end = false;
- }
-
- /**
- */
- public void deleteIgnoreGapsinConsensus()
- {
- this._has_ignoreGapsinConsensus = false;
- }
-
- /**
- */
- public void deleteNormaliseSequenceLogo()
- {
- this._has_normaliseSequenceLogo = false;
- }
-
- /**
- */
- public void deleteOutlineColour()
- {
- this._has_outlineColour = false;
- }
-
- /**
- */
- public void deletePidThreshold()
- {
- this._has_pidThreshold = false;
- }
-
- /**
- */
- public void deleteShowConsensusHistogram()
- {
- this._has_showConsensusHistogram = false;
- }
-
- /**
- */
- public void deleteShowSequenceLogo()
- {
- this._has_showSequenceLogo = false;
- }
-
- /**
- */
- public void deleteShowUnconserved()
- {
- this._has_showUnconserved = false;
- }
-
- /**
- */
- public void deleteStart()
- {
- this._has_start = false;
- }
-
- /**
- */
- public void deleteTextCol1()
- {
- this._has_textCol1 = false;
- }
-
- /**
- */
- public void deleteTextCol2()
- {
- this._has_textCol2 = false;
- }
-
- /**
- */
- public void deleteTextColThreshold()
- {
- this._has_textColThreshold = false;
- }
-
- /**
- * Method enumerateSeq.
- *
- * @return an Enumeration over all java.lang.String elements
- */
- public java.util.Enumeration enumerateSeq()
- {
- return this._seqList.elements();
- }
-
- /**
- * Returns the value of field 'annotationColours'.
- *
- * @return the value of field 'AnnotationColours'.
- */
- public jalview.schemabinding.version2.AnnotationColours getAnnotationColours()
- {
- return this._annotationColours;
- }
-
- /**
- * Returns the value of field 'colour'.
- *
- * @return the value of field 'Colour'.
- */
- public java.lang.String getColour()
- {
- return this._colour;
- }
-
- /**
- * Returns the value of field 'colourText'.
- *
- * @return the value of field 'ColourText'.
- */
- public boolean getColourText()
- {
- return this._colourText;
- }
-
- /**
- * Returns the value of field 'consThreshold'.
- *
- * @return the value of field 'ConsThreshold'.
- */
- public int getConsThreshold()
- {
- return this._consThreshold;
- }
-
- /**
- * Returns the value of field 'displayBoxes'.
- *
- * @return the value of field 'DisplayBoxes'.
- */
- public boolean getDisplayBoxes()
- {
- return this._displayBoxes;
- }
-
- /**
- * Returns the value of field 'displayText'.
- *
- * @return the value of field 'DisplayText'.
- */
- public boolean getDisplayText()
- {
- return this._displayText;
- }
-
- /**
- * Returns the value of field 'end'.
- *
- * @return the value of field 'End'.
- */
- public int getEnd()
- {
- return this._end;
- }
-
- /**
- * Returns the value of field 'id'. The field 'id' has the following
- * description: Optional sequence group ID (only needs to be unique for this
- * alignment)
- *
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Returns the value of field 'ignoreGapsinConsensus'.
- *
- * @return the value of field 'IgnoreGapsinConsensus'.
- */
- public boolean getIgnoreGapsinConsensus()
- {
- return this._ignoreGapsinConsensus;
- }
-
- /**
- * Returns the value of field 'name'.
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Returns the value of field 'normaliseSequenceLogo'.
- *
- * @return the value of field 'NormaliseSequenceLogo'.
- */
- public boolean getNormaliseSequenceLogo()
- {
- return this._normaliseSequenceLogo;
- }
-
- /**
- * Returns the value of field 'outlineColour'.
- *
- * @return the value of field 'OutlineColour'.
- */
- public int getOutlineColour()
- {
- return this._outlineColour;
- }
-
- /**
- * Returns the value of field 'pidThreshold'.
- *
- * @return the value of field 'PidThreshold'.
- */
- public int getPidThreshold()
- {
- return this._pidThreshold;
- }
-
- /**
- * Method getSeq.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the java.lang.String at the given index
- */
- public java.lang.String getSeq(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._seqList.size())
- {
- throw new IndexOutOfBoundsException("getSeq: Index value '" + index
- + "' not in range [0.." + (this._seqList.size() - 1) + "]");
- }
-
- return (java.lang.String) _seqList.get(index);
- }
-
- /**
- * Method getSeq.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public java.lang.String[] getSeq()
- {
- java.lang.String[] array = new java.lang.String[0];
- return (java.lang.String[]) this._seqList.toArray(array);
- }
-
- /**
- * Method getSeqCount.
- *
- * @return the size of this collection
- */
- public int getSeqCount()
- {
- return this._seqList.size();
- }
-
- /**
- * Returns the value of field 'showConsensusHistogram'.
- *
- * @return the value of field 'ShowConsensusHistogram'.
- */
- public boolean getShowConsensusHistogram()
- {
- return this._showConsensusHistogram;
- }
-
- /**
- * Returns the value of field 'showSequenceLogo'.
- *
- * @return the value of field 'ShowSequenceLogo'.
- */
- public boolean getShowSequenceLogo()
- {
- return this._showSequenceLogo;
- }
-
- /**
- * Returns the value of field 'showUnconserved'.
- *
- * @return the value of field 'ShowUnconserved'.
- */
- public boolean getShowUnconserved()
- {
- return this._showUnconserved;
- }
-
- /**
- * Returns the value of field 'start'.
- *
- * @return the value of field 'Start'.
- */
- public int getStart()
- {
- return this._start;
- }
-
- /**
- * Returns the value of field 'textCol1'.
- *
- * @return the value of field 'TextCol1'.
- */
- public int getTextCol1()
- {
- return this._textCol1;
- }
-
- /**
- * Returns the value of field 'textCol2'.
- *
- * @return the value of field 'TextCol2'.
- */
- public int getTextCol2()
- {
- return this._textCol2;
- }
-
- /**
- * Returns the value of field 'textColThreshold'.
- *
- * @return the value of field 'TextColThreshold'.
- */
- public int getTextColThreshold()
- {
- return this._textColThreshold;
- }
-
- /**
- * Method hasColourText.
- *
- * @return true if at least one ColourText has been added
- */
- public boolean hasColourText()
- {
- return this._has_colourText;
- }
-
- /**
- * Method hasConsThreshold.
- *
- * @return true if at least one ConsThreshold has been added
- */
- public boolean hasConsThreshold()
- {
- return this._has_consThreshold;
- }
-
- /**
- * Method hasDisplayBoxes.
- *
- * @return true if at least one DisplayBoxes has been added
- */
- public boolean hasDisplayBoxes()
- {
- return this._has_displayBoxes;
- }
-
- /**
- * Method hasDisplayText.
- *
- * @return true if at least one DisplayText has been added
- */
- public boolean hasDisplayText()
- {
- return this._has_displayText;
- }
-
- /**
- * Method hasEnd.
- *
- * @return true if at least one End has been added
- */
- public boolean hasEnd()
- {
- return this._has_end;
- }
-
- /**
- * Method hasIgnoreGapsinConsensus.
- *
- * @return true if at least one IgnoreGapsinConsensus has been added
- */
- public boolean hasIgnoreGapsinConsensus()
- {
- return this._has_ignoreGapsinConsensus;
- }
-
- /**
- * Method hasNormaliseSequenceLogo.
- *
- * @return true if at least one NormaliseSequenceLogo has been added
- */
- public boolean hasNormaliseSequenceLogo()
- {
- return this._has_normaliseSequenceLogo;
- }
-
- /**
- * Method hasOutlineColour.
- *
- * @return true if at least one OutlineColour has been added
- */
- public boolean hasOutlineColour()
- {
- return this._has_outlineColour;
- }
-
- /**
- * Method hasPidThreshold.
- *
- * @return true if at least one PidThreshold has been added
- */
- public boolean hasPidThreshold()
- {
- return this._has_pidThreshold;
- }
-
- /**
- * Method hasShowConsensusHistogram.
- *
- * @return true if at least one ShowConsensusHistogram has been added
- */
- public boolean hasShowConsensusHistogram()
- {
- return this._has_showConsensusHistogram;
- }
-
- /**
- * Method hasShowSequenceLogo.
- *
- * @return true if at least one ShowSequenceLogo has been added
- */
- public boolean hasShowSequenceLogo()
- {
- return this._has_showSequenceLogo;
- }
-
- /**
- * Method hasShowUnconserved.
- *
- * @return true if at least one ShowUnconserved has been added
- */
- public boolean hasShowUnconserved()
- {
- return this._has_showUnconserved;
- }
-
- /**
- * Method hasStart.
- *
- * @return true if at least one Start has been added
- */
- public boolean hasStart()
- {
- return this._has_start;
- }
-
- /**
- * Method hasTextCol1.
- *
- * @return true if at least one TextCol1 has been added
- */
- public boolean hasTextCol1()
- {
- return this._has_textCol1;
- }
-
- /**
- * Method hasTextCol2.
- *
- * @return true if at least one TextCol2 has been added
- */
- public boolean hasTextCol2()
- {
- return this._has_textCol2;
- }
-
- /**
- * Method hasTextColThreshold.
- *
- * @return true if at least one TextColThreshold has been added
- */
- public boolean hasTextColThreshold()
- {
- return this._has_textColThreshold;
- }
-
- /**
- * Returns the value of field 'colourText'.
- *
- * @return the value of field 'ColourText'.
- */
- public boolean isColourText()
- {
- return this._colourText;
- }
-
- /**
- * Returns the value of field 'displayBoxes'.
- *
- * @return the value of field 'DisplayBoxes'.
- */
- public boolean isDisplayBoxes()
- {
- return this._displayBoxes;
- }
-
- /**
- * Returns the value of field 'displayText'.
- *
- * @return the value of field 'DisplayText'.
- */
- public boolean isDisplayText()
- {
- return this._displayText;
- }
-
- /**
- * Returns the value of field 'ignoreGapsinConsensus'.
- *
- * @return the value of field 'IgnoreGapsinConsensus'.
- */
- public boolean isIgnoreGapsinConsensus()
- {
- return this._ignoreGapsinConsensus;
- }
-
- /**
- * Returns the value of field 'normaliseSequenceLogo'.
- *
- * @return the value of field 'NormaliseSequenceLogo'.
- */
- public boolean isNormaliseSequenceLogo()
- {
- return this._normaliseSequenceLogo;
- }
-
- /**
- * Returns the value of field 'showConsensusHistogram'.
- *
- * @return the value of field 'ShowConsensusHistogram'.
- */
- public boolean isShowConsensusHistogram()
- {
- return this._showConsensusHistogram;
- }
-
- /**
- * Returns the value of field 'showSequenceLogo'.
- *
- * @return the value of field 'ShowSequenceLogo'.
- */
- public boolean isShowSequenceLogo()
- {
- return this._showSequenceLogo;
- }
-
- /**
- * Returns the value of field 'showUnconserved'.
- *
- * @return the value of field 'ShowUnconserved'.
- */
- public boolean isShowUnconserved()
- {
- return this._showUnconserved;
- }
-
- /**
- * 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 removeAllSeq()
- {
- this._seqList.clear();
- }
-
- /**
- * Method removeSeq.
- *
- * @param vSeq
- * @return true if the object was removed from the collection.
- */
- public boolean removeSeq(final java.lang.String vSeq)
- {
- boolean removed = _seqList.remove(vSeq);
- return removed;
- }
-
- /**
- * Method removeSeqAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public java.lang.String removeSeqAt(final int index)
- {
- java.lang.Object obj = this._seqList.remove(index);
- return (java.lang.String) obj;
- }
-
- /**
- * Sets the value of field 'annotationColours'.
- *
- * @param annotationColours
- * the value of field 'annotationColours'.
- */
- public void setAnnotationColours(
- final jalview.schemabinding.version2.AnnotationColours annotationColours)
- {
- this._annotationColours = annotationColours;
- }
-
- /**
- * Sets the value of field 'colour'.
- *
- * @param colour
- * the value of field 'colour'.
- */
- public void setColour(final java.lang.String colour)
- {
- this._colour = colour;
- }
-
- /**
- * Sets the value of field 'colourText'.
- *
- * @param colourText
- * the value of field 'colourText'.
- */
- public void setColourText(final boolean colourText)
- {
- this._colourText = colourText;
- this._has_colourText = true;
- }
-
- /**
- * Sets the value of field 'consThreshold'.
- *
- * @param consThreshold
- * the value of field 'consThreshold'.
- */
- public void setConsThreshold(final int consThreshold)
- {
- this._consThreshold = consThreshold;
- this._has_consThreshold = true;
- }
-
- /**
- * Sets the value of field 'displayBoxes'.
- *
- * @param displayBoxes
- * the value of field 'displayBoxes'.
- */
- public void setDisplayBoxes(final boolean displayBoxes)
- {
- this._displayBoxes = displayBoxes;
- this._has_displayBoxes = true;
- }
-
- /**
- * Sets the value of field 'displayText'.
- *
- * @param displayText
- * the value of field 'displayText'.
- */
- public void setDisplayText(final boolean displayText)
- {
- this._displayText = displayText;
- this._has_displayText = true;
- }
-
- /**
- * Sets the value of field 'end'.
- *
- * @param end
- * the value of field 'end'.
- */
- public void setEnd(final int end)
- {
- this._end = end;
- this._has_end = true;
- }
-
- /**
- * Sets the value of field 'id'. The field 'id' has the following description:
- * Optional sequence group ID (only needs to be unique for this alignment)
- *
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- * Sets the value of field 'ignoreGapsinConsensus'.
- *
- * @param ignoreGapsinConsensus
- * the value of field 'ignoreGapsinConsensus'.
- */
- public void setIgnoreGapsinConsensus(final boolean ignoreGapsinConsensus)
- {
- this._ignoreGapsinConsensus = ignoreGapsinConsensus;
- this._has_ignoreGapsinConsensus = true;
- }
-
- /**
- * Sets the value of field 'name'.
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * Sets the value of field 'normaliseSequenceLogo'.
- *
- * @param normaliseSequenceLogo
- * the value of field 'normaliseSequenceLogo'.
- */
- public void setNormaliseSequenceLogo(final boolean normaliseSequenceLogo)
- {
- this._normaliseSequenceLogo = normaliseSequenceLogo;
- this._has_normaliseSequenceLogo = true;
- }
-
- /**
- * Sets the value of field 'outlineColour'.
- *
- * @param outlineColour
- * the value of field 'outlineColour'.
- */
- public void setOutlineColour(final int outlineColour)
- {
- this._outlineColour = outlineColour;
- this._has_outlineColour = true;
- }
-
- /**
- * Sets the value of field 'pidThreshold'.
- *
- * @param pidThreshold
- * the value of field 'pidThreshold'.
- */
- public void setPidThreshold(final int pidThreshold)
- {
- this._pidThreshold = pidThreshold;
- this._has_pidThreshold = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setSeq(final int index, final java.lang.String vSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._seqList.size())
- {
- throw new IndexOutOfBoundsException("setSeq: Index value '" + index
- + "' not in range [0.." + (this._seqList.size() - 1) + "]");
- }
-
- this._seqList.set(index, vSeq);
- }
-
- /**
- *
- *
- * @param vSeqArray
- */
- public void setSeq(final java.lang.String[] vSeqArray)
- {
- // -- copy array
- _seqList.clear();
-
- for (int i = 0; i < vSeqArray.length; i++)
- {
- this._seqList.add(vSeqArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'showConsensusHistogram'.
- *
- * @param showConsensusHistogram
- * the value of field 'showConsensusHistogram'.
- */
- public void setShowConsensusHistogram(final boolean showConsensusHistogram)
- {
- this._showConsensusHistogram = showConsensusHistogram;
- this._has_showConsensusHistogram = true;
- }
-
- /**
- * Sets the value of field 'showSequenceLogo'.
- *
- * @param showSequenceLogo
- * the value of field 'showSequenceLogo'
- */
- public void setShowSequenceLogo(final boolean showSequenceLogo)
- {
- this._showSequenceLogo = showSequenceLogo;
- this._has_showSequenceLogo = true;
- }
-
- /**
- * Sets the value of field 'showUnconserved'.
- *
- * @param showUnconserved
- * the value of field 'showUnconserved'.
- */
- public void setShowUnconserved(final boolean showUnconserved)
- {
- this._showUnconserved = showUnconserved;
- this._has_showUnconserved = true;
- }
-
- /**
- * Sets the value of field 'start'.
- *
- * @param start
- * the value of field 'start'.
- */
- public void setStart(final int start)
- {
- this._start = start;
- this._has_start = true;
- }
-
- /**
- * Sets the value of field 'textCol1'.
- *
- * @param textCol1
- * the value of field 'textCol1'.
- */
- public void setTextCol1(final int textCol1)
- {
- this._textCol1 = textCol1;
- this._has_textCol1 = true;
- }
-
- /**
- * Sets the value of field 'textCol2'.
- *
- * @param textCol2
- * the value of field 'textCol2'.
- */
- public void setTextCol2(final int textCol2)
- {
- this._textCol2 = textCol2;
- this._has_textCol2 = true;
- }
-
- /**
- * Sets the value of field 'textColThreshold'.
- *
- * @param textColThreshold
- * the value of field 'textColThreshold'
- */
- public void setTextColThreshold(final int textColThreshold)
- {
- this._textColThreshold = textColThreshold;
- this._has_textColThreshold = true;
- }
-
- /**
- * 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.schemabinding.version2.JGroup
- */
- public static jalview.schemabinding.version2.JGroup unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.JGroup) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.JGroup.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JSeq.
- *
- * @version $Revision$ $Date$
- */
-public class JSeq implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _colour.
- */
- private int _colour;
-
- /**
- * keeps track of state for field: _colour
- */
- private boolean _has_colour;
-
- /**
- * Field _start.
- */
- private int _start;
-
- /**
- * keeps track of state for field: _start
- */
- private boolean _has_start;
-
- /**
- * Field _end.
- */
- private int _end;
-
- /**
- * keeps track of state for field: _end
- */
- private boolean _has_end;
-
- /**
- * Field _id.
- */
- private java.lang.String _id;
-
- /**
- * Field _hidden.
- */
- private boolean _hidden;
-
- /**
- * keeps track of state for field: _hidden
- */
- private boolean _has_hidden;
-
- /**
- * Field _viewreference.
- */
- private boolean _viewreference;
-
- /**
- * keeps track of state for field: _viewreference
- */
- private boolean _has_viewreference;
-
- /**
- * Field _featuresList.
- */
- private java.util.Vector _featuresList;
-
- /**
- * Field _pdbidsList.
- */
- private java.util.Vector _pdbidsList;
-
- /**
- * Field _hiddenSequencesList.
- */
- private java.util.Vector _hiddenSequencesList;
-
- /**
- * Reference to a viewer showing RNA structure for this sequence. Schema
- * supports one viewer showing multiple annotations for multiple sequences,
- * though currently only one annotation for one sequence (gapped or trimmed)
- * is used
- *
- */
- private java.util.Vector _rnaViewerList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JSeq()
- {
- super();
- this._featuresList = new java.util.Vector();
- this._pdbidsList = new java.util.Vector();
- this._hiddenSequencesList = new java.util.Vector();
- this._rnaViewerList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vFeatures
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addFeatures(
- final jalview.schemabinding.version2.Features vFeatures)
- throws java.lang.IndexOutOfBoundsException
- {
- this._featuresList.addElement(vFeatures);
- }
-
- /**
- *
- *
- * @param index
- * @param vFeatures
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addFeatures(final int index,
- final jalview.schemabinding.version2.Features vFeatures)
- throws java.lang.IndexOutOfBoundsException
- {
- this._featuresList.add(index, vFeatures);
- }
-
- /**
- *
- *
- * @param vHiddenSequences
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addHiddenSequences(final int vHiddenSequences)
- throws java.lang.IndexOutOfBoundsException
- {
- this._hiddenSequencesList.addElement(new java.lang.Integer(
- vHiddenSequences));
- }
-
- /**
- *
- *
- * @param index
- * @param vHiddenSequences
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addHiddenSequences(final int index, final int vHiddenSequences)
- throws java.lang.IndexOutOfBoundsException
- {
- this._hiddenSequencesList.add(index, new java.lang.Integer(
- vHiddenSequences));
- }
-
- /**
- *
- *
- * @param vPdbids
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addPdbids(final jalview.schemabinding.version2.Pdbids vPdbids)
- throws java.lang.IndexOutOfBoundsException
- {
- this._pdbidsList.addElement(vPdbids);
- }
-
- /**
- *
- *
- * @param index
- * @param vPdbids
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addPdbids(final int index,
- final jalview.schemabinding.version2.Pdbids vPdbids)
- throws java.lang.IndexOutOfBoundsException
- {
- this._pdbidsList.add(index, vPdbids);
- }
-
- /**
- *
- *
- * @param vRnaViewer
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addRnaViewer(
- final jalview.schemabinding.version2.RnaViewer vRnaViewer)
- throws java.lang.IndexOutOfBoundsException
- {
- this._rnaViewerList.addElement(vRnaViewer);
- }
-
- /**
- *
- *
- * @param index
- * @param vRnaViewer
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addRnaViewer(final int index,
- final jalview.schemabinding.version2.RnaViewer vRnaViewer)
- throws java.lang.IndexOutOfBoundsException
- {
- this._rnaViewerList.add(index, vRnaViewer);
- }
-
- /**
- */
- public void deleteColour()
- {
- this._has_colour = false;
- }
-
- /**
- */
- public void deleteEnd()
- {
- this._has_end = false;
- }
-
- /**
- */
- public void deleteHidden()
- {
- this._has_hidden = false;
- }
-
- /**
- */
- public void deleteStart()
- {
- this._has_start = false;
- }
-
- /**
- */
- public void deleteViewreference()
- {
- this._has_viewreference = false;
- }
-
- /**
- * Method enumerateFeatures.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Features
- * elements
- */
- public java.util.Enumeration enumerateFeatures()
- {
- return this._featuresList.elements();
- }
-
- /**
- * Method enumerateHiddenSequences.
- *
- * @return an Enumeration over all int elements
- */
- public java.util.Enumeration enumerateHiddenSequences()
- {
- return this._hiddenSequencesList.elements();
- }
-
- /**
- * Method enumeratePdbids.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Pdbids
- * elements
- */
- public java.util.Enumeration enumeratePdbids()
- {
- return this._pdbidsList.elements();
- }
-
- /**
- * Method enumerateRnaViewer.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.RnaViewer
- * elements
- */
- public java.util.Enumeration enumerateRnaViewer()
- {
- return this._rnaViewerList.elements();
- }
-
- /**
- * Returns the value of field 'colour'.
- *
- * @return the value of field 'Colour'.
- */
- public int getColour()
- {
- return this._colour;
- }
-
- /**
- * Returns the value of field 'end'.
- *
- * @return the value of field 'End'.
- */
- public int getEnd()
- {
- return this._end;
- }
-
- /**
- * Method getFeatures.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.Features at the
- * given index
- */
- public jalview.schemabinding.version2.Features getFeatures(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._featuresList.size())
- {
- throw new IndexOutOfBoundsException("getFeatures: Index value '"
- + index + "' not in range [0.."
- + (this._featuresList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Features) _featuresList
- .get(index);
- }
-
- /**
- * Method getFeatures.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Features[] getFeatures()
- {
- jalview.schemabinding.version2.Features[] array = new jalview.schemabinding.version2.Features[0];
- return (jalview.schemabinding.version2.Features[]) this._featuresList
- .toArray(array);
- }
-
- /**
- * Method getFeaturesCount.
- *
- * @return the size of this collection
- */
- public int getFeaturesCount()
- {
- return this._featuresList.size();
- }
-
- /**
- * Returns the value of field 'hidden'.
- *
- * @return the value of field 'Hidden'.
- */
- public boolean getHidden()
- {
- return this._hidden;
- }
-
- /**
- * Method getHiddenSequences.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the int at the given index
- */
- public int getHiddenSequences(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._hiddenSequencesList.size())
- {
- throw new IndexOutOfBoundsException(
- "getHiddenSequences: Index value '" + index
- + "' not in range [0.."
- + (this._hiddenSequencesList.size() - 1) + "]");
- }
-
- return ((java.lang.Integer) _hiddenSequencesList.get(index)).intValue();
- }
-
- /**
- * Method getHiddenSequences.Returns the contents of the collection in an
- * Array.
- *
- * @return this collection as an Array
- */
- public int[] getHiddenSequences()
- {
- int size = this._hiddenSequencesList.size();
- int[] array = new int[size];
- java.util.Iterator iter = _hiddenSequencesList.iterator();
- for (int index = 0; index < size; index++)
- {
- array[index] = ((java.lang.Integer) iter.next()).intValue();
- }
- return array;
- }
-
- /**
- * Method getHiddenSequencesCount.
- *
- * @return the size of this collection
- */
- public int getHiddenSequencesCount()
- {
- return this._hiddenSequencesList.size();
- }
-
- /**
- * Returns the value of field 'id'.
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Method getPdbids.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.Pdbids at the given
- * index
- */
- public jalview.schemabinding.version2.Pdbids getPdbids(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._pdbidsList.size())
- {
- throw new IndexOutOfBoundsException("getPdbids: Index value '"
- + index + "' not in range [0.."
- + (this._pdbidsList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Pdbids) _pdbidsList.get(index);
- }
-
- /**
- * Method getPdbids.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Pdbids[] getPdbids()
- {
- jalview.schemabinding.version2.Pdbids[] array = new jalview.schemabinding.version2.Pdbids[0];
- return (jalview.schemabinding.version2.Pdbids[]) this._pdbidsList
- .toArray(array);
- }
-
- /**
- * Method getPdbidsCount.
- *
- * @return the size of this collection
- */
- public int getPdbidsCount()
- {
- return this._pdbidsList.size();
- }
-
- /**
- * Method getRnaViewer.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.RnaViewer at the
- * given index
- */
- public jalview.schemabinding.version2.RnaViewer getRnaViewer(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._rnaViewerList.size())
- {
- throw new IndexOutOfBoundsException("getRnaViewer: Index value '"
- + index + "' not in range [0.."
- + (this._rnaViewerList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.RnaViewer) _rnaViewerList
- .get(index);
- }
-
- /**
- * Method getRnaViewer.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.RnaViewer[] getRnaViewer()
- {
- jalview.schemabinding.version2.RnaViewer[] array = new jalview.schemabinding.version2.RnaViewer[0];
- return (jalview.schemabinding.version2.RnaViewer[]) this._rnaViewerList
- .toArray(array);
- }
-
- /**
- * Method getRnaViewerCount.
- *
- * @return the size of this collection
- */
- public int getRnaViewerCount()
- {
- return this._rnaViewerList.size();
- }
-
- /**
- * Returns the value of field 'start'.
- *
- * @return the value of field 'Start'.
- */
- public int getStart()
- {
- return this._start;
- }
-
- /**
- * Returns the value of field 'viewreference'.
- *
- * @return the value of field 'Viewreference'.
- */
- public boolean getViewreference()
- {
- return this._viewreference;
- }
-
- /**
- * Method hasColour.
- *
- * @return true if at least one Colour has been added
- */
- public boolean hasColour()
- {
- return this._has_colour;
- }
-
- /**
- * Method hasEnd.
- *
- * @return true if at least one End has been added
- */
- public boolean hasEnd()
- {
- return this._has_end;
- }
-
- /**
- * Method hasHidden.
- *
- * @return true if at least one Hidden has been added
- */
- public boolean hasHidden()
- {
- return this._has_hidden;
- }
-
- /**
- * Method hasStart.
- *
- * @return true if at least one Start has been added
- */
- public boolean hasStart()
- {
- return this._has_start;
- }
-
- /**
- * Method hasViewreference.
- *
- * @return true if at least one Viewreference has been added
- */
- public boolean hasViewreference()
- {
- return this._has_viewreference;
- }
-
- /**
- * Returns the value of field 'hidden'.
- *
- * @return the value of field 'Hidden'.
- */
- public boolean isHidden()
- {
- return this._hidden;
- }
-
- /**
- * 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;
- }
-
- /**
- * Returns the value of field 'viewreference'.
- *
- * @return the value of field 'Viewreference'.
- */
- public boolean isViewreference()
- {
- return this._viewreference;
- }
-
- /**
- *
- *
- * @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 removeAllFeatures()
- {
- this._featuresList.clear();
- }
-
- /**
- */
- public void removeAllHiddenSequences()
- {
- this._hiddenSequencesList.clear();
- }
-
- /**
- */
- public void removeAllPdbids()
- {
- this._pdbidsList.clear();
- }
-
- /**
- */
- public void removeAllRnaViewer()
- {
- this._rnaViewerList.clear();
- }
-
- /**
- * Method removeFeatures.
- *
- * @param vFeatures
- * @return true if the object was removed from the collection.
- */
- public boolean removeFeatures(
- final jalview.schemabinding.version2.Features vFeatures)
- {
- boolean removed = _featuresList.remove(vFeatures);
- return removed;
- }
-
- /**
- * Method removeFeaturesAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Features removeFeaturesAt(
- final int index)
- {
- java.lang.Object obj = this._featuresList.remove(index);
- return (jalview.schemabinding.version2.Features) obj;
- }
-
- /**
- * Method removeHiddenSequences.
- *
- * @param vHiddenSequences
- * @return true if the object was removed from the collection.
- */
- public boolean removeHiddenSequences(final int vHiddenSequences)
- {
- boolean removed = _hiddenSequencesList.remove(new java.lang.Integer(
- vHiddenSequences));
- return removed;
- }
-
- /**
- * Method removeHiddenSequencesAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public int removeHiddenSequencesAt(final int index)
- {
- java.lang.Object obj = this._hiddenSequencesList.remove(index);
- return ((java.lang.Integer) obj).intValue();
- }
-
- /**
- * Method removePdbids.
- *
- * @param vPdbids
- * @return true if the object was removed from the collection.
- */
- public boolean removePdbids(
- final jalview.schemabinding.version2.Pdbids vPdbids)
- {
- boolean removed = _pdbidsList.remove(vPdbids);
- return removed;
- }
-
- /**
- * Method removePdbidsAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Pdbids removePdbidsAt(
- final int index)
- {
- java.lang.Object obj = this._pdbidsList.remove(index);
- return (jalview.schemabinding.version2.Pdbids) obj;
- }
-
- /**
- * Method removeRnaViewer.
- *
- * @param vRnaViewer
- * @return true if the object was removed from the collection.
- */
- public boolean removeRnaViewer(
- final jalview.schemabinding.version2.RnaViewer vRnaViewer)
- {
- boolean removed = _rnaViewerList.remove(vRnaViewer);
- return removed;
- }
-
- /**
- * Method removeRnaViewerAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.RnaViewer removeRnaViewerAt(
- final int index)
- {
- java.lang.Object obj = this._rnaViewerList.remove(index);
- return (jalview.schemabinding.version2.RnaViewer) obj;
- }
-
- /**
- * Sets the value of field 'colour'.
- *
- * @param colour
- * the value of field 'colour'.
- */
- public void setColour(final int colour)
- {
- this._colour = colour;
- this._has_colour = true;
- }
-
- /**
- * Sets the value of field 'end'.
- *
- * @param end
- * the value of field 'end'.
- */
- public void setEnd(final int end)
- {
- this._end = end;
- this._has_end = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vFeatures
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setFeatures(final int index,
- final jalview.schemabinding.version2.Features vFeatures)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._featuresList.size())
- {
- throw new IndexOutOfBoundsException("setFeatures: Index value '"
- + index + "' not in range [0.."
- + (this._featuresList.size() - 1) + "]");
- }
-
- this._featuresList.set(index, vFeatures);
- }
-
- /**
- *
- *
- * @param vFeaturesArray
- */
- public void setFeatures(
- final jalview.schemabinding.version2.Features[] vFeaturesArray)
- {
- // -- copy array
- _featuresList.clear();
-
- for (int i = 0; i < vFeaturesArray.length; i++)
- {
- this._featuresList.add(vFeaturesArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'hidden'.
- *
- * @param hidden
- * the value of field 'hidden'.
- */
- public void setHidden(final boolean hidden)
- {
- this._hidden = hidden;
- this._has_hidden = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vHiddenSequences
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setHiddenSequences(final int index, final int vHiddenSequences)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._hiddenSequencesList.size())
- {
- throw new IndexOutOfBoundsException(
- "setHiddenSequences: Index value '" + index
- + "' not in range [0.."
- + (this._hiddenSequencesList.size() - 1) + "]");
- }
-
- this._hiddenSequencesList.set(index, new java.lang.Integer(
- vHiddenSequences));
- }
-
- /**
- *
- *
- * @param vHiddenSequencesArray
- */
- public void setHiddenSequences(final int[] vHiddenSequencesArray)
- {
- // -- copy array
- _hiddenSequencesList.clear();
-
- for (int i = 0; i < vHiddenSequencesArray.length; i++)
- {
- this._hiddenSequencesList.add(new java.lang.Integer(
- vHiddenSequencesArray[i]));
- }
- }
-
- /**
- * Sets the value of field 'id'.
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- *
- *
- * @param index
- * @param vPdbids
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setPdbids(final int index,
- final jalview.schemabinding.version2.Pdbids vPdbids)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._pdbidsList.size())
- {
- throw new IndexOutOfBoundsException("setPdbids: Index value '"
- + index + "' not in range [0.."
- + (this._pdbidsList.size() - 1) + "]");
- }
-
- this._pdbidsList.set(index, vPdbids);
- }
-
- /**
- *
- *
- * @param vPdbidsArray
- */
- public void setPdbids(
- final jalview.schemabinding.version2.Pdbids[] vPdbidsArray)
- {
- // -- copy array
- _pdbidsList.clear();
-
- for (int i = 0; i < vPdbidsArray.length; i++)
- {
- this._pdbidsList.add(vPdbidsArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vRnaViewer
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setRnaViewer(final int index,
- final jalview.schemabinding.version2.RnaViewer vRnaViewer)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._rnaViewerList.size())
- {
- throw new IndexOutOfBoundsException("setRnaViewer: Index value '"
- + index + "' not in range [0.."
- + (this._rnaViewerList.size() - 1) + "]");
- }
-
- this._rnaViewerList.set(index, vRnaViewer);
- }
-
- /**
- *
- *
- * @param vRnaViewerArray
- */
- public void setRnaViewer(
- final jalview.schemabinding.version2.RnaViewer[] vRnaViewerArray)
- {
- // -- copy array
- _rnaViewerList.clear();
-
- for (int i = 0; i < vRnaViewerArray.length; i++)
- {
- this._rnaViewerList.add(vRnaViewerArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'start'.
- *
- * @param start
- * the value of field 'start'.
- */
- public void setStart(final int start)
- {
- this._start = start;
- this._has_start = true;
- }
-
- /**
- * Sets the value of field 'viewreference'.
- *
- * @param viewreference
- * the value of field 'viewreference'.
- */
- public void setViewreference(final boolean viewreference)
- {
- this._viewreference = viewreference;
- this._has_viewreference = true;
- }
-
- /**
- * 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.schemabinding.version2.JSeq
- */
- public static jalview.schemabinding.version2.JSeq unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.JSeq) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.JSeq.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JalviewModel.
- *
- * @version $Revision$ $Date$
- */
-public class JalviewModel implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _creationDate.
- */
- private java.util.Date _creationDate;
-
- /**
- * Field _version.
- */
- private java.lang.String _version;
-
- /**
- * Field _vamsasModel.
- */
- private jalview.schemabinding.version2.VamsasModel _vamsasModel;
-
- /**
- * Field _jalviewModelSequence.
- */
- private jalview.schemabinding.version2.JalviewModelSequence _jalviewModelSequence;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JalviewModel()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'creationDate'.
- *
- * @return the value of field 'CreationDate'.
- */
- public java.util.Date getCreationDate()
- {
- return this._creationDate;
- }
-
- /**
- * Returns the value of field 'jalviewModelSequence'.
- *
- * @return the value of field 'JalviewModelSequence'.
- */
- public jalview.schemabinding.version2.JalviewModelSequence getJalviewModelSequence()
- {
- return this._jalviewModelSequence;
- }
-
- /**
- * Returns the value of field 'vamsasModel'.
- *
- * @return the value of field 'VamsasModel'.
- */
- public jalview.schemabinding.version2.VamsasModel getVamsasModel()
- {
- return this._vamsasModel;
- }
-
- /**
- * Returns the value of field 'version'.
- *
- * @return the value of field 'Version'.
- */
- public java.lang.String getVersion()
- {
- return this._version;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'creationDate'.
- *
- * @param creationDate
- * the value of field 'creationDate'.
- */
- public void setCreationDate(final java.util.Date creationDate)
- {
- this._creationDate = creationDate;
- }
-
- /**
- * Sets the value of field 'jalviewModelSequence'.
- *
- * @param jalviewModelSequence
- * the value of field 'jalviewModelSequence'.
- */
- public void setJalviewModelSequence(
- final jalview.schemabinding.version2.JalviewModelSequence jalviewModelSequence)
- {
- this._jalviewModelSequence = jalviewModelSequence;
- }
-
- /**
- * Sets the value of field 'vamsasModel'.
- *
- * @param vamsasModel
- * the value of field 'vamsasModel'.
- */
- public void setVamsasModel(
- final jalview.schemabinding.version2.VamsasModel vamsasModel)
- {
- this._vamsasModel = vamsasModel;
- }
-
- /**
- * Sets the value of field 'version'.
- *
- * @param version
- * the value of field 'version'.
- */
- public void setVersion(final java.lang.String version)
- {
- this._version = version;
- }
-
- /**
- * 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.schemabinding.version2.JalviewModel
- */
- public static jalview.schemabinding.version2.JalviewModel unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.JalviewModel) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.JalviewModel.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JalviewModelSequence.
- *
- * @version $Revision$ $Date$
- */
-public class JalviewModelSequence implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _JSeqList.
- */
- private java.util.Vector _JSeqList;
-
- /**
- * Field _JGroupList.
- */
- private java.util.Vector _JGroupList;
-
- /**
- * Field _viewportList.
- */
- private java.util.Vector _viewportList;
-
- /**
- * Field _userColoursList.
- */
- private java.util.Vector _userColoursList;
-
- /**
- * Field _treeList.
- */
- private java.util.Vector _treeList;
-
- /**
- * Field _featureSettings.
- */
- private jalview.schemabinding.version2.FeatureSettings _featureSettings;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JalviewModelSequence()
- {
- super();
- this._JSeqList = new java.util.Vector();
- this._JGroupList = new java.util.Vector();
- this._viewportList = new java.util.Vector();
- this._userColoursList = new java.util.Vector();
- this._treeList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vJGroup
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addJGroup(final jalview.schemabinding.version2.JGroup vJGroup)
- throws java.lang.IndexOutOfBoundsException
- {
- this._JGroupList.addElement(vJGroup);
- }
-
- /**
- *
- *
- * @param index
- * @param vJGroup
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addJGroup(final int index,
- final jalview.schemabinding.version2.JGroup vJGroup)
- throws java.lang.IndexOutOfBoundsException
- {
- this._JGroupList.add(index, vJGroup);
- }
-
- /**
- *
- *
- * @param vJSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addJSeq(final jalview.schemabinding.version2.JSeq vJSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- this._JSeqList.addElement(vJSeq);
- }
-
- /**
- *
- *
- * @param index
- * @param vJSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addJSeq(final int index,
- final jalview.schemabinding.version2.JSeq vJSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- this._JSeqList.add(index, vJSeq);
- }
-
- /**
- *
- *
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addTree(final jalview.schemabinding.version2.Tree vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- this._treeList.addElement(vTree);
- }
-
- /**
- *
- *
- * @param index
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addTree(final int index,
- final jalview.schemabinding.version2.Tree vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- this._treeList.add(index, vTree);
- }
-
- /**
- *
- *
- * @param vUserColours
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addUserColours(
- final jalview.schemabinding.version2.UserColours vUserColours)
- throws java.lang.IndexOutOfBoundsException
- {
- this._userColoursList.addElement(vUserColours);
- }
-
- /**
- *
- *
- * @param index
- * @param vUserColours
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addUserColours(final int index,
- final jalview.schemabinding.version2.UserColours vUserColours)
- throws java.lang.IndexOutOfBoundsException
- {
- this._userColoursList.add(index, vUserColours);
- }
-
- /**
- *
- *
- * @param vViewport
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addViewport(
- final jalview.schemabinding.version2.Viewport vViewport)
- throws java.lang.IndexOutOfBoundsException
- {
- this._viewportList.addElement(vViewport);
- }
-
- /**
- *
- *
- * @param index
- * @param vViewport
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addViewport(final int index,
- final jalview.schemabinding.version2.Viewport vViewport)
- throws java.lang.IndexOutOfBoundsException
- {
- this._viewportList.add(index, vViewport);
- }
-
- /**
- * Method enumerateJGroup.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.JGroup
- * elements
- */
- public java.util.Enumeration enumerateJGroup()
- {
- return this._JGroupList.elements();
- }
-
- /**
- * Method enumerateJSeq.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.JSeq
- * elements
- */
- public java.util.Enumeration enumerateJSeq()
- {
- return this._JSeqList.elements();
- }
-
- /**
- * Method enumerateTree.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Tree
- * elements
- */
- public java.util.Enumeration enumerateTree()
- {
- return this._treeList.elements();
- }
-
- /**
- * Method enumerateUserColours.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.UserColours
- * elements
- */
- public java.util.Enumeration enumerateUserColours()
- {
- return this._userColoursList.elements();
- }
-
- /**
- * Method enumerateViewport.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Viewport
- * elements
- */
- public java.util.Enumeration enumerateViewport()
- {
- return this._viewportList.elements();
- }
-
- /**
- * Returns the value of field 'featureSettings'.
- *
- * @return the value of field 'FeatureSettings'.
- */
- public jalview.schemabinding.version2.FeatureSettings getFeatureSettings()
- {
- return this._featureSettings;
- }
-
- /**
- * Method getJGroup.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.JGroup at the given
- * index
- */
- public jalview.schemabinding.version2.JGroup getJGroup(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._JGroupList.size())
- {
- throw new IndexOutOfBoundsException("getJGroup: Index value '"
- + index + "' not in range [0.."
- + (this._JGroupList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.JGroup) _JGroupList.get(index);
- }
-
- /**
- * Method getJGroup.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.JGroup[] getJGroup()
- {
- jalview.schemabinding.version2.JGroup[] array = new jalview.schemabinding.version2.JGroup[0];
- return (jalview.schemabinding.version2.JGroup[]) this._JGroupList
- .toArray(array);
- }
-
- /**
- * Method getJGroupCount.
- *
- * @return the size of this collection
- */
- public int getJGroupCount()
- {
- return this._JGroupList.size();
- }
-
- /**
- * Method getJSeq.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.JSeq at the given
- * index
- */
- public jalview.schemabinding.version2.JSeq getJSeq(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._JSeqList.size())
- {
- throw new IndexOutOfBoundsException("getJSeq: Index value '" + index
- + "' not in range [0.." + (this._JSeqList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.JSeq) _JSeqList.get(index);
- }
-
- /**
- * Method getJSeq.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.JSeq[] getJSeq()
- {
- jalview.schemabinding.version2.JSeq[] array = new jalview.schemabinding.version2.JSeq[0];
- return (jalview.schemabinding.version2.JSeq[]) this._JSeqList
- .toArray(array);
- }
-
- /**
- * Method getJSeqCount.
- *
- * @return the size of this collection
- */
- public int getJSeqCount()
- {
- return this._JSeqList.size();
- }
-
- /**
- * Method getTree.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.Tree at the given
- * index
- */
- public jalview.schemabinding.version2.Tree getTree(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._treeList.size())
- {
- throw new IndexOutOfBoundsException("getTree: Index value '" + index
- + "' not in range [0.." + (this._treeList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Tree) _treeList.get(index);
- }
-
- /**
- * Method getTree.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Tree[] getTree()
- {
- jalview.schemabinding.version2.Tree[] array = new jalview.schemabinding.version2.Tree[0];
- return (jalview.schemabinding.version2.Tree[]) this._treeList
- .toArray(array);
- }
-
- /**
- * Method getTreeCount.
- *
- * @return the size of this collection
- */
- public int getTreeCount()
- {
- return this._treeList.size();
- }
-
- /**
- * Method getUserColours.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.UserColours at the
- * given index
- */
- public jalview.schemabinding.version2.UserColours getUserColours(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._userColoursList.size())
- {
- throw new IndexOutOfBoundsException("getUserColours: Index value '"
- + index + "' not in range [0.."
- + (this._userColoursList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.UserColours) _userColoursList
- .get(index);
- }
-
- /**
- * Method getUserColours.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.UserColours[] getUserColours()
- {
- jalview.schemabinding.version2.UserColours[] array = new jalview.schemabinding.version2.UserColours[0];
- return (jalview.schemabinding.version2.UserColours[]) this._userColoursList
- .toArray(array);
- }
-
- /**
- * Method getUserColoursCount.
- *
- * @return the size of this collection
- */
- public int getUserColoursCount()
- {
- return this._userColoursList.size();
- }
-
- /**
- * Method getViewport.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.Viewport at the
- * given index
- */
- public jalview.schemabinding.version2.Viewport getViewport(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._viewportList.size())
- {
- throw new IndexOutOfBoundsException("getViewport: Index value '"
- + index + "' not in range [0.."
- + (this._viewportList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Viewport) _viewportList
- .get(index);
- }
-
- /**
- * Method getViewport.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Viewport[] getViewport()
- {
- jalview.schemabinding.version2.Viewport[] array = new jalview.schemabinding.version2.Viewport[0];
- return (jalview.schemabinding.version2.Viewport[]) this._viewportList
- .toArray(array);
- }
-
- /**
- * Method getViewportCount.
- *
- * @return the size of this collection
- */
- public int getViewportCount()
- {
- return this._viewportList.size();
- }
-
- /**
- * 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 removeAllJGroup()
- {
- this._JGroupList.clear();
- }
-
- /**
- */
- public void removeAllJSeq()
- {
- this._JSeqList.clear();
- }
-
- /**
- */
- public void removeAllTree()
- {
- this._treeList.clear();
- }
-
- /**
- */
- public void removeAllUserColours()
- {
- this._userColoursList.clear();
- }
-
- /**
- */
- public void removeAllViewport()
- {
- this._viewportList.clear();
- }
-
- /**
- * Method removeJGroup.
- *
- * @param vJGroup
- * @return true if the object was removed from the collection.
- */
- public boolean removeJGroup(
- final jalview.schemabinding.version2.JGroup vJGroup)
- {
- boolean removed = _JGroupList.remove(vJGroup);
- return removed;
- }
-
- /**
- * Method removeJGroupAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.JGroup removeJGroupAt(
- final int index)
- {
- java.lang.Object obj = this._JGroupList.remove(index);
- return (jalview.schemabinding.version2.JGroup) obj;
- }
-
- /**
- * Method removeJSeq.
- *
- * @param vJSeq
- * @return true if the object was removed from the collection.
- */
- public boolean removeJSeq(final jalview.schemabinding.version2.JSeq vJSeq)
- {
- boolean removed = _JSeqList.remove(vJSeq);
- return removed;
- }
-
- /**
- * Method removeJSeqAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.JSeq removeJSeqAt(final int index)
- {
- java.lang.Object obj = this._JSeqList.remove(index);
- return (jalview.schemabinding.version2.JSeq) obj;
- }
-
- /**
- * Method removeTree.
- *
- * @param vTree
- * @return true if the object was removed from the collection.
- */
- public boolean removeTree(final jalview.schemabinding.version2.Tree vTree)
- {
- boolean removed = _treeList.remove(vTree);
- return removed;
- }
-
- /**
- * Method removeTreeAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Tree removeTreeAt(final int index)
- {
- java.lang.Object obj = this._treeList.remove(index);
- return (jalview.schemabinding.version2.Tree) obj;
- }
-
- /**
- * Method removeUserColours.
- *
- * @param vUserColours
- * @return true if the object was removed from the collection.
- */
- public boolean removeUserColours(
- final jalview.schemabinding.version2.UserColours vUserColours)
- {
- boolean removed = _userColoursList.remove(vUserColours);
- return removed;
- }
-
- /**
- * Method removeUserColoursAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.UserColours removeUserColoursAt(
- final int index)
- {
- java.lang.Object obj = this._userColoursList.remove(index);
- return (jalview.schemabinding.version2.UserColours) obj;
- }
-
- /**
- * Method removeViewport.
- *
- * @param vViewport
- * @return true if the object was removed from the collection.
- */
- public boolean removeViewport(
- final jalview.schemabinding.version2.Viewport vViewport)
- {
- boolean removed = _viewportList.remove(vViewport);
- return removed;
- }
-
- /**
- * Method removeViewportAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Viewport removeViewportAt(
- final int index)
- {
- java.lang.Object obj = this._viewportList.remove(index);
- return (jalview.schemabinding.version2.Viewport) obj;
- }
-
- /**
- * Sets the value of field 'featureSettings'.
- *
- * @param featureSettings
- * the value of field 'featureSettings'.
- */
- public void setFeatureSettings(
- final jalview.schemabinding.version2.FeatureSettings featureSettings)
- {
- this._featureSettings = featureSettings;
- }
-
- /**
- *
- *
- * @param index
- * @param vJGroup
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setJGroup(final int index,
- final jalview.schemabinding.version2.JGroup vJGroup)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._JGroupList.size())
- {
- throw new IndexOutOfBoundsException("setJGroup: Index value '"
- + index + "' not in range [0.."
- + (this._JGroupList.size() - 1) + "]");
- }
-
- this._JGroupList.set(index, vJGroup);
- }
-
- /**
- *
- *
- * @param vJGroupArray
- */
- public void setJGroup(
- final jalview.schemabinding.version2.JGroup[] vJGroupArray)
- {
- // -- copy array
- _JGroupList.clear();
-
- for (int i = 0; i < vJGroupArray.length; i++)
- {
- this._JGroupList.add(vJGroupArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vJSeq
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setJSeq(final int index,
- final jalview.schemabinding.version2.JSeq vJSeq)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._JSeqList.size())
- {
- throw new IndexOutOfBoundsException("setJSeq: Index value '" + index
- + "' not in range [0.." + (this._JSeqList.size() - 1) + "]");
- }
-
- this._JSeqList.set(index, vJSeq);
- }
-
- /**
- *
- *
- * @param vJSeqArray
- */
- public void setJSeq(final jalview.schemabinding.version2.JSeq[] vJSeqArray)
- {
- // -- copy array
- _JSeqList.clear();
-
- for (int i = 0; i < vJSeqArray.length; i++)
- {
- this._JSeqList.add(vJSeqArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setTree(final int index,
- final jalview.schemabinding.version2.Tree vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._treeList.size())
- {
- throw new IndexOutOfBoundsException("setTree: Index value '" + index
- + "' not in range [0.." + (this._treeList.size() - 1) + "]");
- }
-
- this._treeList.set(index, vTree);
- }
-
- /**
- *
- *
- * @param vTreeArray
- */
- public void setTree(final jalview.schemabinding.version2.Tree[] vTreeArray)
- {
- // -- copy array
- _treeList.clear();
-
- for (int i = 0; i < vTreeArray.length; i++)
- {
- this._treeList.add(vTreeArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vUserColours
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setUserColours(final int index,
- final jalview.schemabinding.version2.UserColours vUserColours)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._userColoursList.size())
- {
- throw new IndexOutOfBoundsException("setUserColours: Index value '"
- + index + "' not in range [0.."
- + (this._userColoursList.size() - 1) + "]");
- }
-
- this._userColoursList.set(index, vUserColours);
- }
-
- /**
- *
- *
- * @param vUserColoursArray
- */
- public void setUserColours(
- final jalview.schemabinding.version2.UserColours[] vUserColoursArray)
- {
- // -- copy array
- _userColoursList.clear();
-
- for (int i = 0; i < vUserColoursArray.length; i++)
- {
- this._userColoursList.add(vUserColoursArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vViewport
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setViewport(final int index,
- final jalview.schemabinding.version2.Viewport vViewport)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._viewportList.size())
- {
- throw new IndexOutOfBoundsException("setViewport: Index value '"
- + index + "' not in range [0.."
- + (this._viewportList.size() - 1) + "]");
- }
-
- this._viewportList.set(index, vViewport);
- }
-
- /**
- *
- *
- * @param vViewportArray
- */
- public void setViewport(
- final jalview.schemabinding.version2.Viewport[] vViewportArray)
- {
- // -- copy array
- _viewportList.clear();
-
- for (int i = 0; i < vViewportArray.length; i++)
- {
- this._viewportList.add(vViewportArray[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.schemabinding.version2.JalviewModelSequence
- */
- public static jalview.schemabinding.version2.JalviewModelSequence unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.JalviewModelSequence) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.JalviewModelSequence.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class JalviewUserColours.
- *
- * @version $Revision$ $Date$
- */
-public class JalviewUserColours implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _schemeName.
- */
- private java.lang.String _schemeName;
-
- /**
- * Jalview colour scheme document version.
- *
- */
- private java.lang.String _version;
-
- /**
- * Field _colourList.
- */
- private java.util.Vector _colourList;
-
- /**
- * Field _filterList.
- */
- private java.util.Vector _filterList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JalviewUserColours()
- {
- super();
- this._colourList = new java.util.Vector();
- this._filterList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vColour
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addColour(final Colour vColour)
- throws java.lang.IndexOutOfBoundsException
- {
- this._colourList.addElement(vColour);
- }
-
- /**
- *
- *
- * @param index
- * @param vColour
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addColour(final int index, final Colour vColour)
- throws java.lang.IndexOutOfBoundsException
- {
- this._colourList.add(index, vColour);
- }
-
- /**
- *
- *
- * @param vFilter
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addFilter(final Filter vFilter)
- throws java.lang.IndexOutOfBoundsException
- {
- this._filterList.addElement(vFilter);
- }
-
- /**
- *
- *
- * @param index
- * @param vFilter
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addFilter(final int index, final Filter vFilter)
- throws java.lang.IndexOutOfBoundsException
- {
- this._filterList.add(index, vFilter);
- }
-
- /**
- * Method enumerateColour.
- *
- * @return an Enumeration over all Colour elements
- */
- public java.util.Enumeration enumerateColour()
- {
- return this._colourList.elements();
- }
-
- /**
- * Method enumerateFilter.
- *
- * @return an Enumeration over all Filter elements
- */
- public java.util.Enumeration enumerateFilter()
- {
- return this._filterList.elements();
- }
-
- /**
- * Method getColour.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the Colour at the given index
- */
- public Colour getColour(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._colourList.size())
- {
- throw new IndexOutOfBoundsException(
- "getColour: Index value '" + index + "' not in range [0.."
- + (this._colourList.size() - 1) + "]");
- }
-
- return (Colour) _colourList.get(index);
- }
-
- /**
- * Method getColour.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public Colour[] getColour()
- {
- Colour[] array = new Colour[0];
- return (Colour[]) this._colourList.toArray(array);
- }
-
- /**
- * Method getColourCount.
- *
- * @return the size of this collection
- */
- public int getColourCount()
- {
- return this._colourList.size();
- }
-
- /**
- * Method getFilter.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the Filter at the given index
- */
- public Filter getFilter(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._filterList.size())
- {
- throw new IndexOutOfBoundsException(
- "getFilter: Index value '" + index + "' not in range [0.."
- + (this._filterList.size() - 1) + "]");
- }
-
- return (Filter) _filterList.get(index);
- }
-
- /**
- * Method getFilter.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public Filter[] getFilter()
- {
- Filter[] array = new Filter[0];
- return (Filter[]) this._filterList.toArray(array);
- }
-
- /**
- * Method getFilterCount.
- *
- * @return the size of this collection
- */
- public int getFilterCount()
- {
- return this._filterList.size();
- }
-
- /**
- * Returns the value of field 'schemeName'.
- *
- * @return the value of field 'SchemeName'.
- */
- public java.lang.String getSchemeName()
- {
- return this._schemeName;
- }
-
- /**
- * Returns the value of field 'version'. The field 'version' has the following
- * description: Jalview colour scheme document version.
- *
- *
- * @return the value of field 'Version'.
- */
- public java.lang.String getVersion()
- {
- return this._version;
- }
-
- /**
- * 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 removeAllColour()
- {
- this._colourList.clear();
- }
-
- /**
- */
- public void removeAllFilter()
- {
- this._filterList.clear();
- }
-
- /**
- * Method removeColour.
- *
- * @param vColour
- * @return true if the object was removed from the collection.
- */
- public boolean removeColour(final Colour vColour)
- {
- boolean removed = _colourList.remove(vColour);
- return removed;
- }
-
- /**
- * Method removeColourAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public Colour removeColourAt(final int index)
- {
- java.lang.Object obj = this._colourList.remove(index);
- return (Colour) obj;
- }
-
- /**
- * Method removeFilter.
- *
- * @param vFilter
- * @return true if the object was removed from the collection.
- */
- public boolean removeFilter(final Filter vFilter)
- {
- boolean removed = _filterList.remove(vFilter);
- return removed;
- }
-
- /**
- * Method removeFilterAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public Filter removeFilterAt(final int index)
- {
- java.lang.Object obj = this._filterList.remove(index);
- return (Filter) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vColour
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setColour(final int index, final Colour vColour)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._colourList.size())
- {
- throw new IndexOutOfBoundsException(
- "setColour: Index value '" + index + "' not in range [0.."
- + (this._colourList.size() - 1) + "]");
- }
-
- this._colourList.set(index, vColour);
- }
-
- /**
- *
- *
- * @param vColourArray
- */
- public void setColour(final Colour[] vColourArray)
- {
- // -- copy array
- _colourList.clear();
-
- for (int i = 0; i < vColourArray.length; i++)
- {
- this._colourList.add(vColourArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vFilter
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setFilter(final int index, final Filter vFilter)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._filterList.size())
- {
- throw new IndexOutOfBoundsException(
- "setFilter: Index value '" + index + "' not in range [0.."
- + (this._filterList.size() - 1) + "]");
- }
-
- this._filterList.set(index, vFilter);
- }
-
- /**
- *
- *
- * @param vFilterArray
- */
- public void setFilter(final Filter[] vFilterArray)
- {
- // -- copy array
- _filterList.clear();
-
- for (int i = 0; i < vFilterArray.length; i++)
- {
- this._filterList.add(vFilterArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'schemeName'.
- *
- * @param schemeName
- * the value of field 'schemeName'.
- */
- public void setSchemeName(final java.lang.String schemeName)
- {
- this._schemeName = schemeName;
- }
-
- /**
- * Sets the value of field 'version'. The field 'version' has the following
- * description: Jalview colour scheme document version.
- *
- *
- * @param version
- * the value of field 'version'.
- */
- public void setVersion(final java.lang.String version)
- {
- this._version = version;
- }
-
- /**
- * 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.schemabinding.version2.JalviewUserColours
- */
- public static jalview.schemabinding.version2.JalviewUserColours unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.JalviewUserColours) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.JalviewUserColours.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * a region from start to end inclusive
- *
- * @version $Revision$ $Date$
- */
-public class MapListFrom implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _start.
- */
- private int _start;
-
- /**
- * keeps track of state for field: _start
- */
- private boolean _has_start;
-
- /**
- * Field _end.
- */
- private int _end;
-
- /**
- * keeps track of state for field: _end
- */
- private boolean _has_end;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MapListFrom()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteEnd()
- {
- this._has_end = false;
- }
-
- /**
- */
- public void deleteStart()
- {
- this._has_start = false;
- }
-
- /**
- * Returns the value of field 'end'.
- *
- * @return the value of field 'End'.
- */
- public int getEnd()
- {
- return this._end;
- }
-
- /**
- * Returns the value of field 'start'.
- *
- * @return the value of field 'Start'.
- */
- public int getStart()
- {
- return this._start;
- }
-
- /**
- * Method hasEnd.
- *
- * @return true if at least one End has been added
- */
- public boolean hasEnd()
- {
- return this._has_end;
- }
-
- /**
- * Method hasStart.
- *
- * @return true if at least one Start has been added
- */
- public boolean hasStart()
- {
- return this._has_start;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'end'.
- *
- * @param end
- * the value of field 'end'.
- */
- public void setEnd(final int end)
- {
- this._end = end;
- this._has_end = true;
- }
-
- /**
- * Sets the value of field 'start'.
- *
- * @param start
- * the value of field 'start'.
- */
- public void setStart(final int start)
- {
- this._start = start;
- this._has_start = true;
- }
-
- /**
- * 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.schemabinding.version2.MapListFrom
- */
- public static jalview.schemabinding.version2.MapListFrom unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.MapListFrom) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.MapListFrom.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * a region from start to end inclusive
- *
- * @version $Revision$ $Date$
- */
-public class MapListTo implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _start.
- */
- private int _start;
-
- /**
- * keeps track of state for field: _start
- */
- private boolean _has_start;
-
- /**
- * Field _end.
- */
- private int _end;
-
- /**
- * keeps track of state for field: _end
- */
- private boolean _has_end;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MapListTo()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteEnd()
- {
- this._has_end = false;
- }
-
- /**
- */
- public void deleteStart()
- {
- this._has_start = false;
- }
-
- /**
- * Returns the value of field 'end'.
- *
- * @return the value of field 'End'.
- */
- public int getEnd()
- {
- return this._end;
- }
-
- /**
- * Returns the value of field 'start'.
- *
- * @return the value of field 'Start'.
- */
- public int getStart()
- {
- return this._start;
- }
-
- /**
- * Method hasEnd.
- *
- * @return true if at least one End has been added
- */
- public boolean hasEnd()
- {
- return this._has_end;
- }
-
- /**
- * Method hasStart.
- *
- * @return true if at least one Start has been added
- */
- public boolean hasStart()
- {
- return this._has_start;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'end'.
- *
- * @param end
- * the value of field 'end'.
- */
- public void setEnd(final int end)
- {
- this._end = end;
- this._has_end = true;
- }
-
- /**
- * Sets the value of field 'start'.
- *
- * @param start
- * the value of field 'start'.
- */
- public void setStart(final int start)
- {
- this._start = start;
- this._has_start = true;
- }
-
- /**
- * 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.schemabinding.version2.MapListTo
- */
- public static jalview.schemabinding.version2.MapListTo unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.MapListTo) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.MapListTo.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * developed after mapRangeType from
- * http://www.vamsas.ac.uk/schemas/1.0/vamsasTypes
- *
- * This effectively represents a java.util.MapList object
- *
- *
- * @version $Revision$ $Date$
- */
-public class MapListType implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * number of dictionary symbol widths involved in each mapped position on this
- * sequence (for example, 3 for a dna sequence exon region that is being
- * mapped to a protein sequence). This is optional, since the unit can be
- * usually be inferred from the dictionary type of each sequence involved in
- * the mapping.
- */
- private long _mapFromUnit;
-
- /**
- * keeps track of state for field: _mapFromUnit
- */
- private boolean _has_mapFromUnit;
-
- /**
- * number of dictionary symbol widths involved in each mapped position on this
- * sequence (for example, 3 for a dna sequence exon region that is being
- * mapped to a protein sequence). This is optional, since the unit can be
- * usually be inferred from the dictionary type of each sequence involved in
- * the mapping.
- */
- private long _mapToUnit;
-
- /**
- * keeps track of state for field: _mapToUnit
- */
- private boolean _has_mapToUnit;
-
- /**
- * a region from start to end inclusive
- */
- private java.util.Vector _mapListFromList;
-
- /**
- * a region from start to end inclusive
- */
- private java.util.Vector _mapListToList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MapListType()
- {
- super();
- this._mapListFromList = new java.util.Vector();
- this._mapListToList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vMapListFrom
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addMapListFrom(
- final jalview.schemabinding.version2.MapListFrom vMapListFrom)
- throws java.lang.IndexOutOfBoundsException
- {
- this._mapListFromList.addElement(vMapListFrom);
- }
-
- /**
- *
- *
- * @param index
- * @param vMapListFrom
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addMapListFrom(final int index,
- final jalview.schemabinding.version2.MapListFrom vMapListFrom)
- throws java.lang.IndexOutOfBoundsException
- {
- this._mapListFromList.add(index, vMapListFrom);
- }
-
- /**
- *
- *
- * @param vMapListTo
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addMapListTo(
- final jalview.schemabinding.version2.MapListTo vMapListTo)
- throws java.lang.IndexOutOfBoundsException
- {
- this._mapListToList.addElement(vMapListTo);
- }
-
- /**
- *
- *
- * @param index
- * @param vMapListTo
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addMapListTo(final int index,
- final jalview.schemabinding.version2.MapListTo vMapListTo)
- throws java.lang.IndexOutOfBoundsException
- {
- this._mapListToList.add(index, vMapListTo);
- }
-
- /**
- */
- public void deleteMapFromUnit()
- {
- this._has_mapFromUnit = false;
- }
-
- /**
- */
- public void deleteMapToUnit()
- {
- this._has_mapToUnit = false;
- }
-
- /**
- * Method enumerateMapListFrom.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.MapListFrom
- * elements
- */
- public java.util.Enumeration enumerateMapListFrom()
- {
- return this._mapListFromList.elements();
- }
-
- /**
- * Method enumerateMapListTo.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.MapListTo
- * elements
- */
- public java.util.Enumeration enumerateMapListTo()
- {
- return this._mapListToList.elements();
- }
-
- /**
- * Returns the value of field 'mapFromUnit'. The field 'mapFromUnit' has the
- * following description: number of dictionary symbol widths involved in each
- * mapped position on this sequence (for example, 3 for a dna sequence exon
- * region that is being mapped to a protein sequence). This is optional, since
- * the unit can be usually be inferred from the dictionary type of each
- * sequence involved in the mapping.
- *
- * @return the value of field 'MapFromUnit'.
- */
- public long getMapFromUnit()
- {
- return this._mapFromUnit;
- }
-
- /**
- * Method getMapListFrom.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.MapListFrom at the
- * given index
- */
- public jalview.schemabinding.version2.MapListFrom getMapListFrom(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._mapListFromList.size())
- {
- throw new IndexOutOfBoundsException("getMapListFrom: Index value '"
- + index + "' not in range [0.."
- + (this._mapListFromList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.MapListFrom) _mapListFromList
- .get(index);
- }
-
- /**
- * Method getMapListFrom.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.MapListFrom[] getMapListFrom()
- {
- jalview.schemabinding.version2.MapListFrom[] array = new jalview.schemabinding.version2.MapListFrom[0];
- return (jalview.schemabinding.version2.MapListFrom[]) this._mapListFromList
- .toArray(array);
- }
-
- /**
- * Method getMapListFromCount.
- *
- * @return the size of this collection
- */
- public int getMapListFromCount()
- {
- return this._mapListFromList.size();
- }
-
- /**
- * Method getMapListTo.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.MapListTo at the
- * given index
- */
- public jalview.schemabinding.version2.MapListTo getMapListTo(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._mapListToList.size())
- {
- throw new IndexOutOfBoundsException("getMapListTo: Index value '"
- + index + "' not in range [0.."
- + (this._mapListToList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.MapListTo) _mapListToList
- .get(index);
- }
-
- /**
- * Method getMapListTo.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.MapListTo[] getMapListTo()
- {
- jalview.schemabinding.version2.MapListTo[] array = new jalview.schemabinding.version2.MapListTo[0];
- return (jalview.schemabinding.version2.MapListTo[]) this._mapListToList
- .toArray(array);
- }
-
- /**
- * Method getMapListToCount.
- *
- * @return the size of this collection
- */
- public int getMapListToCount()
- {
- return this._mapListToList.size();
- }
-
- /**
- * Returns the value of field 'mapToUnit'. The field 'mapToUnit' has the
- * following description: number of dictionary symbol widths involved in each
- * mapped position on this sequence (for example, 3 for a dna sequence exon
- * region that is being mapped to a protein sequence). This is optional, since
- * the unit can be usually be inferred from the dictionary type of each
- * sequence involved in the mapping.
- *
- * @return the value of field 'MapToUnit'.
- */
- public long getMapToUnit()
- {
- return this._mapToUnit;
- }
-
- /**
- * Method hasMapFromUnit.
- *
- * @return true if at least one MapFromUnit has been added
- */
- public boolean hasMapFromUnit()
- {
- return this._has_mapFromUnit;
- }
-
- /**
- * Method hasMapToUnit.
- *
- * @return true if at least one MapToUnit has been added
- */
- public boolean hasMapToUnit()
- {
- return this._has_mapToUnit;
- }
-
- /**
- * 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 removeAllMapListFrom()
- {
- this._mapListFromList.clear();
- }
-
- /**
- */
- public void removeAllMapListTo()
- {
- this._mapListToList.clear();
- }
-
- /**
- * Method removeMapListFrom.
- *
- * @param vMapListFrom
- * @return true if the object was removed from the collection.
- */
- public boolean removeMapListFrom(
- final jalview.schemabinding.version2.MapListFrom vMapListFrom)
- {
- boolean removed = _mapListFromList.remove(vMapListFrom);
- return removed;
- }
-
- /**
- * Method removeMapListFromAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.MapListFrom removeMapListFromAt(
- final int index)
- {
- java.lang.Object obj = this._mapListFromList.remove(index);
- return (jalview.schemabinding.version2.MapListFrom) obj;
- }
-
- /**
- * Method removeMapListTo.
- *
- * @param vMapListTo
- * @return true if the object was removed from the collection.
- */
- public boolean removeMapListTo(
- final jalview.schemabinding.version2.MapListTo vMapListTo)
- {
- boolean removed = _mapListToList.remove(vMapListTo);
- return removed;
- }
-
- /**
- * Method removeMapListToAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.MapListTo removeMapListToAt(
- final int index)
- {
- java.lang.Object obj = this._mapListToList.remove(index);
- return (jalview.schemabinding.version2.MapListTo) obj;
- }
-
- /**
- * Sets the value of field 'mapFromUnit'. The field 'mapFromUnit' has the
- * following description: number of dictionary symbol widths involved in each
- * mapped position on this sequence (for example, 3 for a dna sequence exon
- * region that is being mapped to a protein sequence). This is optional, since
- * the unit can be usually be inferred from the dictionary type of each
- * sequence involved in the mapping.
- *
- * @param mapFromUnit
- * the value of field 'mapFromUnit'.
- */
- public void setMapFromUnit(final long mapFromUnit)
- {
- this._mapFromUnit = mapFromUnit;
- this._has_mapFromUnit = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vMapListFrom
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setMapListFrom(final int index,
- final jalview.schemabinding.version2.MapListFrom vMapListFrom)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._mapListFromList.size())
- {
- throw new IndexOutOfBoundsException("setMapListFrom: Index value '"
- + index + "' not in range [0.."
- + (this._mapListFromList.size() - 1) + "]");
- }
-
- this._mapListFromList.set(index, vMapListFrom);
- }
-
- /**
- *
- *
- * @param vMapListFromArray
- */
- public void setMapListFrom(
- final jalview.schemabinding.version2.MapListFrom[] vMapListFromArray)
- {
- // -- copy array
- _mapListFromList.clear();
-
- for (int i = 0; i < vMapListFromArray.length; i++)
- {
- this._mapListFromList.add(vMapListFromArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vMapListTo
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setMapListTo(final int index,
- final jalview.schemabinding.version2.MapListTo vMapListTo)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._mapListToList.size())
- {
- throw new IndexOutOfBoundsException("setMapListTo: Index value '"
- + index + "' not in range [0.."
- + (this._mapListToList.size() - 1) + "]");
- }
-
- this._mapListToList.set(index, vMapListTo);
- }
-
- /**
- *
- *
- * @param vMapListToArray
- */
- public void setMapListTo(
- final jalview.schemabinding.version2.MapListTo[] vMapListToArray)
- {
- // -- copy array
- _mapListToList.clear();
-
- for (int i = 0; i < vMapListToArray.length; i++)
- {
- this._mapListToList.add(vMapListToArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'mapToUnit'. The field 'mapToUnit' has the
- * following description: number of dictionary symbol widths involved in each
- * mapped position on this sequence (for example, 3 for a dna sequence exon
- * region that is being mapped to a protein sequence). This is optional, since
- * the unit can be usually be inferred from the dictionary type of each
- * sequence involved in the mapping.
- *
- * @param mapToUnit
- * the value of field 'mapToUnit'.
- */
- public void setMapToUnit(final long mapToUnit)
- {
- this._mapToUnit = mapToUnit;
- this._has_mapToUnit = true;
- }
-
- /**
- * 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.schemabinding.version2.MapListType
- */
- public static jalview.schemabinding.version2.MapListType unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.MapListType) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.MapListType.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Mapping.
- *
- * @version $Revision$ $Date$
- */
-public class Mapping extends jalview.schemabinding.version2.MapListType
- implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Internal choice value storage
- */
- private java.lang.Object _choiceValue;
-
- /**
- * Field _mappingChoice.
- */
- private jalview.schemabinding.version2.MappingChoice _mappingChoice;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Mapping()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'choiceValue'. The field 'choiceValue' has the
- * following description: Internal choice value storage
- *
- * @return the value of field 'ChoiceValue'.
- */
- public java.lang.Object getChoiceValue()
- {
- return this._choiceValue;
- }
-
- /**
- * Returns the value of field 'mappingChoice'.
- *
- * @return the value of field 'MappingChoice'.
- */
- public jalview.schemabinding.version2.MappingChoice getMappingChoice()
- {
- return this._mappingChoice;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'mappingChoice'.
- *
- * @param mappingChoice
- * the value of field 'mappingChoice'.
- */
- public void setMappingChoice(
- final jalview.schemabinding.version2.MappingChoice mappingChoice)
- {
- this._mappingChoice = mappingChoice;
- this._choiceValue = mappingChoice;
- }
-
- /**
- * 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.schemabinding.version2.MapListType
- */
- public static jalview.schemabinding.version2.MapListType unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.MapListType) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.Mapping.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class MappingChoice.
- *
- * @version $Revision$ $Date$
- */
-public class MappingChoice implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _sequence.
- */
- private jalview.schemabinding.version2.Sequence _sequence;
-
- /**
- * Field _dseqFor.
- */
- private java.lang.String _dseqFor;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MappingChoice()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'dseqFor'.
- *
- * @return the value of field 'DseqFor'.
- */
- public java.lang.String getDseqFor()
- {
- return this._dseqFor;
- }
-
- /**
- * Returns the value of field 'sequence'.
- *
- * @return the value of field 'Sequence'.
- */
- public jalview.schemabinding.version2.Sequence getSequence()
- {
- return this._sequence;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'dseqFor'.
- *
- * @param dseqFor
- * the value of field 'dseqFor'.
- */
- public void setDseqFor(final java.lang.String dseqFor)
- {
- this._dseqFor = dseqFor;
- }
-
- /**
- * Sets the value of field 'sequence'.
- *
- * @param sequence
- * the value of field 'sequence'.
- */
- public void setSequence(
- final jalview.schemabinding.version2.Sequence sequence)
- {
- this._sequence = sequence;
- }
-
- /**
- * 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.schemabinding.version2.MappingChoice
- */
- public static jalview.schemabinding.version2.MappingChoice unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.MappingChoice) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.MappingChoice.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class MatchCondition.
- *
- * @version $Revision$ $Date$
- */
-public class MatchCondition extends FeatureMatcher
- implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MatchCondition()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.schemabinding.version2.FeatureMatcher
- */
- public static jalview.schemabinding.version2.FeatureMatcher unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.FeatureMatcher) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.MatchCondition.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * optional filter(s) applied to the feature type
- *
- * @version $Revision$ $Date$
- */
-public class MatcherSet extends FeatureMatcherSet
- implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MatcherSet()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.schemabinding.version2.FeatureMatcherSet
- */
- public static jalview.schemabinding.version2.FeatureMatcherSet unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.FeatureMatcherSet) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.MatcherSet.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
- //---------------------------------/
- //- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class OtherData.
- *
- * @version $Revision$ $Date$
- */
-public class OtherData implements java.io.Serializable {
-
-
- //--------------------------/
- //- Class/Member Variables -/
- //--------------------------/
-
- /**
- * Field _key.
- */
- private java.lang.String _key;
-
- /**
- * key2 may be used for a sub-attribute of key
- */
- private java.lang.String _key2;
-
- /**
- * Field _value.
- */
- private java.lang.String _value;
-
-
- //----------------/
- //- Constructors -/
- //----------------/
-
- public OtherData() {
- super();
- }
-
-
- //-----------/
- //- Methods -/
- //-----------/
-
- /**
- * Returns the value of field 'key'.
- *
- * @return the value of field 'Key'.
- */
- public java.lang.String getKey(
- ) {
- return this._key;
- }
-
- /**
- * Returns the value of field 'key2'. The field 'key2' has the
- * following description: key2 may be used for a sub-attribute
- * of key
- *
- * @return the value of field 'Key2'.
- */
- public java.lang.String getKey2(
- ) {
- return this._key2;
- }
-
- /**
- * Returns the value of field 'value'.
- *
- * @return the value of field 'Value'.
- */
- public java.lang.String getValue(
- ) {
- return this._value;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'key'.
- *
- * @param key the value of field 'key'.
- */
- public void setKey(
- final java.lang.String key) {
- this._key = key;
- }
-
- /**
- * Sets the value of field 'key2'. The field 'key2' has the
- * following description: key2 may be used for a sub-attribute
- * of key
- *
- * @param key2 the value of field 'key2'.
- */
- public void setKey2(
- final java.lang.String key2) {
- this._key2 = key2;
- }
-
- /**
- * Sets the value of field 'value'.
- *
- * @param value the value of field 'value'.
- */
- public void setValue(
- final java.lang.String value) {
- this._value = value;
- }
-
- /**
- * 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.schemabinding.version2.OtherData
- */
- public static jalview.schemabinding.version2.OtherData unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException, org.exolab.castor.xml.ValidationException {
- return (jalview.schemabinding.version2.OtherData) Unmarshaller.unmarshal(jalview.schemabinding.version2.OtherData.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Pdbentry.
- *
- * @version $Revision$ $Date$
- */
-public class Pdbentry implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _id.
- */
- private java.lang.String _id;
-
- /**
- * Field _type.
- */
- private java.lang.String _type;
-
- /**
- * Field _file.
- */
- private java.lang.String _file;
-
- /**
- * Field _items.
- */
- private java.util.Vector _items;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Pdbentry()
- {
- super();
- this._items = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vPdbentryItem
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addPdbentryItem(
- final jalview.schemabinding.version2.PdbentryItem vPdbentryItem)
- throws java.lang.IndexOutOfBoundsException
- {
- this._items.addElement(vPdbentryItem);
- }
-
- /**
- *
- *
- * @param index
- * @param vPdbentryItem
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addPdbentryItem(final int index,
- final jalview.schemabinding.version2.PdbentryItem vPdbentryItem)
- throws java.lang.IndexOutOfBoundsException
- {
- this._items.add(index, vPdbentryItem);
- }
-
- /**
- * Method enumeratePdbentryItem.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.PdbentryItem
- * elements
- */
- public java.util.Enumeration enumeratePdbentryItem()
- {
- return this._items.elements();
- }
-
- /**
- * Returns the value of field 'file'.
- *
- * @return the value of field 'File'.
- */
- public java.lang.String getFile()
- {
- return this._file;
- }
-
- /**
- * Returns the value of field 'id'.
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Method getPdbentryItem.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.PdbentryItem at the
- * given inde
- */
- public jalview.schemabinding.version2.PdbentryItem getPdbentryItem(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._items.size())
- {
- throw new IndexOutOfBoundsException("getPdbentryItem: Index value '"
- + index + "' not in range [0.." + (this._items.size() - 1)
- + "]");
- }
-
- return (jalview.schemabinding.version2.PdbentryItem) _items.get(index);
- }
-
- /**
- * Method getPdbentryItem.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.PdbentryItem[] getPdbentryItem()
- {
- jalview.schemabinding.version2.PdbentryItem[] array = new jalview.schemabinding.version2.PdbentryItem[0];
- return (jalview.schemabinding.version2.PdbentryItem[]) this._items
- .toArray(array);
- }
-
- /**
- * Method getPdbentryItemCount.
- *
- * @return the size of this collection
- */
- public int getPdbentryItemCount()
- {
- return this._items.size();
- }
-
- /**
- * Returns the value of field 'type'.
- *
- * @return the value of field 'Type'.
- */
- public java.lang.String getType()
- {
- return this._type;
- }
-
- /**
- * 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 removeAllPdbentryItem()
- {
- this._items.clear();
- }
-
- /**
- * Method removePdbentryItem.
- *
- * @param vPdbentryItem
- * @return true if the object was removed from the collection.
- */
- public boolean removePdbentryItem(
- final jalview.schemabinding.version2.PdbentryItem vPdbentryItem)
- {
- boolean removed = _items.remove(vPdbentryItem);
- return removed;
- }
-
- /**
- * Method removePdbentryItemAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.PdbentryItem removePdbentryItemAt(
- final int index)
- {
- java.lang.Object obj = this._items.remove(index);
- return (jalview.schemabinding.version2.PdbentryItem) obj;
- }
-
- /**
- * Sets the value of field 'file'.
- *
- * @param file
- * the value of field 'file'.
- */
- public void setFile(final java.lang.String file)
- {
- this._file = file;
- }
-
- /**
- * Sets the value of field 'id'.
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- *
- *
- * @param index
- * @param vPdbentryItem
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setPdbentryItem(final int index,
- final jalview.schemabinding.version2.PdbentryItem vPdbentryItem)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._items.size())
- {
- throw new IndexOutOfBoundsException("setPdbentryItem: Index value '"
- + index + "' not in range [0.." + (this._items.size() - 1)
- + "]");
- }
-
- this._items.set(index, vPdbentryItem);
- }
-
- /**
- *
- *
- * @param vPdbentryItemArray
- */
- public void setPdbentryItem(
- final jalview.schemabinding.version2.PdbentryItem[] vPdbentryItemArray)
- {
- // -- copy array
- _items.clear();
-
- for (int i = 0; i < vPdbentryItemArray.length; i++)
- {
- this._items.add(vPdbentryItemArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'type'.
- *
- * @param type
- * the value of field 'type'.
- */
- public void setType(final java.lang.String type)
- {
- this._type = type;
- }
-
- /**
- * 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.schemabinding.version2.Pdbentry
- */
- public static jalview.schemabinding.version2.Pdbentry unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Pdbentry) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.Pdbentry.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-/**
- * Class PdbentryItem.
- *
- * @version $Revision$ $Date$
- */
-public class PdbentryItem implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _propertyList.
- */
- private java.util.Vector _propertyList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public PdbentryItem()
- {
- super();
- this._propertyList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vProperty
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addProperty(
- final jalview.schemabinding.version2.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- this._propertyList.addElement(vProperty);
- }
-
- /**
- *
- *
- * @param index
- * @param vProperty
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addProperty(final int index,
- final jalview.schemabinding.version2.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- this._propertyList.add(index, vProperty);
- }
-
- /**
- * Method enumerateProperty.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Property
- * elements
- */
- public java.util.Enumeration enumerateProperty()
- {
- return this._propertyList.elements();
- }
-
- /**
- * Method getProperty.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.Property at the
- * given index
- */
- public jalview.schemabinding.version2.Property getProperty(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._propertyList.size())
- {
- throw new IndexOutOfBoundsException("getProperty: Index value '"
- + index + "' not in range [0.."
- + (this._propertyList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Property) _propertyList
- .get(index);
- }
-
- /**
- * Method getProperty.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Property[] getProperty()
- {
- jalview.schemabinding.version2.Property[] array = new jalview.schemabinding.version2.Property[0];
- return (jalview.schemabinding.version2.Property[]) this._propertyList
- .toArray(array);
- }
-
- /**
- * Method getPropertyCount.
- *
- * @return the size of this collection
- */
- public int getPropertyCount()
- {
- return this._propertyList.size();
- }
-
- /**
- */
- public void removeAllProperty()
- {
- this._propertyList.clear();
- }
-
- /**
- * Method removeProperty.
- *
- * @param vProperty
- * @return true if the object was removed from the collection.
- */
- public boolean removeProperty(
- final jalview.schemabinding.version2.Property vProperty)
- {
- boolean removed = _propertyList.remove(vProperty);
- return removed;
- }
-
- /**
- * Method removePropertyAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Property removePropertyAt(
- final int index)
- {
- java.lang.Object obj = this._propertyList.remove(index);
- return (jalview.schemabinding.version2.Property) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vProperty
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setProperty(final int index,
- final jalview.schemabinding.version2.Property vProperty)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._propertyList.size())
- {
- throw new IndexOutOfBoundsException("setProperty: Index value '"
- + index + "' not in range [0.."
- + (this._propertyList.size() - 1) + "]");
- }
-
- this._propertyList.set(index, vProperty);
- }
-
- /**
- *
- *
- * @param vPropertyArray
- */
- public void setProperty(
- final jalview.schemabinding.version2.Property[] vPropertyArray)
- {
- // -- copy array
- _propertyList.clear();
-
- for (int i = 0; i < vPropertyArray.length; i++)
- {
- this._propertyList.add(vPropertyArray[i]);
- }
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Pdbids.
- *
- * @version $Revision$ $Date$
- */
-public class Pdbids extends jalview.schemabinding.version2.Pdbentry
- implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _structureStateList.
- */
- private java.util.Vector _structureStateList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Pdbids()
- {
- super();
- this._structureStateList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vStructureState
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addStructureState(
- final jalview.schemabinding.version2.StructureState vStructureState)
- throws java.lang.IndexOutOfBoundsException
- {
- this._structureStateList.addElement(vStructureState);
- }
-
- /**
- *
- *
- * @param index
- * @param vStructureState
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addStructureState(
- final int index,
- final jalview.schemabinding.version2.StructureState vStructureState)
- throws java.lang.IndexOutOfBoundsException
- {
- this._structureStateList.add(index, vStructureState);
- }
-
- /**
- * Method enumerateStructureState.
- *
- * @return an Enumeration over all
- * jalview.schemabinding.version2.StructureState elements
- */
- public java.util.Enumeration enumerateStructureState()
- {
- return this._structureStateList.elements();
- }
-
- /**
- * Method getStructureState.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.StructureState at
- * the given index
- */
- public jalview.schemabinding.version2.StructureState getStructureState(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._structureStateList.size())
- {
- throw new IndexOutOfBoundsException(
- "getStructureState: Index value '" + index
- + "' not in range [0.."
- + (this._structureStateList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.StructureState) _structureStateList
- .get(index);
- }
-
- /**
- * Method getStructureState.Returns the contents of the collection in an
- * Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.StructureState[] getStructureState()
- {
- jalview.schemabinding.version2.StructureState[] array = new jalview.schemabinding.version2.StructureState[0];
- return (jalview.schemabinding.version2.StructureState[]) this._structureStateList
- .toArray(array);
- }
-
- /**
- * Method getStructureStateCount.
- *
- * @return the size of this collection
- */
- public int getStructureStateCount()
- {
- return this._structureStateList.size();
- }
-
- /**
- * 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 removeAllStructureState()
- {
- this._structureStateList.clear();
- }
-
- /**
- * Method removeStructureState.
- *
- * @param vStructureState
- * @return true if the object was removed from the collection.
- */
- public boolean removeStructureState(
- final jalview.schemabinding.version2.StructureState vStructureState)
- {
- boolean removed = _structureStateList.remove(vStructureState);
- return removed;
- }
-
- /**
- * Method removeStructureStateAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.StructureState removeStructureStateAt(
- final int index)
- {
- java.lang.Object obj = this._structureStateList.remove(index);
- return (jalview.schemabinding.version2.StructureState) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vStructureState
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setStructureState(
- final int index,
- final jalview.schemabinding.version2.StructureState vStructureState)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._structureStateList.size())
- {
- throw new IndexOutOfBoundsException(
- "setStructureState: Index value '" + index
- + "' not in range [0.."
- + (this._structureStateList.size() - 1) + "]");
- }
-
- this._structureStateList.set(index, vStructureState);
- }
-
- /**
- *
- *
- * @param vStructureStateArray
- */
- public void setStructureState(
- final jalview.schemabinding.version2.StructureState[] vStructureStateArray)
- {
- // -- copy array
- _structureStateList.clear();
-
- for (int i = 0; i < vStructureStateArray.length; i++)
- {
- this._structureStateList.add(vStructureStateArray[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.schemabinding.version2.Pdbentry
- */
- public static jalview.schemabinding.version2.Pdbentry unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Pdbentry) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.Pdbids.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Property.
- *
- * @version $Revision$ $Date$
- */
-public class Property implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _name.
- */
- private java.lang.String _name;
-
- /**
- * Field _value.
- */
- private java.lang.String _value;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Property()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'name'.
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Returns the value of field 'value'.
- *
- * @return the value of field 'Value'.
- */
- public java.lang.String getValue()
- {
- return this._value;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'name'.
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * Sets the value of field 'value'.
- *
- * @param value
- * the value of field 'value'.
- */
- public void setValue(final java.lang.String value)
- {
- this._value = value;
- }
-
- /**
- * 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.schemabinding.version2.Property
- */
- public static jalview.schemabinding.version2.Property unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Property) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.Property.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Reference to a viewer showing RNA structure for this sequence. Schema
- * supports one viewer showing multiple annotations for multiple sequences,
- * though currently only one annotation for one sequence (gapped or trimmed) is
- * used
- *
- *
- * @version $Revision$ $Date$
- */
-public class RnaViewer implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _title.
- */
- private java.lang.String _title;
-
- /**
- * An id unique to the RNA viewer panel
- *
- */
- private java.lang.String _viewId;
-
- /**
- * horizontal position of split pane divider
- *
- */
- private int _dividerLocation;
-
- /**
- * keeps track of state for field: _dividerLocation
- */
- private boolean _has_dividerLocation;
-
- /**
- * Index of the selected structure in the viewer panel
- *
- */
- private int _selectedRna;
-
- /**
- * keeps track of state for field: _selectedRna
- */
- private boolean _has_selectedRna;
-
- /**
- * Field _width.
- */
- private int _width;
-
- /**
- * keeps track of state for field: _width
- */
- private boolean _has_width;
-
- /**
- * Field _height.
- */
- private int _height;
-
- /**
- * keeps track of state for field: _height
- */
- private boolean _has_height;
-
- /**
- * Field _xpos.
- */
- private int _xpos;
-
- /**
- * keeps track of state for field: _xpos
- */
- private boolean _has_xpos;
-
- /**
- * Field _ypos.
- */
- private int _ypos;
-
- /**
- * keeps track of state for field: _ypos
- */
- private boolean _has_ypos;
-
- /**
- * Field _secondaryStructureList.
- */
- private java.util.Vector _secondaryStructureList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public RnaViewer()
- {
- super();
- this._secondaryStructureList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vSecondaryStructure
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSecondaryStructure(
- final jalview.schemabinding.version2.SecondaryStructure vSecondaryStructure)
- throws java.lang.IndexOutOfBoundsException
- {
- this._secondaryStructureList.addElement(vSecondaryStructure);
- }
-
- /**
- *
- *
- * @param index
- * @param vSecondaryStructure
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSecondaryStructure(
- final int index,
- final jalview.schemabinding.version2.SecondaryStructure vSecondaryStructure)
- throws java.lang.IndexOutOfBoundsException
- {
- this._secondaryStructureList.add(index, vSecondaryStructure);
- }
-
- /**
- */
- public void deleteDividerLocation()
- {
- this._has_dividerLocation = false;
- }
-
- /**
- */
- public void deleteHeight()
- {
- this._has_height = false;
- }
-
- /**
- */
- public void deleteSelectedRna()
- {
- this._has_selectedRna = false;
- }
-
- /**
- */
- public void deleteWidth()
- {
- this._has_width = false;
- }
-
- /**
- */
- public void deleteXpos()
- {
- this._has_xpos = false;
- }
-
- /**
- */
- public void deleteYpos()
- {
- this._has_ypos = false;
- }
-
- /**
- * Method enumerateSecondaryStructure.
- *
- * @return an Enumeration over all
- * jalview.schemabinding.version2.SecondaryStructure elements
- */
- public java.util.Enumeration enumerateSecondaryStructure()
- {
- return this._secondaryStructureList.elements();
- }
-
- /**
- * Returns the value of field 'dividerLocation'. The field 'dividerLocation'
- * has the following description: horizontal position of split pane divider
- *
- *
- * @return the value of field 'DividerLocation'.
- */
- public int getDividerLocation()
- {
- return this._dividerLocation;
- }
-
- /**
- * Returns the value of field 'height'.
- *
- * @return the value of field 'Height'.
- */
- public int getHeight()
- {
- return this._height;
- }
-
- /**
- * Method getSecondaryStructure.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.SecondaryStructure
- * at the given index
- */
- public jalview.schemabinding.version2.SecondaryStructure getSecondaryStructure(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._secondaryStructureList.size())
- {
- throw new IndexOutOfBoundsException(
- "getSecondaryStructure: Index value '" + index
- + "' not in range [0.."
- + (this._secondaryStructureList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.SecondaryStructure) _secondaryStructureList
- .get(index);
- }
-
- /**
- * Method getSecondaryStructure.Returns the contents of the collection in an
- * Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.SecondaryStructure[] getSecondaryStructure()
- {
- jalview.schemabinding.version2.SecondaryStructure[] array = new jalview.schemabinding.version2.SecondaryStructure[0];
- return (jalview.schemabinding.version2.SecondaryStructure[]) this._secondaryStructureList
- .toArray(array);
- }
-
- /**
- * Method getSecondaryStructureCount.
- *
- * @return the size of this collection
- */
- public int getSecondaryStructureCount()
- {
- return this._secondaryStructureList.size();
- }
-
- /**
- * Returns the value of field 'selectedRna'. The field 'selectedRna' has the
- * following description: Index of the selected structure in the viewer panel
- *
- *
- * @return the value of field 'SelectedRna'.
- */
- public int getSelectedRna()
- {
- return this._selectedRna;
- }
-
- /**
- * Returns the value of field 'title'.
- *
- * @return the value of field 'Title'.
- */
- public java.lang.String getTitle()
- {
- return this._title;
- }
-
- /**
- * Returns the value of field 'viewId'. The field 'viewId' has the following
- * description: An id unique to the RNA viewer panel
- *
- *
- * @return the value of field 'ViewId'.
- */
- public java.lang.String getViewId()
- {
- return this._viewId;
- }
-
- /**
- * Returns the value of field 'width'.
- *
- * @return the value of field 'Width'.
- */
- public int getWidth()
- {
- return this._width;
- }
-
- /**
- * Returns the value of field 'xpos'.
- *
- * @return the value of field 'Xpos'.
- */
- public int getXpos()
- {
- return this._xpos;
- }
-
- /**
- * Returns the value of field 'ypos'.
- *
- * @return the value of field 'Ypos'.
- */
- public int getYpos()
- {
- return this._ypos;
- }
-
- /**
- * Method hasDividerLocation.
- *
- * @return true if at least one DividerLocation has been added
- */
- public boolean hasDividerLocation()
- {
- return this._has_dividerLocation;
- }
-
- /**
- * Method hasHeight.
- *
- * @return true if at least one Height has been added
- */
- public boolean hasHeight()
- {
- return this._has_height;
- }
-
- /**
- * Method hasSelectedRna.
- *
- * @return true if at least one SelectedRna has been added
- */
- public boolean hasSelectedRna()
- {
- return this._has_selectedRna;
- }
-
- /**
- * Method hasWidth.
- *
- * @return true if at least one Width has been added
- */
- public boolean hasWidth()
- {
- return this._has_width;
- }
-
- /**
- * Method hasXpos.
- *
- * @return true if at least one Xpos has been added
- */
- public boolean hasXpos()
- {
- return this._has_xpos;
- }
-
- /**
- * Method hasYpos.
- *
- * @return true if at least one Ypos has been added
- */
- public boolean hasYpos()
- {
- return this._has_ypos;
- }
-
- /**
- * 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 removeAllSecondaryStructure()
- {
- this._secondaryStructureList.clear();
- }
-
- /**
- * Method removeSecondaryStructure.
- *
- * @param vSecondaryStructure
- * @return true if the object was removed from the collection.
- */
- public boolean removeSecondaryStructure(
- final jalview.schemabinding.version2.SecondaryStructure vSecondaryStructure)
- {
- boolean removed = _secondaryStructureList.remove(vSecondaryStructure);
- return removed;
- }
-
- /**
- * Method removeSecondaryStructureAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.SecondaryStructure removeSecondaryStructureAt(
- final int index)
- {
- java.lang.Object obj = this._secondaryStructureList.remove(index);
- return (jalview.schemabinding.version2.SecondaryStructure) obj;
- }
-
- /**
- * Sets the value of field 'dividerLocation'. The field 'dividerLocation' has
- * the following description: horizontal position of split pane divider
- *
- *
- * @param dividerLocation
- * the value of field 'dividerLocation'.
- */
- public void setDividerLocation(final int dividerLocation)
- {
- this._dividerLocation = dividerLocation;
- this._has_dividerLocation = true;
- }
-
- /**
- * Sets the value of field 'height'.
- *
- * @param height
- * the value of field 'height'.
- */
- public void setHeight(final int height)
- {
- this._height = height;
- this._has_height = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vSecondaryStructure
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setSecondaryStructure(
- final int index,
- final jalview.schemabinding.version2.SecondaryStructure vSecondaryStructure)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._secondaryStructureList.size())
- {
- throw new IndexOutOfBoundsException(
- "setSecondaryStructure: Index value '" + index
- + "' not in range [0.."
- + (this._secondaryStructureList.size() - 1) + "]");
- }
-
- this._secondaryStructureList.set(index, vSecondaryStructure);
- }
-
- /**
- *
- *
- * @param vSecondaryStructureArray
- */
- public void setSecondaryStructure(
- final jalview.schemabinding.version2.SecondaryStructure[] vSecondaryStructureArray)
- {
- // -- copy array
- _secondaryStructureList.clear();
-
- for (int i = 0; i < vSecondaryStructureArray.length; i++)
- {
- this._secondaryStructureList.add(vSecondaryStructureArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'selectedRna'. The field 'selectedRna' has the
- * following description: Index of the selected structure in the viewer panel
- *
- *
- * @param selectedRna
- * the value of field 'selectedRna'.
- */
- public void setSelectedRna(final int selectedRna)
- {
- this._selectedRna = selectedRna;
- this._has_selectedRna = true;
- }
-
- /**
- * Sets the value of field 'title'.
- *
- * @param title
- * the value of field 'title'.
- */
- public void setTitle(final java.lang.String title)
- {
- this._title = title;
- }
-
- /**
- * Sets the value of field 'viewId'. The field 'viewId' has the following
- * description: An id unique to the RNA viewer panel
- *
- *
- * @param viewId
- * the value of field 'viewId'.
- */
- public void setViewId(final java.lang.String viewId)
- {
- this._viewId = viewId;
- }
-
- /**
- * Sets the value of field 'width'.
- *
- * @param width
- * the value of field 'width'.
- */
- public void setWidth(final int width)
- {
- this._width = width;
- this._has_width = true;
- }
-
- /**
- * Sets the value of field 'xpos'.
- *
- * @param xpos
- * the value of field 'xpos'.
- */
- public void setXpos(final int xpos)
- {
- this._xpos = xpos;
- this._has_xpos = true;
- }
-
- /**
- * Sets the value of field 'ypos'.
- *
- * @param ypos
- * the value of field 'ypos'.
- */
- public void setYpos(final int ypos)
- {
- this._ypos = ypos;
- this._has_ypos = true;
- }
-
- /**
- * 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.schemabinding.version2.RnaViewer
- */
- public static jalview.schemabinding.version2.RnaViewer unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.RnaViewer) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.RnaViewer.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class SecondaryStructure.
- *
- * @version $Revision$ $Date$
- */
-public class SecondaryStructure implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _title.
- */
- private java.lang.String _title;
-
- /**
- * id attribute of Annotation in vamsasModel for the secondary structure
- * annotation shown in the viewer
- *
- */
- private java.lang.String _annotationId;
-
- /**
- * if true the RNA structure is shown with gaps, if false without
- *
- */
- private boolean _gapped;
-
- /**
- * keeps track of state for field: _gapped
- */
- private boolean _has_gapped;
-
- /**
- * name of the project jar entry that holds the VARNA viewer state for the
- * structure
- *
- */
- private java.lang.String _viewerState;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SecondaryStructure()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteGapped()
- {
- this._has_gapped = false;
- }
-
- /**
- * Returns the value of field 'annotationId'. The field 'annotationId' has the
- * following description: id attribute of Annotation in vamsasModel for the
- * secondary structure annotation shown in the viewer
- *
- *
- * @return the value of field 'AnnotationId'.
- */
- public java.lang.String getAnnotationId()
- {
- return this._annotationId;
- }
-
- /**
- * Returns the value of field 'gapped'. The field 'gapped' has the following
- * description: if true the RNA structure is shown with gaps, if false without
- *
- *
- * @return the value of field 'Gapped'.
- */
- public boolean getGapped()
- {
- return this._gapped;
- }
-
- /**
- * Returns the value of field 'title'.
- *
- * @return the value of field 'Title'.
- */
- public java.lang.String getTitle()
- {
- return this._title;
- }
-
- /**
- * Returns the value of field 'viewerState'. The field 'viewerState' has the
- * following description: name of the project jar entry that holds the VARNA
- * viewer state for the structure
- *
- *
- * @return the value of field 'ViewerState'.
- */
- public java.lang.String getViewerState()
- {
- return this._viewerState;
- }
-
- /**
- * Method hasGapped.
- *
- * @return true if at least one Gapped has been added
- */
- public boolean hasGapped()
- {
- return this._has_gapped;
- }
-
- /**
- * Returns the value of field 'gapped'. The field 'gapped' has the following
- * description: if true the RNA structure is shown with gaps, if false without
- *
- *
- * @return the value of field 'Gapped'.
- */
- public boolean isGapped()
- {
- return this._gapped;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'annotationId'. The field 'annotationId' has the
- * following description: id attribute of Annotation in vamsasModel for the
- * secondary structure annotation shown in the viewer
- *
- *
- * @param annotationId
- * the value of field 'annotationId'.
- */
- public void setAnnotationId(final java.lang.String annotationId)
- {
- this._annotationId = annotationId;
- }
-
- /**
- * Sets the value of field 'gapped'. The field 'gapped' has the following
- * description: if true the RNA structure is shown with gaps, if false without
- *
- *
- * @param gapped
- * the value of field 'gapped'.
- */
- public void setGapped(final boolean gapped)
- {
- this._gapped = gapped;
- this._has_gapped = true;
- }
-
- /**
- * Sets the value of field 'title'.
- *
- * @param title
- * the value of field 'title'.
- */
- public void setTitle(final java.lang.String title)
- {
- this._title = title;
- }
-
- /**
- * Sets the value of field 'viewerState'. The field 'viewerState' has the
- * following description: name of the project jar entry that holds the VARNA
- * viewer state for the structure
- *
- *
- * @param viewerState
- * the value of field 'viewerState'.
- */
- public void setViewerState(final java.lang.String viewerState)
- {
- this._viewerState = viewerState;
- }
-
- /**
- * 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.schemabinding.version2.SecondaryStructure
- */
- public static jalview.schemabinding.version2.SecondaryStructure unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.SecondaryStructure) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.SecondaryStructure.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Sequence.
- *
- * @version $Revision$ $Date$
- */
-public class Sequence extends jalview.schemabinding.version2.SequenceType
- implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * dataset sequence id for this sequence. Will be created as union of
- * sequences.
- *
- */
- private java.lang.String _dsseqid;
-
- /**
- * Field _DBRefList.
- */
- private java.util.Vector _DBRefList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Sequence()
- {
- super();
- this._DBRefList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vDBRef
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addDBRef(final jalview.schemabinding.version2.DBRef vDBRef)
- throws java.lang.IndexOutOfBoundsException
- {
- this._DBRefList.addElement(vDBRef);
- }
-
- /**
- *
- *
- * @param index
- * @param vDBRef
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addDBRef(final int index,
- final jalview.schemabinding.version2.DBRef vDBRef)
- throws java.lang.IndexOutOfBoundsException
- {
- this._DBRefList.add(index, vDBRef);
- }
-
- /**
- * Method enumerateDBRef.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.DBRef
- * elements
- */
- public java.util.Enumeration enumerateDBRef()
- {
- return this._DBRefList.elements();
- }
-
- /**
- * Method getDBRef.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.DBRef at the given
- * index
- */
- public jalview.schemabinding.version2.DBRef getDBRef(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._DBRefList.size())
- {
- throw new IndexOutOfBoundsException("getDBRef: Index value '" + index
- + "' not in range [0.." + (this._DBRefList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.DBRef) _DBRefList.get(index);
- }
-
- /**
- * Method getDBRef.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.DBRef[] getDBRef()
- {
- jalview.schemabinding.version2.DBRef[] array = new jalview.schemabinding.version2.DBRef[0];
- return (jalview.schemabinding.version2.DBRef[]) this._DBRefList
- .toArray(array);
- }
-
- /**
- * Method getDBRefCount.
- *
- * @return the size of this collection
- */
- public int getDBRefCount()
- {
- return this._DBRefList.size();
- }
-
- /**
- * Returns the value of field 'dsseqid'. The field 'dsseqid' has the following
- * description: dataset sequence id for this sequence. Will be created as
- * union of sequences.
- *
- *
- * @return the value of field 'Dsseqid'.
- */
- public java.lang.String getDsseqid()
- {
- return this._dsseqid;
- }
-
- /**
- * 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 removeAllDBRef()
- {
- this._DBRefList.clear();
- }
-
- /**
- * Method removeDBRef.
- *
- * @param vDBRef
- * @return true if the object was removed from the collection.
- */
- public boolean removeDBRef(
- final jalview.schemabinding.version2.DBRef vDBRef)
- {
- boolean removed = _DBRefList.remove(vDBRef);
- return removed;
- }
-
- /**
- * Method removeDBRefAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.DBRef removeDBRefAt(final int index)
- {
- java.lang.Object obj = this._DBRefList.remove(index);
- return (jalview.schemabinding.version2.DBRef) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vDBRef
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setDBRef(final int index,
- final jalview.schemabinding.version2.DBRef vDBRef)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._DBRefList.size())
- {
- throw new IndexOutOfBoundsException("setDBRef: Index value '" + index
- + "' not in range [0.." + (this._DBRefList.size() - 1) + "]");
- }
-
- this._DBRefList.set(index, vDBRef);
- }
-
- /**
- *
- *
- * @param vDBRefArray
- */
- public void setDBRef(
- final jalview.schemabinding.version2.DBRef[] vDBRefArray)
- {
- // -- copy array
- _DBRefList.clear();
-
- for (int i = 0; i < vDBRefArray.length; i++)
- {
- this._DBRefList.add(vDBRefArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'dsseqid'. The field 'dsseqid' has the following
- * description: dataset sequence id for this sequence. Will be created as
- * union of sequences.
- *
- *
- * @param dsseqid
- * the value of field 'dsseqid'.
- */
- public void setDsseqid(final java.lang.String dsseqid)
- {
- this._dsseqid = dsseqid;
- }
-
- /**
- * 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.schemabinding.version2.SequenceType
- */
- public static jalview.schemabinding.version2.SequenceType unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.SequenceType) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.Sequence.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-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;
-
- /**
- * reference to set where jalview will gather the dataset sequences for all
- * sequences in the set.
- *
- */
- private java.lang.String _datasetId;
-
- /**
- * Field _sequenceList.
- */
- private java.util.Vector _sequenceList;
-
- /**
- * Field _annotationList.
- */
- private java.util.Vector _annotationList;
-
- /**
- * Field _sequenceSetPropertiesList.
- */
- private java.util.Vector _sequenceSetPropertiesList;
-
- /**
- * Field _alcodonFrameList.
- */
- private java.util.Vector _alcodonFrameList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SequenceSet()
- {
- super();
- this._sequenceList = new java.util.Vector();
- this._annotationList = new java.util.Vector();
- this._sequenceSetPropertiesList = new java.util.Vector();
- this._alcodonFrameList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAlcodonFrame
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAlcodonFrame(
- final jalview.schemabinding.version2.AlcodonFrame vAlcodonFrame)
- throws java.lang.IndexOutOfBoundsException
- {
- this._alcodonFrameList.addElement(vAlcodonFrame);
- }
-
- /**
- *
- *
- * @param index
- * @param vAlcodonFrame
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAlcodonFrame(final int index,
- final jalview.schemabinding.version2.AlcodonFrame vAlcodonFrame)
- throws java.lang.IndexOutOfBoundsException
- {
- this._alcodonFrameList.add(index, vAlcodonFrame);
- }
-
- /**
- *
- *
- * @param vAnnotation
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAnnotation(
- final jalview.schemabinding.version2.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.schemabinding.version2.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.schemabinding.version2.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.schemabinding.version2.Sequence vSequence)
- throws java.lang.IndexOutOfBoundsException
- {
- this._sequenceList.add(index, vSequence);
- }
-
- /**
- *
- *
- * @param vSequenceSetProperties
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSequenceSetProperties(
- final jalview.schemabinding.version2.SequenceSetProperties vSequenceSetProperties)
- throws java.lang.IndexOutOfBoundsException
- {
- this._sequenceSetPropertiesList.addElement(vSequenceSetProperties);
- }
-
- /**
- *
- *
- * @param index
- * @param vSequenceSetProperties
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSequenceSetProperties(
- final int index,
- final jalview.schemabinding.version2.SequenceSetProperties vSequenceSetProperties)
- throws java.lang.IndexOutOfBoundsException
- {
- this._sequenceSetPropertiesList.add(index, vSequenceSetProperties);
- }
-
- /**
- * Method enumerateAlcodonFrame.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.AlcodonFrame
- * elements
- */
- public java.util.Enumeration enumerateAlcodonFrame()
- {
- return this._alcodonFrameList.elements();
- }
-
- /**
- * Method enumerateAnnotation.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Annotation
- * elements
- */
- public java.util.Enumeration enumerateAnnotation()
- {
- return this._annotationList.elements();
- }
-
- /**
- * Method enumerateSequence.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.Sequence
- * elements
- */
- public java.util.Enumeration enumerateSequence()
- {
- return this._sequenceList.elements();
- }
-
- /**
- * Method enumerateSequenceSetProperties.
- *
- * @return an Enumeration over all
- * jalview.schemabinding.version2.SequenceSetProperties elements
- */
- public java.util.Enumeration enumerateSequenceSetProperties()
- {
- return this._sequenceSetPropertiesList.elements();
- }
-
- /**
- * Method getAlcodonFrame.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.AlcodonFrame at the
- * given inde
- */
- public jalview.schemabinding.version2.AlcodonFrame getAlcodonFrame(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._alcodonFrameList.size())
- {
- throw new IndexOutOfBoundsException("getAlcodonFrame: Index value '"
- + index + "' not in range [0.."
- + (this._alcodonFrameList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.AlcodonFrame) _alcodonFrameList
- .get(index);
- }
-
- /**
- * Method getAlcodonFrame.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.AlcodonFrame[] getAlcodonFrame()
- {
- jalview.schemabinding.version2.AlcodonFrame[] array = new jalview.schemabinding.version2.AlcodonFrame[0];
- return (jalview.schemabinding.version2.AlcodonFrame[]) this._alcodonFrameList
- .toArray(array);
- }
-
- /**
- * Method getAlcodonFrameCount.
- *
- * @return the size of this collection
- */
- public int getAlcodonFrameCount()
- {
- return this._alcodonFrameList.size();
- }
-
- /**
- * 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.schemabinding.version2.Annotation at the
- * given index
- */
- public jalview.schemabinding.version2.Annotation getAnnotation(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._annotationList.size())
- {
- throw new IndexOutOfBoundsException("getAnnotation: Index value '"
- + index + "' not in range [0.."
- + (this._annotationList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Annotation) _annotationList
- .get(index);
- }
-
- /**
- * Method getAnnotation.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Annotation[] getAnnotation()
- {
- jalview.schemabinding.version2.Annotation[] array = new jalview.schemabinding.version2.Annotation[0];
- return (jalview.schemabinding.version2.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 'datasetId'. The field 'datasetId' has the
- * following description: reference to set where jalview will gather the
- * dataset sequences for all sequences in the set.
- *
- *
- * @return the value of field 'DatasetId'.
- */
- public java.lang.String getDatasetId()
- {
- return this._datasetId;
- }
-
- /**
- * 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.schemabinding.version2.Sequence at the
- * given index
- */
- public jalview.schemabinding.version2.Sequence getSequence(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._sequenceList.size())
- {
- throw new IndexOutOfBoundsException("getSequence: Index value '"
- + index + "' not in range [0.."
- + (this._sequenceList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.Sequence) _sequenceList
- .get(index);
- }
-
- /**
- * Method getSequence.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.Sequence[] getSequence()
- {
- jalview.schemabinding.version2.Sequence[] array = new jalview.schemabinding.version2.Sequence[0];
- return (jalview.schemabinding.version2.Sequence[]) this._sequenceList
- .toArray(array);
- }
-
- /**
- * Method getSequenceCount.
- *
- * @return the size of this collection
- */
- public int getSequenceCount()
- {
- return this._sequenceList.size();
- }
-
- /**
- * Method getSequenceSetProperties.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the
- * jalview.schemabinding.version2.SequenceSetProperties at the given
- * index
- */
- public jalview.schemabinding.version2.SequenceSetProperties getSequenceSetProperties(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._sequenceSetPropertiesList.size())
- {
- throw new IndexOutOfBoundsException(
- "getSequenceSetProperties: Index value '" + index
- + "' not in range [0.."
- + (this._sequenceSetPropertiesList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.SequenceSetProperties) _sequenceSetPropertiesList
- .get(index);
- }
-
- /**
- * Method getSequenceSetProperties.Returns the contents of the collection in
- * an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.SequenceSetProperties[] getSequenceSetProperties()
- {
- jalview.schemabinding.version2.SequenceSetProperties[] array = new jalview.schemabinding.version2.SequenceSetProperties[0];
- return (jalview.schemabinding.version2.SequenceSetProperties[]) this._sequenceSetPropertiesList
- .toArray(array);
- }
-
- /**
- * Method getSequenceSetPropertiesCount.
- *
- * @return the size of this collection
- */
- public int getSequenceSetPropertiesCount()
- {
- return this._sequenceSetPropertiesList.size();
- }
-
- /**
- * 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);
- }
-
- /**
- * Method removeAlcodonFrame.
- *
- * @param vAlcodonFrame
- * @return true if the object was removed from the collection.
- */
- public boolean removeAlcodonFrame(
- final jalview.schemabinding.version2.AlcodonFrame vAlcodonFrame)
- {
- boolean removed = _alcodonFrameList.remove(vAlcodonFrame);
- return removed;
- }
-
- /**
- * Method removeAlcodonFrameAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.AlcodonFrame removeAlcodonFrameAt(
- final int index)
- {
- java.lang.Object obj = this._alcodonFrameList.remove(index);
- return (jalview.schemabinding.version2.AlcodonFrame) obj;
- }
-
- /**
- */
- public void removeAllAlcodonFrame()
- {
- this._alcodonFrameList.clear();
- }
-
- /**
- */
- public void removeAllAnnotation()
- {
- this._annotationList.clear();
- }
-
- /**
- */
- public void removeAllSequence()
- {
- this._sequenceList.clear();
- }
-
- /**
- */
- public void removeAllSequenceSetProperties()
- {
- this._sequenceSetPropertiesList.clear();
- }
-
- /**
- * Method removeAnnotation.
- *
- * @param vAnnotation
- * @return true if the object was removed from the collection.
- */
- public boolean removeAnnotation(
- final jalview.schemabinding.version2.Annotation vAnnotation)
- {
- boolean removed = _annotationList.remove(vAnnotation);
- return removed;
- }
-
- /**
- * Method removeAnnotationAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Annotation removeAnnotationAt(
- final int index)
- {
- java.lang.Object obj = this._annotationList.remove(index);
- return (jalview.schemabinding.version2.Annotation) obj;
- }
-
- /**
- * Method removeSequence.
- *
- * @param vSequence
- * @return true if the object was removed from the collection.
- */
- public boolean removeSequence(
- final jalview.schemabinding.version2.Sequence vSequence)
- {
- boolean removed = _sequenceList.remove(vSequence);
- return removed;
- }
-
- /**
- * Method removeSequenceAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.Sequence removeSequenceAt(
- final int index)
- {
- java.lang.Object obj = this._sequenceList.remove(index);
- return (jalview.schemabinding.version2.Sequence) obj;
- }
-
- /**
- * Method removeSequenceSetProperties.
- *
- * @param vSequenceSetProperties
- * @return true if the object was removed from the collection.
- */
- public boolean removeSequenceSetProperties(
- final jalview.schemabinding.version2.SequenceSetProperties vSequenceSetProperties)
- {
- boolean removed = _sequenceSetPropertiesList
- .remove(vSequenceSetProperties);
- return removed;
- }
-
- /**
- * Method removeSequenceSetPropertiesAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.SequenceSetProperties removeSequenceSetPropertiesAt(
- final int index)
- {
- java.lang.Object obj = this._sequenceSetPropertiesList.remove(index);
- return (jalview.schemabinding.version2.SequenceSetProperties) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vAlcodonFrame
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAlcodonFrame(final int index,
- final jalview.schemabinding.version2.AlcodonFrame vAlcodonFrame)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._alcodonFrameList.size())
- {
- throw new IndexOutOfBoundsException("setAlcodonFrame: Index value '"
- + index + "' not in range [0.."
- + (this._alcodonFrameList.size() - 1) + "]");
- }
-
- this._alcodonFrameList.set(index, vAlcodonFrame);
- }
-
- /**
- *
- *
- * @param vAlcodonFrameArray
- */
- public void setAlcodonFrame(
- final jalview.schemabinding.version2.AlcodonFrame[] vAlcodonFrameArray)
- {
- // -- copy array
- _alcodonFrameList.clear();
-
- for (int i = 0; i < vAlcodonFrameArray.length; i++)
- {
- this._alcodonFrameList.add(vAlcodonFrameArray[i]);
- }
- }
-
- /**
- *
- *
- * @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.schemabinding.version2.Annotation vAnnotation)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._annotationList.size())
- {
- throw new IndexOutOfBoundsException("setAnnotation: Index value '"
- + index + "' not in range [0.."
- + (this._annotationList.size() - 1) + "]");
- }
-
- this._annotationList.set(index, vAnnotation);
- }
-
- /**
- *
- *
- * @param vAnnotationArray
- */
- public void setAnnotation(
- final jalview.schemabinding.version2.Annotation[] vAnnotationArray)
- {
- // -- copy array
- _annotationList.clear();
-
- for (int i = 0; i < vAnnotationArray.length; i++)
- {
- this._annotationList.add(vAnnotationArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'datasetId'. The field 'datasetId' has the
- * following description: reference to set where jalview will gather the
- * dataset sequences for all sequences in the set.
- *
- *
- * @param datasetId
- * the value of field 'datasetId'.
- */
- public void setDatasetId(final java.lang.String datasetId)
- {
- this._datasetId = datasetId;
- }
-
- /**
- * 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.schemabinding.version2.Sequence vSequence)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._sequenceList.size())
- {
- throw new IndexOutOfBoundsException("setSequence: Index value '"
- + index + "' not in range [0.."
- + (this._sequenceList.size() - 1) + "]");
- }
-
- this._sequenceList.set(index, vSequence);
- }
-
- /**
- *
- *
- * @param vSequenceArray
- */
- public void setSequence(
- final jalview.schemabinding.version2.Sequence[] vSequenceArray)
- {
- // -- copy array
- _sequenceList.clear();
-
- for (int i = 0; i < vSequenceArray.length; i++)
- {
- this._sequenceList.add(vSequenceArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vSequenceSetProperties
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setSequenceSetProperties(
- final int index,
- final jalview.schemabinding.version2.SequenceSetProperties vSequenceSetProperties)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._sequenceSetPropertiesList.size())
- {
- throw new IndexOutOfBoundsException(
- "setSequenceSetProperties: Index value '" + index
- + "' not in range [0.."
- + (this._sequenceSetPropertiesList.size() - 1) + "]");
- }
-
- this._sequenceSetPropertiesList.set(index, vSequenceSetProperties);
- }
-
- /**
- *
- *
- * @param vSequenceSetPropertiesArray
- */
- public void setSequenceSetProperties(
- final jalview.schemabinding.version2.SequenceSetProperties[] vSequenceSetPropertiesArray)
- {
- // -- copy array
- _sequenceSetPropertiesList.clear();
-
- for (int i = 0; i < vSequenceSetPropertiesArray.length; i++)
- {
- this._sequenceSetPropertiesList.add(vSequenceSetPropertiesArray[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.schemabinding.version2.SequenceSet
- */
- public static jalview.schemabinding.version2.SequenceSet unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.SequenceSet) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class SequenceSetProperties.
- *
- * @version $Revision$ $Date$
- */
-public class SequenceSetProperties implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _key.
- */
- private java.lang.String _key;
-
- /**
- * Field _value.
- */
- private java.lang.String _value;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SequenceSetProperties()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'key'.
- *
- * @return the value of field 'Key'.
- */
- public java.lang.String getKey()
- {
- return this._key;
- }
-
- /**
- * Returns the value of field 'value'.
- *
- * @return the value of field 'Value'.
- */
- public java.lang.String getValue()
- {
- return this._value;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'key'.
- *
- * @param key
- * the value of field 'key'.
- */
- public void setKey(final java.lang.String key)
- {
- this._key = key;
- }
-
- /**
- * Sets the value of field 'value'.
- *
- * @param value
- * the value of field 'value'.
- */
- public void setValue(final java.lang.String value)
- {
- this._value = value;
- }
-
- /**
- * 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.schemabinding.version2.SequenceSetProperties
- */
- public static jalview.schemabinding.version2.SequenceSetProperties unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.SequenceSetProperties) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.SequenceSetProperties.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class SequenceType.
- *
- * @version $Revision$ $Date$
- */
-public class SequenceType implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _id.
- */
- private java.lang.String _id;
-
- /**
- * Field _description.
- */
- private java.lang.String _description;
-
- /**
- * Field _sequence.
- */
- private java.lang.String _sequence;
-
- /**
- * Field _name.
- */
- private java.lang.String _name;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SequenceType()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'description'.
- *
- * @return the value of field 'Description'.
- */
- public java.lang.String getDescription()
- {
- return this._description;
- }
-
- /**
- * Returns the value of field 'id'.
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Returns the value of field 'name'.
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Returns the value of field 'sequence'.
- *
- * @return the value of field 'Sequence'.
- */
- public java.lang.String getSequence()
- {
- return this._sequence;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'description'.
- *
- * @param description
- * the value of field 'description'.
- */
- public void setDescription(final java.lang.String description)
- {
- this._description = description;
- }
-
- /**
- * Sets the value of field 'id'.
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- * Sets the value of field 'name'.
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * Sets the value of field 'sequence'.
- *
- * @param sequence
- * the value of field 'sequence'.
- */
- public void setSequence(final java.lang.String sequence)
- {
- this._sequence = sequence;
- }
-
- /**
- * 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.schemabinding.version2.SequenceType
- */
- public static jalview.schemabinding.version2.SequenceType unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.SequenceType) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.SequenceType.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Setting.
- *
- * @version $Revision$ $Date$
- */
-public class Setting implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _type.
- */
- private java.lang.String _type;
-
- /**
- * Field _colour.
- */
- private int _colour;
-
- /**
- * keeps track of state for field: _colour
- */
- private boolean _has_colour;
-
- /**
- * Field _display.
- */
- private boolean _display;
-
- /**
- * keeps track of state for field: _display
- */
- private boolean _has_display;
-
- /**
- * Field _order.
- */
- private float _order;
-
- /**
- * keeps track of state for field: _order
- */
- private boolean _has_order;
-
- /**
- * Optional minimum colour for graduated feature colour
- *
- */
- private int _mincolour;
-
- /**
- * keeps track of state for field: _mincolour
- */
- private boolean _has_mincolour;
-
- /**
- * Field _noValueColour.
- */
- private jalview.schemabinding.version2.types.NoValueColour _noValueColour = jalview.schemabinding.version2.types.NoValueColour
- .valueOf("Min");
-
- /**
- * threshold value for graduated feature colour
- *
- */
- private float _threshold;
-
- /**
- * keeps track of state for field: _threshold
- */
- private boolean _has_threshold;
-
- /**
- * threshold type for graduated feature colour
- *
- */
- private int _threshstate;
-
- /**
- * keeps track of state for field: _threshstate
- */
- private boolean _has_threshstate;
-
- /**
- * Field _max.
- */
- private float _max;
-
- /**
- * keeps track of state for field: _max
- */
- private boolean _has_max;
-
- /**
- * Field _min.
- */
- private float _min;
-
- /**
- * keeps track of state for field: _min
- */
- private boolean _has_min;
-
- /**
- * Field _colourByLabel.
- */
- private boolean _colourByLabel;
-
- /**
- * keeps track of state for field: _colourByLabel
- */
- private boolean _has_colourByLabel;
-
- /**
- * Field _autoScale.
- */
- private boolean _autoScale;
-
- /**
- * keeps track of state for field: _autoScale
- */
- private boolean _has_autoScale;
-
- /**
- * name of feature attribute to colour by, or attribute and sub-attribute
- */
- private java.util.Vector _attributeNameList;
-
- /**
- * optional filter(s) applied to the feature type
- */
- private jalview.schemabinding.version2.MatcherSet _matcherSet;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Setting()
- {
- super();
- setNoValueColour(jalview.schemabinding.version2.types.NoValueColour
- .valueOf("Min"));
- this._attributeNameList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.addElement(vAttributeName);
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check for the maximum size
- if (this._attributeNameList.size() >= 2)
- {
- throw new IndexOutOfBoundsException(
- "addAttributeName has a maximum of 2");
- }
-
- this._attributeNameList.add(index, vAttributeName);
- }
-
- /**
- */
- public void deleteAutoScale()
- {
- this._has_autoScale = false;
- }
-
- /**
- */
- public void deleteColour()
- {
- this._has_colour = false;
- }
-
- /**
- */
- public void deleteColourByLabel()
- {
- this._has_colourByLabel = false;
- }
-
- /**
- */
- public void deleteDisplay()
- {
- this._has_display = false;
- }
-
- /**
- */
- public void deleteMax()
- {
- this._has_max = false;
- }
-
- /**
- */
- public void deleteMin()
- {
- this._has_min = false;
- }
-
- /**
- */
- public void deleteMincolour()
- {
- this._has_mincolour = false;
- }
-
- /**
- */
- public void deleteOrder()
- {
- this._has_order = false;
- }
-
- /**
- */
- public void deleteThreshold()
- {
- this._has_threshold = false;
- }
-
- /**
- */
- public void deleteThreshstate()
- {
- this._has_threshstate = false;
- }
-
- /**
- * Method enumerateAttributeName.
- *
- * @return an Enumeration over all java.lang.String elements
- */
- public java.util.Enumeration enumerateAttributeName()
- {
- return this._attributeNameList.elements();
- }
-
- /**
- * Method getAttributeName.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the java.lang.String at the given index
- */
- public java.lang.String getAttributeName(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("getAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- return (java.lang.String) _attributeNameList.get(index);
- }
-
- /**
- * Method getAttributeName.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public java.lang.String[] getAttributeName()
- {
- java.lang.String[] array = new java.lang.String[0];
- return (java.lang.String[]) this._attributeNameList.toArray(array);
- }
-
- /**
- * Method getAttributeNameCount.
- *
- * @return the size of this collection
- */
- public int getAttributeNameCount()
- {
- return this._attributeNameList.size();
- }
-
- /**
- * Returns the value of field 'autoScale'.
- *
- * @return the value of field 'AutoScale'.
- */
- public boolean getAutoScale()
- {
- return this._autoScale;
- }
-
- /**
- * Returns the value of field 'colour'.
- *
- * @return the value of field 'Colour'.
- */
- public int getColour()
- {
- return this._colour;
- }
-
- /**
- * Returns the value of field 'colourByLabel'.
- *
- * @return the value of field 'ColourByLabel'.
- */
- public boolean getColourByLabel()
- {
- return this._colourByLabel;
- }
-
- /**
- * Returns the value of field 'display'.
- *
- * @return the value of field 'Display'.
- */
- public boolean getDisplay()
- {
- return this._display;
- }
-
- /**
- * Returns the value of field 'matcherSet'. The field 'matcherSet' has the
- * following description: optional filter(s) applied to the feature type
- *
- * @return the value of field 'MatcherSet'.
- */
- public jalview.schemabinding.version2.MatcherSet getMatcherSet()
- {
- return this._matcherSet;
- }
-
- /**
- * Returns the value of field 'max'.
- *
- * @return the value of field 'Max'.
- */
- public float getMax()
- {
- return this._max;
- }
-
- /**
- * Returns the value of field 'min'.
- *
- * @return the value of field 'Min'.
- */
- public float getMin()
- {
- return this._min;
- }
-
- /**
- * Returns the value of field 'mincolour'. The field 'mincolour' has the
- * following description: Optional minimum colour for graduated feature colour
- *
- *
- * @return the value of field 'Mincolour'.
- */
- public int getMincolour()
- {
- return this._mincolour;
- }
-
- /**
- * Returns the value of field 'noValueColour'.
- *
- * @return the value of field 'NoValueColour'.
- */
- public jalview.schemabinding.version2.types.NoValueColour getNoValueColour()
- {
- return this._noValueColour;
- }
-
- /**
- * Returns the value of field 'order'.
- *
- * @return the value of field 'Order'.
- */
- public float getOrder()
- {
- return this._order;
- }
-
- /**
- * Returns the value of field 'threshold'. The field 'threshold' has the
- * following description: threshold value for graduated feature colour
- *
- *
- * @return the value of field 'Threshold'.
- */
- public float getThreshold()
- {
- return this._threshold;
- }
-
- /**
- * Returns the value of field 'threshstate'. The field 'threshstate' has the
- * following description: threshold type for graduated feature colour
- *
- *
- * @return the value of field 'Threshstate'.
- */
- public int getThreshstate()
- {
- return this._threshstate;
- }
-
- /**
- * Returns the value of field 'type'.
- *
- * @return the value of field 'Type'.
- */
- public java.lang.String getType()
- {
- return this._type;
- }
-
- /**
- * Method hasAutoScale.
- *
- * @return true if at least one AutoScale has been added
- */
- public boolean hasAutoScale()
- {
- return this._has_autoScale;
- }
-
- /**
- * Method hasColour.
- *
- * @return true if at least one Colour has been added
- */
- public boolean hasColour()
- {
- return this._has_colour;
- }
-
- /**
- * Method hasColourByLabel.
- *
- * @return true if at least one ColourByLabel has been added
- */
- public boolean hasColourByLabel()
- {
- return this._has_colourByLabel;
- }
-
- /**
- * Method hasDisplay.
- *
- * @return true if at least one Display has been added
- */
- public boolean hasDisplay()
- {
- return this._has_display;
- }
-
- /**
- * Method hasMax.
- *
- * @return true if at least one Max has been added
- */
- public boolean hasMax()
- {
- return this._has_max;
- }
-
- /**
- * Method hasMin.
- *
- * @return true if at least one Min has been added
- */
- public boolean hasMin()
- {
- return this._has_min;
- }
-
- /**
- * Method hasMincolour.
- *
- * @return true if at least one Mincolour has been added
- */
- public boolean hasMincolour()
- {
- return this._has_mincolour;
- }
-
- /**
- * Method hasOrder.
- *
- * @return true if at least one Order has been added
- */
- public boolean hasOrder()
- {
- return this._has_order;
- }
-
- /**
- * Method hasThreshold.
- *
- * @return true if at least one Threshold has been added
- */
- public boolean hasThreshold()
- {
- return this._has_threshold;
- }
-
- /**
- * Method hasThreshstate.
- *
- * @return true if at least one Threshstate has been added
- */
- public boolean hasThreshstate()
- {
- return this._has_threshstate;
- }
-
- /**
- * Returns the value of field 'autoScale'.
- *
- * @return the value of field 'AutoScale'.
- */
- public boolean isAutoScale()
- {
- return this._autoScale;
- }
-
- /**
- * Returns the value of field 'colourByLabel'.
- *
- * @return the value of field 'ColourByLabel'.
- */
- public boolean isColourByLabel()
- {
- return this._colourByLabel;
- }
-
- /**
- * Returns the value of field 'display'.
- *
- * @return the value of field 'Display'.
- */
- public boolean isDisplay()
- {
- return this._display;
- }
-
- /**
- * 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 removeAllAttributeName()
- {
- this._attributeNameList.clear();
- }
-
- /**
- * Method removeAttributeName.
- *
- * @param vAttributeName
- * @return true if the object was removed from the collection.
- */
- public boolean removeAttributeName(final java.lang.String vAttributeName)
- {
- boolean removed = _attributeNameList.remove(vAttributeName);
- return removed;
- }
-
- /**
- * Method removeAttributeNameAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public java.lang.String removeAttributeNameAt(final int index)
- {
- java.lang.Object obj = this._attributeNameList.remove(index);
- return (java.lang.String) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vAttributeName
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setAttributeName(final int index,
- final java.lang.String vAttributeName)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._attributeNameList.size())
- {
- throw new IndexOutOfBoundsException("setAttributeName: Index value '"
- + index + "' not in range [0.."
- + (this._attributeNameList.size() - 1) + "]");
- }
-
- this._attributeNameList.set(index, vAttributeName);
- }
-
- /**
- *
- *
- * @param vAttributeNameArray
- */
- public void setAttributeName(final java.lang.String[] vAttributeNameArray)
- {
- // -- copy array
- _attributeNameList.clear();
-
- for (int i = 0; i < vAttributeNameArray.length; i++)
- {
- this._attributeNameList.add(vAttributeNameArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'autoScale'.
- *
- * @param autoScale
- * the value of field 'autoScale'.
- */
- public void setAutoScale(final boolean autoScale)
- {
- this._autoScale = autoScale;
- this._has_autoScale = true;
- }
-
- /**
- * Sets the value of field 'colour'.
- *
- * @param colour
- * the value of field 'colour'.
- */
- public void setColour(final int colour)
- {
- this._colour = colour;
- this._has_colour = true;
- }
-
- /**
- * Sets the value of field 'colourByLabel'.
- *
- * @param colourByLabel
- * the value of field 'colourByLabel'.
- */
- public void setColourByLabel(final boolean colourByLabel)
- {
- this._colourByLabel = colourByLabel;
- this._has_colourByLabel = true;
- }
-
- /**
- * Sets the value of field 'display'.
- *
- * @param display
- * the value of field 'display'.
- */
- public void setDisplay(final boolean display)
- {
- this._display = display;
- this._has_display = true;
- }
-
- /**
- * Sets the value of field 'matcherSet'. The field 'matcherSet' has the
- * following description: optional filter(s) applied to the feature type
- *
- * @param matcherSet
- * the value of field 'matcherSet'.
- */
- public void setMatcherSet(
- final jalview.schemabinding.version2.MatcherSet matcherSet)
- {
- this._matcherSet = matcherSet;
- }
-
- /**
- * Sets the value of field 'max'.
- *
- * @param max
- * the value of field 'max'.
- */
- public void setMax(final float max)
- {
- this._max = max;
- this._has_max = true;
- }
-
- /**
- * Sets the value of field 'min'.
- *
- * @param min
- * the value of field 'min'.
- */
- public void setMin(final float min)
- {
- this._min = min;
- this._has_min = true;
- }
-
- /**
- * Sets the value of field 'mincolour'. The field 'mincolour' has the
- * following description: Optional minimum colour for graduated feature colour
- *
- *
- * @param mincolour
- * the value of field 'mincolour'.
- */
- public void setMincolour(final int mincolour)
- {
- this._mincolour = mincolour;
- this._has_mincolour = true;
- }
-
- /**
- * Sets the value of field 'noValueColour'.
- *
- * @param noValueColour
- * the value of field 'noValueColour'.
- */
- public void setNoValueColour(
- final jalview.schemabinding.version2.types.NoValueColour noValueColour)
- {
- this._noValueColour = noValueColour;
- }
-
- /**
- * Sets the value of field 'order'.
- *
- * @param order
- * the value of field 'order'.
- */
- public void setOrder(final float order)
- {
- this._order = order;
- this._has_order = true;
- }
-
- /**
- * Sets the value of field 'threshold'. The field 'threshold' has the
- * following description: threshold value for graduated feature colour
- *
- *
- * @param threshold
- * the value of field 'threshold'.
- */
- public void setThreshold(final float threshold)
- {
- this._threshold = threshold;
- this._has_threshold = true;
- }
-
- /**
- * Sets the value of field 'threshstate'. The field 'threshstate' has the
- * following description: threshold type for graduated feature colour
- *
- *
- * @param threshstate
- * the value of field 'threshstate'.
- */
- public void setThreshstate(final int threshstate)
- {
- this._threshstate = threshstate;
- this._has_threshstate = true;
- }
-
- /**
- * Sets the value of field 'type'.
- *
- * @param type
- * the value of field 'type'.
- */
- public void setType(final java.lang.String type)
- {
- this._type = type;
- }
-
- /**
- * 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.schemabinding.version2.Settin
- */
- public static jalview.schemabinding.version2.Setting unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Setting) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.Setting.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class StructureState.
- *
- * @version $Revision$ $Date$
- */
-public class StructureState implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * internal content storage
- */
- private java.lang.String _content = "";
-
- /**
- * Field _visible.
- */
- private boolean _visible;
-
- /**
- * keeps track of state for field: _visible
- */
- private boolean _has_visible;
-
- /**
- * additional identifier which properly disambiguates the structure view from
- * any other view with the same attributes. This is not an ID, because it is
- * possible to have many references to the same physical structure view from
- * different sequences in an alignment. A structureState element citing the
- * same viewId will appear for each instance.
- *
- */
- private java.lang.String _viewId;
-
- /**
- * Flag set if the alignment panel containing this JSeq should be included in
- * those used to perform a structure superposition (since Jalview 2.7).
- *
- */
- private boolean _alignwithAlignPanel = true;
-
- /**
- * keeps track of state for field: _alignwithAlignPanel
- */
- private boolean _has_alignwithAlignPanel;
-
- /**
- * Flag set if the alignment panel containing this JSeq should be included in
- * those used to colour its associated sequences in this structureState(since
- * Jalview 2.7).
- *
- */
- private boolean _colourwithAlignPanel = false;
-
- /**
- * keeps track of state for field: _colourwithAlignPanel
- */
- private boolean _has_colourwithAlignPanel;
-
- /**
- * Flag set if the structure display is coloured by the Jmol state, rather
- * than by one or more linked alignment views.
- *
- */
- private boolean _colourByJmol = true;
-
- /**
- * keeps track of state for field: _colourByJmol
- */
- private boolean _has_colourByJmol;
-
- /**
- * An identifier for the viewer type, currently either JMOL or CHIMERA
- *
- */
- private java.lang.String _type;
-
- /**
- * Field _width.
- */
- private int _width;
-
- /**
- * keeps track of state for field: _width
- */
- private boolean _has_width;
-
- /**
- * Field _height.
- */
- private int _height;
-
- /**
- * keeps track of state for field: _height
- */
- private boolean _has_height;
-
- /**
- * Field _xpos.
- */
- private int _xpos;
-
- /**
- * keeps track of state for field: _xpos
- */
- private boolean _has_xpos;
-
- /**
- * Field _ypos.
- */
- private int _ypos;
-
- /**
- * keeps track of state for field: _ypos
- */
- private boolean _has_ypos;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public StructureState()
- {
- super();
- setContent("");
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteAlignwithAlignPanel()
- {
- this._has_alignwithAlignPanel = false;
- }
-
- /**
- */
- public void deleteColourByJmol()
- {
- this._has_colourByJmol = false;
- }
-
- /**
- */
- public void deleteColourwithAlignPanel()
- {
- this._has_colourwithAlignPanel = false;
- }
-
- /**
- */
- public void deleteHeight()
- {
- this._has_height = false;
- }
-
- /**
- */
- public void deleteVisible()
- {
- this._has_visible = false;
- }
-
- /**
- */
- public void deleteWidth()
- {
- this._has_width = false;
- }
-
- /**
- */
- public void deleteXpos()
- {
- this._has_xpos = false;
- }
-
- /**
- */
- public void deleteYpos()
- {
- this._has_ypos = false;
- }
-
- /**
- * Returns the value of field 'alignwithAlignPanel'. The field
- * 'alignwithAlignPanel' has the following description: Flag set if the
- * alignment panel containing this JSeq should be included in those used to
- * perform a structure superposition (since Jalview 2.7).
- *
- *
- * @return the value of field 'AlignwithAlignPanel'.
- */
- public boolean getAlignwithAlignPanel()
- {
- return this._alignwithAlignPanel;
- }
-
- /**
- * Returns the value of field 'colourByJmol'. The field 'colourByJmol' has the
- * following description: Flag set if the structure display is coloured by the
- * Jmol state, rather than by one or more linked alignment views.
- *
- *
- * @return the value of field 'ColourByJmol'.
- */
- public boolean getColourByJmol()
- {
- return this._colourByJmol;
- }
-
- /**
- * Returns the value of field 'colourwithAlignPanel'. The field
- * 'colourwithAlignPanel' has the following description: Flag set if the
- * alignment panel containing this JSeq should be included in those used to
- * colour its associated sequences in this structureState(since Jalview 2.7).
- *
- *
- * @return the value of field 'ColourwithAlignPanel'.
- */
- public boolean getColourwithAlignPanel()
- {
- return this._colourwithAlignPanel;
- }
-
- /**
- * Returns the value of field 'content'. The field 'content' has the following
- * description: internal content storage
- *
- * @return the value of field 'Content'.
- */
- public java.lang.String getContent()
- {
- return this._content;
- }
-
- /**
- * Returns the value of field 'height'.
- *
- * @return the value of field 'Height'.
- */
- public int getHeight()
- {
- return this._height;
- }
-
- /**
- * Returns the value of field 'type'. The field 'type' has the following
- * description: An identifier for the viewer type, currently either JMOL or
- * CHIMERA
- *
- *
- * @return the value of field 'Type'.
- */
- public java.lang.String getType()
- {
- return this._type;
- }
-
- /**
- * Returns the value of field 'viewId'. The field 'viewId' has the following
- * description: additional identifier which properly disambiguates the
- * structure view from any other view with the same attributes. This is not an
- * ID, because it is possible to have many references to the same physical
- * structure view from different sequences in an alignment. A structureState
- * element citing the same viewId will appear for each instance.
- *
- *
- * @return the value of field 'ViewId'.
- */
- public java.lang.String getViewId()
- {
- return this._viewId;
- }
-
- /**
- * Returns the value of field 'visible'.
- *
- * @return the value of field 'Visible'.
- */
- public boolean getVisible()
- {
- return this._visible;
- }
-
- /**
- * Returns the value of field 'width'.
- *
- * @return the value of field 'Width'.
- */
- public int getWidth()
- {
- return this._width;
- }
-
- /**
- * Returns the value of field 'xpos'.
- *
- * @return the value of field 'Xpos'.
- */
- public int getXpos()
- {
- return this._xpos;
- }
-
- /**
- * Returns the value of field 'ypos'.
- *
- * @return the value of field 'Ypos'.
- */
- public int getYpos()
- {
- return this._ypos;
- }
-
- /**
- * Method hasAlignwithAlignPanel.
- *
- * @return true if at least one AlignwithAlignPanel has been added
- */
- public boolean hasAlignwithAlignPanel()
- {
- return this._has_alignwithAlignPanel;
- }
-
- /**
- * Method hasColourByJmol.
- *
- * @return true if at least one ColourByJmol has been added
- */
- public boolean hasColourByJmol()
- {
- return this._has_colourByJmol;
- }
-
- /**
- * Method hasColourwithAlignPanel.
- *
- * @return true if at least one ColourwithAlignPanel has been added
- */
- public boolean hasColourwithAlignPanel()
- {
- return this._has_colourwithAlignPanel;
- }
-
- /**
- * Method hasHeight.
- *
- * @return true if at least one Height has been added
- */
- public boolean hasHeight()
- {
- return this._has_height;
- }
-
- /**
- * Method hasVisible.
- *
- * @return true if at least one Visible has been added
- */
- public boolean hasVisible()
- {
- return this._has_visible;
- }
-
- /**
- * Method hasWidth.
- *
- * @return true if at least one Width has been added
- */
- public boolean hasWidth()
- {
- return this._has_width;
- }
-
- /**
- * Method hasXpos.
- *
- * @return true if at least one Xpos has been added
- */
- public boolean hasXpos()
- {
- return this._has_xpos;
- }
-
- /**
- * Method hasYpos.
- *
- * @return true if at least one Ypos has been added
- */
- public boolean hasYpos()
- {
- return this._has_ypos;
- }
-
- /**
- * Returns the value of field 'alignwithAlignPanel'. The field
- * 'alignwithAlignPanel' has the following description: Flag set if the
- * alignment panel containing this JSeq should be included in those used to
- * perform a structure superposition (since Jalview 2.7).
- *
- *
- * @return the value of field 'AlignwithAlignPanel'.
- */
- public boolean isAlignwithAlignPanel()
- {
- return this._alignwithAlignPanel;
- }
-
- /**
- * Returns the value of field 'colourByJmol'. The field 'colourByJmol' has the
- * following description: Flag set if the structure display is coloured by the
- * Jmol state, rather than by one or more linked alignment views.
- *
- *
- * @return the value of field 'ColourByJmol'.
- */
- public boolean isColourByJmol()
- {
- return this._colourByJmol;
- }
-
- /**
- * Returns the value of field 'colourwithAlignPanel'. The field
- * 'colourwithAlignPanel' has the following description: Flag set if the
- * alignment panel containing this JSeq should be included in those used to
- * colour its associated sequences in this structureState(since Jalview 2.7).
- *
- *
- * @return the value of field 'ColourwithAlignPanel'.
- */
- public boolean isColourwithAlignPanel()
- {
- return this._colourwithAlignPanel;
- }
-
- /**
- * 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;
- }
-
- /**
- * Returns the value of field 'visible'.
- *
- * @return the value of field 'Visible'.
- */
- public boolean isVisible()
- {
- return this._visible;
- }
-
- /**
- *
- *
- * @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);
- }
-
- /**
- * Sets the value of field 'alignwithAlignPanel'. The field
- * 'alignwithAlignPanel' has the following description: Flag set if the
- * alignment panel containing this JSeq should be included in those used to
- * perform a structure superposition (since Jalview 2.7).
- *
- *
- * @param alignwithAlignPanel
- * the value of field 'alignwithAlignPanel'.
- */
- public void setAlignwithAlignPanel(final boolean alignwithAlignPanel)
- {
- this._alignwithAlignPanel = alignwithAlignPanel;
- this._has_alignwithAlignPanel = true;
- }
-
- /**
- * Sets the value of field 'colourByJmol'. The field 'colourByJmol' has the
- * following description: Flag set if the structure display is coloured by the
- * Jmol state, rather than by one or more linked alignment views.
- *
- *
- * @param colourByJmol
- * the value of field 'colourByJmol'.
- */
- public void setColourByJmol(final boolean colourByJmol)
- {
- this._colourByJmol = colourByJmol;
- this._has_colourByJmol = true;
- }
-
- /**
- * Sets the value of field 'colourwithAlignPanel'. The field
- * 'colourwithAlignPanel' has the following description: Flag set if the
- * alignment panel containing this JSeq should be included in those used to
- * colour its associated sequences in this structureState(since Jalview 2.7).
- *
- *
- * @param colourwithAlignPanel
- * the value of field 'colourwithAlignPanel'.
- */
- public void setColourwithAlignPanel(final boolean colourwithAlignPanel)
- {
- this._colourwithAlignPanel = colourwithAlignPanel;
- this._has_colourwithAlignPanel = true;
- }
-
- /**
- * Sets the value of field 'content'. The field 'content' has the following
- * description: internal content storage
- *
- * @param content
- * the value of field 'content'.
- */
- public void setContent(final java.lang.String content)
- {
- this._content = content;
- }
-
- /**
- * Sets the value of field 'height'.
- *
- * @param height
- * the value of field 'height'.
- */
- public void setHeight(final int height)
- {
- this._height = height;
- this._has_height = true;
- }
-
- /**
- * Sets the value of field 'type'. The field 'type' has the following
- * description: An identifier for the viewer type, currently either JMOL or
- * CHIMERA
- *
- *
- * @param type
- * the value of field 'type'.
- */
- public void setType(final java.lang.String type)
- {
- this._type = type;
- }
-
- /**
- * Sets the value of field 'viewId'. The field 'viewId' has the following
- * description: additional identifier which properly disambiguates the
- * structure view from any other view with the same attributes. This is not an
- * ID, because it is possible to have many references to the same physical
- * structure view from different sequences in an alignment. A structureState
- * element citing the same viewId will appear for each instance.
- *
- *
- * @param viewId
- * the value of field 'viewId'.
- */
- public void setViewId(final java.lang.String viewId)
- {
- this._viewId = viewId;
- }
-
- /**
- * Sets the value of field 'visible'.
- *
- * @param visible
- * the value of field 'visible'.
- */
- public void setVisible(final boolean visible)
- {
- this._visible = visible;
- this._has_visible = true;
- }
-
- /**
- * Sets the value of field 'width'.
- *
- * @param width
- * the value of field 'width'.
- */
- public void setWidth(final int width)
- {
- this._width = width;
- this._has_width = true;
- }
-
- /**
- * Sets the value of field 'xpos'.
- *
- * @param xpos
- * the value of field 'xpos'.
- */
- public void setXpos(final int xpos)
- {
- this._xpos = xpos;
- this._has_xpos = true;
- }
-
- /**
- * Sets the value of field 'ypos'.
- *
- * @param ypos
- * the value of field 'ypos'.
- */
- public void setYpos(final int ypos)
- {
- this._ypos = ypos;
- this._has_ypos = true;
- }
-
- /**
- * 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.schemabinding.version2.StructureState
- */
- public static jalview.schemabinding.version2.StructureState unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.StructureState) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.StructureState.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class ThresholdLine.
- *
- * @version $Revision$ $Date$
- */
-public class ThresholdLine implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _label.
- */
- private java.lang.String _label;
-
- /**
- * Field _value.
- */
- private float _value;
-
- /**
- * keeps track of state for field: _value
- */
- private boolean _has_value;
-
- /**
- * Field _colour.
- */
- private int _colour;
-
- /**
- * keeps track of state for field: _colour
- */
- private boolean _has_colour;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public ThresholdLine()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteColour()
- {
- this._has_colour = false;
- }
-
- /**
- */
- public void deleteValue()
- {
- this._has_value = false;
- }
-
- /**
- * Returns the value of field 'colour'.
- *
- * @return the value of field 'Colour'.
- */
- public int getColour()
- {
- return this._colour;
- }
-
- /**
- * Returns the value of field 'label'.
- *
- * @return the value of field 'Label'.
- */
- public java.lang.String getLabel()
- {
- return this._label;
- }
-
- /**
- * Returns the value of field 'value'.
- *
- * @return the value of field 'Value'.
- */
- public float getValue()
- {
- return this._value;
- }
-
- /**
- * Method hasColour.
- *
- * @return true if at least one Colour has been added
- */
- public boolean hasColour()
- {
- return this._has_colour;
- }
-
- /**
- * Method hasValue.
- *
- * @return true if at least one Value has been added
- */
- public boolean hasValue()
- {
- return this._has_value;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'colour'.
- *
- * @param colour
- * the value of field 'colour'.
- */
- public void setColour(final int colour)
- {
- this._colour = colour;
- this._has_colour = true;
- }
-
- /**
- * Sets the value of field 'label'.
- *
- * @param label
- * the value of field 'label'.
- */
- public void setLabel(final java.lang.String label)
- {
- this._label = label;
- }
-
- /**
- * Sets the value of field 'value'.
- *
- * @param value
- * the value of field 'value'.
- */
- public void setValue(final float value)
- {
- this._value = value;
- this._has_value = true;
- }
-
- /**
- * 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.schemabinding.version2.ThresholdLine
- */
- public static jalview.schemabinding.version2.ThresholdLine unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.ThresholdLine) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.ThresholdLine.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Tree.
- *
- * @version $Revision$ $Date$
- */
-public class Tree implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _fontName.
- */
- private java.lang.String _fontName;
-
- /**
- * Field _fontSize.
- */
- private int _fontSize;
-
- /**
- * keeps track of state for field: _fontSize
- */
- private boolean _has_fontSize;
-
- /**
- * Field _fontStyle.
- */
- private int _fontStyle;
-
- /**
- * keeps track of state for field: _fontStyle
- */
- private boolean _has_fontStyle;
-
- /**
- * Field _threshold.
- */
- private float _threshold;
-
- /**
- * keeps track of state for field: _threshold
- */
- private boolean _has_threshold;
-
- /**
- * Field _showBootstrap.
- */
- private boolean _showBootstrap;
-
- /**
- * keeps track of state for field: _showBootstrap
- */
- private boolean _has_showBootstrap;
-
- /**
- * Field _showDistances.
- */
- private boolean _showDistances;
-
- /**
- * keeps track of state for field: _showDistances
- */
- private boolean _has_showDistances;
-
- /**
- * Field _markUnlinked.
- */
- private boolean _markUnlinked;
-
- /**
- * keeps track of state for field: _markUnlinked
- */
- private boolean _has_markUnlinked;
-
- /**
- * Field _fitToWindow.
- */
- private boolean _fitToWindow;
-
- /**
- * keeps track of state for field: _fitToWindow
- */
- private boolean _has_fitToWindow;
-
- /**
- * Field _currentTree.
- */
- private boolean _currentTree;
-
- /**
- * keeps track of state for field: _currentTree
- */
- private boolean _has_currentTree;
-
- /**
- * Tree ID added for binding tree visualization settings to vamsas document
- * trees in jalview 2.4.1
- *
- */
- private java.lang.String _id;
-
- /**
- * Field _width.
- */
- private int _width;
-
- /**
- * keeps track of state for field: _width
- */
- private boolean _has_width;
-
- /**
- * Field _height.
- */
- private int _height;
-
- /**
- * keeps track of state for field: _height
- */
- private boolean _has_height;
-
- /**
- * Field _xpos.
- */
- private int _xpos;
-
- /**
- * keeps track of state for field: _xpos
- */
- private boolean _has_xpos;
-
- /**
- * Field _ypos.
- */
- private int _ypos;
-
- /**
- * keeps track of state for field: _ypos
- */
- private boolean _has_ypos;
-
- /**
- * Field _title.
- */
- private java.lang.String _title;
-
- /**
- * Field _newick.
- */
- private java.lang.String _newick;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Tree()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- */
- public void deleteCurrentTree()
- {
- this._has_currentTree = false;
- }
-
- /**
- */
- public void deleteFitToWindow()
- {
- this._has_fitToWindow = false;
- }
-
- /**
- */
- public void deleteFontSize()
- {
- this._has_fontSize = false;
- }
-
- /**
- */
- public void deleteFontStyle()
- {
- this._has_fontStyle = false;
- }
-
- /**
- */
- public void deleteHeight()
- {
- this._has_height = false;
- }
-
- /**
- */
- public void deleteMarkUnlinked()
- {
- this._has_markUnlinked = false;
- }
-
- /**
- */
- public void deleteShowBootstrap()
- {
- this._has_showBootstrap = false;
- }
-
- /**
- */
- public void deleteShowDistances()
- {
- this._has_showDistances = false;
- }
-
- /**
- */
- public void deleteThreshold()
- {
- this._has_threshold = false;
- }
-
- /**
- */
- public void deleteWidth()
- {
- this._has_width = false;
- }
-
- /**
- */
- public void deleteXpos()
- {
- this._has_xpos = false;
- }
-
- /**
- */
- public void deleteYpos()
- {
- this._has_ypos = false;
- }
-
- /**
- * Returns the value of field 'currentTree'.
- *
- * @return the value of field 'CurrentTree'.
- */
- public boolean getCurrentTree()
- {
- return this._currentTree;
- }
-
- /**
- * Returns the value of field 'fitToWindow'.
- *
- * @return the value of field 'FitToWindow'.
- */
- public boolean getFitToWindow()
- {
- return this._fitToWindow;
- }
-
- /**
- * Returns the value of field 'fontName'.
- *
- * @return the value of field 'FontName'.
- */
- public java.lang.String getFontName()
- {
- return this._fontName;
- }
-
- /**
- * Returns the value of field 'fontSize'.
- *
- * @return the value of field 'FontSize'.
- */
- public int getFontSize()
- {
- return this._fontSize;
- }
-
- /**
- * Returns the value of field 'fontStyle'.
- *
- * @return the value of field 'FontStyle'.
- */
- public int getFontStyle()
- {
- return this._fontStyle;
- }
-
- /**
- * Returns the value of field 'height'.
- *
- * @return the value of field 'Height'.
- */
- public int getHeight()
- {
- return this._height;
- }
-
- /**
- * Returns the value of field 'id'. The field 'id' has the following
- * description: Tree ID added for binding tree visualization settings to
- * vamsas document trees in jalview 2.4.1
- *
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Returns the value of field 'markUnlinked'.
- *
- * @return the value of field 'MarkUnlinked'.
- */
- public boolean getMarkUnlinked()
- {
- return this._markUnlinked;
- }
-
- /**
- * Returns the value of field 'newick'.
- *
- * @return the value of field 'Newick'.
- */
- public java.lang.String getNewick()
- {
- return this._newick;
- }
-
- /**
- * Returns the value of field 'showBootstrap'.
- *
- * @return the value of field 'ShowBootstrap'.
- */
- public boolean getShowBootstrap()
- {
- return this._showBootstrap;
- }
-
- /**
- * Returns the value of field 'showDistances'.
- *
- * @return the value of field 'ShowDistances'.
- */
- public boolean getShowDistances()
- {
- return this._showDistances;
- }
-
- /**
- * Returns the value of field 'threshold'.
- *
- * @return the value of field 'Threshold'.
- */
- public float getThreshold()
- {
- return this._threshold;
- }
-
- /**
- * Returns the value of field 'title'.
- *
- * @return the value of field 'Title'.
- */
- public java.lang.String getTitle()
- {
- return this._title;
- }
-
- /**
- * Returns the value of field 'width'.
- *
- * @return the value of field 'Width'.
- */
- public int getWidth()
- {
- return this._width;
- }
-
- /**
- * Returns the value of field 'xpos'.
- *
- * @return the value of field 'Xpos'.
- */
- public int getXpos()
- {
- return this._xpos;
- }
-
- /**
- * Returns the value of field 'ypos'.
- *
- * @return the value of field 'Ypos'.
- */
- public int getYpos()
- {
- return this._ypos;
- }
-
- /**
- * Method hasCurrentTree.
- *
- * @return true if at least one CurrentTree has been added
- */
- public boolean hasCurrentTree()
- {
- return this._has_currentTree;
- }
-
- /**
- * Method hasFitToWindow.
- *
- * @return true if at least one FitToWindow has been added
- */
- public boolean hasFitToWindow()
- {
- return this._has_fitToWindow;
- }
-
- /**
- * Method hasFontSize.
- *
- * @return true if at least one FontSize has been added
- */
- public boolean hasFontSize()
- {
- return this._has_fontSize;
- }
-
- /**
- * Method hasFontStyle.
- *
- * @return true if at least one FontStyle has been added
- */
- public boolean hasFontStyle()
- {
- return this._has_fontStyle;
- }
-
- /**
- * Method hasHeight.
- *
- * @return true if at least one Height has been added
- */
- public boolean hasHeight()
- {
- return this._has_height;
- }
-
- /**
- * Method hasMarkUnlinked.
- *
- * @return true if at least one MarkUnlinked has been added
- */
- public boolean hasMarkUnlinked()
- {
- return this._has_markUnlinked;
- }
-
- /**
- * Method hasShowBootstrap.
- *
- * @return true if at least one ShowBootstrap has been added
- */
- public boolean hasShowBootstrap()
- {
- return this._has_showBootstrap;
- }
-
- /**
- * Method hasShowDistances.
- *
- * @return true if at least one ShowDistances has been added
- */
- public boolean hasShowDistances()
- {
- return this._has_showDistances;
- }
-
- /**
- * Method hasThreshold.
- *
- * @return true if at least one Threshold has been added
- */
- public boolean hasThreshold()
- {
- return this._has_threshold;
- }
-
- /**
- * Method hasWidth.
- *
- * @return true if at least one Width has been added
- */
- public boolean hasWidth()
- {
- return this._has_width;
- }
-
- /**
- * Method hasXpos.
- *
- * @return true if at least one Xpos has been added
- */
- public boolean hasXpos()
- {
- return this._has_xpos;
- }
-
- /**
- * Method hasYpos.
- *
- * @return true if at least one Ypos has been added
- */
- public boolean hasYpos()
- {
- return this._has_ypos;
- }
-
- /**
- * Returns the value of field 'currentTree'.
- *
- * @return the value of field 'CurrentTree'.
- */
- public boolean isCurrentTree()
- {
- return this._currentTree;
- }
-
- /**
- * Returns the value of field 'fitToWindow'.
- *
- * @return the value of field 'FitToWindow'.
- */
- public boolean isFitToWindow()
- {
- return this._fitToWindow;
- }
-
- /**
- * Returns the value of field 'markUnlinked'.
- *
- * @return the value of field 'MarkUnlinked'.
- */
- public boolean isMarkUnlinked()
- {
- return this._markUnlinked;
- }
-
- /**
- * Returns the value of field 'showBootstrap'.
- *
- * @return the value of field 'ShowBootstrap'.
- */
- public boolean isShowBootstrap()
- {
- return this._showBootstrap;
- }
-
- /**
- * Returns the value of field 'showDistances'.
- *
- * @return the value of field 'ShowDistances'.
- */
- public boolean isShowDistances()
- {
- return this._showDistances;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'currentTree'.
- *
- * @param currentTree
- * the value of field 'currentTree'.
- */
- public void setCurrentTree(final boolean currentTree)
- {
- this._currentTree = currentTree;
- this._has_currentTree = true;
- }
-
- /**
- * Sets the value of field 'fitToWindow'.
- *
- * @param fitToWindow
- * the value of field 'fitToWindow'.
- */
- public void setFitToWindow(final boolean fitToWindow)
- {
- this._fitToWindow = fitToWindow;
- this._has_fitToWindow = true;
- }
-
- /**
- * Sets the value of field 'fontName'.
- *
- * @param fontName
- * the value of field 'fontName'.
- */
- public void setFontName(final java.lang.String fontName)
- {
- this._fontName = fontName;
- }
-
- /**
- * Sets the value of field 'fontSize'.
- *
- * @param fontSize
- * the value of field 'fontSize'.
- */
- public void setFontSize(final int fontSize)
- {
- this._fontSize = fontSize;
- this._has_fontSize = true;
- }
-
- /**
- * Sets the value of field 'fontStyle'.
- *
- * @param fontStyle
- * the value of field 'fontStyle'.
- */
- public void setFontStyle(final int fontStyle)
- {
- this._fontStyle = fontStyle;
- this._has_fontStyle = true;
- }
-
- /**
- * Sets the value of field 'height'.
- *
- * @param height
- * the value of field 'height'.
- */
- public void setHeight(final int height)
- {
- this._height = height;
- this._has_height = true;
- }
-
- /**
- * Sets the value of field 'id'. The field 'id' has the following description:
- * Tree ID added for binding tree visualization settings to vamsas document
- * trees in jalview 2.4.1
- *
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- * Sets the value of field 'markUnlinked'.
- *
- * @param markUnlinked
- * the value of field 'markUnlinked'.
- */
- public void setMarkUnlinked(final boolean markUnlinked)
- {
- this._markUnlinked = markUnlinked;
- this._has_markUnlinked = true;
- }
-
- /**
- * Sets the value of field 'newick'.
- *
- * @param newick
- * the value of field 'newick'.
- */
- public void setNewick(final java.lang.String newick)
- {
- this._newick = newick;
- }
-
- /**
- * Sets the value of field 'showBootstrap'.
- *
- * @param showBootstrap
- * the value of field 'showBootstrap'.
- */
- public void setShowBootstrap(final boolean showBootstrap)
- {
- this._showBootstrap = showBootstrap;
- this._has_showBootstrap = true;
- }
-
- /**
- * Sets the value of field 'showDistances'.
- *
- * @param showDistances
- * the value of field 'showDistances'.
- */
- public void setShowDistances(final boolean showDistances)
- {
- this._showDistances = showDistances;
- this._has_showDistances = true;
- }
-
- /**
- * Sets the value of field 'threshold'.
- *
- * @param threshold
- * the value of field 'threshold'.
- */
- public void setThreshold(final float threshold)
- {
- this._threshold = threshold;
- this._has_threshold = true;
- }
-
- /**
- * Sets the value of field 'title'.
- *
- * @param title
- * the value of field 'title'.
- */
- public void setTitle(final java.lang.String title)
- {
- this._title = title;
- }
-
- /**
- * Sets the value of field 'width'.
- *
- * @param width
- * the value of field 'width'.
- */
- public void setWidth(final int width)
- {
- this._width = width;
- this._has_width = true;
- }
-
- /**
- * Sets the value of field 'xpos'.
- *
- * @param xpos
- * the value of field 'xpos'.
- */
- public void setXpos(final int xpos)
- {
- this._xpos = xpos;
- this._has_xpos = true;
- }
-
- /**
- * Sets the value of field 'ypos'.
- *
- * @param ypos
- * the value of field 'ypos'.
- */
- public void setYpos(final int ypos)
- {
- this._ypos = ypos;
- this._has_ypos = true;
- }
-
- /**
- * 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.schemabinding.version2.Tree
- */
- public static jalview.schemabinding.version2.Tree unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Tree) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.Tree.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class UserColourScheme.
- *
- * @version $Revision$ $Date$
- */
-public class UserColourScheme extends JalviewUserColours implements
- java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public UserColourScheme()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.schemabinding.version2.JalviewUserColours
- */
- public static jalview.schemabinding.version2.JalviewUserColours unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.JalviewUserColours) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.UserColourScheme.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class UserColours.
- *
- * @version $Revision$ $Date$
- */
-public class UserColours implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _id.
- */
- private java.lang.String _id;
-
- /**
- * Field _userColourScheme.
- */
- private jalview.schemabinding.version2.UserColourScheme _userColourScheme;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public UserColours()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Returns the value of field 'id'.
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Returns the value of field 'userColourScheme'.
- *
- * @return the value of field 'UserColourScheme'.
- */
- public jalview.schemabinding.version2.UserColourScheme getUserColourScheme()
- {
- return this._userColourScheme;
- }
-
- /**
- * 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);
- }
-
- /**
- * Sets the value of field 'id'.
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- * Sets the value of field 'userColourScheme'.
- *
- * @param userColourScheme
- * the value of field 'userColourScheme'
- */
- public void setUserColourScheme(
- final jalview.schemabinding.version2.UserColourScheme userColourScheme)
- {
- this._userColourScheme = userColourScheme;
- }
-
- /**
- * 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.schemabinding.version2.UserColours
- */
- public static jalview.schemabinding.version2.UserColours unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.UserColours) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.UserColours.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class VAMSAS.
- *
- * @version $Revision$ $Date$
- */
-public class VAMSAS implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _treeList.
- */
- private java.util.Vector _treeList;
-
- /**
- * Field _sequenceSetList.
- */
- private java.util.Vector _sequenceSetList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public VAMSAS()
- {
- super();
- this._treeList = new java.util.Vector();
- this._sequenceSetList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vSequenceSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSequenceSet(
- final jalview.schemabinding.version2.SequenceSet vSequenceSet)
- throws java.lang.IndexOutOfBoundsException
- {
- this._sequenceSetList.addElement(vSequenceSet);
- }
-
- /**
- *
- *
- * @param index
- * @param vSequenceSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addSequenceSet(final int index,
- final jalview.schemabinding.version2.SequenceSet vSequenceSet)
- throws java.lang.IndexOutOfBoundsException
- {
- this._sequenceSetList.add(index, vSequenceSet);
- }
-
- /**
- *
- *
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addTree(final java.lang.String vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- this._treeList.addElement(vTree);
- }
-
- /**
- *
- *
- * @param index
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addTree(final int index, final java.lang.String vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- this._treeList.add(index, vTree);
- }
-
- /**
- * Method enumerateSequenceSet.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.SequenceSet
- * elements
- */
- public java.util.Enumeration enumerateSequenceSet()
- {
- return this._sequenceSetList.elements();
- }
-
- /**
- * Method enumerateTree.
- *
- * @return an Enumeration over all java.lang.String elements
- */
- public java.util.Enumeration enumerateTree()
- {
- return this._treeList.elements();
- }
-
- /**
- * Method getSequenceSet.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.SequenceSet at the
- * given index
- */
- public jalview.schemabinding.version2.SequenceSet getSequenceSet(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._sequenceSetList.size())
- {
- throw new IndexOutOfBoundsException("getSequenceSet: Index value '"
- + index + "' not in range [0.."
- + (this._sequenceSetList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.SequenceSet) _sequenceSetList
- .get(index);
- }
-
- /**
- * Method getSequenceSet.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.SequenceSet[] getSequenceSet()
- {
- jalview.schemabinding.version2.SequenceSet[] array = new jalview.schemabinding.version2.SequenceSet[0];
- return (jalview.schemabinding.version2.SequenceSet[]) this._sequenceSetList
- .toArray(array);
- }
-
- /**
- * Method getSequenceSetCount.
- *
- * @return the size of this collection
- */
- public int getSequenceSetCount()
- {
- return this._sequenceSetList.size();
- }
-
- /**
- * Method getTree.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the java.lang.String at the given index
- */
- public java.lang.String getTree(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._treeList.size())
- {
- throw new IndexOutOfBoundsException("getTree: Index value '" + index
- + "' not in range [0.." + (this._treeList.size() - 1) + "]");
- }
-
- return (java.lang.String) _treeList.get(index);
- }
-
- /**
- * Method getTree.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public java.lang.String[] getTree()
- {
- java.lang.String[] array = new java.lang.String[0];
- return (java.lang.String[]) this._treeList.toArray(array);
- }
-
- /**
- * Method getTreeCount.
- *
- * @return the size of this collection
- */
- public int getTreeCount()
- {
- return this._treeList.size();
- }
-
- /**
- * 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 removeAllSequenceSet()
- {
- this._sequenceSetList.clear();
- }
-
- /**
- */
- public void removeAllTree()
- {
- this._treeList.clear();
- }
-
- /**
- * Method removeSequenceSet.
- *
- * @param vSequenceSet
- * @return true if the object was removed from the collection.
- */
- public boolean removeSequenceSet(
- final jalview.schemabinding.version2.SequenceSet vSequenceSet)
- {
- boolean removed = _sequenceSetList.remove(vSequenceSet);
- return removed;
- }
-
- /**
- * Method removeSequenceSetAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.SequenceSet removeSequenceSetAt(
- final int index)
- {
- java.lang.Object obj = this._sequenceSetList.remove(index);
- return (jalview.schemabinding.version2.SequenceSet) obj;
- }
-
- /**
- * Method removeTree.
- *
- * @param vTree
- * @return true if the object was removed from the collection.
- */
- public boolean removeTree(final java.lang.String vTree)
- {
- boolean removed = _treeList.remove(vTree);
- return removed;
- }
-
- /**
- * Method removeTreeAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public java.lang.String removeTreeAt(final int index)
- {
- java.lang.Object obj = this._treeList.remove(index);
- return (java.lang.String) obj;
- }
-
- /**
- *
- *
- * @param index
- * @param vSequenceSet
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setSequenceSet(final int index,
- final jalview.schemabinding.version2.SequenceSet vSequenceSet)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._sequenceSetList.size())
- {
- throw new IndexOutOfBoundsException("setSequenceSet: Index value '"
- + index + "' not in range [0.."
- + (this._sequenceSetList.size() - 1) + "]");
- }
-
- this._sequenceSetList.set(index, vSequenceSet);
- }
-
- /**
- *
- *
- * @param vSequenceSetArray
- */
- public void setSequenceSet(
- final jalview.schemabinding.version2.SequenceSet[] vSequenceSetArray)
- {
- // -- copy array
- _sequenceSetList.clear();
-
- for (int i = 0; i < vSequenceSetArray.length; i++)
- {
- this._sequenceSetList.add(vSequenceSetArray[i]);
- }
- }
-
- /**
- *
- *
- * @param index
- * @param vTree
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setTree(final int index, final java.lang.String vTree)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._treeList.size())
- {
- throw new IndexOutOfBoundsException("setTree: Index value '" + index
- + "' not in range [0.." + (this._treeList.size() - 1) + "]");
- }
-
- this._treeList.set(index, vTree);
- }
-
- /**
- *
- *
- * @param vTreeArray
- */
- public void setTree(final java.lang.String[] vTreeArray)
- {
- // -- copy array
- _treeList.clear();
-
- for (int i = 0; i < vTreeArray.length; i++)
- {
- this._treeList.add(vTreeArray[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.schemabinding.version2.VAMSAS
- */
- public static jalview.schemabinding.version2.VAMSAS unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.VAMSAS) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.VAMSAS.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class VamsasModel.
- *
- * @version $Revision$ $Date$
- */
-public class VamsasModel extends VAMSAS implements java.io.Serializable
-{
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public VamsasModel()
- {
- super();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * 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);
- }
-
- /**
- * 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.schemabinding.version2.VAMSAS
- */
- public static jalview.schemabinding.version2.VAMSAS unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.VAMSAS) Unmarshaller.unmarshal(
- jalview.schemabinding.version2.VamsasModel.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class Viewport.
- *
- * @version $Revision$ $Date$
- */
-public class Viewport implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _conservationSelected.
- */
- private boolean _conservationSelected;
-
- /**
- * keeps track of state for field: _conservationSelected
- */
- private boolean _has_conservationSelected;
-
- /**
- * Field _pidSelected.
- */
- private boolean _pidSelected;
-
- /**
- * keeps track of state for field: _pidSelected
- */
- private boolean _has_pidSelected;
-
- /**
- * Field _bgColour.
- */
- private java.lang.String _bgColour;
-
- /**
- * Field _consThreshold.
- */
- private int _consThreshold;
-
- /**
- * keeps track of state for field: _consThreshold
- */
- private boolean _has_consThreshold;
-
- /**
- * Field _pidThreshold.
- */
- private int _pidThreshold;
-
- /**
- * keeps track of state for field: _pidThreshold
- */
- private boolean _has_pidThreshold;
-
- /**
- * Field _title.
- */
- private java.lang.String _title;
-
- /**
- * Field _showFullId.
- */
- private boolean _showFullId;
-
- /**
- * keeps track of state for field: _showFullId
- */
- private boolean _has_showFullId;
-
- /**
- * Field _rightAlignIds.
- */
- private boolean _rightAlignIds;
-
- /**
- * keeps track of state for field: _rightAlignIds
- */
- private boolean _has_rightAlignIds;
-
- /**
- * Field _showText.
- */
- private boolean _showText;
-
- /**
- * keeps track of state for field: _showText
- */
- private boolean _has_showText;
-
- /**
- * Field _showColourText.
- */
- private boolean _showColourText;
-
- /**
- * keeps track of state for field: _showColourText
- */
- private boolean _has_showColourText;
-
- /**
- * Field _showUnconserved.
- */
- private boolean _showUnconserved = false;
-
- /**
- * keeps track of state for field: _showUnconserved
- */
- private boolean _has_showUnconserved;
-
- /**
- * Field _showBoxes.
- */
- private boolean _showBoxes;
-
- /**
- * keeps track of state for field: _showBoxes
- */
- private boolean _has_showBoxes;
-
- /**
- * Field _wrapAlignment.
- */
- private boolean _wrapAlignment;
-
- /**
- * keeps track of state for field: _wrapAlignment
- */
- private boolean _has_wrapAlignment;
-
- /**
- * Field _renderGaps.
- */
- private boolean _renderGaps;
-
- /**
- * keeps track of state for field: _renderGaps
- */
- private boolean _has_renderGaps;
-
- /**
- * Field _showSequenceFeatures.
- */
- private boolean _showSequenceFeatures;
-
- /**
- * keeps track of state for field: _showSequenceFeatures
- */
- private boolean _has_showSequenceFeatures;
-
- /**
- * Field _showNPfeatureTooltip.
- */
- private boolean _showNPfeatureTooltip;
-
- /**
- * keeps track of state for field: _showNPfeatureTooltip
- */
- private boolean _has_showNPfeatureTooltip;
-
- /**
- * Field _showDbRefTooltip.
- */
- private boolean _showDbRefTooltip;
-
- /**
- * keeps track of state for field: _showDbRefTooltip
- */
- private boolean _has_showDbRefTooltip;
-
- /**
- * Field _followHighlight.
- */
- private boolean _followHighlight = true;
-
- /**
- * keeps track of state for field: _followHighlight
- */
- private boolean _has_followHighlight;
-
- /**
- * Field _followSelection.
- */
- private boolean _followSelection = true;
-
- /**
- * keeps track of state for field: _followSelection
- */
- private boolean _has_followSelection;
-
- /**
- * Field _showAnnotation.
- */
- private boolean _showAnnotation;
-
- /**
- * keeps track of state for field: _showAnnotation
- */
- private boolean _has_showAnnotation;
-
- /**
- * Field _centreColumnLabels.
- */
- private boolean _centreColumnLabels = false;
-
- /**
- * keeps track of state for field: _centreColumnLabels
- */
- private boolean _has_centreColumnLabels;
-
- /**
- * Field _showGroupConservation.
- */
- private boolean _showGroupConservation = false;
-
- /**
- * keeps track of state for field: _showGroupConservation
- */
- private boolean _has_showGroupConservation;
-
- /**
- * Field _showGroupConsensus.
- */
- private boolean _showGroupConsensus = false;
-
- /**
- * keeps track of state for field: _showGroupConsensus
- */
- private boolean _has_showGroupConsensus;
-
- /**
- * Field _showConsensusHistogram.
- */
- private boolean _showConsensusHistogram = true;
-
- /**
- * keeps track of state for field: _showConsensusHistogram
- */
- private boolean _has_showConsensusHistogram;
-
- /**
- * Field _showSequenceLogo.
- */
- private boolean _showSequenceLogo = false;
-
- /**
- * keeps track of state for field: _showSequenceLogo
- */
- private boolean _has_showSequenceLogo;
-
- /**
- * Field _normaliseSequenceLogo.
- */
- private boolean _normaliseSequenceLogo = false;
-
- /**
- * keeps track of state for field: _normaliseSequenceLogo
- */
- private boolean _has_normaliseSequenceLogo;
-
- /**
- * Field _ignoreGapsinConsensus.
- */
- private boolean _ignoreGapsinConsensus = true;
-
- /**
- * keeps track of state for field: _ignoreGapsinConsensus
- */
- private boolean _has_ignoreGapsinConsensus;
-
- /**
- * Field _startRes.
- */
- private int _startRes;
-
- /**
- * keeps track of state for field: _startRes
- */
- private boolean _has_startRes;
-
- /**
- * Field _startSeq.
- */
- private int _startSeq;
-
- /**
- * keeps track of state for field: _startSeq
- */
- private boolean _has_startSeq;
-
- /**
- * Field _fontName.
- */
- private java.lang.String _fontName;
-
- /**
- * Field _fontSize.
- */
- private int _fontSize;
-
- /**
- * keeps track of state for field: _fontSize
- */
- private boolean _has_fontSize;
-
- /**
- * Field _fontStyle.
- */
- private int _fontStyle;
-
- /**
- * keeps track of state for field: _fontStyle
- */
- private boolean _has_fontStyle;
-
- /**
- * Field _scaleProteinAsCdna.
- */
- private boolean _scaleProteinAsCdna = true;
-
- /**
- * keeps track of state for field: _scaleProteinAsCdna
- */
- private boolean _has_scaleProteinAsCdna;
-
- /**
- * Field _viewName.
- */
- private java.lang.String _viewName;
-
- /**
- * Field _sequenceSetId.
- */
- private java.lang.String _sequenceSetId;
-
- /**
- * Field _gatheredViews.
- */
- private boolean _gatheredViews;
-
- /**
- * keeps track of state for field: _gatheredViews
- */
- private boolean _has_gatheredViews;
-
- /**
- * Field _textCol1.
- */
- private int _textCol1;
-
- /**
- * keeps track of state for field: _textCol1
- */
- private boolean _has_textCol1;
-
- /**
- * Field _textCol2.
- */
- private int _textCol2;
-
- /**
- * keeps track of state for field: _textCol2
- */
- private boolean _has_textCol2;
-
- /**
- * Field _textColThreshold.
- */
- private int _textColThreshold;
-
- /**
- * keeps track of state for field: _textColThreshold
- */
- private boolean _has_textColThreshold;
-
- /**
- * unique id used by jalview to synchronize between stored and instantiated
- * views
- *
- */
- private java.lang.String _id;
-
- /**
- * The viewport id of this viewport's (cdna/protein) coding complement, if any
- *
- */
- private java.lang.String _complementId;
-
- /**
- * Field _width.
- */
- private int _width;
-
- /**
- * keeps track of state for field: _width
- */
- private boolean _has_width;
-
- /**
- * Field _height.
- */
- private int _height;
-
- /**
- * keeps track of state for field: _height
- */
- private boolean _has_height;
-
- /**
- * Field _xpos.
- */
- private int _xpos;
-
- /**
- * keeps track of state for field: _xpos
- */
- private boolean _has_xpos;
-
- /**
- * Field _ypos.
- */
- private int _ypos;
-
- /**
- * keeps track of state for field: _ypos
- */
- private boolean _has_ypos;
-
- /**
- * Field _annotationColours.
- */
- private jalview.schemabinding.version2.AnnotationColours _annotationColours;
-
- /**
- * Field _hiddenColumnsList.
- */
- private java.util.Vector _hiddenColumnsList;
-
- /**
- * Field _calcIdParamList.
- */
- private java.util.Vector _calcIdParamList;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public Viewport()
- {
- super();
- this._hiddenColumnsList = new java.util.Vector();
- this._calcIdParamList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vCalcIdParam
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addCalcIdParam(
- final jalview.schemabinding.version2.CalcIdParam vCalcIdParam)
- throws java.lang.IndexOutOfBoundsException
- {
- this._calcIdParamList.addElement(vCalcIdParam);
- }
-
- /**
- *
- *
- * @param index
- * @param vCalcIdParam
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addCalcIdParam(final int index,
- final jalview.schemabinding.version2.CalcIdParam vCalcIdParam)
- throws java.lang.IndexOutOfBoundsException
- {
- this._calcIdParamList.add(index, vCalcIdParam);
- }
-
- /**
- *
- *
- * @param vHiddenColumns
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addHiddenColumns(
- final jalview.schemabinding.version2.HiddenColumns vHiddenColumns)
- throws java.lang.IndexOutOfBoundsException
- {
- this._hiddenColumnsList.addElement(vHiddenColumns);
- }
-
- /**
- *
- *
- * @param index
- * @param vHiddenColumns
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addHiddenColumns(final int index,
- final jalview.schemabinding.version2.HiddenColumns vHiddenColumns)
- throws java.lang.IndexOutOfBoundsException
- {
- this._hiddenColumnsList.add(index, vHiddenColumns);
- }
-
- /**
- */
- public void deleteCentreColumnLabels()
- {
- this._has_centreColumnLabels = false;
- }
-
- /**
- */
- public void deleteConsThreshold()
- {
- this._has_consThreshold = false;
- }
-
- /**
- */
- public void deleteConservationSelected()
- {
- this._has_conservationSelected = false;
- }
-
- /**
- */
- public void deleteFollowHighlight()
- {
- this._has_followHighlight = false;
- }
-
- /**
- */
- public void deleteFollowSelection()
- {
- this._has_followSelection = false;
- }
-
- /**
- */
- public void deleteFontSize()
- {
- this._has_fontSize = false;
- }
-
- /**
- */
- public void deleteFontStyle()
- {
- this._has_fontStyle = false;
- }
-
- /**
- */
- public void deleteGatheredViews()
- {
- this._has_gatheredViews = false;
- }
-
- /**
- */
- public void deleteHeight()
- {
- this._has_height = false;
- }
-
- /**
- */
- public void deleteIgnoreGapsinConsensus()
- {
- this._has_ignoreGapsinConsensus = false;
- }
-
- /**
- */
- public void deleteNormaliseSequenceLogo()
- {
- this._has_normaliseSequenceLogo = false;
- }
-
- /**
- */
- public void deletePidSelected()
- {
- this._has_pidSelected = false;
- }
-
- /**
- */
- public void deletePidThreshold()
- {
- this._has_pidThreshold = false;
- }
-
- /**
- */
- public void deleteRenderGaps()
- {
- this._has_renderGaps = false;
- }
-
- /**
- */
- public void deleteRightAlignIds()
- {
- this._has_rightAlignIds = false;
- }
-
- /**
- */
- public void deleteScaleProteinAsCdna()
- {
- this._has_scaleProteinAsCdna = false;
- }
-
- /**
- */
- public void deleteShowAnnotation()
- {
- this._has_showAnnotation = false;
- }
-
- /**
- */
- public void deleteShowBoxes()
- {
- this._has_showBoxes = false;
- }
-
- /**
- */
- public void deleteShowColourText()
- {
- this._has_showColourText = false;
- }
-
- /**
- */
- public void deleteShowConsensusHistogram()
- {
- this._has_showConsensusHistogram = false;
- }
-
- /**
- */
- public void deleteShowDbRefTooltip()
- {
- this._has_showDbRefTooltip = false;
- }
-
- /**
- */
- public void deleteShowFullId()
- {
- this._has_showFullId = false;
- }
-
- /**
- */
- public void deleteShowGroupConsensus()
- {
- this._has_showGroupConsensus = false;
- }
-
- /**
- */
- public void deleteShowGroupConservation()
- {
- this._has_showGroupConservation = false;
- }
-
- /**
- */
- public void deleteShowNPfeatureTooltip()
- {
- this._has_showNPfeatureTooltip = false;
- }
-
- /**
- */
- public void deleteShowSequenceFeatures()
- {
- this._has_showSequenceFeatures = false;
- }
-
- /**
- */
- public void deleteShowSequenceLogo()
- {
- this._has_showSequenceLogo = false;
- }
-
- /**
- */
- public void deleteShowText()
- {
- this._has_showText = false;
- }
-
- /**
- */
- public void deleteShowUnconserved()
- {
- this._has_showUnconserved = false;
- }
-
- /**
- */
- public void deleteStartRes()
- {
- this._has_startRes = false;
- }
-
- /**
- */
- public void deleteStartSeq()
- {
- this._has_startSeq = false;
- }
-
- /**
- */
- public void deleteTextCol1()
- {
- this._has_textCol1 = false;
- }
-
- /**
- */
- public void deleteTextCol2()
- {
- this._has_textCol2 = false;
- }
-
- /**
- */
- public void deleteTextColThreshold()
- {
- this._has_textColThreshold = false;
- }
-
- /**
- */
- public void deleteWidth()
- {
- this._has_width = false;
- }
-
- /**
- */
- public void deleteWrapAlignment()
- {
- this._has_wrapAlignment = false;
- }
-
- /**
- */
- public void deleteXpos()
- {
- this._has_xpos = false;
- }
-
- /**
- */
- public void deleteYpos()
- {
- this._has_ypos = false;
- }
-
- /**
- * Method enumerateCalcIdParam.
- *
- * @return an Enumeration over all jalview.schemabinding.version2.CalcIdParam
- * elements
- */
- public java.util.Enumeration enumerateCalcIdParam()
- {
- return this._calcIdParamList.elements();
- }
-
- /**
- * Method enumerateHiddenColumns.
- *
- * @return an Enumeration over all
- * jalview.schemabinding.version2.HiddenColumns elements
- */
- public java.util.Enumeration enumerateHiddenColumns()
- {
- return this._hiddenColumnsList.elements();
- }
-
- /**
- * Returns the value of field 'annotationColours'.
- *
- * @return the value of field 'AnnotationColours'.
- */
- public jalview.schemabinding.version2.AnnotationColours getAnnotationColours()
- {
- return this._annotationColours;
- }
-
- /**
- * Returns the value of field 'bgColour'.
- *
- * @return the value of field 'BgColour'.
- */
- public java.lang.String getBgColour()
- {
- return this._bgColour;
- }
-
- /**
- * Method getCalcIdParam.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.CalcIdParam at the
- * given index
- */
- public jalview.schemabinding.version2.CalcIdParam getCalcIdParam(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._calcIdParamList.size())
- {
- throw new IndexOutOfBoundsException("getCalcIdParam: Index value '"
- + index + "' not in range [0.."
- + (this._calcIdParamList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.CalcIdParam) _calcIdParamList
- .get(index);
- }
-
- /**
- * Method getCalcIdParam.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.CalcIdParam[] getCalcIdParam()
- {
- jalview.schemabinding.version2.CalcIdParam[] array = new jalview.schemabinding.version2.CalcIdParam[0];
- return (jalview.schemabinding.version2.CalcIdParam[]) this._calcIdParamList
- .toArray(array);
- }
-
- /**
- * Method getCalcIdParamCount.
- *
- * @return the size of this collection
- */
- public int getCalcIdParamCount()
- {
- return this._calcIdParamList.size();
- }
-
- /**
- * Returns the value of field 'centreColumnLabels'.
- *
- * @return the value of field 'CentreColumnLabels'.
- */
- public boolean getCentreColumnLabels()
- {
- return this._centreColumnLabels;
- }
-
- /**
- * Returns the value of field 'complementId'. The field 'complementId' has the
- * following description: The viewport id of this viewport's (cdna/protein)
- * coding complement, if any
- *
- *
- * @return the value of field 'ComplementId'.
- */
- public java.lang.String getComplementId()
- {
- return this._complementId;
- }
-
- /**
- * Returns the value of field 'consThreshold'.
- *
- * @return the value of field 'ConsThreshold'.
- */
- public int getConsThreshold()
- {
- return this._consThreshold;
- }
-
- /**
- * Returns the value of field 'conservationSelected'.
- *
- * @return the value of field 'ConservationSelected'.
- */
- public boolean getConservationSelected()
- {
- return this._conservationSelected;
- }
-
- /**
- * Returns the value of field 'followHighlight'.
- *
- * @return the value of field 'FollowHighlight'.
- */
- public boolean getFollowHighlight()
- {
- return this._followHighlight;
- }
-
- /**
- * Returns the value of field 'followSelection'.
- *
- * @return the value of field 'FollowSelection'.
- */
- public boolean getFollowSelection()
- {
- return this._followSelection;
- }
-
- /**
- * Returns the value of field 'fontName'.
- *
- * @return the value of field 'FontName'.
- */
- public java.lang.String getFontName()
- {
- return this._fontName;
- }
-
- /**
- * Returns the value of field 'fontSize'.
- *
- * @return the value of field 'FontSize'.
- */
- public int getFontSize()
- {
- return this._fontSize;
- }
-
- /**
- * Returns the value of field 'fontStyle'.
- *
- * @return the value of field 'FontStyle'.
- */
- public int getFontStyle()
- {
- return this._fontStyle;
- }
-
- /**
- * Returns the value of field 'gatheredViews'.
- *
- * @return the value of field 'GatheredViews'.
- */
- public boolean getGatheredViews()
- {
- return this._gatheredViews;
- }
-
- /**
- * Returns the value of field 'height'.
- *
- * @return the value of field 'Height'.
- */
- public int getHeight()
- {
- return this._height;
- }
-
- /**
- * Method getHiddenColumns.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the jalview.schemabinding.version2.HiddenColumns at
- * the given index
- */
- public jalview.schemabinding.version2.HiddenColumns getHiddenColumns(
- final int index) throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._hiddenColumnsList.size())
- {
- throw new IndexOutOfBoundsException("getHiddenColumns: Index value '"
- + index + "' not in range [0.."
- + (this._hiddenColumnsList.size() - 1) + "]");
- }
-
- return (jalview.schemabinding.version2.HiddenColumns) _hiddenColumnsList
- .get(index);
- }
-
- /**
- * Method getHiddenColumns.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public jalview.schemabinding.version2.HiddenColumns[] getHiddenColumns()
- {
- jalview.schemabinding.version2.HiddenColumns[] array = new jalview.schemabinding.version2.HiddenColumns[0];
- return (jalview.schemabinding.version2.HiddenColumns[]) this._hiddenColumnsList
- .toArray(array);
- }
-
- /**
- * Method getHiddenColumnsCount.
- *
- * @return the size of this collection
- */
- public int getHiddenColumnsCount()
- {
- return this._hiddenColumnsList.size();
- }
-
- /**
- * Returns the value of field 'id'. The field 'id' has the following
- * description: unique id used by jalview to synchronize between stored and
- * instantiated views
- *
- *
- * @return the value of field 'Id'.
- */
- public java.lang.String getId()
- {
- return this._id;
- }
-
- /**
- * Returns the value of field 'ignoreGapsinConsensus'.
- *
- * @return the value of field 'IgnoreGapsinConsensus'.
- */
- public boolean getIgnoreGapsinConsensus()
- {
- return this._ignoreGapsinConsensus;
- }
-
- /**
- * Returns the value of field 'normaliseSequenceLogo'.
- *
- * @return the value of field 'NormaliseSequenceLogo'.
- */
- public boolean getNormaliseSequenceLogo()
- {
- return this._normaliseSequenceLogo;
- }
-
- /**
- * Returns the value of field 'pidSelected'.
- *
- * @return the value of field 'PidSelected'.
- */
- public boolean getPidSelected()
- {
- return this._pidSelected;
- }
-
- /**
- * Returns the value of field 'pidThreshold'.
- *
- * @return the value of field 'PidThreshold'.
- */
- public int getPidThreshold()
- {
- return this._pidThreshold;
- }
-
- /**
- * Returns the value of field 'renderGaps'.
- *
- * @return the value of field 'RenderGaps'.
- */
- public boolean getRenderGaps()
- {
- return this._renderGaps;
- }
-
- /**
- * Returns the value of field 'rightAlignIds'.
- *
- * @return the value of field 'RightAlignIds'.
- */
- public boolean getRightAlignIds()
- {
- return this._rightAlignIds;
- }
-
- /**
- * Returns the value of field 'scaleProteinAsCdna'.
- *
- * @return the value of field 'ScaleProteinAsCdna'.
- */
- public boolean getScaleProteinAsCdna()
- {
- return this._scaleProteinAsCdna;
- }
-
- /**
- * Returns the value of field 'sequenceSetId'.
- *
- * @return the value of field 'SequenceSetId'.
- */
- public java.lang.String getSequenceSetId()
- {
- return this._sequenceSetId;
- }
-
- /**
- * Returns the value of field 'showAnnotation'.
- *
- * @return the value of field 'ShowAnnotation'.
- */
- public boolean getShowAnnotation()
- {
- return this._showAnnotation;
- }
-
- /**
- * Returns the value of field 'showBoxes'.
- *
- * @return the value of field 'ShowBoxes'.
- */
- public boolean getShowBoxes()
- {
- return this._showBoxes;
- }
-
- /**
- * Returns the value of field 'showColourText'.
- *
- * @return the value of field 'ShowColourText'.
- */
- public boolean getShowColourText()
- {
- return this._showColourText;
- }
-
- /**
- * Returns the value of field 'showConsensusHistogram'.
- *
- * @return the value of field 'ShowConsensusHistogram'.
- */
- public boolean getShowConsensusHistogram()
- {
- return this._showConsensusHistogram;
- }
-
- /**
- * Returns the value of field 'showDbRefTooltip'.
- *
- * @return the value of field 'ShowDbRefTooltip'.
- */
- public boolean getShowDbRefTooltip()
- {
- return this._showDbRefTooltip;
- }
-
- /**
- * Returns the value of field 'showFullId'.
- *
- * @return the value of field 'ShowFullId'.
- */
- public boolean getShowFullId()
- {
- return this._showFullId;
- }
-
- /**
- * Returns the value of field 'showGroupConsensus'.
- *
- * @return the value of field 'ShowGroupConsensus'.
- */
- public boolean getShowGroupConsensus()
- {
- return this._showGroupConsensus;
- }
-
- /**
- * Returns the value of field 'showGroupConservation'.
- *
- * @return the value of field 'ShowGroupConservation'.
- */
- public boolean getShowGroupConservation()
- {
- return this._showGroupConservation;
- }
-
- /**
- * Returns the value of field 'showNPfeatureTooltip'.
- *
- * @return the value of field 'ShowNPfeatureTooltip'.
- */
- public boolean getShowNPfeatureTooltip()
- {
- return this._showNPfeatureTooltip;
- }
-
- /**
- * Returns the value of field 'showSequenceFeatures'.
- *
- * @return the value of field 'ShowSequenceFeatures'.
- */
- public boolean getShowSequenceFeatures()
- {
- return this._showSequenceFeatures;
- }
-
- /**
- * Returns the value of field 'showSequenceLogo'.
- *
- * @return the value of field 'ShowSequenceLogo'.
- */
- public boolean getShowSequenceLogo()
- {
- return this._showSequenceLogo;
- }
-
- /**
- * Returns the value of field 'showText'.
- *
- * @return the value of field 'ShowText'.
- */
- public boolean getShowText()
- {
- return this._showText;
- }
-
- /**
- * Returns the value of field 'showUnconserved'.
- *
- * @return the value of field 'ShowUnconserved'.
- */
- public boolean getShowUnconserved()
- {
- return this._showUnconserved;
- }
-
- /**
- * Returns the value of field 'startRes'.
- *
- * @return the value of field 'StartRes'.
- */
- public int getStartRes()
- {
- return this._startRes;
- }
-
- /**
- * Returns the value of field 'startSeq'.
- *
- * @return the value of field 'StartSeq'.
- */
- public int getStartSeq()
- {
- return this._startSeq;
- }
-
- /**
- * Returns the value of field 'textCol1'.
- *
- * @return the value of field 'TextCol1'.
- */
- public int getTextCol1()
- {
- return this._textCol1;
- }
-
- /**
- * Returns the value of field 'textCol2'.
- *
- * @return the value of field 'TextCol2'.
- */
- public int getTextCol2()
- {
- return this._textCol2;
- }
-
- /**
- * Returns the value of field 'textColThreshold'.
- *
- * @return the value of field 'TextColThreshold'.
- */
- public int getTextColThreshold()
- {
- return this._textColThreshold;
- }
-
- /**
- * Returns the value of field 'title'.
- *
- * @return the value of field 'Title'.
- */
- public java.lang.String getTitle()
- {
- return this._title;
- }
-
- /**
- * Returns the value of field 'viewName'.
- *
- * @return the value of field 'ViewName'.
- */
- public java.lang.String getViewName()
- {
- return this._viewName;
- }
-
- /**
- * Returns the value of field 'width'.
- *
- * @return the value of field 'Width'.
- */
- public int getWidth()
- {
- return this._width;
- }
-
- /**
- * Returns the value of field 'wrapAlignment'.
- *
- * @return the value of field 'WrapAlignment'.
- */
- public boolean getWrapAlignment()
- {
- return this._wrapAlignment;
- }
-
- /**
- * Returns the value of field 'xpos'.
- *
- * @return the value of field 'Xpos'.
- */
- public int getXpos()
- {
- return this._xpos;
- }
-
- /**
- * Returns the value of field 'ypos'.
- *
- * @return the value of field 'Ypos'.
- */
- public int getYpos()
- {
- return this._ypos;
- }
-
- /**
- * Method hasCentreColumnLabels.
- *
- * @return true if at least one CentreColumnLabels has been adde
- */
- public boolean hasCentreColumnLabels()
- {
- return this._has_centreColumnLabels;
- }
-
- /**
- * Method hasConsThreshold.
- *
- * @return true if at least one ConsThreshold has been added
- */
- public boolean hasConsThreshold()
- {
- return this._has_consThreshold;
- }
-
- /**
- * Method hasConservationSelected.
- *
- * @return true if at least one ConservationSelected has been added
- */
- public boolean hasConservationSelected()
- {
- return this._has_conservationSelected;
- }
-
- /**
- * Method hasFollowHighlight.
- *
- * @return true if at least one FollowHighlight has been added
- */
- public boolean hasFollowHighlight()
- {
- return this._has_followHighlight;
- }
-
- /**
- * Method hasFollowSelection.
- *
- * @return true if at least one FollowSelection has been added
- */
- public boolean hasFollowSelection()
- {
- return this._has_followSelection;
- }
-
- /**
- * Method hasFontSize.
- *
- * @return true if at least one FontSize has been added
- */
- public boolean hasFontSize()
- {
- return this._has_fontSize;
- }
-
- /**
- * Method hasFontStyle.
- *
- * @return true if at least one FontStyle has been added
- */
- public boolean hasFontStyle()
- {
- return this._has_fontStyle;
- }
-
- /**
- * Method hasGatheredViews.
- *
- * @return true if at least one GatheredViews has been added
- */
- public boolean hasGatheredViews()
- {
- return this._has_gatheredViews;
- }
-
- /**
- * Method hasHeight.
- *
- * @return true if at least one Height has been added
- */
- public boolean hasHeight()
- {
- return this._has_height;
- }
-
- /**
- * Method hasIgnoreGapsinConsensus.
- *
- * @return true if at least one IgnoreGapsinConsensus has been added
- */
- public boolean hasIgnoreGapsinConsensus()
- {
- return this._has_ignoreGapsinConsensus;
- }
-
- /**
- * Method hasNormaliseSequenceLogo.
- *
- * @return true if at least one NormaliseSequenceLogo has been added
- */
- public boolean hasNormaliseSequenceLogo()
- {
- return this._has_normaliseSequenceLogo;
- }
-
- /**
- * Method hasPidSelected.
- *
- * @return true if at least one PidSelected has been added
- */
- public boolean hasPidSelected()
- {
- return this._has_pidSelected;
- }
-
- /**
- * Method hasPidThreshold.
- *
- * @return true if at least one PidThreshold has been added
- */
- public boolean hasPidThreshold()
- {
- return this._has_pidThreshold;
- }
-
- /**
- * Method hasRenderGaps.
- *
- * @return true if at least one RenderGaps has been added
- */
- public boolean hasRenderGaps()
- {
- return this._has_renderGaps;
- }
-
- /**
- * Method hasRightAlignIds.
- *
- * @return true if at least one RightAlignIds has been added
- */
- public boolean hasRightAlignIds()
- {
- return this._has_rightAlignIds;
- }
-
- /**
- * Method hasScaleProteinAsCdna.
- *
- * @return true if at least one ScaleProteinAsCdna has been adde
- */
- public boolean hasScaleProteinAsCdna()
- {
- return this._has_scaleProteinAsCdna;
- }
-
- /**
- * Method hasShowAnnotation.
- *
- * @return true if at least one ShowAnnotation has been added
- */
- public boolean hasShowAnnotation()
- {
- return this._has_showAnnotation;
- }
-
- /**
- * Method hasShowBoxes.
- *
- * @return true if at least one ShowBoxes has been added
- */
- public boolean hasShowBoxes()
- {
- return this._has_showBoxes;
- }
-
- /**
- * Method hasShowColourText.
- *
- * @return true if at least one ShowColourText has been added
- */
- public boolean hasShowColourText()
- {
- return this._has_showColourText;
- }
-
- /**
- * Method hasShowConsensusHistogram.
- *
- * @return true if at least one ShowConsensusHistogram has been added
- */
- public boolean hasShowConsensusHistogram()
- {
- return this._has_showConsensusHistogram;
- }
-
- /**
- * Method hasShowDbRefTooltip.
- *
- * @return true if at least one ShowDbRefTooltip has been added
- */
- public boolean hasShowDbRefTooltip()
- {
- return this._has_showDbRefTooltip;
- }
-
- /**
- * Method hasShowFullId.
- *
- * @return true if at least one ShowFullId has been added
- */
- public boolean hasShowFullId()
- {
- return this._has_showFullId;
- }
-
- /**
- * Method hasShowGroupConsensus.
- *
- * @return true if at least one ShowGroupConsensus has been adde
- */
- public boolean hasShowGroupConsensus()
- {
- return this._has_showGroupConsensus;
- }
-
- /**
- * Method hasShowGroupConservation.
- *
- * @return true if at least one ShowGroupConservation has been added
- */
- public boolean hasShowGroupConservation()
- {
- return this._has_showGroupConservation;
- }
-
- /**
- * Method hasShowNPfeatureTooltip.
- *
- * @return true if at least one ShowNPfeatureTooltip has been added
- */
- public boolean hasShowNPfeatureTooltip()
- {
- return this._has_showNPfeatureTooltip;
- }
-
- /**
- * Method hasShowSequenceFeatures.
- *
- * @return true if at least one ShowSequenceFeatures has been added
- */
- public boolean hasShowSequenceFeatures()
- {
- return this._has_showSequenceFeatures;
- }
-
- /**
- * Method hasShowSequenceLogo.
- *
- * @return true if at least one ShowSequenceLogo has been added
- */
- public boolean hasShowSequenceLogo()
- {
- return this._has_showSequenceLogo;
- }
-
- /**
- * Method hasShowText.
- *
- * @return true if at least one ShowText has been added
- */
- public boolean hasShowText()
- {
- return this._has_showText;
- }
-
- /**
- * Method hasShowUnconserved.
- *
- * @return true if at least one ShowUnconserved has been added
- */
- public boolean hasShowUnconserved()
- {
- return this._has_showUnconserved;
- }
-
- /**
- * Method hasStartRes.
- *
- * @return true if at least one StartRes has been added
- */
- public boolean hasStartRes()
- {
- return this._has_startRes;
- }
-
- /**
- * Method hasStartSeq.
- *
- * @return true if at least one StartSeq has been added
- */
- public boolean hasStartSeq()
- {
- return this._has_startSeq;
- }
-
- /**
- * Method hasTextCol1.
- *
- * @return true if at least one TextCol1 has been added
- */
- public boolean hasTextCol1()
- {
- return this._has_textCol1;
- }
-
- /**
- * Method hasTextCol2.
- *
- * @return true if at least one TextCol2 has been added
- */
- public boolean hasTextCol2()
- {
- return this._has_textCol2;
- }
-
- /**
- * Method hasTextColThreshold.
- *
- * @return true if at least one TextColThreshold has been added
- */
- public boolean hasTextColThreshold()
- {
- return this._has_textColThreshold;
- }
-
- /**
- * Method hasWidth.
- *
- * @return true if at least one Width has been added
- */
- public boolean hasWidth()
- {
- return this._has_width;
- }
-
- /**
- * Method hasWrapAlignment.
- *
- * @return true if at least one WrapAlignment has been added
- */
- public boolean hasWrapAlignment()
- {
- return this._has_wrapAlignment;
- }
-
- /**
- * Method hasXpos.
- *
- * @return true if at least one Xpos has been added
- */
- public boolean hasXpos()
- {
- return this._has_xpos;
- }
-
- /**
- * Method hasYpos.
- *
- * @return true if at least one Ypos has been added
- */
- public boolean hasYpos()
- {
- return this._has_ypos;
- }
-
- /**
- * Returns the value of field 'centreColumnLabels'.
- *
- * @return the value of field 'CentreColumnLabels'.
- */
- public boolean isCentreColumnLabels()
- {
- return this._centreColumnLabels;
- }
-
- /**
- * Returns the value of field 'conservationSelected'.
- *
- * @return the value of field 'ConservationSelected'.
- */
- public boolean isConservationSelected()
- {
- return this._conservationSelected;
- }
-
- /**
- * Returns the value of field 'followHighlight'.
- *
- * @return the value of field 'FollowHighlight'.
- */
- public boolean isFollowHighlight()
- {
- return this._followHighlight;
- }
-
- /**
- * Returns the value of field 'followSelection'.
- *
- * @return the value of field 'FollowSelection'.
- */
- public boolean isFollowSelection()
- {
- return this._followSelection;
- }
-
- /**
- * Returns the value of field 'gatheredViews'.
- *
- * @return the value of field 'GatheredViews'.
- */
- public boolean isGatheredViews()
- {
- return this._gatheredViews;
- }
-
- /**
- * Returns the value of field 'ignoreGapsinConsensus'.
- *
- * @return the value of field 'IgnoreGapsinConsensus'.
- */
- public boolean isIgnoreGapsinConsensus()
- {
- return this._ignoreGapsinConsensus;
- }
-
- /**
- * Returns the value of field 'normaliseSequenceLogo'.
- *
- * @return the value of field 'NormaliseSequenceLogo'.
- */
- public boolean isNormaliseSequenceLogo()
- {
- return this._normaliseSequenceLogo;
- }
-
- /**
- * Returns the value of field 'pidSelected'.
- *
- * @return the value of field 'PidSelected'.
- */
- public boolean isPidSelected()
- {
- return this._pidSelected;
- }
-
- /**
- * Returns the value of field 'renderGaps'.
- *
- * @return the value of field 'RenderGaps'.
- */
- public boolean isRenderGaps()
- {
- return this._renderGaps;
- }
-
- /**
- * Returns the value of field 'rightAlignIds'.
- *
- * @return the value of field 'RightAlignIds'.
- */
- public boolean isRightAlignIds()
- {
- return this._rightAlignIds;
- }
-
- /**
- * Returns the value of field 'scaleProteinAsCdna'.
- *
- * @return the value of field 'ScaleProteinAsCdna'.
- */
- public boolean isScaleProteinAsCdna()
- {
- return this._scaleProteinAsCdna;
- }
-
- /**
- * Returns the value of field 'showAnnotation'.
- *
- * @return the value of field 'ShowAnnotation'.
- */
- public boolean isShowAnnotation()
- {
- return this._showAnnotation;
- }
-
- /**
- * Returns the value of field 'showBoxes'.
- *
- * @return the value of field 'ShowBoxes'.
- */
- public boolean isShowBoxes()
- {
- return this._showBoxes;
- }
-
- /**
- * Returns the value of field 'showColourText'.
- *
- * @return the value of field 'ShowColourText'.
- */
- public boolean isShowColourText()
- {
- return this._showColourText;
- }
-
- /**
- * Returns the value of field 'showConsensusHistogram'.
- *
- * @return the value of field 'ShowConsensusHistogram'.
- */
- public boolean isShowConsensusHistogram()
- {
- return this._showConsensusHistogram;
- }
-
- /**
- * Returns the value of field 'showDbRefTooltip'.
- *
- * @return the value of field 'ShowDbRefTooltip'.
- */
- public boolean isShowDbRefTooltip()
- {
- return this._showDbRefTooltip;
- }
-
- /**
- * Returns the value of field 'showFullId'.
- *
- * @return the value of field 'ShowFullId'.
- */
- public boolean isShowFullId()
- {
- return this._showFullId;
- }
-
- /**
- * Returns the value of field 'showGroupConsensus'.
- *
- * @return the value of field 'ShowGroupConsensus'.
- */
- public boolean isShowGroupConsensus()
- {
- return this._showGroupConsensus;
- }
-
- /**
- * Returns the value of field 'showGroupConservation'.
- *
- * @return the value of field 'ShowGroupConservation'.
- */
- public boolean isShowGroupConservation()
- {
- return this._showGroupConservation;
- }
-
- /**
- * Returns the value of field 'showNPfeatureTooltip'.
- *
- * @return the value of field 'ShowNPfeatureTooltip'.
- */
- public boolean isShowNPfeatureTooltip()
- {
- return this._showNPfeatureTooltip;
- }
-
- /**
- * Returns the value of field 'showSequenceFeatures'.
- *
- * @return the value of field 'ShowSequenceFeatures'.
- */
- public boolean isShowSequenceFeatures()
- {
- return this._showSequenceFeatures;
- }
-
- /**
- * Returns the value of field 'showSequenceLogo'.
- *
- * @return the value of field 'ShowSequenceLogo'.
- */
- public boolean isShowSequenceLogo()
- {
- return this._showSequenceLogo;
- }
-
- /**
- * Returns the value of field 'showText'.
- *
- * @return the value of field 'ShowText'.
- */
- public boolean isShowText()
- {
- return this._showText;
- }
-
- /**
- * Returns the value of field 'showUnconserved'.
- *
- * @return the value of field 'ShowUnconserved'.
- */
- public boolean isShowUnconserved()
- {
- return this._showUnconserved;
- }
-
- /**
- * 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;
- }
-
- /**
- * Returns the value of field 'wrapAlignment'.
- *
- * @return the value of field 'WrapAlignment'.
- */
- public boolean isWrapAlignment()
- {
- return this._wrapAlignment;
- }
-
- /**
- *
- *
- * @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 removeAllCalcIdParam()
- {
- this._calcIdParamList.clear();
- }
-
- /**
- */
- public void removeAllHiddenColumns()
- {
- this._hiddenColumnsList.clear();
- }
-
- /**
- * Method removeCalcIdParam.
- *
- * @param vCalcIdParam
- * @return true if the object was removed from the collection.
- */
- public boolean removeCalcIdParam(
- final jalview.schemabinding.version2.CalcIdParam vCalcIdParam)
- {
- boolean removed = _calcIdParamList.remove(vCalcIdParam);
- return removed;
- }
-
- /**
- * Method removeCalcIdParamAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.CalcIdParam removeCalcIdParamAt(
- final int index)
- {
- java.lang.Object obj = this._calcIdParamList.remove(index);
- return (jalview.schemabinding.version2.CalcIdParam) obj;
- }
-
- /**
- * Method removeHiddenColumns.
- *
- * @param vHiddenColumns
- * @return true if the object was removed from the collection.
- */
- public boolean removeHiddenColumns(
- final jalview.schemabinding.version2.HiddenColumns vHiddenColumns)
- {
- boolean removed = _hiddenColumnsList.remove(vHiddenColumns);
- return removed;
- }
-
- /**
- * Method removeHiddenColumnsAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public jalview.schemabinding.version2.HiddenColumns removeHiddenColumnsAt(
- final int index)
- {
- java.lang.Object obj = this._hiddenColumnsList.remove(index);
- return (jalview.schemabinding.version2.HiddenColumns) obj;
- }
-
- /**
- * Sets the value of field 'annotationColours'.
- *
- * @param annotationColours
- * the value of field 'annotationColours'.
- */
- public void setAnnotationColours(
- final jalview.schemabinding.version2.AnnotationColours annotationColours)
- {
- this._annotationColours = annotationColours;
- }
-
- /**
- * Sets the value of field 'bgColour'.
- *
- * @param bgColour
- * the value of field 'bgColour'.
- */
- public void setBgColour(final java.lang.String bgColour)
- {
- this._bgColour = bgColour;
- }
-
- /**
- *
- *
- * @param index
- * @param vCalcIdParam
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setCalcIdParam(final int index,
- final jalview.schemabinding.version2.CalcIdParam vCalcIdParam)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._calcIdParamList.size())
- {
- throw new IndexOutOfBoundsException("setCalcIdParam: Index value '"
- + index + "' not in range [0.."
- + (this._calcIdParamList.size() - 1) + "]");
- }
-
- this._calcIdParamList.set(index, vCalcIdParam);
- }
-
- /**
- *
- *
- * @param vCalcIdParamArray
- */
- public void setCalcIdParam(
- final jalview.schemabinding.version2.CalcIdParam[] vCalcIdParamArray)
- {
- // -- copy array
- _calcIdParamList.clear();
-
- for (int i = 0; i < vCalcIdParamArray.length; i++)
- {
- this._calcIdParamList.add(vCalcIdParamArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'centreColumnLabels'.
- *
- * @param centreColumnLabels
- * the value of field 'centreColumnLabels'.
- */
- public void setCentreColumnLabels(final boolean centreColumnLabels)
- {
- this._centreColumnLabels = centreColumnLabels;
- this._has_centreColumnLabels = true;
- }
-
- /**
- * Sets the value of field 'complementId'. The field 'complementId' has the
- * following description: The viewport id of this viewport's (cdna/protein)
- * coding complement, if any
- *
- *
- * @param complementId
- * the value of field 'complementId'.
- */
- public void setComplementId(final java.lang.String complementId)
- {
- this._complementId = complementId;
- }
-
- /**
- * Sets the value of field 'consThreshold'.
- *
- * @param consThreshold
- * the value of field 'consThreshold'.
- */
- public void setConsThreshold(final int consThreshold)
- {
- this._consThreshold = consThreshold;
- this._has_consThreshold = true;
- }
-
- /**
- * Sets the value of field 'conservationSelected'.
- *
- * @param conservationSelected
- * the value of field 'conservationSelected'.
- */
- public void setConservationSelected(final boolean conservationSelected)
- {
- this._conservationSelected = conservationSelected;
- this._has_conservationSelected = true;
- }
-
- /**
- * Sets the value of field 'followHighlight'.
- *
- * @param followHighlight
- * the value of field 'followHighlight'.
- */
- public void setFollowHighlight(final boolean followHighlight)
- {
- this._followHighlight = followHighlight;
- this._has_followHighlight = true;
- }
-
- /**
- * Sets the value of field 'followSelection'.
- *
- * @param followSelection
- * the value of field 'followSelection'.
- */
- public void setFollowSelection(final boolean followSelection)
- {
- this._followSelection = followSelection;
- this._has_followSelection = true;
- }
-
- /**
- * Sets the value of field 'fontName'.
- *
- * @param fontName
- * the value of field 'fontName'.
- */
- public void setFontName(final java.lang.String fontName)
- {
- this._fontName = fontName;
- }
-
- /**
- * Sets the value of field 'fontSize'.
- *
- * @param fontSize
- * the value of field 'fontSize'.
- */
- public void setFontSize(final int fontSize)
- {
- this._fontSize = fontSize;
- this._has_fontSize = true;
- }
-
- /**
- * Sets the value of field 'fontStyle'.
- *
- * @param fontStyle
- * the value of field 'fontStyle'.
- */
- public void setFontStyle(final int fontStyle)
- {
- this._fontStyle = fontStyle;
- this._has_fontStyle = true;
- }
-
- /**
- * Sets the value of field 'gatheredViews'.
- *
- * @param gatheredViews
- * the value of field 'gatheredViews'.
- */
- public void setGatheredViews(final boolean gatheredViews)
- {
- this._gatheredViews = gatheredViews;
- this._has_gatheredViews = true;
- }
-
- /**
- * Sets the value of field 'height'.
- *
- * @param height
- * the value of field 'height'.
- */
- public void setHeight(final int height)
- {
- this._height = height;
- this._has_height = true;
- }
-
- /**
- *
- *
- * @param index
- * @param vHiddenColumns
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setHiddenColumns(final int index,
- final jalview.schemabinding.version2.HiddenColumns vHiddenColumns)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._hiddenColumnsList.size())
- {
- throw new IndexOutOfBoundsException("setHiddenColumns: Index value '"
- + index + "' not in range [0.."
- + (this._hiddenColumnsList.size() - 1) + "]");
- }
-
- this._hiddenColumnsList.set(index, vHiddenColumns);
- }
-
- /**
- *
- *
- * @param vHiddenColumnsArray
- */
- public void setHiddenColumns(
- final jalview.schemabinding.version2.HiddenColumns[] vHiddenColumnsArray)
- {
- // -- copy array
- _hiddenColumnsList.clear();
-
- for (int i = 0; i < vHiddenColumnsArray.length; i++)
- {
- this._hiddenColumnsList.add(vHiddenColumnsArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'id'. The field 'id' has the following description:
- * unique id used by jalview to synchronize between stored and instantiated
- * views
- *
- *
- * @param id
- * the value of field 'id'.
- */
- public void setId(final java.lang.String id)
- {
- this._id = id;
- }
-
- /**
- * Sets the value of field 'ignoreGapsinConsensus'.
- *
- * @param ignoreGapsinConsensus
- * the value of field 'ignoreGapsinConsensus'.
- */
- public void setIgnoreGapsinConsensus(final boolean ignoreGapsinConsensus)
- {
- this._ignoreGapsinConsensus = ignoreGapsinConsensus;
- this._has_ignoreGapsinConsensus = true;
- }
-
- /**
- * Sets the value of field 'normaliseSequenceLogo'.
- *
- * @param normaliseSequenceLogo
- * the value of field 'normaliseSequenceLogo'.
- */
- public void setNormaliseSequenceLogo(final boolean normaliseSequenceLogo)
- {
- this._normaliseSequenceLogo = normaliseSequenceLogo;
- this._has_normaliseSequenceLogo = true;
- }
-
- /**
- * Sets the value of field 'pidSelected'.
- *
- * @param pidSelected
- * the value of field 'pidSelected'.
- */
- public void setPidSelected(final boolean pidSelected)
- {
- this._pidSelected = pidSelected;
- this._has_pidSelected = true;
- }
-
- /**
- * Sets the value of field 'pidThreshold'.
- *
- * @param pidThreshold
- * the value of field 'pidThreshold'.
- */
- public void setPidThreshold(final int pidThreshold)
- {
- this._pidThreshold = pidThreshold;
- this._has_pidThreshold = true;
- }
-
- /**
- * Sets the value of field 'renderGaps'.
- *
- * @param renderGaps
- * the value of field 'renderGaps'.
- */
- public void setRenderGaps(final boolean renderGaps)
- {
- this._renderGaps = renderGaps;
- this._has_renderGaps = true;
- }
-
- /**
- * Sets the value of field 'rightAlignIds'.
- *
- * @param rightAlignIds
- * the value of field 'rightAlignIds'.
- */
- public void setRightAlignIds(final boolean rightAlignIds)
- {
- this._rightAlignIds = rightAlignIds;
- this._has_rightAlignIds = true;
- }
-
- /**
- * Sets the value of field 'scaleProteinAsCdna'.
- *
- * @param scaleProteinAsCdna
- * the value of field 'scaleProteinAsCdna'.
- */
- public void setScaleProteinAsCdna(final boolean scaleProteinAsCdna)
- {
- this._scaleProteinAsCdna = scaleProteinAsCdna;
- this._has_scaleProteinAsCdna = true;
- }
-
- /**
- * Sets the value of field 'sequenceSetId'.
- *
- * @param sequenceSetId
- * the value of field 'sequenceSetId'.
- */
- public void setSequenceSetId(final java.lang.String sequenceSetId)
- {
- this._sequenceSetId = sequenceSetId;
- }
-
- /**
- * Sets the value of field 'showAnnotation'.
- *
- * @param showAnnotation
- * the value of field 'showAnnotation'.
- */
- public void setShowAnnotation(final boolean showAnnotation)
- {
- this._showAnnotation = showAnnotation;
- this._has_showAnnotation = true;
- }
-
- /**
- * Sets the value of field 'showBoxes'.
- *
- * @param showBoxes
- * the value of field 'showBoxes'.
- */
- public void setShowBoxes(final boolean showBoxes)
- {
- this._showBoxes = showBoxes;
- this._has_showBoxes = true;
- }
-
- /**
- * Sets the value of field 'showColourText'.
- *
- * @param showColourText
- * the value of field 'showColourText'.
- */
- public void setShowColourText(final boolean showColourText)
- {
- this._showColourText = showColourText;
- this._has_showColourText = true;
- }
-
- /**
- * Sets the value of field 'showConsensusHistogram'.
- *
- * @param showConsensusHistogram
- * the value of field 'showConsensusHistogram'.
- */
- public void setShowConsensusHistogram(final boolean showConsensusHistogram)
- {
- this._showConsensusHistogram = showConsensusHistogram;
- this._has_showConsensusHistogram = true;
- }
-
- /**
- * Sets the value of field 'showDbRefTooltip'.
- *
- * @param showDbRefTooltip
- * the value of field 'showDbRefTooltip'
- */
- public void setShowDbRefTooltip(final boolean showDbRefTooltip)
- {
- this._showDbRefTooltip = showDbRefTooltip;
- this._has_showDbRefTooltip = true;
- }
-
- /**
- * Sets the value of field 'showFullId'.
- *
- * @param showFullId
- * the value of field 'showFullId'.
- */
- public void setShowFullId(final boolean showFullId)
- {
- this._showFullId = showFullId;
- this._has_showFullId = true;
- }
-
- /**
- * Sets the value of field 'showGroupConsensus'.
- *
- * @param showGroupConsensus
- * the value of field 'showGroupConsensus'.
- */
- public void setShowGroupConsensus(final boolean showGroupConsensus)
- {
- this._showGroupConsensus = showGroupConsensus;
- this._has_showGroupConsensus = true;
- }
-
- /**
- * Sets the value of field 'showGroupConservation'.
- *
- * @param showGroupConservation
- * the value of field 'showGroupConservation'.
- */
- public void setShowGroupConservation(final boolean showGroupConservation)
- {
- this._showGroupConservation = showGroupConservation;
- this._has_showGroupConservation = true;
- }
-
- /**
- * Sets the value of field 'showNPfeatureTooltip'.
- *
- * @param showNPfeatureTooltip
- * the value of field 'showNPfeatureTooltip'.
- */
- public void setShowNPfeatureTooltip(final boolean showNPfeatureTooltip)
- {
- this._showNPfeatureTooltip = showNPfeatureTooltip;
- this._has_showNPfeatureTooltip = true;
- }
-
- /**
- * Sets the value of field 'showSequenceFeatures'.
- *
- * @param showSequenceFeatures
- * the value of field 'showSequenceFeatures'.
- */
- public void setShowSequenceFeatures(final boolean showSequenceFeatures)
- {
- this._showSequenceFeatures = showSequenceFeatures;
- this._has_showSequenceFeatures = true;
- }
-
- /**
- * Sets the value of field 'showSequenceLogo'.
- *
- * @param showSequenceLogo
- * the value of field 'showSequenceLogo'
- */
- public void setShowSequenceLogo(final boolean showSequenceLogo)
- {
- this._showSequenceLogo = showSequenceLogo;
- this._has_showSequenceLogo = true;
- }
-
- /**
- * Sets the value of field 'showText'.
- *
- * @param showText
- * the value of field 'showText'.
- */
- public void setShowText(final boolean showText)
- {
- this._showText = showText;
- this._has_showText = true;
- }
-
- /**
- * Sets the value of field 'showUnconserved'.
- *
- * @param showUnconserved
- * the value of field 'showUnconserved'.
- */
- public void setShowUnconserved(final boolean showUnconserved)
- {
- this._showUnconserved = showUnconserved;
- this._has_showUnconserved = true;
- }
-
- /**
- * Sets the value of field 'startRes'.
- *
- * @param startRes
- * the value of field 'startRes'.
- */
- public void setStartRes(final int startRes)
- {
- this._startRes = startRes;
- this._has_startRes = true;
- }
-
- /**
- * Sets the value of field 'startSeq'.
- *
- * @param startSeq
- * the value of field 'startSeq'.
- */
- public void setStartSeq(final int startSeq)
- {
- this._startSeq = startSeq;
- this._has_startSeq = true;
- }
-
- /**
- * Sets the value of field 'textCol1'.
- *
- * @param textCol1
- * the value of field 'textCol1'.
- */
- public void setTextCol1(final int textCol1)
- {
- this._textCol1 = textCol1;
- this._has_textCol1 = true;
- }
-
- /**
- * Sets the value of field 'textCol2'.
- *
- * @param textCol2
- * the value of field 'textCol2'.
- */
- public void setTextCol2(final int textCol2)
- {
- this._textCol2 = textCol2;
- this._has_textCol2 = true;
- }
-
- /**
- * Sets the value of field 'textColThreshold'.
- *
- * @param textColThreshold
- * the value of field 'textColThreshold'
- */
- public void setTextColThreshold(final int textColThreshold)
- {
- this._textColThreshold = textColThreshold;
- this._has_textColThreshold = true;
- }
-
- /**
- * Sets the value of field 'title'.
- *
- * @param title
- * the value of field 'title'.
- */
- public void setTitle(final java.lang.String title)
- {
- this._title = title;
- }
-
- /**
- * Sets the value of field 'viewName'.
- *
- * @param viewName
- * the value of field 'viewName'.
- */
- public void setViewName(final java.lang.String viewName)
- {
- this._viewName = viewName;
- }
-
- /**
- * Sets the value of field 'width'.
- *
- * @param width
- * the value of field 'width'.
- */
- public void setWidth(final int width)
- {
- this._width = width;
- this._has_width = true;
- }
-
- /**
- * Sets the value of field 'wrapAlignment'.
- *
- * @param wrapAlignment
- * the value of field 'wrapAlignment'.
- */
- public void setWrapAlignment(final boolean wrapAlignment)
- {
- this._wrapAlignment = wrapAlignment;
- this._has_wrapAlignment = true;
- }
-
- /**
- * Sets the value of field 'xpos'.
- *
- * @param xpos
- * the value of field 'xpos'.
- */
- public void setXpos(final int xpos)
- {
- this._xpos = xpos;
- this._has_xpos = true;
- }
-
- /**
- * Sets the value of field 'ypos'.
- *
- * @param ypos
- * the value of field 'ypos'.
- */
- public void setYpos(final int ypos)
- {
- this._ypos = ypos;
- this._has_ypos = true;
- }
-
- /**
- * 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.schemabinding.version2.Viewport
- */
- public static jalview.schemabinding.version2.Viewport unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.Viewport) Unmarshaller
- .unmarshal(jalview.schemabinding.version2.Viewport.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import org.exolab.castor.xml.Marshaller;
-import org.exolab.castor.xml.Unmarshaller;
-
-/**
- * Class WebServiceParameterSet.
- *
- * @version $Revision$ $Date$
- */
-public class WebServiceParameterSet implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * The short name for the parameter set. This will be shown amongst the other
- * presets for the web service.
- *
- */
- private java.lang.String _name;
-
- /**
- * A Jalview Web Service Parameter Set container version number. Version 1
- * created for storing Jaba user presets.
- *
- */
- private java.lang.String _version;
-
- /**
- * Short description - as utf8 encoded text. This is usually displayed in the
- * body of an HTML capable tooltip, so HTML tags may be embedded using
- * standard UTF8 encoding.
- *
- */
- private java.lang.String _description;
-
- /**
- * URL for which the parameter set is valid. Jalview will use it to match up
- * parameter sets to service instances that can parse the parameter set
- * payload.
- *
- */
- private java.util.Vector _serviceURLList;
-
- /**
- * UTF8 encoded string to be processed into a specific web services' parameter
- * set. Note - newlines may be important to the structure of this file.
- *
- */
- private java.lang.String _parameters;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public WebServiceParameterSet()
- {
- super();
- this._serviceURLList = new java.util.Vector();
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- *
- *
- * @param vServiceURL
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addServiceURL(final java.lang.String vServiceURL)
- throws java.lang.IndexOutOfBoundsException
- {
- this._serviceURLList.addElement(vServiceURL);
- }
-
- /**
- *
- *
- * @param index
- * @param vServiceURL
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void addServiceURL(final int index,
- final java.lang.String vServiceURL)
- throws java.lang.IndexOutOfBoundsException
- {
- this._serviceURLList.add(index, vServiceURL);
- }
-
- /**
- * Method enumerateServiceURL.
- *
- * @return an Enumeration over all java.lang.String elements
- */
- public java.util.Enumeration enumerateServiceURL()
- {
- return this._serviceURLList.elements();
- }
-
- /**
- * Returns the value of field 'description'. The field 'description' has the
- * following description: Short description - as utf8 encoded text. This is
- * usually displayed in the body of an HTML capable tooltip, so HTML tags may
- * be embedded using standard UTF8 encoding.
- *
- *
- * @return the value of field 'Description'.
- */
- public java.lang.String getDescription()
- {
- return this._description;
- }
-
- /**
- * Returns the value of field 'name'. The field 'name' has the following
- * description: The short name for the parameter set. This will be shown
- * amongst the other presets for the web service.
- *
- *
- * @return the value of field 'Name'.
- */
- public java.lang.String getName()
- {
- return this._name;
- }
-
- /**
- * Returns the value of field 'parameters'. The field 'parameters' has the
- * following description: UTF8 encoded string to be processed into a specific
- * web services' parameter set. Note - newlines may be important to the
- * structure of this file.
- *
- *
- * @return the value of field 'Parameters'.
- */
- public java.lang.String getParameters()
- {
- return this._parameters;
- }
-
- /**
- * Method getServiceURL.
- *
- * @param index
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- * @return the value of the java.lang.String at the given index
- */
- public java.lang.String getServiceURL(final int index)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._serviceURLList.size())
- {
- throw new IndexOutOfBoundsException("getServiceURL: Index value '"
- + index + "' not in range [0.."
- + (this._serviceURLList.size() - 1) + "]");
- }
-
- return (java.lang.String) _serviceURLList.get(index);
- }
-
- /**
- * Method getServiceURL.Returns the contents of the collection in an Array.
- * <p>
- * 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
- * <i>know</i> that the Array returned is of exactly the correct length.
- *
- * @return this collection as an Array
- */
- public java.lang.String[] getServiceURL()
- {
- java.lang.String[] array = new java.lang.String[0];
- return (java.lang.String[]) this._serviceURLList.toArray(array);
- }
-
- /**
- * Method getServiceURLCount.
- *
- * @return the size of this collection
- */
- public int getServiceURLCount()
- {
- return this._serviceURLList.size();
- }
-
- /**
- * Returns the value of field 'version'. The field 'version' has the following
- * description: A Jalview Web Service Parameter Set container version number.
- * Version 1 created for storing Jaba user presets.
- *
- *
- * @return the value of field 'Version'.
- */
- public java.lang.String getVersion()
- {
- return this._version;
- }
-
- /**
- * 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 removeAllServiceURL()
- {
- this._serviceURLList.clear();
- }
-
- /**
- * Method removeServiceURL.
- *
- * @param vServiceURL
- * @return true if the object was removed from the collection.
- */
- public boolean removeServiceURL(final java.lang.String vServiceURL)
- {
- boolean removed = _serviceURLList.remove(vServiceURL);
- return removed;
- }
-
- /**
- * Method removeServiceURLAt.
- *
- * @param index
- * @return the element removed from the collection
- */
- public java.lang.String removeServiceURLAt(final int index)
- {
- java.lang.Object obj = this._serviceURLList.remove(index);
- return (java.lang.String) obj;
- }
-
- /**
- * Sets the value of field 'description'. The field 'description' has the
- * following description: Short description - as utf8 encoded text. This is
- * usually displayed in the body of an HTML capable tooltip, so HTML tags may
- * be embedded using standard UTF8 encoding.
- *
- *
- * @param description
- * the value of field 'description'.
- */
- public void setDescription(final java.lang.String description)
- {
- this._description = description;
- }
-
- /**
- * Sets the value of field 'name'. The field 'name' has the following
- * description: The short name for the parameter set. This will be shown
- * amongst the other presets for the web service.
- *
- *
- * @param name
- * the value of field 'name'.
- */
- public void setName(final java.lang.String name)
- {
- this._name = name;
- }
-
- /**
- * Sets the value of field 'parameters'. The field 'parameters' has the
- * following description: UTF8 encoded string to be processed into a specific
- * web services' parameter set. Note - newlines may be important to the
- * structure of this file.
- *
- *
- * @param parameters
- * the value of field 'parameters'.
- */
- public void setParameters(final java.lang.String parameters)
- {
- this._parameters = parameters;
- }
-
- /**
- *
- *
- * @param index
- * @param vServiceURL
- * @throws java.lang.IndexOutOfBoundsException
- * if the index given is outside the bounds of the collection
- */
- public void setServiceURL(final int index,
- final java.lang.String vServiceURL)
- throws java.lang.IndexOutOfBoundsException
- {
- // check bounds for index
- if (index < 0 || index >= this._serviceURLList.size())
- {
- throw new IndexOutOfBoundsException("setServiceURL: Index value '"
- + index + "' not in range [0.."
- + (this._serviceURLList.size() - 1) + "]");
- }
-
- this._serviceURLList.set(index, vServiceURL);
- }
-
- /**
- *
- *
- * @param vServiceURLArray
- */
- public void setServiceURL(final java.lang.String[] vServiceURLArray)
- {
- // -- copy array
- _serviceURLList.clear();
-
- for (int i = 0; i < vServiceURLArray.length; i++)
- {
- this._serviceURLList.add(vServiceURLArray[i]);
- }
- }
-
- /**
- * Sets the value of field 'version'. The field 'version' has the following
- * description: A Jalview Web Service Parameter Set container version number.
- * Version 1 created for storing Jaba user presets.
- *
- *
- * @param version
- * the value of field 'version'.
- */
- public void setVersion(final java.lang.String version)
- {
- this._version = version;
- }
-
- /**
- * 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.schemabinding.version2.WebServiceParameterSet
- */
- public static jalview.schemabinding.version2.WebServiceParameterSet unmarshal(
- final java.io.Reader reader)
- throws org.exolab.castor.xml.MarshalException,
- org.exolab.castor.xml.ValidationException
- {
- return (jalview.schemabinding.version2.WebServiceParameterSet) Unmarshaller
- .unmarshal(
- jalview.schemabinding.version2.WebServiceParameterSet.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);
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.AlcodMap;
-
-/**
- * Class AlcodMapDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class AlcodMapDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AlcodMapDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "alcodMap";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _dnasq
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_dnasq", "dnasq",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AlcodMap target = (AlcodMap) object;
- return target.getDnasq();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AlcodMap target = (AlcodMap) object;
- target.setDnasq((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _dnasq
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _mapping
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Mapping.class, "_mapping",
- "Mapping", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AlcodMap target = (AlcodMap) object;
- return target.getMapping();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AlcodMap target = (AlcodMap) object;
- target.setMapping((jalview.schemabinding.version2.Mapping) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Mapping();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _mapping
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.AlcodMap.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Alcodon;
-
-/**
- * Class AlcodonDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class AlcodonDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AlcodonDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "alcodon";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _pos1
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Long.TYPE, "_pos1", "pos1",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Alcodon target = (Alcodon) object;
- if (!target.hasPos1())
- {
- return null;
- }
- return new java.lang.Long(target.getPos1());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Alcodon target = (Alcodon) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deletePos1();
- return;
- }
- target.setPos1(((java.lang.Long) value).longValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _pos1
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.LongValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.LongValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _pos2
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Long.TYPE, "_pos2", "pos2",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Alcodon target = (Alcodon) object;
- if (!target.hasPos2())
- {
- return null;
- }
- return new java.lang.Long(target.getPos2());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Alcodon target = (Alcodon) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deletePos2();
- return;
- }
- target.setPos2(((java.lang.Long) value).longValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _pos2
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.LongValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.LongValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _pos3
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Long.TYPE, "_pos3", "pos3",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Alcodon target = (Alcodon) object;
- if (!target.hasPos3())
- {
- return null;
- }
- return new java.lang.Long(target.getPos3());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Alcodon target = (Alcodon) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deletePos3();
- return;
- }
- target.setPos3(((java.lang.Long) value).longValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _pos3
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.LongValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.LongValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Alcodon.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.AlcodonFrame;
-
-/**
- * Class AlcodonFrameDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class AlcodonFrameDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AlcodonFrameDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "AlcodonFrame";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _alcodonList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Alcodon.class, "_alcodonList",
- "alcodon", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AlcodonFrame target = (AlcodonFrame) object;
- return target.getAlcodon();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AlcodonFrame target = (AlcodonFrame) object;
- target.addAlcodon((jalview.schemabinding.version2.Alcodon) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- AlcodonFrame target = (AlcodonFrame) object;
- target.removeAllAlcodon();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Alcodon();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _alcodonList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _alcodMapList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.AlcodMap.class, "_alcodMapList",
- "alcodMap", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AlcodonFrame target = (AlcodonFrame) object;
- return target.getAlcodMap();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AlcodonFrame target = (AlcodonFrame) object;
- target.addAlcodMap((jalview.schemabinding.version2.AlcodMap) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- AlcodonFrame target = (AlcodonFrame) object;
- target.removeAllAlcodMap();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.AlcodMap();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _alcodMapList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.AlcodonFrame.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.AnnotationColourScheme;
-
-/**
- * Class AnnotationColourSchemeDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class AnnotationColourSchemeDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AnnotationColourSchemeDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "AnnotationColourScheme";
- _elementDefinition = false;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _aboveThreshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_aboveThreshold", "aboveThreshold",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- if (!target.hasAboveThreshold())
- {
- return null;
- }
- return new java.lang.Integer(target.getAboveThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteAboveThreshold();
- return;
- }
- target.setAboveThreshold(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _aboveThreshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _annotation
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_annotation", "annotation",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- return target.getAnnotation();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- target.setAnnotation((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _annotation
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _minColour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_minColour", "minColour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- if (!target.hasMinColour())
- {
- return null;
- }
- return new java.lang.Integer(target.getMinColour());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteMinColour();
- return;
- }
- target.setMinColour(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _minColour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _maxColour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_maxColour", "maxColour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- if (!target.hasMaxColour())
- {
- return null;
- }
- return new java.lang.Integer(target.getMaxColour());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteMaxColour();
- return;
- }
- target.setMaxColour(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _maxColour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _colourScheme
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_colourScheme", "colourScheme",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- return target.getColourScheme();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- target.setColourScheme((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colourScheme
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _threshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_threshold", "threshold",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- if (!target.hasThreshold())
- {
- return null;
- }
- return new java.lang.Float(target.getThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteThreshold();
- return;
- }
- target.setThreshold(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _threshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _perSequence
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_perSequence", "perSequence",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- if (!target.hasPerSequence())
- {
- return null;
- }
- return (target.getPerSequence() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deletePerSequence();
- return;
- }
- target.setPerSequence(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _perSequence
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _predefinedColours
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_predefinedColours",
- "predefinedColours", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- if (!target.hasPredefinedColours())
- {
- return null;
- }
- return (target.getPredefinedColours() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationColourScheme target = (AnnotationColourScheme) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deletePredefinedColours();
- return;
- }
- target.setPredefinedColours(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _predefinedColours
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.AnnotationColourScheme.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.AnnotationColours;
-
-/**
- * Class AnnotationColoursDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class AnnotationColoursDescriptor
- extends
- jalview.schemabinding.version2.descriptors.AnnotationColourSchemeDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AnnotationColoursDescriptor()
- {
- super();
- setExtendsWithoutFlatten(new jalview.schemabinding.version2.descriptors.AnnotationColourSchemeDescriptor());
- _nsURI = "www.jalview.org";
- _xmlName = "AnnotationColours";
- _elementDefinition = true;
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.AnnotationColours.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Annotation;
-
-/**
- * Class AnnotationDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class AnnotationDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AnnotationDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "Annotation";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _graph
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_graph", "graph",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasGraph())
- {
- return null;
- }
- return (target.getGraph() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setGraph(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _graph
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _graphType
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_graphType", "graphType",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasGraphType())
- {
- return null;
- }
- return new java.lang.Integer(target.getGraphType());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteGraphType();
- return;
- }
- target.setGraphType(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _graphType
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _sequenceRef
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_sequenceRef", "sequenceRef",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- return target.getSequenceRef();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.setSequenceRef((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _sequenceRef
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _groupRef
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_groupRef", "groupRef",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- return target.getGroupRef();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.setGroupRef((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _groupRef
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _graphColour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_graphColour", "graphColour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasGraphColour())
- {
- return null;
- }
- return new java.lang.Integer(target.getGraphColour());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteGraphColour();
- return;
- }
- target.setGraphColour(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _graphColour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _graphGroup
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_graphGroup", "graphGroup",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasGraphGroup())
- {
- return null;
- }
- return new java.lang.Integer(target.getGraphGroup());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteGraphGroup();
- return;
- }
- target.setGraphGroup(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _graphGroup
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _graphHeight
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_graphHeight", "graphHeight",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasGraphHeight())
- {
- return null;
- }
- return new java.lang.Integer(target.getGraphHeight());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteGraphHeight();
- return;
- }
- target.setGraphHeight(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _graphHeight
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _id
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_id", "id",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- return target.getId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.setId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _id
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _scoreOnly
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_scoreOnly", "scoreOnly",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasScoreOnly())
- {
- return null;
- }
- return (target.getScoreOnly() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteScoreOnly();
- return;
- }
- target.setScoreOnly(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _scoreOnly
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _score
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Double.TYPE, "_score", "score",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasScore())
- {
- return null;
- }
- return new java.lang.Double(target.getScore());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteScore();
- return;
- }
- target.setScore(((java.lang.Double) value).doubleValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _score
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.DoubleValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.DoubleValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-1.7976931348623157E308);
- typeValidator.setMaxInclusive(1.7976931348623157E308);
- }
- desc.setValidator(fieldValidator);
- // -- _visible
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_visible", "visible",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasVisible())
- {
- return null;
- }
- return (target.getVisible() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteVisible();
- return;
- }
- target.setVisible(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _visible
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _centreColLabels
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_centreColLabels", "centreColLabels",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasCentreColLabels())
- {
- return null;
- }
- return (target.getCentreColLabels() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteCentreColLabels();
- return;
- }
- target.setCentreColLabels(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _centreColLabels
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _scaleColLabels
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_scaleColLabels", "scaleColLabels",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasScaleColLabels())
- {
- return null;
- }
- return (target.getScaleColLabels() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteScaleColLabels();
- return;
- }
- target.setScaleColLabels(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _scaleColLabels
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showAllColLabels
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showAllColLabels",
- "showAllColLabels", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasShowAllColLabels())
- {
- return null;
- }
- return (target.getShowAllColLabels() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowAllColLabels();
- return;
- }
- target.setShowAllColLabels(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showAllColLabels
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _autoCalculated
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_autoCalculated", "autoCalculated",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasAutoCalculated())
- {
- return null;
- }
- return (target.getAutoCalculated() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteAutoCalculated();
- return;
- }
- target.setAutoCalculated(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _autoCalculated
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _belowAlignment
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_belowAlignment", "belowAlignment",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- if (!target.hasBelowAlignment())
- {
- return null;
- }
- return (target.getBelowAlignment() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteBelowAlignment();
- return;
- }
- target.setBelowAlignment(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _belowAlignment
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _calcId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_calcId", "calcId",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- return target.getCalcId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.setCalcId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _calcId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _annotationElementList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.AnnotationElement.class,
- "_annotationElementList", "annotationElement",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- return target.getAnnotationElement();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.addAnnotationElement((jalview.schemabinding.version2.AnnotationElement) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.removeAllAnnotationElement();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.AnnotationElement();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _annotationElementList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _label
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_label", "label",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- return target.getLabel();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.setLabel((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _label
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _description
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_description", "description",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- return target.getDescription();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.setDescription((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _description
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _thresholdLine
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.ThresholdLine.class,
- "_thresholdLine", "thresholdLine",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- return target.getThresholdLine();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.setThresholdLine((jalview.schemabinding.version2.ThresholdLine) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.ThresholdLine();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _thresholdLine
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _propertyList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Property.class, "_propertyList",
- "property", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Annotation target = (Annotation) object;
- return target.getProperty();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.addProperty((jalview.schemabinding.version2.Property) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- Annotation target = (Annotation) object;
- target.removeAllProperty();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Property();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _propertyList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Annotation.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.AnnotationElement;
-
-/**
- * Class AnnotationElementDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class AnnotationElementDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public AnnotationElementDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "annotationElement";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _position
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_position", "position",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationElement target = (AnnotationElement) object;
- if (!target.hasPosition())
- {
- return null;
- }
- return new java.lang.Integer(target.getPosition());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationElement target = (AnnotationElement) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setPosition(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _position
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _colour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_colour", "colour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationElement target = (AnnotationElement) object;
- if (!target.hasColour())
- {
- return null;
- }
- return new java.lang.Integer(target.getColour());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationElement target = (AnnotationElement) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteColour();
- return;
- }
- target.setColour(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _displayCharacter
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_displayCharacter",
- "displayCharacter", org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationElement target = (AnnotationElement) object;
- return target.getDisplayCharacter();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationElement target = (AnnotationElement) object;
- target.setDisplayCharacter((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _displayCharacter
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _description
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_description", "description",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationElement target = (AnnotationElement) object;
- return target.getDescription();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationElement target = (AnnotationElement) object;
- target.setDescription((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _description
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _secondaryStructure
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_secondaryStructure",
- "secondaryStructure", org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationElement target = (AnnotationElement) object;
- return target.getSecondaryStructure();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationElement target = (AnnotationElement) object;
- target.setSecondaryStructure((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _secondaryStructure
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- typeValidator.setLength(1);
- }
- desc.setValidator(fieldValidator);
- // -- _value
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_value", "value",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- AnnotationElement target = (AnnotationElement) object;
- if (!target.hasValue())
- {
- return null;
- }
- return new java.lang.Float(target.getValue());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- AnnotationElement target = (AnnotationElement) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteValue();
- return;
- }
- target.setValue(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _value
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.AnnotationElement.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.CalcIdParam;
-
-/**
- * Class CalcIdParamDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class CalcIdParamDescriptor
- extends
- jalview.schemabinding.version2.descriptors.WebServiceParameterSetDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public CalcIdParamDescriptor()
- {
- super();
- setExtendsWithoutFlatten(new jalview.schemabinding.version2.descriptors.WebServiceParameterSetDescriptor());
- _nsURI = "www.jalview.org";
- _xmlName = "calcIdParam";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _calcId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_calcId", "calcId",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- CalcIdParam target = (CalcIdParam) object;
- return target.getCalcId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- CalcIdParam target = (CalcIdParam) object;
- target.setCalcId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _calcId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _needsUpdate
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_needsUpdate", "needsUpdate",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- CalcIdParam target = (CalcIdParam) object;
- if (!target.hasNeedsUpdate())
- {
- return null;
- }
- return (target.getNeedsUpdate() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- CalcIdParam target = (CalcIdParam) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteNeedsUpdate();
- return;
- }
- target.setNeedsUpdate(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _needsUpdate
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _autoUpdate
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_autoUpdate", "autoUpdate",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- CalcIdParam target = (CalcIdParam) object;
- if (!target.hasAutoUpdate())
- {
- return null;
- }
- return (target.getAutoUpdate() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- CalcIdParam target = (CalcIdParam) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setAutoUpdate(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _autoUpdate
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.CalcIdParam.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Colour;
-
-/**
- * Class ColourDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class ColourDescriptor
- extends org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public ColourDescriptor()
- {
- super();
- _xmlName = "colour";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _name
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_name", "Name",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- return target.getName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- target.setName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _name
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _RGB
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_RGB", "RGB",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- return target.getRGB();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- target.setRGB((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _RGB
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _minRGB
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_minRGB", "minRGB",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- return target.getMinRGB();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- target.setMinRGB((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _minRGB
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _noValueColour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.types.NoValueColour.class,
- "_noValueColour", "noValueColour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- return target.getNoValueColour();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- target.setNoValueColour(
- (jalview.schemabinding.version2.types.NoValueColour) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(
- jalview.schemabinding.version2.types.NoValueColour.class,
- handler);
- desc.setImmutable(true);
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _noValueColour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _threshType
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.types.ColourThreshTypeType.class,
- "_threshType", "threshType",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- return target.getThreshType();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- target.setThreshType(
- (jalview.schemabinding.version2.types.ColourThreshTypeType) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(
- jalview.schemabinding.version2.types.ColourThreshTypeType.class,
- handler);
- desc.setImmutable(true);
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _threshType
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _threshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_threshold", "threshold",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- if (!target.hasThreshold())
- {
- return null;
- }
- return new java.lang.Float(target.getThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteThreshold();
- return;
- }
- target.setThreshold(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _threshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _max
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_max", "max",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- if (!target.hasMax())
- {
- return null;
- }
- return new java.lang.Float(target.getMax());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteMax();
- return;
- }
- target.setMax(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _max
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _min
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_min", "min",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- if (!target.hasMin())
- {
- return null;
- }
- return new java.lang.Float(target.getMin());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteMin();
- return;
- }
- target.setMin(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _min
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _colourByLabel
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_colourByLabel", "colourByLabel",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- if (!target.hasColourByLabel())
- {
- return null;
- }
- return (target.getColourByLabel() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteColourByLabel();
- return;
- }
- target.setColourByLabel(
- ((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colourByLabel
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _autoScale
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_autoScale", "autoScale",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- if (!target.hasAutoScale())
- {
- return null;
- }
- return (target.getAutoScale() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteAutoScale();
- return;
- }
- target.setAutoScale(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _autoScale
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _attributeNameList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_attributeNameList", "attributeName",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Colour target = (Colour) object;
- return target.getAttributeName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- target.addAttributeName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Colour target = (Colour) object;
- target.removeAllAttributeName();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _attributeNameList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- fieldValidator.setMaxOccurs(2);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Colour.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.CompoundMatcher;
-
-/**
- * Class CompoundMatcherDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class CompoundMatcherDescriptor
- extends org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public CompoundMatcherDescriptor()
- {
- super();
- _xmlName = "compoundMatcher";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _and
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_and", "and",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- CompoundMatcher target = (CompoundMatcher) object;
- if (!target.hasAnd())
- {
- return null;
- }
- return (target.getAnd() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- CompoundMatcher target = (CompoundMatcher) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setAnd(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _and
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _matcherSetList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.MatcherSet.class,
- "_matcherSetList", "matcherSet",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- CompoundMatcher target = (CompoundMatcher) object;
- return target.getMatcherSet();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- CompoundMatcher target = (CompoundMatcher) object;
- target.addMatcherSet(
- (jalview.schemabinding.version2.MatcherSet) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- CompoundMatcher target = (CompoundMatcher) object;
- target.removeAllMatcherSet();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.MatcherSet();
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _matcherSetList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(2);
- fieldValidator.setMaxOccurs(2);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.CompoundMatcher.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.DBRef;
-
-/**
- * Class DBRefDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class DBRefDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public DBRefDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "DBRef";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _source
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_source", "source",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- DBRef target = (DBRef) object;
- return target.getSource();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- DBRef target = (DBRef) object;
- target.setSource((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _source
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _version
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_version", "version",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- DBRef target = (DBRef) object;
- return target.getVersion();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- DBRef target = (DBRef) object;
- target.setVersion((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _version
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _accessionId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_accessionId", "accessionId",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- DBRef target = (DBRef) object;
- return target.getAccessionId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- DBRef target = (DBRef) object;
- target.setAccessionId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _accessionId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _mapping
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Mapping.class, "_mapping",
- "Mapping", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- DBRef target = (DBRef) object;
- return target.getMapping();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- DBRef target = (DBRef) object;
- target.setMapping((jalview.schemabinding.version2.Mapping) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Mapping();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _mapping
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.DBRef.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Feature;
-
-/**
- * Class FeatureDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "feature";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _begin
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_begin", "begin",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Feature target = (Feature) object;
- if (!target.hasBegin())
- {
- return null;
- }
- return new java.lang.Integer(target.getBegin());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Feature target = (Feature) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setBegin(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _begin
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _end
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_end", "end",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Feature target = (Feature) object;
- if (!target.hasEnd())
- {
- return null;
- }
- return new java.lang.Integer(target.getEnd());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Feature target = (Feature) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setEnd(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _end
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _type
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_type", "type",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Feature target = (Feature) object;
- return target.getType();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Feature target = (Feature) object;
- target.setType((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _type
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _description
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_description", "description",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Feature target = (Feature) object;
- return target.getDescription();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Feature target = (Feature) object;
- target.setDescription((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _description
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _status
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_status", "status",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Feature target = (Feature) object;
- return target.getStatus();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Feature target = (Feature) object;
- target.setStatus((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _status
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _featureGroup
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_featureGroup", "featureGroup",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Feature target = (Feature) object;
- return target.getFeatureGroup();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Feature target = (Feature) object;
- target.setFeatureGroup((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _featureGroup
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _score
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_score", "score",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Feature target = (Feature) object;
- if (!target.hasScore())
- {
- return null;
- }
- return new java.lang.Float(target.getScore());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Feature target = (Feature) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteScore();
- return;
- }
- target.setScore(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _score
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _otherDataList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.OtherData.class,
- "_otherDataList", "otherData",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Feature target = (Feature) object;
- return target.getOtherData();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Feature target = (Feature) object;
- target.addOtherData((jalview.schemabinding.version2.OtherData) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- Feature target = (Feature) object;
- target.removeAllOtherData();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.OtherData();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _otherDataList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Feature.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.FeatureMatcher;
-
-/**
- * Class FeatureMatcherDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureMatcherDescriptor
- extends org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureMatcherDescriptor()
- {
- super();
- _nsURI = "www.jalview.org/colours";
- _xmlName = "FeatureMatcher";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _by
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.types.FeatureMatcherByType.class,
- "_by", "by", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- FeatureMatcher target = (FeatureMatcher) object;
- return target.getBy();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- FeatureMatcher target = (FeatureMatcher) object;
- target.setBy(
- (jalview.schemabinding.version2.types.FeatureMatcherByType) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(
- jalview.schemabinding.version2.types.FeatureMatcherByType.class,
- handler);
- desc.setImmutable(true);
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _by
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _attributeNameList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_attributeNameList", "attributeName",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- FeatureMatcher target = (FeatureMatcher) object;
- return target.getAttributeName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- FeatureMatcher target = (FeatureMatcher) object;
- target.addAttributeName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- FeatureMatcher target = (FeatureMatcher) object;
- target.removeAllAttributeName();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _attributeNameList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- fieldValidator.setMaxOccurs(2);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _condition
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_condition", "condition",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- FeatureMatcher target = (FeatureMatcher) object;
- return target.getCondition();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- FeatureMatcher target = (FeatureMatcher) object;
- target.setCondition((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _condition
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _value
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_value", "value",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- FeatureMatcher target = (FeatureMatcher) object;
- return target.getValue();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- FeatureMatcher target = (FeatureMatcher) object;
- target.setValue((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _value
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.FeatureMatcher.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-import jalview.schemabinding.version2.CompoundMatcher;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.FeatureMatcherSet;
-import jalview.schemabinding.version2.MatchCondition;
-
-/**
- * Class FeatureMatcherSetDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureMatcherSetDescriptor
- extends org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureMatcherSetDescriptor()
- {
- super();
- _nsURI = "www.jalview.org/colours";
- _xmlName = "FeatureMatcherSet";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsChoice();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _matchCondition
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- MatchCondition.class, "_matchCondition", "matchCondition",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- @Override
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- FeatureMatcherSet target = (FeatureMatcherSet) object;
- return target.getMatchCondition();
- }
-
- @Override
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- FeatureMatcherSet target = (FeatureMatcherSet) object;
- target.setMatchCondition((MatchCondition) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- @Override
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new MatchCondition();
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _matchCondition
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _compoundMatcher
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- CompoundMatcher.class, "_compoundMatcher", "compoundMatcher",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- @Override
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- FeatureMatcherSet target = (FeatureMatcherSet) object;
- return target.getCompoundMatcher();
- }
-
- @Override
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- FeatureMatcherSet target = (FeatureMatcherSet) object;
- target.setCompoundMatcher((CompoundMatcher) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- @Override
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new CompoundMatcher();
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _compoundMatcher
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- @Override
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- @Override
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- @Override
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.FeatureMatcherSet.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- @Override
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- @Override
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- @Override
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- @Override
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- @Override
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.FeatureSettings;
-
-/**
- * Class FeatureSettingsDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureSettingsDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeatureSettingsDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "FeatureSettings";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _settingList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Setting.class, "_settingList",
- "setting", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- FeatureSettings target = (FeatureSettings) object;
- return target.getSetting();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- FeatureSettings target = (FeatureSettings) object;
- target.addSetting((jalview.schemabinding.version2.Setting) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- FeatureSettings target = (FeatureSettings) object;
- target.removeAllSetting();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Setting();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _settingList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _groupList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Group.class, "_groupList",
- "group", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- FeatureSettings target = (FeatureSettings) object;
- return target.getGroup();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- FeatureSettings target = (FeatureSettings) object;
- target.addGroup((jalview.schemabinding.version2.Group) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- FeatureSettings target = (FeatureSettings) object;
- target.removeAllGroup();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Group();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _groupList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.FeatureSettings.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Features;
-
-/**
- * Class FeaturesDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class FeaturesDescriptor extends
- jalview.schemabinding.version2.descriptors.FeatureDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FeaturesDescriptor()
- {
- super();
- setExtendsWithoutFlatten(new jalview.schemabinding.version2.descriptors.FeatureDescriptor());
- _nsURI = "www.jalview.org";
- _xmlName = "features";
- _elementDefinition = true;
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Features.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Filter;
-
-/**
- * Class FilterDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class FilterDescriptor
- extends org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public FilterDescriptor()
- {
- super();
- _xmlName = "filter";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _featureType
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_featureType", "featureType",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Filter target = (Filter) object;
- return target.getFeatureType();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Filter target = (Filter) object;
- target.setFeatureType((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _featureType
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _matcherSet
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.MatcherSet.class, "_matcherSet",
- "matcherSet", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Filter target = (Filter) object;
- return target.getMatcherSet();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Filter target = (Filter) object;
- target.setMatcherSet(
- (jalview.schemabinding.version2.MatcherSet) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.MatcherSet();
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _matcherSet
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Filter.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Group;
-
-/**
- * Class GroupDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class GroupDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public GroupDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "group";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _name
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_name", "name",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Group target = (Group) object;
- return target.getName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Group target = (Group) object;
- target.setName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _name
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _display
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_display", "display",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Group target = (Group) object;
- if (!target.hasDisplay())
- {
- return null;
- }
- return (target.getDisplay() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Group target = (Group) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setDisplay(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _display
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Group.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.HiddenColumns;
-
-/**
- * Class HiddenColumnsDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class HiddenColumnsDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public HiddenColumnsDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "hiddenColumns";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _start
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_start", "start",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- HiddenColumns target = (HiddenColumns) object;
- if (!target.hasStart())
- {
- return null;
- }
- return new java.lang.Integer(target.getStart());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- HiddenColumns target = (HiddenColumns) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteStart();
- return;
- }
- target.setStart(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _start
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _end
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_end", "end",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- HiddenColumns target = (HiddenColumns) object;
- if (!target.hasEnd())
- {
- return null;
- }
- return new java.lang.Integer(target.getEnd());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- HiddenColumns target = (HiddenColumns) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteEnd();
- return;
- }
- target.setEnd(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _end
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.HiddenColumns.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.JGroup;
-
-/**
- * Class JGroupDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class JGroupDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JGroupDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "JGroup";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _start
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_start", "start",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasStart())
- {
- return null;
- }
- return new java.lang.Integer(target.getStart());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteStart();
- return;
- }
- target.setStart(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _start
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _end
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_end", "end",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasEnd())
- {
- return null;
- }
- return new java.lang.Integer(target.getEnd());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteEnd();
- return;
- }
- target.setEnd(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _end
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _name
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_name", "name",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- return target.getName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- target.setName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _name
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _colour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_colour", "colour",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- return target.getColour();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- target.setColour((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _consThreshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_consThreshold", "consThreshold",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasConsThreshold())
- {
- return null;
- }
- return new java.lang.Integer(target.getConsThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteConsThreshold();
- return;
- }
- target.setConsThreshold(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _consThreshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _pidThreshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_pidThreshold", "pidThreshold",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasPidThreshold())
- {
- return null;
- }
- return new java.lang.Integer(target.getPidThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deletePidThreshold();
- return;
- }
- target.setPidThreshold(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _pidThreshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _outlineColour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_outlineColour", "outlineColour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasOutlineColour())
- {
- return null;
- }
- return new java.lang.Integer(target.getOutlineColour());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteOutlineColour();
- return;
- }
- target.setOutlineColour(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _outlineColour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _displayBoxes
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_displayBoxes", "displayBoxes",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasDisplayBoxes())
- {
- return null;
- }
- return (target.getDisplayBoxes() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteDisplayBoxes();
- return;
- }
- target.setDisplayBoxes(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _displayBoxes
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _displayText
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_displayText", "displayText",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasDisplayText())
- {
- return null;
- }
- return (target.getDisplayText() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteDisplayText();
- return;
- }
- target.setDisplayText(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _displayText
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _colourText
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_colourText", "colourText",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasColourText())
- {
- return null;
- }
- return (target.getColourText() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteColourText();
- return;
- }
- target.setColourText(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colourText
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _textCol1
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_textCol1", "textCol1",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasTextCol1())
- {
- return null;
- }
- return new java.lang.Integer(target.getTextCol1());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteTextCol1();
- return;
- }
- target.setTextCol1(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _textCol1
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _textCol2
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_textCol2", "textCol2",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasTextCol2())
- {
- return null;
- }
- return new java.lang.Integer(target.getTextCol2());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteTextCol2();
- return;
- }
- target.setTextCol2(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _textCol2
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _textColThreshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_textColThreshold",
- "textColThreshold", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasTextColThreshold())
- {
- return null;
- }
- return new java.lang.Integer(target.getTextColThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteTextColThreshold();
- return;
- }
- target.setTextColThreshold(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _textColThreshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _showUnconserved
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showUnconserved", "showUnconserved",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasShowUnconserved())
- {
- return null;
- }
- return (target.getShowUnconserved() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowUnconserved();
- return;
- }
- target.setShowUnconserved(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showUnconserved
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _ignoreGapsinConsensus
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_ignoreGapsinConsensus",
- "ignoreGapsinConsensus",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasIgnoreGapsinConsensus())
- {
- return null;
- }
- return (target.getIgnoreGapsinConsensus() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteIgnoreGapsinConsensus();
- return;
- }
- target.setIgnoreGapsinConsensus(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _ignoreGapsinConsensus
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showConsensusHistogram
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showConsensusHistogram",
- "showConsensusHistogram",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasShowConsensusHistogram())
- {
- return null;
- }
- return (target.getShowConsensusHistogram() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowConsensusHistogram();
- return;
- }
- target.setShowConsensusHistogram(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showConsensusHistogram
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showSequenceLogo
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showSequenceLogo",
- "showSequenceLogo", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasShowSequenceLogo())
- {
- return null;
- }
- return (target.getShowSequenceLogo() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowSequenceLogo();
- return;
- }
- target.setShowSequenceLogo(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showSequenceLogo
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _normaliseSequenceLogo
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_normaliseSequenceLogo",
- "normaliseSequenceLogo",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- if (!target.hasNormaliseSequenceLogo())
- {
- return null;
- }
- return (target.getNormaliseSequenceLogo() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteNormaliseSequenceLogo();
- return;
- }
- target.setNormaliseSequenceLogo(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _normaliseSequenceLogo
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _id
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_id", "id",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- return target.getId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- target.setId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _id
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _seqList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_seqList", "seq",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- return target.getSeq();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- target.addSeq((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- target.removeAllSeq();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setRequired(true);
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _seqList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _annotationColours
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.AnnotationColours.class,
- "_annotationColours", "annotationColours",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JGroup target = (JGroup) object;
- return target.getAnnotationColours();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JGroup target = (JGroup) object;
- target.setAnnotationColours((jalview.schemabinding.version2.AnnotationColours) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.AnnotationColours();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _annotationColours
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.JGroup.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.JSeq;
-
-/**
- * Class JSeqDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class JSeqDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JSeqDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "JSeq";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _colour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_colour", "colour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- if (!target.hasColour())
- {
- return null;
- }
- return new java.lang.Integer(target.getColour());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteColour();
- return;
- }
- target.setColour(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _start
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_start", "start",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- if (!target.hasStart())
- {
- return null;
- }
- return new java.lang.Integer(target.getStart());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setStart(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _start
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _end
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_end", "end",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- if (!target.hasEnd())
- {
- return null;
- }
- return new java.lang.Integer(target.getEnd());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setEnd(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _end
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _id
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_id", "id",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- return target.getId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- target.setId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _id
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _hidden
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_hidden", "hidden",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- if (!target.hasHidden())
- {
- return null;
- }
- return (target.getHidden() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteHidden();
- return;
- }
- target.setHidden(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _hidden
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _viewreference
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_viewreference", "viewreference",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- if (!target.hasViewreference())
- {
- return null;
- }
- return (target.getViewreference() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteViewreference();
- return;
- }
- target.setViewreference(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _viewreference
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _featuresList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Features.class, "_featuresList",
- "features", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- return target.getFeatures();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- target.addFeatures((jalview.schemabinding.version2.Features) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- target.removeAllFeatures();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Features();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _featuresList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _pdbidsList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Pdbids.class, "_pdbidsList",
- "pdbids", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- return target.getPdbids();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- target.addPdbids((jalview.schemabinding.version2.Pdbids) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- target.removeAllPdbids();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Pdbids();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _pdbidsList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _hiddenSequencesList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_hiddenSequencesList",
- "hiddenSequences", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- return target.getHiddenSequences();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.addHiddenSequences(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- target.removeAllHiddenSequences();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _hiddenSequencesList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _rnaViewerList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.RnaViewer.class,
- "_rnaViewerList", "rnaViewer",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JSeq target = (JSeq) object;
- return target.getRnaViewer();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- target.addRnaViewer((jalview.schemabinding.version2.RnaViewer) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JSeq target = (JSeq) object;
- target.removeAllRnaViewer();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.RnaViewer();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _rnaViewerList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.JSeq.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.JalviewModel;
-
-/**
- * Class JalviewModelDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class JalviewModelDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JalviewModelDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "JalviewModel";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _creationDate
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.util.Date.class, "_creationDate", "creationDate",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModel target = (JalviewModel) object;
- return target.getCreationDate();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModel target = (JalviewModel) object;
- target.setCreationDate((java.util.Date) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new java.util.Date();
- }
- };
- handler = new org.exolab.castor.xml.handlers.DateFieldHandler(handler);
- desc.setImmutable(true);
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _creationDate
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.DateTimeValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.DateTimeValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _version
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_version", "version",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModel target = (JalviewModel) object;
- return target.getVersion();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModel target = (JalviewModel) object;
- target.setVersion((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _version
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _vamsasModel
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.VamsasModel.class,
- "_vamsasModel", "vamsasModel",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModel target = (JalviewModel) object;
- return target.getVamsasModel();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModel target = (JalviewModel) object;
- target.setVamsasModel((jalview.schemabinding.version2.VamsasModel) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.VamsasModel();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _vamsasModel
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _jalviewModelSequence
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.JalviewModelSequence.class,
- "_jalviewModelSequence", "-error-if-this-is-used-",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModel target = (JalviewModel) object;
- return target.getJalviewModelSequence();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModel target = (JalviewModel) object;
- target.setJalviewModelSequence((jalview.schemabinding.version2.JalviewModelSequence) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.JalviewModelSequence();
- }
- };
- desc.setHandler(handler);
- desc.setContainer(true);
- desc.setClassDescriptor(new jalview.schemabinding.version2.descriptors.JalviewModelSequenceDescriptor());
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _jalviewModelSequence
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.JalviewModel.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.JalviewModelSequence;
-
-/**
- * Class JalviewModelSequenceDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class JalviewModelSequenceDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JalviewModelSequenceDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _JSeqList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.JSeq.class, "_JSeqList", "JSeq",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- return target.getJSeq();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.addJSeq((jalview.schemabinding.version2.JSeq) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.removeAllJSeq();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.JSeq();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _JSeqList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _JGroupList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.JGroup.class, "_JGroupList",
- "JGroup", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- return target.getJGroup();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.addJGroup((jalview.schemabinding.version2.JGroup) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.removeAllJGroup();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.JGroup();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _JGroupList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _viewportList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Viewport.class, "_viewportList",
- "Viewport", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- return target.getViewport();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.addViewport((jalview.schemabinding.version2.Viewport) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.removeAllViewport();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Viewport();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _viewportList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _userColoursList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.UserColours.class,
- "_userColoursList", "UserColours",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- return target.getUserColours();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.addUserColours((jalview.schemabinding.version2.UserColours) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.removeAllUserColours();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.UserColours();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _userColoursList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _treeList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Tree.class, "_treeList", "tree",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- return target.getTree();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.addTree((jalview.schemabinding.version2.Tree) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.removeAllTree();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Tree();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _treeList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _featureSettings
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.FeatureSettings.class,
- "_featureSettings", "FeatureSettings",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- return target.getFeatureSettings();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewModelSequence target = (JalviewModelSequence) object;
- target.setFeatureSettings((jalview.schemabinding.version2.FeatureSettings) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.FeatureSettings();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _featureSettings
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.JalviewModelSequence.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-import jalview.schemabinding.version2.Colour;
-import jalview.schemabinding.version2.Filter;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.JalviewUserColours;
-
-/**
- * Class JalviewUserColoursDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class JalviewUserColoursDescriptor
- extends org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public JalviewUserColoursDescriptor()
- {
- super();
- _nsURI = "www.jalview.org/colours";
- _xmlName = "JalviewUserColours";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _schemeName
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_schemeName", "schemeName",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- @Override
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewUserColours target = (JalviewUserColours) object;
- return target.getSchemeName();
- }
-
- @Override
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewUserColours target = (JalviewUserColours) object;
- target.setSchemeName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- @Override
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _schemeName
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _version
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_version", "Version",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- @Override
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewUserColours target = (JalviewUserColours) object;
- return target.getVersion();
- }
-
- @Override
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewUserColours target = (JalviewUserColours) object;
- target.setVersion((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- @Override
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _version
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _colourList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- Colour.class, "_colourList", "colour",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- @Override
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewUserColours target = (JalviewUserColours) object;
- return target.getColour();
- }
-
- @Override
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewUserColours target = (JalviewUserColours) object;
- target.addColour((Colour) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- @Override
- public void resetValue(Object object)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewUserColours target = (JalviewUserColours) object;
- target.removeAllColour();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- @Override
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new Colour();
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colourList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _filterList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- Filter.class, "_filterList", "filter",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- @Override
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- JalviewUserColours target = (JalviewUserColours) object;
- return target.getFilter();
- }
-
- @Override
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewUserColours target = (JalviewUserColours) object;
- target.addFilter((Filter) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- @Override
- public void resetValue(Object object)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- JalviewUserColours target = (JalviewUserColours) object;
- target.removeAllFilter();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- @Override
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new Filter();
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _filterList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- @Override
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- @Override
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- @Override
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.JalviewUserColours.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- @Override
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- @Override
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- @Override
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- @Override
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- @Override
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.MapListFrom;
-
-/**
- * Class MapListFromDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class MapListFromDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MapListFromDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "mapListFrom";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _start
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_start", "start",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MapListFrom target = (MapListFrom) object;
- if (!target.hasStart())
- {
- return null;
- }
- return new java.lang.Integer(target.getStart());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MapListFrom target = (MapListFrom) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setStart(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _start
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _end
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_end", "end",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MapListFrom target = (MapListFrom) object;
- if (!target.hasEnd())
- {
- return null;
- }
- return new java.lang.Integer(target.getEnd());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MapListFrom target = (MapListFrom) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setEnd(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _end
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.MapListFrom.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.MapListTo;
-
-/**
- * Class MapListToDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class MapListToDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MapListToDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "mapListTo";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _start
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_start", "start",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MapListTo target = (MapListTo) object;
- if (!target.hasStart())
- {
- return null;
- }
- return new java.lang.Integer(target.getStart());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MapListTo target = (MapListTo) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setStart(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _start
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _end
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_end", "end",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MapListTo target = (MapListTo) object;
- if (!target.hasEnd())
- {
- return null;
- }
- return new java.lang.Integer(target.getEnd());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MapListTo target = (MapListTo) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setEnd(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _end
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.MapListTo.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.MapListType;
-
-/**
- * Class MapListTypeDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class MapListTypeDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MapListTypeDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "mapListType";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _mapFromUnit
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Long.TYPE, "_mapFromUnit", "mapFromUnit",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MapListType target = (MapListType) object;
- if (!target.hasMapFromUnit())
- {
- return null;
- }
- return new java.lang.Long(target.getMapFromUnit());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MapListType target = (MapListType) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setMapFromUnit(((java.lang.Long) value).longValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _mapFromUnit
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.LongValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.LongValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(1L);
- }
- desc.setValidator(fieldValidator);
- // -- _mapToUnit
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Long.TYPE, "_mapToUnit", "mapToUnit",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MapListType target = (MapListType) object;
- if (!target.hasMapToUnit())
- {
- return null;
- }
- return new java.lang.Long(target.getMapToUnit());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MapListType target = (MapListType) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setMapToUnit(((java.lang.Long) value).longValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _mapToUnit
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.LongValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.LongValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(1L);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _mapListFromList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.MapListFrom.class,
- "_mapListFromList", "mapListFrom",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MapListType target = (MapListType) object;
- return target.getMapListFrom();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MapListType target = (MapListType) object;
- target.addMapListFrom((jalview.schemabinding.version2.MapListFrom) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- MapListType target = (MapListType) object;
- target.removeAllMapListFrom();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.MapListFrom();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _mapListFromList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _mapListToList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.MapListTo.class,
- "_mapListToList", "mapListTo",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MapListType target = (MapListType) object;
- return target.getMapListTo();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MapListType target = (MapListType) object;
- target.addMapListTo((jalview.schemabinding.version2.MapListTo) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- MapListType target = (MapListType) object;
- target.removeAllMapListTo();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.MapListTo();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _mapListToList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.MapListType.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.MappingChoice;
-
-/**
- * Class MappingChoiceDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class MappingChoiceDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MappingChoiceDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsChoice();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _sequence
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Sequence.class, "_sequence",
- "Sequence", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MappingChoice target = (MappingChoice) object;
- return target.getSequence();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MappingChoice target = (MappingChoice) object;
- target.setSequence((jalview.schemabinding.version2.Sequence) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Sequence();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _sequence
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _dseqFor
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_dseqFor", "dseqFor",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- MappingChoice target = (MappingChoice) object;
- return target.getDseqFor();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- MappingChoice target = (MappingChoice) object;
- target.setDseqFor((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _dseqFor
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.MappingChoice.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Mapping;
-
-/**
- * Class MappingDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class MappingDescriptor extends
- jalview.schemabinding.version2.descriptors.MapListTypeDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MappingDescriptor()
- {
- super();
- setExtendsWithoutFlatten(new jalview.schemabinding.version2.descriptors.MapListTypeDescriptor());
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "Mapping";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsChoice();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _mappingChoice
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.MappingChoice.class,
- "_mappingChoice", "-error-if-this-is-used-",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Mapping target = (Mapping) object;
- return target.getMappingChoice();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Mapping target = (Mapping) object;
- target.setMappingChoice((jalview.schemabinding.version2.MappingChoice) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.MappingChoice();
- }
- };
- desc.setHandler(handler);
- desc.setContainer(true);
- desc.setClassDescriptor(new jalview.schemabinding.version2.descriptors.MappingChoiceDescriptor());
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _mappingChoice
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Mapping.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.MatchCondition;
-
-/**
- * Class MatchConditionDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class MatchConditionDescriptor extends
- jalview.schemabinding.version2.descriptors.FeatureMatcherDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MatchConditionDescriptor()
- {
- super();
- setExtendsWithoutFlatten(
- new jalview.schemabinding.version2.descriptors.FeatureMatcherDescriptor());
- _xmlName = "matchCondition";
- _elementDefinition = true;
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.MatchCondition.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.MatcherSet;
-
-/**
- * Class MatcherSetDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class MatcherSetDescriptor extends
- jalview.schemabinding.version2.descriptors.FeatureMatcherSetDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public MatcherSetDescriptor()
- {
- super();
- setExtendsWithoutFlatten(
- new jalview.schemabinding.version2.descriptors.FeatureMatcherSetDescriptor());
- _xmlName = "matcherSet";
- _elementDefinition = true;
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.MatcherSet.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
- //---------------------------------/
- //- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.OtherData;
-
-/**
- * Class OtherDataDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class OtherDataDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
-
-
- //--------------------------/
- //- Class/Member Variables -/
- //--------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
-
- //----------------/
- //- Constructors -/
- //----------------/
-
- public OtherDataDescriptor() {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "otherData";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- //-- initialize attribute descriptors
-
- //-- _key
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_key", "key", org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler() {
- public java.lang.Object getValue( java.lang.Object object )
- throws IllegalStateException
- {
- OtherData target = (OtherData) object;
- return target.getKey();
- }
- public void setValue( java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try {
- OtherData target = (OtherData) object;
- target.setKey( (java.lang.String) value);
- } catch (java.lang.Exception ex) {
- throw new IllegalStateException(ex.toString());
- }
- }
- public java.lang.Object newInstance(java.lang.Object parent) {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- //-- validation code for: _key
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { //-- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- //-- _key2
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_key2", "key2", org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler() {
- public java.lang.Object getValue( java.lang.Object object )
- throws IllegalStateException
- {
- OtherData target = (OtherData) object;
- return target.getKey2();
- }
- public void setValue( java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try {
- OtherData target = (OtherData) object;
- target.setKey2( (java.lang.String) value);
- } catch (java.lang.Exception ex) {
- throw new IllegalStateException(ex.toString());
- }
- }
- public java.lang.Object newInstance(java.lang.Object parent) {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- //-- validation code for: _key2
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { //-- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- //-- _value
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(java.lang.String.class, "_value", "value", org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler() {
- public java.lang.Object getValue( java.lang.Object object )
- throws IllegalStateException
- {
- OtherData target = (OtherData) object;
- return target.getValue();
- }
- public void setValue( java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try {
- OtherData target = (OtherData) object;
- target.setValue( (java.lang.String) value);
- } catch (java.lang.Exception ex) {
- throw new IllegalStateException(ex.toString());
- }
- }
- public java.lang.Object newInstance(java.lang.Object parent) {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- //-- validation code for: _value
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { //-- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- //-- initialize element descriptors
-
- }
-
-
- //-----------/
- //- Methods -/
- //-----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode(
- ) {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no
- * identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity(
- ) {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass(
- ) {
- return jalview.schemabinding.version2.OtherData.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix(
- ) {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and
- * unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI(
- ) {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator(
- ) {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName(
- ) {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that
- * of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition(
- ) {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Pdbentry;
-
-/**
- * Class PdbentryDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class PdbentryDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public PdbentryDescriptor()
- {
- super();
- _xmlName = "pdbentry";
- _elementDefinition = false;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _id
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_id", "id",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Pdbentry target = (Pdbentry) object;
- return target.getId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Pdbentry target = (Pdbentry) object;
- target.setId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _id
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _type
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_type", "type",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Pdbentry target = (Pdbentry) object;
- return target.getType();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Pdbentry target = (Pdbentry) object;
- target.setType((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _type
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _file
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_file", "file",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Pdbentry target = (Pdbentry) object;
- return target.getFile();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Pdbentry target = (Pdbentry) object;
- target.setFile((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _file
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _items
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.PdbentryItem.class, "_items",
- (java.lang.String) null, org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Pdbentry target = (Pdbentry) object;
- return target.getPdbentryItem();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Pdbentry target = (Pdbentry) object;
- target.addPdbentryItem((jalview.schemabinding.version2.PdbentryItem) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- Pdbentry target = (Pdbentry) object;
- target.removeAllPdbentryItem();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.PdbentryItem();
- }
- };
- desc.setHandler(handler);
- desc.setContainer(true);
- desc.setClassDescriptor(new jalview.schemabinding.version2.descriptors.PdbentryItemDescriptor());
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _items
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Pdbentry.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.PdbentryItem;
-
-/**
- * Class PdbentryItemDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class PdbentryItemDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public PdbentryItemDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "pdbentry";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _propertyList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Property.class, "_propertyList",
- "property", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- PdbentryItem target = (PdbentryItem) object;
- return target.getProperty();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- PdbentryItem target = (PdbentryItem) object;
- target.addProperty((jalview.schemabinding.version2.Property) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- PdbentryItem target = (PdbentryItem) object;
- target.removeAllProperty();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Property();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _propertyList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.PdbentryItem.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Pdbids;
-
-/**
- * Class PdbidsDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class PdbidsDescriptor extends
- jalview.schemabinding.version2.descriptors.PdbentryDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public PdbidsDescriptor()
- {
- super();
- setExtendsWithoutFlatten(new jalview.schemabinding.version2.descriptors.PdbentryDescriptor());
- _nsURI = "www.jalview.org";
- _xmlName = "pdbids";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _structureStateList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.StructureState.class,
- "_structureStateList", "structureState",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Pdbids target = (Pdbids) object;
- return target.getStructureState();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Pdbids target = (Pdbids) object;
- target.addStructureState((jalview.schemabinding.version2.StructureState) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- Pdbids target = (Pdbids) object;
- target.removeAllStructureState();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.StructureState();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _structureStateList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Pdbids.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Property;
-
-/**
- * Class PropertyDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class PropertyDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public PropertyDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "property";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _name
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_name", "name",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Property target = (Property) object;
- return target.getName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Property target = (Property) object;
- target.setName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _name
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _value
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_value", "value",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Property target = (Property) object;
- return target.getValue();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Property target = (Property) object;
- target.setValue((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _value
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Property.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.RnaViewer;
-
-/**
- * Class RnaViewerDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class RnaViewerDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public RnaViewerDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "rnaViewer";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _title
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_title", "title",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- RnaViewer target = (RnaViewer) object;
- return target.getTitle();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- target.setTitle((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _title
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _viewId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_viewId", "viewId",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- RnaViewer target = (RnaViewer) object;
- return target.getViewId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- target.setViewId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _viewId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _dividerLocation
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_dividerLocation", "dividerLocation",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- RnaViewer target = (RnaViewer) object;
- if (!target.hasDividerLocation())
- {
- return null;
- }
- return new java.lang.Integer(target.getDividerLocation());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteDividerLocation();
- return;
- }
- target.setDividerLocation(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _dividerLocation
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _selectedRna
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_selectedRna", "selectedRna",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- RnaViewer target = (RnaViewer) object;
- if (!target.hasSelectedRna())
- {
- return null;
- }
- return new java.lang.Integer(target.getSelectedRna());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteSelectedRna();
- return;
- }
- target.setSelectedRna(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _selectedRna
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _width
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_width", "width",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- RnaViewer target = (RnaViewer) object;
- if (!target.hasWidth())
- {
- return null;
- }
- return new java.lang.Integer(target.getWidth());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteWidth();
- return;
- }
- target.setWidth(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _width
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _height
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_height", "height",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- RnaViewer target = (RnaViewer) object;
- if (!target.hasHeight())
- {
- return null;
- }
- return new java.lang.Integer(target.getHeight());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteHeight();
- return;
- }
- target.setHeight(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _height
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _xpos
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_xpos", "xpos",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- RnaViewer target = (RnaViewer) object;
- if (!target.hasXpos())
- {
- return null;
- }
- return new java.lang.Integer(target.getXpos());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteXpos();
- return;
- }
- target.setXpos(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _xpos
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _ypos
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_ypos", "ypos",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- RnaViewer target = (RnaViewer) object;
- if (!target.hasYpos())
- {
- return null;
- }
- return new java.lang.Integer(target.getYpos());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteYpos();
- return;
- }
- target.setYpos(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _ypos
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _secondaryStructureList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.SecondaryStructure.class,
- "_secondaryStructureList", "secondaryStructure",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- RnaViewer target = (RnaViewer) object;
- return target.getSecondaryStructure();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- target.addSecondaryStructure((jalview.schemabinding.version2.SecondaryStructure) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- RnaViewer target = (RnaViewer) object;
- target.removeAllSecondaryStructure();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.SecondaryStructure();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setRequired(true);
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _secondaryStructureList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.RnaViewer.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.SecondaryStructure;
-
-/**
- * Class SecondaryStructureDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class SecondaryStructureDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SecondaryStructureDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "secondaryStructure";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _title
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_title", "title",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SecondaryStructure target = (SecondaryStructure) object;
- return target.getTitle();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SecondaryStructure target = (SecondaryStructure) object;
- target.setTitle((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _title
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _annotationId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_annotationId", "annotationId",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SecondaryStructure target = (SecondaryStructure) object;
- return target.getAnnotationId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SecondaryStructure target = (SecondaryStructure) object;
- target.setAnnotationId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _annotationId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _gapped
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_gapped", "gapped",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SecondaryStructure target = (SecondaryStructure) object;
- if (!target.hasGapped())
- {
- return null;
- }
- return (target.getGapped() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SecondaryStructure target = (SecondaryStructure) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteGapped();
- return;
- }
- target.setGapped(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _gapped
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _viewerState
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_viewerState", "viewerState",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SecondaryStructure target = (SecondaryStructure) object;
- return target.getViewerState();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SecondaryStructure target = (SecondaryStructure) object;
- target.setViewerState((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _viewerState
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.SecondaryStructure.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Sequence;
-
-/**
- * Class SequenceDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class SequenceDescriptor extends
- jalview.schemabinding.version2.descriptors.SequenceTypeDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SequenceDescriptor()
- {
- super();
- setExtendsWithoutFlatten(new jalview.schemabinding.version2.descriptors.SequenceTypeDescriptor());
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "Sequence";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _dsseqid
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_dsseqid", "dsseqid",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Sequence target = (Sequence) object;
- return target.getDsseqid();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Sequence target = (Sequence) object;
- target.setDsseqid((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _dsseqid
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _DBRefList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.DBRef.class, "_DBRefList",
- "DBRef", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Sequence target = (Sequence) object;
- return target.getDBRef();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Sequence target = (Sequence) object;
- target.addDBRef((jalview.schemabinding.version2.DBRef) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- Sequence target = (Sequence) object;
- target.removeAllDBRef();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.DBRef();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _DBRefList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Sequence.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.SequenceSet;
-
-/**
- * Class SequenceSetDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class SequenceSetDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SequenceSetDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "SequenceSet";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _gapChar
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_gapChar", "gapChar",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceSet target = (SequenceSet) object;
- return target.getGapChar();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.setGapChar((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _gapChar
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _datasetId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_datasetId", "datasetId",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceSet target = (SequenceSet) object;
- return target.getDatasetId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.setDatasetId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _datasetId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _sequenceList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Sequence.class, "_sequenceList",
- "Sequence", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceSet target = (SequenceSet) object;
- return target.getSequence();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.addSequence((jalview.schemabinding.version2.Sequence) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.removeAllSequence();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Sequence();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _sequenceList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _annotationList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.Annotation.class,
- "_annotationList", "Annotation",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceSet target = (SequenceSet) object;
- return target.getAnnotation();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.addAnnotation((jalview.schemabinding.version2.Annotation) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.removeAllAnnotation();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.Annotation();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _annotationList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _sequenceSetPropertiesList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.SequenceSetProperties.class,
- "_sequenceSetPropertiesList", "sequenceSetProperties",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceSet target = (SequenceSet) object;
- return target.getSequenceSetProperties();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.addSequenceSetProperties((jalview.schemabinding.version2.SequenceSetProperties) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.removeAllSequenceSetProperties();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.SequenceSetProperties();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _sequenceSetPropertiesList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _alcodonFrameList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.AlcodonFrame.class,
- "_alcodonFrameList", "AlcodonFrame",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceSet target = (SequenceSet) object;
- return target.getAlcodonFrame();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.addAlcodonFrame((jalview.schemabinding.version2.AlcodonFrame) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- SequenceSet target = (SequenceSet) object;
- target.removeAllAlcodonFrame();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.AlcodonFrame();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _alcodonFrameList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.SequenceSet.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.SequenceSetProperties;
-
-/**
- * Class SequenceSetPropertiesDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class SequenceSetPropertiesDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SequenceSetPropertiesDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "sequenceSetProperties";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _key
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_key", "key",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceSetProperties target = (SequenceSetProperties) object;
- return target.getKey();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceSetProperties target = (SequenceSetProperties) object;
- target.setKey((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _key
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _value
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_value", "value",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceSetProperties target = (SequenceSetProperties) object;
- return target.getValue();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceSetProperties target = (SequenceSetProperties) object;
- target.setValue((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _value
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.SequenceSetProperties.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.SequenceType;
-
-/**
- * Class SequenceTypeDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class SequenceTypeDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SequenceTypeDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "SequenceType";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _id
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_id", "id",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceType target = (SequenceType) object;
- return target.getId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceType target = (SequenceType) object;
- target.setId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _id
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _description
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_description", "description",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceType target = (SequenceType) object;
- return target.getDescription();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceType target = (SequenceType) object;
- target.setDescription((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _description
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _sequence
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_sequence", "sequence",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceType target = (SequenceType) object;
- return target.getSequence();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceType target = (SequenceType) object;
- target.setSequence((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _sequence
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _name
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_name", "name",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- SequenceType target = (SequenceType) object;
- return target.getName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- SequenceType target = (SequenceType) object;
- target.setName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _name
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.SequenceType.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Setting;
-
-/**
- * Class SettingDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class SettingDescriptor
- extends org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public SettingDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "setting";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _type
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_type", "type",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- return target.getType();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- target.setType((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _type
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _colour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_colour", "colour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasColour())
- {
- return null;
- }
- return new java.lang.Integer(target.getColour());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setColour(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _display
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_display", "display",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasDisplay())
- {
- return null;
- }
- return (target.getDisplay() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // ignore null values for non optional primitives
- if (value == null)
- {
- return;
- }
-
- target.setDisplay(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _display
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _order
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_order", "order",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasOrder())
- {
- return null;
- }
- return new java.lang.Float(target.getOrder());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteOrder();
- return;
- }
- target.setOrder(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _order
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _mincolour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_mincolour", "mincolour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasMincolour())
- {
- return null;
- }
- return new java.lang.Integer(target.getMincolour());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteMincolour();
- return;
- }
- target.setMincolour(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _mincolour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _noValueColour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.types.NoValueColour.class,
- "_noValueColour", "noValueColour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- return target.getNoValueColour();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- target.setNoValueColour(
- (jalview.schemabinding.version2.types.NoValueColour) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- handler = new org.exolab.castor.xml.handlers.EnumFieldHandler(
- jalview.schemabinding.version2.types.NoValueColour.class,
- handler);
- desc.setImmutable(true);
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _noValueColour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _threshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_threshold", "threshold",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasThreshold())
- {
- return null;
- }
- return new java.lang.Float(target.getThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteThreshold();
- return;
- }
- target.setThreshold(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _threshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _threshstate
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_threshstate", "threshstate",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasThreshstate())
- {
- return null;
- }
- return new java.lang.Integer(target.getThreshstate());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteThreshstate();
- return;
- }
- target.setThreshstate(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _threshstate
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _max
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_max", "max",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasMax())
- {
- return null;
- }
- return new java.lang.Float(target.getMax());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteMax();
- return;
- }
- target.setMax(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _max
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _min
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_min", "min",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasMin())
- {
- return null;
- }
- return new java.lang.Float(target.getMin());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteMin();
- return;
- }
- target.setMin(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _min
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _colourByLabel
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_colourByLabel", "colourByLabel",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasColourByLabel())
- {
- return null;
- }
- return (target.getColourByLabel() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteColourByLabel();
- return;
- }
- target.setColourByLabel(
- ((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colourByLabel
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _autoScale
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_autoScale", "autoScale",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- if (!target.hasAutoScale())
- {
- return null;
- }
- return (target.getAutoScale() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteAutoScale();
- return;
- }
- target.setAutoScale(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _autoScale
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _attributeNameList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_attributeNameList", "attributeName",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- return target.getAttributeName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- target.addAttributeName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- target.removeAllAttributeName();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _attributeNameList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- fieldValidator.setMaxOccurs(2);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _matcherSet
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.MatcherSet.class, "_matcherSet",
- "matcherSet", org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Setting target = (Setting) object;
- return target.getMatcherSet();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Setting target = (Setting) object;
- target.setMatcherSet(
- (jalview.schemabinding.version2.MatcherSet) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.MatcherSet();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _matcherSet
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Setting.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.StructureState;
-
-/**
- * Class StructureStateDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class StructureStateDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public StructureStateDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "structureState";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- _content
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_content", "PCDATA",
- org.exolab.castor.xml.NodeType.Text);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- return target.getContent();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- target.setContent((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- addFieldDescriptor(desc);
-
- // -- validation code for: _content
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize attribute descriptors
-
- // -- _visible
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_visible", "visible",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- if (!target.hasVisible())
- {
- return null;
- }
- return (target.getVisible() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteVisible();
- return;
- }
- target.setVisible(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _visible
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _viewId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_viewId", "viewId",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- return target.getViewId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- target.setViewId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _viewId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _alignwithAlignPanel
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_alignwithAlignPanel",
- "alignwithAlignPanel", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- if (!target.hasAlignwithAlignPanel())
- {
- return null;
- }
- return (target.getAlignwithAlignPanel() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteAlignwithAlignPanel();
- return;
- }
- target.setAlignwithAlignPanel(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _alignwithAlignPanel
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _colourwithAlignPanel
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_colourwithAlignPanel",
- "colourwithAlignPanel",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- if (!target.hasColourwithAlignPanel())
- {
- return null;
- }
- return (target.getColourwithAlignPanel() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteColourwithAlignPanel();
- return;
- }
- target.setColourwithAlignPanel(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colourwithAlignPanel
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _colourByJmol
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_colourByJmol", "colourByJmol",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- if (!target.hasColourByJmol())
- {
- return null;
- }
- return (target.getColourByJmol() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteColourByJmol();
- return;
- }
- target.setColourByJmol(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colourByJmol
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _type
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_type", "type",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- return target.getType();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- target.setType((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _type
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _width
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_width", "width",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- if (!target.hasWidth())
- {
- return null;
- }
- return new java.lang.Integer(target.getWidth());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteWidth();
- return;
- }
- target.setWidth(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _width
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _height
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_height", "height",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- if (!target.hasHeight())
- {
- return null;
- }
- return new java.lang.Integer(target.getHeight());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteHeight();
- return;
- }
- target.setHeight(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _height
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _xpos
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_xpos", "xpos",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- if (!target.hasXpos())
- {
- return null;
- }
- return new java.lang.Integer(target.getXpos());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteXpos();
- return;
- }
- target.setXpos(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _xpos
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _ypos
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_ypos", "ypos",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- StructureState target = (StructureState) object;
- if (!target.hasYpos())
- {
- return null;
- }
- return new java.lang.Integer(target.getYpos());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- StructureState target = (StructureState) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteYpos();
- return;
- }
- target.setYpos(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _ypos
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.StructureState.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.ThresholdLine;
-
-/**
- * Class ThresholdLineDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class ThresholdLineDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public ThresholdLineDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "thresholdLine";
- _elementDefinition = true;
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _label
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_label", "label",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- ThresholdLine target = (ThresholdLine) object;
- return target.getLabel();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- ThresholdLine target = (ThresholdLine) object;
- target.setLabel((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _label
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _value
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_value", "value",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- ThresholdLine target = (ThresholdLine) object;
- if (!target.hasValue())
- {
- return null;
- }
- return new java.lang.Float(target.getValue());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- ThresholdLine target = (ThresholdLine) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteValue();
- return;
- }
- target.setValue(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _value
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _colour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_colour", "colour",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- ThresholdLine target = (ThresholdLine) object;
- if (!target.hasColour())
- {
- return null;
- }
- return new java.lang.Integer(target.getColour());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- ThresholdLine target = (ThresholdLine) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteColour();
- return;
- }
- target.setColour(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _colour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.ThresholdLine.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Tree;
-
-/**
- * Class TreeDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class TreeDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public TreeDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "tree";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _fontName
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_fontName", "fontName",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- return target.getFontName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- target.setFontName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _fontName
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _fontSize
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_fontSize", "fontSize",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasFontSize())
- {
- return null;
- }
- return new java.lang.Integer(target.getFontSize());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteFontSize();
- return;
- }
- target.setFontSize(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _fontSize
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _fontStyle
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_fontStyle", "fontStyle",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasFontStyle())
- {
- return null;
- }
- return new java.lang.Integer(target.getFontStyle());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteFontStyle();
- return;
- }
- target.setFontStyle(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _fontStyle
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _threshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Float.TYPE, "_threshold", "threshold",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasThreshold())
- {
- return null;
- }
- return new java.lang.Float(target.getThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteThreshold();
- return;
- }
- target.setThreshold(((java.lang.Float) value).floatValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _threshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.FloatValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.FloatValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive((float) -3.4028235E38);
- typeValidator.setMaxInclusive((float) 3.4028235E38);
- }
- desc.setValidator(fieldValidator);
- // -- _showBootstrap
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showBootstrap", "showBootstrap",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasShowBootstrap())
- {
- return null;
- }
- return (target.getShowBootstrap() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowBootstrap();
- return;
- }
- target.setShowBootstrap(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showBootstrap
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showDistances
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showDistances", "showDistances",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasShowDistances())
- {
- return null;
- }
- return (target.getShowDistances() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowDistances();
- return;
- }
- target.setShowDistances(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showDistances
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _markUnlinked
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_markUnlinked", "markUnlinked",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasMarkUnlinked())
- {
- return null;
- }
- return (target.getMarkUnlinked() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteMarkUnlinked();
- return;
- }
- target.setMarkUnlinked(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _markUnlinked
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _fitToWindow
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_fitToWindow", "fitToWindow",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasFitToWindow())
- {
- return null;
- }
- return (target.getFitToWindow() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteFitToWindow();
- return;
- }
- target.setFitToWindow(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _fitToWindow
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _currentTree
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_currentTree", "currentTree",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasCurrentTree())
- {
- return null;
- }
- return (target.getCurrentTree() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteCurrentTree();
- return;
- }
- target.setCurrentTree(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _currentTree
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _id
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_id", "id",
- org.exolab.castor.xml.NodeType.Attribute);
- super.setIdentity(desc);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- return target.getId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- target.setId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new java.lang.String();
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _id
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IdValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IdValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _width
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_width", "width",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasWidth())
- {
- return null;
- }
- return new java.lang.Integer(target.getWidth());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteWidth();
- return;
- }
- target.setWidth(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _width
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _height
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_height", "height",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasHeight())
- {
- return null;
- }
- return new java.lang.Integer(target.getHeight());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteHeight();
- return;
- }
- target.setHeight(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _height
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _xpos
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_xpos", "xpos",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasXpos())
- {
- return null;
- }
- return new java.lang.Integer(target.getXpos());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteXpos();
- return;
- }
- target.setXpos(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _xpos
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _ypos
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_ypos", "ypos",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- if (!target.hasYpos())
- {
- return null;
- }
- return new java.lang.Integer(target.getYpos());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteYpos();
- return;
- }
- target.setYpos(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _ypos
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _title
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_title", "title",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- return target.getTitle();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- target.setTitle((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _title
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _newick
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_newick", "newick",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Tree target = (Tree) object;
- return target.getNewick();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Tree target = (Tree) object;
- target.setNewick((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _newick
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Tree.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.UserColourScheme;
-
-/**
- * Class UserColourSchemeDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class UserColourSchemeDescriptor
- extends
- jalview.schemabinding.version2.descriptors.JalviewUserColoursDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public UserColourSchemeDescriptor()
- {
- super();
- setExtendsWithoutFlatten(new jalview.schemabinding.version2.descriptors.JalviewUserColoursDescriptor());
- _nsURI = "www.jalview.org";
- _xmlName = "UserColourScheme";
- _elementDefinition = true;
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.UserColourScheme.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.UserColours;
-
-/**
- * Class UserColoursDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class UserColoursDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public UserColoursDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "UserColours";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _id
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_id", "id",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- UserColours target = (UserColours) object;
- return target.getId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- UserColours target = (UserColours) object;
- target.setId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _id
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _userColourScheme
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.UserColourScheme.class,
- "_userColourScheme", "UserColourScheme",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- UserColours target = (UserColours) object;
- return target.getUserColourScheme();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- UserColours target = (UserColours) object;
- target.setUserColourScheme((jalview.schemabinding.version2.UserColourScheme) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.UserColourScheme();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _userColourScheme
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.UserColours.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.VAMSAS;
-
-/**
- * Class VAMSASDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class VAMSASDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public VAMSASDescriptor()
- {
- super();
- _nsURI = "www.vamsas.ac.uk/jalview/version2";
- _xmlName = "VAMSAS";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- initialize element descriptors
-
- // -- _treeList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_treeList", "Tree",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- VAMSAS target = (VAMSAS) object;
- return target.getTree();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- VAMSAS target = (VAMSAS) object;
- target.addTree((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- VAMSAS target = (VAMSAS) object;
- target.removeAllTree();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _treeList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _sequenceSetList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.SequenceSet.class,
- "_sequenceSetList", "SequenceSet",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- VAMSAS target = (VAMSAS) object;
- return target.getSequenceSet();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- VAMSAS target = (VAMSAS) object;
- target.addSequenceSet((jalview.schemabinding.version2.SequenceSet) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- VAMSAS target = (VAMSAS) object;
- target.removeAllSequenceSet();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.SequenceSet();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.vamsas.ac.uk/jalview/version2");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _sequenceSetList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.VAMSAS.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.VamsasModel;
-
-/**
- * Class VamsasModelDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class VamsasModelDescriptor extends
- jalview.schemabinding.version2.descriptors.VAMSASDescriptor
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public VamsasModelDescriptor()
- {
- super();
- setExtendsWithoutFlatten(new jalview.schemabinding.version2.descriptors.VAMSASDescriptor());
- _nsURI = "www.jalview.org";
- _xmlName = "vamsasModel";
- _elementDefinition = true;
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.VamsasModel.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.Viewport;
-
-/**
- * Class ViewportDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class ViewportDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public ViewportDescriptor()
- {
- super();
- _nsURI = "www.jalview.org";
- _xmlName = "Viewport";
- _elementDefinition = true;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _conservationSelected
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_conservationSelected",
- "conservationSelected",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasConservationSelected())
- {
- return null;
- }
- return (target.getConservationSelected() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteConservationSelected();
- return;
- }
- target.setConservationSelected(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _conservationSelected
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _pidSelected
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_pidSelected", "pidSelected",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasPidSelected())
- {
- return null;
- }
- return (target.getPidSelected() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deletePidSelected();
- return;
- }
- target.setPidSelected(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _pidSelected
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _bgColour
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_bgColour", "bgColour",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getBgColour();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.setBgColour((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _bgColour
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _consThreshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_consThreshold", "consThreshold",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasConsThreshold())
- {
- return null;
- }
- return new java.lang.Integer(target.getConsThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteConsThreshold();
- return;
- }
- target.setConsThreshold(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _consThreshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _pidThreshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_pidThreshold", "pidThreshold",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasPidThreshold())
- {
- return null;
- }
- return new java.lang.Integer(target.getPidThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deletePidThreshold();
- return;
- }
- target.setPidThreshold(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _pidThreshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _title
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_title", "title",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getTitle();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.setTitle((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _title
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _showFullId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showFullId", "showFullId",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowFullId())
- {
- return null;
- }
- return (target.getShowFullId() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowFullId();
- return;
- }
- target.setShowFullId(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showFullId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _rightAlignIds
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_rightAlignIds", "rightAlignIds",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasRightAlignIds())
- {
- return null;
- }
- return (target.getRightAlignIds() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteRightAlignIds();
- return;
- }
- target.setRightAlignIds(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _rightAlignIds
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showText
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showText", "showText",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowText())
- {
- return null;
- }
- return (target.getShowText() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowText();
- return;
- }
- target.setShowText(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showText
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showColourText
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showColourText", "showColourText",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowColourText())
- {
- return null;
- }
- return (target.getShowColourText() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowColourText();
- return;
- }
- target.setShowColourText(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showColourText
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showUnconserved
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showUnconserved", "showUnconserved",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowUnconserved())
- {
- return null;
- }
- return (target.getShowUnconserved() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowUnconserved();
- return;
- }
- target.setShowUnconserved(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showUnconserved
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showBoxes
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showBoxes", "showBoxes",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowBoxes())
- {
- return null;
- }
- return (target.getShowBoxes() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowBoxes();
- return;
- }
- target.setShowBoxes(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showBoxes
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _wrapAlignment
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_wrapAlignment", "wrapAlignment",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasWrapAlignment())
- {
- return null;
- }
- return (target.getWrapAlignment() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteWrapAlignment();
- return;
- }
- target.setWrapAlignment(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _wrapAlignment
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _renderGaps
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_renderGaps", "renderGaps",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasRenderGaps())
- {
- return null;
- }
- return (target.getRenderGaps() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteRenderGaps();
- return;
- }
- target.setRenderGaps(((java.lang.Boolean) value).booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _renderGaps
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showSequenceFeatures
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showSequenceFeatures",
- "showSequenceFeatures",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowSequenceFeatures())
- {
- return null;
- }
- return (target.getShowSequenceFeatures() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowSequenceFeatures();
- return;
- }
- target.setShowSequenceFeatures(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showSequenceFeatures
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showNPfeatureTooltip
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showNPfeatureTooltip",
- "showNPfeatureTooltip",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowNPfeatureTooltip())
- {
- return null;
- }
- return (target.getShowNPfeatureTooltip() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowNPfeatureTooltip();
- return;
- }
- target.setShowNPfeatureTooltip(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showNPfeatureTooltip
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showDbRefTooltip
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showDbRefTooltip",
- "showDbRefTooltip", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowDbRefTooltip())
- {
- return null;
- }
- return (target.getShowDbRefTooltip() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowDbRefTooltip();
- return;
- }
- target.setShowDbRefTooltip(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showDbRefTooltip
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _followHighlight
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_followHighlight", "followHighlight",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasFollowHighlight())
- {
- return null;
- }
- return (target.getFollowHighlight() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteFollowHighlight();
- return;
- }
- target.setFollowHighlight(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _followHighlight
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _followSelection
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_followSelection", "followSelection",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasFollowSelection())
- {
- return null;
- }
- return (target.getFollowSelection() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteFollowSelection();
- return;
- }
- target.setFollowSelection(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _followSelection
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showAnnotation
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showAnnotation", "showAnnotation",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowAnnotation())
- {
- return null;
- }
- return (target.getShowAnnotation() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowAnnotation();
- return;
- }
- target.setShowAnnotation(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showAnnotation
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _centreColumnLabels
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_centreColumnLabels",
- "centreColumnLabels", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasCentreColumnLabels())
- {
- return null;
- }
- return (target.getCentreColumnLabels() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteCentreColumnLabels();
- return;
- }
- target.setCentreColumnLabels(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _centreColumnLabels
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showGroupConservation
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showGroupConservation",
- "showGroupConservation",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowGroupConservation())
- {
- return null;
- }
- return (target.getShowGroupConservation() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowGroupConservation();
- return;
- }
- target.setShowGroupConservation(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showGroupConservation
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showGroupConsensus
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showGroupConsensus",
- "showGroupConsensus", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowGroupConsensus())
- {
- return null;
- }
- return (target.getShowGroupConsensus() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowGroupConsensus();
- return;
- }
- target.setShowGroupConsensus(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showGroupConsensus
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showConsensusHistogram
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showConsensusHistogram",
- "showConsensusHistogram",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowConsensusHistogram())
- {
- return null;
- }
- return (target.getShowConsensusHistogram() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowConsensusHistogram();
- return;
- }
- target.setShowConsensusHistogram(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showConsensusHistogram
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _showSequenceLogo
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_showSequenceLogo",
- "showSequenceLogo", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasShowSequenceLogo())
- {
- return null;
- }
- return (target.getShowSequenceLogo() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteShowSequenceLogo();
- return;
- }
- target.setShowSequenceLogo(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _showSequenceLogo
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _normaliseSequenceLogo
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_normaliseSequenceLogo",
- "normaliseSequenceLogo",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasNormaliseSequenceLogo())
- {
- return null;
- }
- return (target.getNormaliseSequenceLogo() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteNormaliseSequenceLogo();
- return;
- }
- target.setNormaliseSequenceLogo(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _normaliseSequenceLogo
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _ignoreGapsinConsensus
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_ignoreGapsinConsensus",
- "ignoreGapsinConsensus",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasIgnoreGapsinConsensus())
- {
- return null;
- }
- return (target.getIgnoreGapsinConsensus() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteIgnoreGapsinConsensus();
- return;
- }
- target.setIgnoreGapsinConsensus(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _ignoreGapsinConsensus
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _startRes
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_startRes", "startRes",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasStartRes())
- {
- return null;
- }
- return new java.lang.Integer(target.getStartRes());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteStartRes();
- return;
- }
- target.setStartRes(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _startRes
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _startSeq
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_startSeq", "startSeq",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasStartSeq())
- {
- return null;
- }
- return new java.lang.Integer(target.getStartSeq());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteStartSeq();
- return;
- }
- target.setStartSeq(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _startSeq
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _fontName
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_fontName", "fontName",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getFontName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.setFontName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _fontName
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _fontSize
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_fontSize", "fontSize",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasFontSize())
- {
- return null;
- }
- return new java.lang.Integer(target.getFontSize());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteFontSize();
- return;
- }
- target.setFontSize(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _fontSize
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _fontStyle
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_fontStyle", "fontStyle",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasFontStyle())
- {
- return null;
- }
- return new java.lang.Integer(target.getFontStyle());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteFontStyle();
- return;
- }
- target.setFontStyle(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _fontStyle
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _scaleProteinAsCdna
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_scaleProteinAsCdna",
- "scaleProteinAsCdna", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasScaleProteinAsCdna())
- {
- return null;
- }
- return (target.getScaleProteinAsCdna() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteScaleProteinAsCdna();
- return;
- }
- target.setScaleProteinAsCdna(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _scaleProteinAsCdna
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _viewName
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_viewName", "viewName",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getViewName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.setViewName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _viewName
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _sequenceSetId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_sequenceSetId", "sequenceSetId",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getSequenceSetId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.setSequenceSetId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _sequenceSetId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _gatheredViews
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Boolean.TYPE, "_gatheredViews", "gatheredViews",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasGatheredViews())
- {
- return null;
- }
- return (target.getGatheredViews() ? java.lang.Boolean.TRUE
- : java.lang.Boolean.FALSE);
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteGatheredViews();
- return;
- }
- target.setGatheredViews(((java.lang.Boolean) value)
- .booleanValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _gatheredViews
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.BooleanValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.BooleanValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _textCol1
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_textCol1", "textCol1",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasTextCol1())
- {
- return null;
- }
- return new java.lang.Integer(target.getTextCol1());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteTextCol1();
- return;
- }
- target.setTextCol1(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _textCol1
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _textCol2
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_textCol2", "textCol2",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasTextCol2())
- {
- return null;
- }
- return new java.lang.Integer(target.getTextCol2());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteTextCol2();
- return;
- }
- target.setTextCol2(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _textCol2
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _textColThreshold
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_textColThreshold",
- "textColThreshold", org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasTextColThreshold())
- {
- return null;
- }
- return new java.lang.Integer(target.getTextColThreshold());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteTextColThreshold();
- return;
- }
- target.setTextColThreshold(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _textColThreshold
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _id
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_id", "id",
- org.exolab.castor.xml.NodeType.Attribute);
- super.setIdentity(desc);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.setId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new java.lang.String();
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _id
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IdValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IdValidator();
- fieldValidator.setValidator(typeValidator);
- }
- desc.setValidator(fieldValidator);
- // -- _complementId
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_complementId", "complementId",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getComplementId();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.setComplementId((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _complementId
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _width
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_width", "width",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasWidth())
- {
- return null;
- }
- return new java.lang.Integer(target.getWidth());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteWidth();
- return;
- }
- target.setWidth(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _width
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _height
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_height", "height",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasHeight())
- {
- return null;
- }
- return new java.lang.Integer(target.getHeight());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteHeight();
- return;
- }
- target.setHeight(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _height
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _xpos
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_xpos", "xpos",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasXpos())
- {
- return null;
- }
- return new java.lang.Integer(target.getXpos());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteXpos();
- return;
- }
- target.setXpos(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _xpos
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- _ypos
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.Integer.TYPE, "_ypos", "ypos",
- org.exolab.castor.xml.NodeType.Attribute);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- if (!target.hasYpos())
- {
- return null;
- }
- return new java.lang.Integer(target.getYpos());
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- // if null, use delete method for optional primitives
- if (value == null)
- {
- target.deleteYpos();
- return;
- }
- target.setYpos(((java.lang.Integer) value).intValue());
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _ypos
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.IntValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.IntValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setMinInclusive(-2147483648);
- typeValidator.setMaxInclusive(2147483647);
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _annotationColours
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.AnnotationColours.class,
- "_annotationColours", "AnnotationColours",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getAnnotationColours();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.setAnnotationColours((jalview.schemabinding.version2.AnnotationColours) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.AnnotationColours();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _annotationColours
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _hiddenColumnsList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.HiddenColumns.class,
- "_hiddenColumnsList", "hiddenColumns",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getHiddenColumns();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.addHiddenColumns((jalview.schemabinding.version2.HiddenColumns) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.removeAllHiddenColumns();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.HiddenColumns();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _hiddenColumnsList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _calcIdParamList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- jalview.schemabinding.version2.CalcIdParam.class,
- "_calcIdParamList", "calcIdParam",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- Viewport target = (Viewport) object;
- return target.getCalcIdParam();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.addCalcIdParam((jalview.schemabinding.version2.CalcIdParam) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- Viewport target = (Viewport) object;
- target.removeAllCalcIdParam();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new jalview.schemabinding.version2.CalcIdParam();
- }
- };
- desc.setHandler(handler);
- desc.setNameSpaceURI("www.jalview.org");
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _calcIdParamList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(0);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.Viewport.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.WebServiceParameterSet;
-
-/**
- * Class WebServiceParameterSetDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class WebServiceParameterSetDescriptor extends
- org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public WebServiceParameterSetDescriptor()
- {
- super();
- _nsURI = "www.jalview.org/xml/wsparamset";
- _xmlName = "WebServiceParameterSet";
- _elementDefinition = false;
-
- // -- set grouping compositor
- setCompositorAsSequence();
- org.exolab.castor.xml.util.XMLFieldDescriptorImpl desc = null;
- org.exolab.castor.mapping.FieldHandler handler = null;
- org.exolab.castor.xml.FieldValidator fieldValidator = null;
- // -- initialize attribute descriptors
-
- // -- _name
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_name", "name",
- org.exolab.castor.xml.NodeType.Attribute);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- return target.getName();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- target.setName((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _name
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- initialize element descriptors
-
- // -- _version
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_version", "Version",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- return target.getVersion();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- target.setVersion((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _version
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _description
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_description", "description",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- return target.getDescription();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- target.setDescription((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _description
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- // -- _serviceURLList
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_serviceURLList", "serviceURL",
- org.exolab.castor.xml.NodeType.Element);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- return target.getServiceURL();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- target.addServiceURL((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public void resetValue(Object object) throws IllegalStateException,
- IllegalArgumentException
- {
- try
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- target.removeAllServiceURL();
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return new java.lang.String();
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(true);
- addFieldDescriptor(desc);
-
- // -- validation code for: _serviceURLList
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- }
- desc.setValidator(fieldValidator);
- // -- _parameters
- desc = new org.exolab.castor.xml.util.XMLFieldDescriptorImpl(
- java.lang.String.class, "_parameters", "parameters",
- org.exolab.castor.xml.NodeType.Element);
- desc.setImmutable(true);
- handler = new org.exolab.castor.xml.XMLFieldHandler()
- {
- public java.lang.Object getValue(java.lang.Object object)
- throws IllegalStateException
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- return target.getParameters();
- }
-
- public void setValue(java.lang.Object object, java.lang.Object value)
- throws IllegalStateException, IllegalArgumentException
- {
- try
- {
- WebServiceParameterSet target = (WebServiceParameterSet) object;
- target.setParameters((java.lang.String) value);
- } catch (java.lang.Exception ex)
- {
- throw new IllegalStateException(ex.toString());
- }
- }
-
- public java.lang.Object newInstance(java.lang.Object parent)
- {
- return null;
- }
- };
- desc.setHandler(handler);
- desc.setRequired(true);
- desc.setMultivalued(false);
- addFieldDescriptor(desc);
-
- // -- validation code for: _parameters
- fieldValidator = new org.exolab.castor.xml.FieldValidator();
- fieldValidator.setMinOccurs(1);
- { // -- local scope
- org.exolab.castor.xml.validators.StringValidator typeValidator;
- typeValidator = new org.exolab.castor.xml.validators.StringValidator();
- fieldValidator.setValidator(typeValidator);
- typeValidator.setWhiteSpace("preserve");
- }
- desc.setValidator(fieldValidator);
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.WebServiceParameterSet.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-#Thu Dec 14 15:28:22 GMT 2017
-jalview.schemabinding.version2.types.ColourNoValueColourType=jalview.schemabinding.version2.types.descriptors.ColourNoValueColourTypeDescriptor
-jalview.schemabinding.version2.types.FeatureMatcherByType=jalview.schemabinding.version2.types.descriptors.FeatureMatcherByTypeDescriptor
-jalview.schemabinding.version2.types.NoValueColour=jalview.schemabinding.version2.types.descriptors.NoValueColourDescriptor
-jalview.schemabinding.version2.types.ColourThreshTypeType=jalview.schemabinding.version2.types.descriptors.ColourThreshTypeTypeDescriptor
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.types;
-
- //---------------------------------/
- //- Imported classes and packages -/
-//---------------------------------/
-
-import java.util.Hashtable;
-
-/**
- * Class ColourThreshTypeType.
- *
- * @version $Revision$ $Date$
- */
-public class ColourThreshTypeType implements java.io.Serializable {
-
-
- //--------------------------/
- //- Class/Member Variables -/
- //--------------------------/
-
- /**
- * The NONE type
- */
- public static final int NONE_TYPE = 0;
-
- /**
- * The instance of the NONE type
- */
- public static final ColourThreshTypeType NONE = new ColourThreshTypeType(NONE_TYPE, "NONE");
-
- /**
- * The ABOVE type
- */
- public static final int ABOVE_TYPE = 1;
-
- /**
- * The instance of the ABOVE type
- */
- public static final ColourThreshTypeType ABOVE = new ColourThreshTypeType(ABOVE_TYPE, "ABOVE");
-
- /**
- * The BELOW type
- */
- public static final int BELOW_TYPE = 2;
-
- /**
- * The instance of the BELOW type
- */
- public static final ColourThreshTypeType BELOW = new ColourThreshTypeType(BELOW_TYPE, "BELOW");
-
- /**
- * Field _memberTable.
- */
- private static java.util.Hashtable _memberTable = init();
-
- /**
- * Field type.
- */
- private int type = -1;
-
- /**
- * Field stringValue.
- */
- private java.lang.String stringValue = null;
-
-
- //----------------/
- //- Constructors -/
- //----------------/
-
- private ColourThreshTypeType(final int type, final java.lang.String value) {
- super();
- this.type = type;
- this.stringValue = value;
- }
-
-
- //-----------/
- //- Methods -/
- //-----------/
-
- /**
- * Method enumerate.Returns an enumeration of all possible
- * instances of ColourThreshTypeType
- *
- * @return an Enumeration over all possible instances of
- * ColourThreshTypeType
- */
- public static java.util.Enumeration enumerate(
- ) {
- return _memberTable.elements();
- }
-
- /**
- * Method getType.Returns the type of this ColourThreshTypeType
- *
- * @return the type of this ColourThreshTypeType
- */
- public int getType(
- ) {
- return this.type;
- }
-
- /**
- * Method init.
- *
- * @return the initialized Hashtable for the member table
- */
- private static java.util.Hashtable init(
- ) {
- Hashtable members = new Hashtable();
- members.put("NONE", NONE);
- members.put("ABOVE", ABOVE);
- members.put("BELOW", BELOW);
- return members;
- }
-
- /**
- * Method readResolve. will be called during deserialization to
- * replace the deserialized object with the correct constant
- * instance.
- *
- * @return this deserialized object
- */
- private java.lang.Object readResolve(
- ) {
- return valueOf(this.stringValue);
- }
-
- /**
- * Method toString.Returns the String representation of this
- * ColourThreshTypeType
- *
- * @return the String representation of this ColourThreshTypeTyp
- */
- public java.lang.String toString(
- ) {
- return this.stringValue;
- }
-
- /**
- * Method valueOf.Returns a new ColourThreshTypeType based on
- * the given String value.
- *
- * @param string
- * @return the ColourThreshTypeType value of parameter 'string'
- */
- public static jalview.schemabinding.version2.types.ColourThreshTypeType valueOf(
- final java.lang.String string) {
- java.lang.Object obj = null;
- if (string != null) {
- obj = _memberTable.get(string);
- }
- if (obj == null) {
- String err = "" + string + " is not a valid ColourThreshTypeType";
- throw new IllegalArgumentException(err);
- }
- return (ColourThreshTypeType) obj;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.types;
-
- //---------------------------------/
- //- Imported classes and packages -/
-//---------------------------------/
-
-import java.util.Hashtable;
-
-/**
- * Class FeatureMatcherByType.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureMatcherByType implements java.io.Serializable {
-
-
- //--------------------------/
- //- Class/Member Variables -/
- //--------------------------/
-
- /**
- * The byLabel type
- */
- public static final int BYLABEL_TYPE = 0;
-
- /**
- * The instance of the byLabel type
- */
- public static final FeatureMatcherByType BYLABEL = new FeatureMatcherByType(BYLABEL_TYPE, "byLabel");
-
- /**
- * The byScore type
- */
- public static final int BYSCORE_TYPE = 1;
-
- /**
- * The instance of the byScore type
- */
- public static final FeatureMatcherByType BYSCORE = new FeatureMatcherByType(BYSCORE_TYPE, "byScore");
-
- /**
- * The byAttribute type
- */
- public static final int BYATTRIBUTE_TYPE = 2;
-
- /**
- * The instance of the byAttribute type
- */
- public static final FeatureMatcherByType BYATTRIBUTE = new FeatureMatcherByType(BYATTRIBUTE_TYPE, "byAttribute");
-
- /**
- * Field _memberTable.
- */
- private static java.util.Hashtable _memberTable = init();
-
- /**
- * Field type.
- */
- private int type = -1;
-
- /**
- * Field stringValue.
- */
- private java.lang.String stringValue = null;
-
-
- //----------------/
- //- Constructors -/
- //----------------/
-
- private FeatureMatcherByType(final int type, final java.lang.String value) {
- super();
- this.type = type;
- this.stringValue = value;
- }
-
-
- //-----------/
- //- Methods -/
- //-----------/
-
- /**
- * Method enumerate.Returns an enumeration of all possible
- * instances of FeatureMatcherByType
- *
- * @return an Enumeration over all possible instances of
- * FeatureMatcherByType
- */
- public static java.util.Enumeration enumerate(
- ) {
- return _memberTable.elements();
- }
-
- /**
- * Method getType.Returns the type of this FeatureMatcherByType
- *
- * @return the type of this FeatureMatcherByType
- */
- public int getType(
- ) {
- return this.type;
- }
-
- /**
- * Method init.
- *
- * @return the initialized Hashtable for the member table
- */
- private static java.util.Hashtable init(
- ) {
- Hashtable members = new Hashtable();
- members.put("byLabel", BYLABEL);
- members.put("byScore", BYSCORE);
- members.put("byAttribute", BYATTRIBUTE);
- return members;
- }
-
- /**
- * Method readResolve. will be called during deserialization to
- * replace the deserialized object with the correct constant
- * instance.
- *
- * @return this deserialized object
- */
- private java.lang.Object readResolve(
- ) {
- return valueOf(this.stringValue);
- }
-
- /**
- * Method toString.Returns the String representation of this
- * FeatureMatcherByType
- *
- * @return the String representation of this FeatureMatcherByTyp
- */
- public java.lang.String toString(
- ) {
- return this.stringValue;
- }
-
- /**
- * Method valueOf.Returns a new FeatureMatcherByType based on
- * the given String value.
- *
- * @param string
- * @return the FeatureMatcherByType value of parameter 'string'
- */
- public static jalview.schemabinding.version2.types.FeatureMatcherByType valueOf(
- final java.lang.String string) {
- java.lang.Object obj = null;
- if (string != null) {
- obj = _memberTable.get(string);
- }
- if (obj == null) {
- String err = "" + string + " is not a valid FeatureMatcherByType";
- throw new IllegalArgumentException(err);
- }
- return (FeatureMatcherByType) obj;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.types;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import java.util.Hashtable;
-
-/**
- * Graduated feature colour if no score (or attribute) value
- *
- * @version $Revision$ $Date$
- */
-public class NoValueColour implements java.io.Serializable
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * The None type
- */
- public static final int NONE_TYPE = 0;
-
- /**
- * The instance of the None type
- */
- public static final NoValueColour NONE = new NoValueColour(NONE_TYPE,
- "None");
-
- /**
- * The Min type
- */
- public static final int MIN_TYPE = 1;
-
- /**
- * The instance of the Min type
- */
- public static final NoValueColour MIN = new NoValueColour(MIN_TYPE,
- "Min");
-
- /**
- * The Max type
- */
- public static final int MAX_TYPE = 2;
-
- /**
- * The instance of the Max type
- */
- public static final NoValueColour MAX = new NoValueColour(MAX_TYPE,
- "Max");
-
- /**
- * Field _memberTable.
- */
- private static java.util.Hashtable _memberTable = init();
-
- /**
- * Field type.
- */
- private int type = -1;
-
- /**
- * Field stringValue.
- */
- private java.lang.String stringValue = null;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- private NoValueColour(final int type, final java.lang.String value)
- {
- super();
- this.type = type;
- this.stringValue = value;
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method enumerate.Returns an enumeration of all possible instances of
- * NoValueColour
- *
- * @return an Enumeration over all possible instances of NoValueColour
- */
- public static java.util.Enumeration enumerate()
- {
- return _memberTable.elements();
- }
-
- /**
- * Method getType.Returns the type of this NoValueColour
- *
- * @return the type of this NoValueColour
- */
- public int getType()
- {
- return this.type;
- }
-
- /**
- * Method init.
- *
- * @return the initialized Hashtable for the member table
- */
- private static java.util.Hashtable init()
- {
- Hashtable members = new Hashtable();
- members.put("None", NONE);
- members.put("Min", MIN);
- members.put("Max", MAX);
- return members;
- }
-
- /**
- * Method readResolve. will be called during deserialization to replace the
- * deserialized object with the correct constant instance.
- *
- * @return this deserialized object
- */
- private java.lang.Object readResolve()
- {
- return valueOf(this.stringValue);
- }
-
- /**
- * Method toString.Returns the String representation of this NoValueColour
- *
- * @return the String representation of this NoValueColour
- */
- public java.lang.String toString()
- {
- return this.stringValue;
- }
-
- /**
- * Method valueOf.Returns a new NoValueColour based on the given String value.
- *
- * @param string
- * @return the NoValueColour value of parameter 'string'
- */
- public static jalview.schemabinding.version2.types.NoValueColour valueOf(
- final java.lang.String string)
- {
- java.lang.Object obj = null;
- if (string != null)
- {
- obj = _memberTable.get(string);
- }
- if (obj == null)
- {
- String err = "" + string + " is not a valid NoValueColour";
- throw new IllegalArgumentException(err);
- }
- return (NoValueColour) obj;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.types.descriptors;
-
- //---------------------------------/
- //- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.types.ColourThreshTypeType;
-
-/**
- * Class ColourThreshTypeTypeDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class ColourThreshTypeTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
-
-
- //--------------------------/
- //- Class/Member Variables -/
- //--------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
-
- //----------------/
- //- Constructors -/
- //----------------/
-
- public ColourThreshTypeTypeDescriptor() {
- super();
- _nsURI = "www.jalview.org/colours";
- _xmlName = "ColourThreshTypeType";
- _elementDefinition = false;
- }
-
-
- //-----------/
- //- Methods -/
- //-----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode(
- ) {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no
- * identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity(
- ) {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass(
- ) {
- return jalview.schemabinding.version2.types.ColourThreshTypeType.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix(
- ) {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and
- * unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI(
- ) {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator(
- ) {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName(
- ) {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that
- * of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition(
- ) {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.types.descriptors;
-
- //---------------------------------/
- //- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.types.FeatureMatcherByType;
-
-/**
- * Class FeatureMatcherByTypeDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class FeatureMatcherByTypeDescriptor extends org.exolab.castor.xml.util.XMLClassDescriptorImpl {
-
-
- //--------------------------/
- //- Class/Member Variables -/
- //--------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
-
- //----------------/
- //- Constructors -/
- //----------------/
-
- public FeatureMatcherByTypeDescriptor() {
- super();
- _nsURI = "www.jalview.org/colours";
- _xmlName = "FeatureMatcherByType";
- _elementDefinition = false;
- }
-
-
- //-----------/
- //- Methods -/
- //-----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode(
- ) {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no
- * identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity(
- ) {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass(
- ) {
- return jalview.schemabinding.version2.types.FeatureMatcherByType.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix(
- ) {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and
- * unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI(
- ) {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator(
- ) {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName(
- ) {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that
- * of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition(
- ) {
- return _elementDefinition;
- }
-
-}
+++ /dev/null
-/*
- * This class was automatically generated with
- * <a href="http://www.castor.org">Castor 1.1</a>, using an XML
- * Schema.
- * $Id$
- */
-
-package jalview.schemabinding.version2.types.descriptors;
-
-//---------------------------------/
-//- Imported classes and packages -/
-//---------------------------------/
-
-import jalview.schemabinding.version2.types.NoValueColour;
-
-/**
- * Class NoValueColourDescriptor.
- *
- * @version $Revision$ $Date$
- */
-public class NoValueColourDescriptor
- extends org.exolab.castor.xml.util.XMLClassDescriptorImpl
-{
-
- // --------------------------/
- // - Class/Member Variables -/
- // --------------------------/
-
- /**
- * Field _elementDefinition.
- */
- private boolean _elementDefinition;
-
- /**
- * Field _nsPrefix.
- */
- private java.lang.String _nsPrefix;
-
- /**
- * Field _nsURI.
- */
- private java.lang.String _nsURI;
-
- /**
- * Field _xmlName.
- */
- private java.lang.String _xmlName;
-
- // ----------------/
- // - Constructors -/
- // ----------------/
-
- public NoValueColourDescriptor()
- {
- super();
- _nsURI = "www.jalview.org/colours";
- _xmlName = "NoValueColour";
- _elementDefinition = false;
- }
-
- // -----------/
- // - Methods -/
- // -----------/
-
- /**
- * Method getAccessMode.
- *
- * @return the access mode specified for this class.
- */
- public org.exolab.castor.mapping.AccessMode getAccessMode()
- {
- return null;
- }
-
- /**
- * Method getIdentity.
- *
- * @return the identity field, null if this class has no identity.
- */
- public org.exolab.castor.mapping.FieldDescriptor getIdentity()
- {
- return super.getIdentity();
- }
-
- /**
- * Method getJavaClass.
- *
- * @return the Java class represented by this descriptor.
- */
- public java.lang.Class getJavaClass()
- {
- return jalview.schemabinding.version2.types.NoValueColour.class;
- }
-
- /**
- * Method getNameSpacePrefix.
- *
- * @return the namespace prefix to use when marshaling as XML.
- */
- public java.lang.String getNameSpacePrefix()
- {
- return _nsPrefix;
- }
-
- /**
- * Method getNameSpaceURI.
- *
- * @return the namespace URI used when marshaling and unmarshaling as XML.
- */
- public java.lang.String getNameSpaceURI()
- {
- return _nsURI;
- }
-
- /**
- * Method getValidator.
- *
- * @return a specific validator for the class described by this
- * ClassDescriptor.
- */
- public org.exolab.castor.xml.TypeValidator getValidator()
- {
- return this;
- }
-
- /**
- * Method getXMLName.
- *
- * @return the XML Name for the Class being described.
- */
- public java.lang.String getXMLName()
- {
- return _xmlName;
- }
-
- /**
- * Method isElementDefinition.
- *
- * @return true if XML schema definition of this Class is that of a global
- * element or element with anonymous type definition.
- */
- public boolean isElementDefinition()
- {
- return _elementDefinition;
- }
-
-}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.AnnotatedCollectionI;
private IdentityHashMap<SequenceI, AlignmentAnnotation> seqannot = null;
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI sg,
- Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI sg)
{
AnnotationColourGradient acg = new AnnotationColourGradient(annotation,
getColourScheme(), aboveAnnotationThreshold);
}
else
{
- seqannot = new IdentityHashMap<SequenceI, AlignmentAnnotation>();
+ seqannot = new IdentityHashMap<>();
}
// resolve the context containing all the annotation for the sequence
AnnotatedCollectionI alcontext = alignment instanceof AlignmentI
if (annotationThreshold != null)
{
if ((aboveAnnotationThreshold == ABOVE_THRESHOLD
- && aj.value < annotationThreshold.value)
+ && aj.value <= annotationThreshold.value)
|| (aboveAnnotationThreshold == BELOW_THRESHOLD
- && aj.value > annotationThreshold.value))
+ && aj.value >= annotationThreshold.value))
{
return Color.white;
}
&& aboveAnnotationThreshold == ABOVE_THRESHOLD
&& value >= ann.threshold.value)
{
- range = (value - ann.threshold.value)
+ range = ann.graphMax == ann.threshold.value ? 1f
+ : (value - ann.threshold.value)
/ (ann.graphMax - ann.threshold.value);
}
else if (thresholdIsMinMax && ann.threshold != null
&& aboveAnnotationThreshold == BELOW_THRESHOLD
&& value <= ann.threshold.value)
{
- range = (value - ann.graphMin) / (ann.threshold.value - ann.graphMin);
+ range = ann.graphMin == ann.threshold.value ? 0f
+ : (value - ann.graphMin)
+ / (ann.threshold.value - ann.graphMin);
}
else
{
@Override
public String getSchemeName()
{
- return "Annotation";
+ return ANNOTATION_COLOUR;
}
@Override
package jalview.schemes;
import jalview.analysis.scoremodels.ScoreModels;
+import jalview.api.AlignViewportI;
import jalview.api.analysis.PairwiseScoreModelI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
import jalview.datamodel.SequenceI;
import jalview.util.Comparison;
import java.awt.Color;
-import java.util.Map;
public class Blosum62ColourScheme extends ResidueColourScheme
{
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new Blosum62ColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
import java.awt.Color;
-import java.util.Map;
/**
* DOCUMENT ME!
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new BuriedColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
import jalview.datamodel.SequenceCollectionI;
import jalview.datamodel.SequenceI;
}
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI sg,
- Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI sg)
{
ClustalxColourScheme css = new ClustalxColourScheme(sg,
- hiddenRepSequences);
+ view == null ? null : view.getHiddenRepSequences());
css.includeGaps = includeGaps;
return css;
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
import jalview.datamodel.SequenceCollectionI;
import jalview.datamodel.SequenceI;
* new instance for each call to this method, as different instances may have
* differing shading by consensus or percentage identity applied.
*
+ * @param viewport
+ * - the parent viewport
* @param sg
- * @param hiddenRepSequences
+ * - the collection of sequences to be coloured
* @return copy of current scheme with any inherited settings transferred
*/
- ColourSchemeI getInstance(AnnotatedCollectionI sg,
- Map<SequenceI, SequenceCollectionI> hiddenRepSequences);
+ ColourSchemeI getInstance(AlignViewportI viewport,
+ AnnotatedCollectionI sg);
/**
* Answers true if the colour scheme is suitable for the given data, else
}
} catch (Exception ex)
{
- // Could be old Jalview Archive format
- try
- {
- InputStreamReader in = new InputStreamReader(
- new FileInputStream(file), "UTF-8");
-
- jalview.binding.JalviewUserColours jucs = new jalview.binding.JalviewUserColours();
-
- jucs = jalview.binding.JalviewUserColours.unmarshal(in);
-
- newColours = new Color[jucs.getColourCount()];
-
- for (int i = 0; i < 24; i++)
- {
- newColours[i] = new Color(
- Integer.parseInt(jucs.getColour(i).getRGB(), 16));
- }
- ucs = new UserColourScheme(newColours);
- ucs.setName(jucs.getSchemeName());
- } catch (Exception ex2)
- {
- ex2.printStackTrace();
- }
-
- if (newColours == null)
- {
- System.out.println("Error loading User ColourFile\n" + ex);
- }
+ // used to try to parse a V1 Castor generated colours file
+ System.err.println("Failed to read colour scheme from " + filePath
+ + " : " + ex.toString());
}
return ucs;
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
import jalview.util.ColorUtils;
* @param name
* @return
*/
- public static ColourSchemeI getColourScheme(AnnotatedCollectionI forData,
+ public static ColourSchemeI getColourScheme(AlignViewportI view,
+ AnnotatedCollectionI forData,
String name)
{
if (ResidueColourScheme.NONE.equalsIgnoreCase(name))
* create a new instance of it
*/
ColourSchemeI scheme = ColourSchemes.getInstance().getColourScheme(name,
+ view,
forData, null);
if (scheme != null)
{
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
import jalview.datamodel.SequenceCollectionI;
import jalview.datamodel.SequenceI;
* store in an order-preserving map, so items can be added to menus
* in the order in which they are 'discovered'
*/
- schemes = new LinkedHashMap<String, ColourSchemeI>();
+ schemes = new LinkedHashMap<>();
for (JalviewColourScheme cs : JalviewColourScheme.values())
{
{
System.err.println("Error instantiating colour scheme for "
+ cs.toString() + " " + e.getMessage());
+ e.printStackTrace();
}
}
}
*
* @param name
* name of the colour scheme
+ * @param viewport
* @param forData
* the data to be coloured
* @param optional
* @return
*/
public ColourSchemeI getColourScheme(String name,
- AnnotatedCollectionI forData,
+ AlignViewportI viewport, AnnotatedCollectionI forData,
Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
{
if (name == null)
return null;
}
ColourSchemeI cs = schemes.get(name.toLowerCase());
- return cs == null ? null : cs.getInstance(forData, hiddenRepSequences);
+ return cs == null ? null
+ : cs.getInstance(viewport, forData);
}
/**
public ColourSchemeI getColourScheme(String name,
AnnotatedCollectionI forData)
{
- return getColourScheme(name, forData, null);
+ return getColourScheme(name, null, forData, null);
}
/**
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
import jalview.util.ColorUtils;
import java.awt.Color;
*/
public class CovariationColourScheme extends ResidueColourScheme
{
- public Map<String, Color> helixcolorhash = new Hashtable<String, Color>();
+ public Map<String, Color> helixcolorhash = new Hashtable<>();
- public Map<Integer, String> positionsToHelix = new Hashtable<Integer, String>();
+ public Map<Integer, String> positionsToHelix = new Hashtable<>();
int numHelix = 0;
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new CovariationColourScheme(coll.getAlignmentAnnotation()[0]);
}
Color maxColour = ColorUtils.parseColourString(maxcol);
Color noColour = noValueColour.equals(NO_VALUE_MAX) ? maxColour
: (noValueColour.equals(NO_VALUE_NONE) ? null : minColour);
- featureColour = new FeatureColour(minColour, maxColour, noColour, min,
- max);
+ featureColour = new FeatureColour(maxColour, minColour, maxColour,
+ noColour, min, max);
featureColour.setColourByLabel(minColour == null);
featureColour.setAutoScaled(autoScaled);
if (byAttribute)
}
/**
- * Constructor given a simple colour
+ * Constructor given a simple colour. This also 'primes' a graduated colour
+ * range, where the maximum colour is the given simple colour, and the minimum
+ * colour a paler shade of it. This is for convenience when switching from a
+ * simple colour to a graduated colour scheme.
*
* @param c
*/
public FeatureColour(Color c)
{
- minColour = Color.WHITE;
- maxColour = Color.BLACK;
- noColour = DEFAULT_NO_COLOUR;
- minRed = 0f;
- minGreen = 0f;
- minBlue = 0f;
- deltaRed = 0f;
- deltaGreen = 0f;
- deltaBlue = 0f;
- colour = c;
- }
+ /*
+ * set max colour to the simple colour, min colour to a paler shade of it
+ */
+ this(c, c == null ? Color.white : ColorUtils.bleachColour(c, 0.9f),
+ c == null ? Color.black : c, DEFAULT_NO_COLOUR, 0, 0);
- /**
- * Constructor given a colour range and a score range, defaulting 'no value
- * colour' to be the same as minimum colour
- *
- * @param low
- * @param high
- * @param min
- * @param max
- */
- public FeatureColour(Color low, Color high, float min, float max)
- {
- this(low, high, low, min, max);
+ /*
+ * but enforce simple colour for now!
+ */
+ setGraduatedColour(false);
}
/**
}
/**
- * Copy constructor with new min/max ranges
- *
- * @param fc
- * @param min
- * @param max
- */
- public FeatureColour(FeatureColour fc, float min, float max)
- {
- this(fc);
- updateBounds(min, max);
- }
-
- /**
- * Constructor for a graduated colour
+ * Constructor that sets both simple and graduated colour values. This allows
+ * alternative colour schemes to be 'preserved' while switching between them
+ * to explore their effects on the visualisation.
+ * <p>
+ * This sets the colour scheme to 'graduated' by default. Override this if
+ * wanted by calling <code>setGraduatedColour(false)</code> for a simple
+ * colour, or <code>setColourByLabel(true)</code> for colour by label.
*
+ * @param myColour
* @param low
* @param high
* @param noValueColour
* @param min
* @param max
*/
- public FeatureColour(Color low, Color high, Color noValueColour,
- float min, float max)
+ public FeatureColour(Color myColour, Color low, Color high,
+ Color noValueColour, float min, float max)
{
if (low == null)
{
{
high = Color.black;
}
- graduatedColour = true;
- colour = null;
+ colour = myColour;
minColour = low;
maxColour = high;
+ setGraduatedColour(true);
noColour = noValueColour;
threshold = Float.NaN;
isHighToLow = min >= max;
* Sets the 'graduated colour' flag. If true, also sets 'colour by label' to
* false.
*/
- void setGraduatedColour(boolean b)
+ public void setGraduatedColour(boolean b)
{
graduatedColour = b;
if (b)
/**
* Returns the colour for the given instance of the feature. This may be a
- * simple colour, a colour generated from the feature description (if
- * isColourByLabel()), or a colour derived from the feature score (if
- * isGraduatedColour()).
+ * simple colour, a colour generated from the feature description or other
+ * attribute (if isColourByLabel()), or a colour derived from the feature
+ * score or other attribute (if isGraduatedColour()).
+ * <p>
+ * Answers null if feature score (or attribute) value lies outside a
+ * configured threshold.
*
* @param feature
* @return
sb.append(BAR).append(Format.getHexString(getMinColour()))
.append(BAR);
sb.append(Format.getHexString(getMaxColour())).append(BAR);
- String noValue = minColour.equals(noColour) ? NO_VALUE_MIN
- : (maxColour.equals(noColour) ? NO_VALUE_MAX
- : NO_VALUE_NONE);
+
+ /*
+ * 'no value' colour should be null, min or max colour;
+ * if none of these, coerce to minColour
+ */
+ String noValue = NO_VALUE_MIN;
+ if (maxColour.equals(noColour))
+ {
+ noValue = NO_VALUE_MAX;
+ }
+ if (noColour == null)
+ {
+ noValue = NO_VALUE_NONE;
+ }
sb.append(noValue).append(BAR);
if (!isAutoScaled())
{
}
@Override
+ public boolean isOutwithThreshold(SequenceFeature feature)
+ {
+ if (!isGraduatedColour())
+ {
+ return false;
+ }
+ float scr = feature.getScore();
+ if (attributeName != null)
+ {
+ try
+ {
+ String attVal = feature.getValueAsString(attributeName);
+ scr = Float.valueOf(attVal);
+ } catch (Throwable e)
+ {
+ scr = Float.NaN;
+ }
+ }
+ if (Float.isNaN(scr))
+ {
+ return false;
+ }
+
+ return ((isAboveThreshold() && scr <= threshold)
+ || (isBelowThreshold() && scr >= threshold));
+ }
+
+ @Override
public String getDescription()
{
if (isSimpleColour())
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
-
-import java.util.Map;
/**
* Colourscheme that takes its colours from some other colourscheme
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new FollowerColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
import java.awt.Color;
-import java.util.Map;
public class HelixColourScheme extends ScoreColourScheme
{
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new HelixColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
import java.awt.Color;
-import java.util.Map;
/**
* DOCUMENT ME!
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new HydrophobicColourScheme();
}
--- /dev/null
+/*
+ * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
+ * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
+ * The Jalview Authors are detailed in the 'AUTHORS' file.
+ */
+package jalview.schemes;
+
+import jalview.api.AlignViewportI;
+import jalview.datamodel.AnnotatedCollectionI;
+import jalview.datamodel.SequenceCollectionI;
+import jalview.datamodel.SequenceI;
+
+import java.awt.Color;
+import java.util.Map;
+
+/**
+ * shade sequences using the colour shown in the ID panel. Useful to map
+ * sequence groupings onto residue data (eg tree subgroups visualised on
+ * structures or overview window)
+ *
+ * @author jprocter
+ */
+public class IdColourScheme implements ColourSchemeI
+{
+ AlignViewportI view = null;
+
+ public IdColourScheme()
+ {
+
+ }
+ public IdColourScheme(AlignViewportI view, AnnotatedCollectionI coll)
+ {
+ this.view = view;
+ }
+
+
+ @Override
+ public String getSchemeName()
+ {
+ return JalviewColourScheme.IdColour.toString();
+ }
+
+ /**
+ * Returns a new instance of this colour scheme with which the given data may
+ * be coloured
+ */
+ @Override
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
+ {
+ return new IdColourScheme(view, coll);
+ }
+
+ @Override
+ public void alignmentChanged(AnnotatedCollectionI alignment,
+ Map<SequenceI, SequenceCollectionI> hiddenReps)
+ {
+ }
+
+ @Override
+ public Color findColour(char symbol, int position, SequenceI seq,
+ String consensusResidue, float pid)
+ {
+ // rather than testing if coll is a sequence group, and if so looking at
+ // ((SequenceGroup)coll).idColour
+ // we always return the sequence ID colour, in case the user has customised
+ // the displayed Id colour by right-clicking an internal node in the tree.
+ if (view == null)
+ {
+ return Color.WHITE;
+ }
+ Color col = view.getSequenceColour(seq);
+ return Color.WHITE.equals(col) ? Color.WHITE : col.darker();
+ }
+
+ @Override
+ public boolean hasGapColour()
+ {
+ return false;
+ }
+
+ @Override
+ public boolean isApplicableTo(AnnotatedCollectionI ac)
+ {
+ return true;
+ }
+
+ @Override
+ public boolean isSimple()
+ {
+ return false;
+ }
+}
Nucleotide("Nucleotide", NucleotideColourScheme.class),
PurinePyrimidine("Purine/Pyrimidine", PurinePyrimidineColourScheme.class),
RNAHelices("RNA Helices", RNAHelicesColour.class),
- TCoffee("T-Coffee Scores", TCoffeeColourScheme.class);
+ TCoffee("T-Coffee Scores", TCoffeeColourScheme.class),
+ IdColour("Sequence ID", IdColourScheme.class);
// RNAInteraction("RNA Interaction type", RNAInteractionColourScheme.class)
private String name;
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
-
-import java.util.Map;
/**
* DOCUMENT ME!
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new NucleotideColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
import jalview.datamodel.SequenceGroup;
import jalview.datamodel.SequenceI;
import jalview.util.Comparison;
import java.awt.Color;
-import java.util.Map;
public class PIDColourScheme extends ResidueColourScheme
{
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new PIDColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
-
-import java.util.Map;
/**
* Class is based off of NucleotideColourScheme
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new PurinePyrimidineColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.AnnotatedCollectionI;
* Maps sequence positions to the RNA helix they belong to. Key: position,
* Value: helix TODO: Revise or drop in favour of annotation position numbers
*/
- public Hashtable<Integer, String> positionsToHelix = new Hashtable<Integer, String>();
+ public Hashtable<Integer, String> positionsToHelix = new Hashtable<>();
/**
* Number of helices in the RNA secondary structure
annotation.getRNAStruc();
lastrefresh = annotation._rnasecstr.hashCode();
numHelix = 0;
- positionsToHelix = new Hashtable<Integer, String>();
+ positionsToHelix = new Hashtable<>();
// Figure out number of helices
// Length of rnasecstr is the number of pairs of positions that base pair
}
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI sg,
- Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI sg)
{
return new RNAHelicesColour(sg);
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
import jalview.datamodel.SequenceI;
import java.awt.Color;
-import java.util.Map;
public class RNAInteractionColourScheme extends ResidueColourScheme
{
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new RNAInteractionColourScheme();
}
public static final String USER_DEFINED_MENU = "*User Defined*";
/*
+ * the canonical name of the annotation colour scheme
+ * (may be used to identify it in menu items)
+ */
+ public static final String ANNOTATION_COLOUR = "Annotation";
+
+ /*
* lookup up by character value e.g. 'G' to the colors array index
* e.g. if symbolIndex['K'] = 11 then colors[11] is the colour for K
*/
*/
package jalview.schemes;
+import jalview.analysis.GeneticCodes;
+
import java.awt.Color;
import java.util.ArrayList;
import java.util.Arrays;
public static String START = "ATG";
- /**
- * Nucleotide Ambiguity Codes
- */
- public static final Map<String, String[]> ambiguityCodes = new Hashtable<>();
-
- /**
- * Codon triplets with additional symbols for unambiguous codons that include
- * ambiguity codes
- */
- public static final Hashtable<String, String> codonHash2 = new Hashtable<>();
-
- /**
- * all ambiguity codes for a given base
- */
- public final static Hashtable<String, List<String>> _ambiguityCodes = new Hashtable<>();
-
- static
- {
- /*
- * Ambiguity codes as per http://www.chem.qmul.ac.uk/iubmb/misc/naseq.html
- */
- ambiguityCodes.put("R", new String[] { "A", "G" });
- ambiguityCodes.put("Y", new String[] { "T", "C" });
- ambiguityCodes.put("W", new String[] { "A", "T" });
- ambiguityCodes.put("S", new String[] { "G", "C" });
- ambiguityCodes.put("M", new String[] { "A", "C" });
- ambiguityCodes.put("K", new String[] { "G", "T" });
- ambiguityCodes.put("H", new String[] { "A", "T", "C" });
- ambiguityCodes.put("B", new String[] { "G", "T", "C" });
- ambiguityCodes.put("V", new String[] { "G", "A", "C" });
- ambiguityCodes.put("D", new String[] { "G", "A", "T" });
- ambiguityCodes.put("N", new String[] { "G", "A", "T", "C" });
-
- // Now build codon translation table
- codonHash2.put("AAA", "K");
- codonHash2.put("AAG", "K");
- codonHash2.put("AAC", "N");
- codonHash2.put("AAT", "N");
-
- codonHash2.put("CAA", "Q");
- codonHash2.put("CAG", "Q");
- codonHash2.put("CAC", "H");
- codonHash2.put("CAT", "H");
-
- codonHash2.put("GAA", "E");
- codonHash2.put("GAG", "E");
- codonHash2.put("GAC", "D");
- codonHash2.put("GAT", "D");
-
- codonHash2.put("TAC", "Y");
- codonHash2.put("TAT", "Y");
-
- codonHash2.put("ACA", "T");
- codonHash2.put("ACC", "T");
- codonHash2.put("ACT", "T");
- codonHash2.put("ACG", "T");
-
- codonHash2.put("CCA", "P");
- codonHash2.put("CCG", "P");
- codonHash2.put("CCC", "P");
- codonHash2.put("CCT", "P");
-
- codonHash2.put("GCA", "A");
- codonHash2.put("GCG", "A");
- codonHash2.put("GCC", "A");
- codonHash2.put("GCT", "A");
-
- codonHash2.put("TCA", "S");
- codonHash2.put("TCG", "S");
- codonHash2.put("TCC", "S");
- codonHash2.put("TCT", "S");
- codonHash2.put("AGC", "S");
- codonHash2.put("AGT", "S");
-
- codonHash2.put("AGA", "R");
- codonHash2.put("AGG", "R");
- codonHash2.put("CGA", "R");
- codonHash2.put("CGG", "R");
- codonHash2.put("CGC", "R");
- codonHash2.put("CGT", "R");
-
- codonHash2.put("GGA", "G");
- codonHash2.put("GGG", "G");
- codonHash2.put("GGC", "G");
- codonHash2.put("GGT", "G");
-
- codonHash2.put("TGA", "*");
- codonHash2.put("TAA", "*");
- codonHash2.put("TAG", "*");
-
- codonHash2.put("TGG", "W");
-
- codonHash2.put("TGC", "C");
- codonHash2.put("TGT", "C");
-
- codonHash2.put("ATA", "I");
- codonHash2.put("ATC", "I");
- codonHash2.put("ATT", "I");
-
- codonHash2.put("ATG", "M");
-
- codonHash2.put("CTA", "L");
- codonHash2.put("CTG", "L");
- codonHash2.put("CTC", "L");
- codonHash2.put("CTT", "L");
- codonHash2.put("TTA", "L");
- codonHash2.put("TTG", "L");
-
- codonHash2.put("GTA", "V");
- codonHash2.put("GTG", "V");
- codonHash2.put("GTC", "V");
- codonHash2.put("GTT", "V");
-
- codonHash2.put("TTC", "F");
- codonHash2.put("TTT", "F");
-
- buildAmbiguityCodonSet();
- }
-
- /**
- * programmatic generation of codons including ambiguity codes
- */
- public static void buildAmbiguityCodonSet()
- {
- if (_ambiguityCodes.size() > 0)
- {
- System.err
- .println("Ignoring multiple calls to buildAmbiguityCodonSet");
- return;
- }
- // Invert the ambiguity code set
- for (Map.Entry<String, String[]> acode : ambiguityCodes.entrySet())
- {
- for (String r : acode.getValue())
- {
- List<String> codesfor = _ambiguityCodes.get(r);
- if (codesfor == null)
- {
- _ambiguityCodes.put(r, codesfor = new ArrayList<>());
- }
- if (!codesfor.contains(acode.getKey()))
- {
- codesfor.add(acode.getKey());
- }
- else
- {
- System.err.println(
- "Inconsistency in the IUBMB ambiguity code nomenclature table: collision for "
- + acode.getKey() + " in residue " + r);
- }
- }
- }
- // and programmatically add in the ambiguity codes that yield the same amino
- // acid
- String[] unambcodons = codonHash2.keySet()
- .toArray(new String[codonHash2.size()]);
- for (String codon : unambcodons)
- {
- String residue = codonHash2.get(codon);
- String acodon[][] = new String[codon.length()][];
- for (int i = 0, iSize = codon.length(); i < iSize; i++)
- {
- String _ac = "" + codon.charAt(i);
- List<String> acodes = _ambiguityCodes.get(_ac);
- if (acodes != null)
- {
- acodon[i] = acodes.toArray(new String[acodes.size()]);
- }
- else
- {
- acodon[i] = new String[] {};
- }
- }
- // enumerate all combinations and test for veracity of translation
- int tpos[] = new int[codon.length()],
- cpos[] = new int[codon.length()];
- for (int i = 0; i < tpos.length; i++)
- {
- tpos[i] = -1;
- }
- tpos[acodon.length - 1] = 0;
- int ipos, j;
- while (tpos[0] < acodon[0].length)
- {
- // make all codons for this combination
- char allres[][] = new char[tpos.length][];
- String _acodon = "";
- for (ipos = 0; ipos < tpos.length; ipos++)
- {
- if (acodon[ipos].length == 0 || tpos[ipos] < 0)
- {
- _acodon += codon.charAt(ipos);
- allres[ipos] = new char[] { codon.charAt(ipos) };
- }
- else
- {
- _acodon += acodon[ipos][tpos[ipos]];
- String[] altbase = ambiguityCodes.get(acodon[ipos][tpos[ipos]]);
- allres[ipos] = new char[altbase.length];
- j = 0;
- for (String ab : altbase)
- {
- allres[ipos][j++] = ab.charAt(0);
- }
- }
- }
- // test all codons for this combination
- for (ipos = 0; ipos < cpos.length; ipos++)
- {
- cpos[ipos] = 0;
- }
- boolean valid = true;
- do
- {
- String _codon = "";
- for (j = 0; j < cpos.length; j++)
- {
- _codon += allres[j][cpos[j]];
- }
- String tr = codonHash2.get(_codon);
- if (valid = (tr != null && tr.equals(residue)))
- {
- // advance to next combination
- ipos = acodon.length - 1;
- while (++cpos[ipos] >= allres[ipos].length && ipos > 0)
- {
- cpos[ipos] = 0;
- ipos--;
- }
- }
- } while (valid && cpos[0] < allres[0].length);
- if (valid)
- {
- // Add this to the set of codons we will translate
- // System.out.println("Adding ambiguity codon: " + _acodon + " for "
- // + residue);
- codonHash2.put(_acodon, residue);
- }
- else
- {
- // System.err.println("Rejecting ambiguity codon: " + _acodon
- // + " for " + residue);
- }
- // next combination
- ipos = acodon.length - 1;
- while (++tpos[ipos] >= acodon[ipos].length && ipos > 0)
- {
- tpos[ipos] = -1;
- ipos--;
- }
- }
- }
- }
-
// Stores residue codes/names and colours and other things
public static Map<String, Map<String, Integer>> propHash = new Hashtable<>();
public static String codonTranslate(String lccodon)
{
- String cdn = codonHash2.get(lccodon.toUpperCase());
- if ("*".equals(cdn))
+ String peptide = GeneticCodes.getInstance().getStandardCodeTable()
+ .translate(lccodon);
+ if ("*".equals(peptide))
{
- return STOP;
+ return "STOP";
}
- return cdn;
+ return peptide;
}
- public static Hashtable<String, String> toDssp3State;
+ /*
+ * lookup of (A-Z) alternative secondary structure symbols'
+ * equivalents in DSSP3 notation
+ */
+ private static char[] toDssp3State;
static
{
- toDssp3State = new Hashtable<>();
- toDssp3State.put("H", "H");
- toDssp3State.put("E", "E");
- toDssp3State.put("C", " ");
- toDssp3State.put(" ", " ");
- toDssp3State.put("T", " ");
- toDssp3State.put("B", "E");
- toDssp3State.put("G", "H");
- toDssp3State.put("I", "H");
- toDssp3State.put("X", " ");
+ toDssp3State = new char[9]; // for 'A'-'I'; extend if needed
+ Arrays.fill(toDssp3State, ' ');
+ toDssp3State['B' - 'A'] = 'E';
+ toDssp3State['E' - 'A'] = 'E';
+ toDssp3State['G' - 'A'] = 'H';
+ toDssp3State['H' - 'A'] = 'H';
+ toDssp3State['I' - 'A'] = 'H';
}
/**
* translate from other dssp secondary structure alphabets to 3-state
*
- * @param ssstring
- * @return ssstring as a three-state secondary structure assignment.
+ * @param ssString
+ * @return ssstring
*/
- public static String getDssp3state(String ssstring)
+ public static String getDssp3state(String ssString)
{
- if (ssstring == null)
+ if (ssString == null)
{
return null;
}
- StringBuffer ss = new StringBuffer();
- for (int i = 0; i < ssstring.length(); i++)
+ int lookupSize = toDssp3State.length;
+ int len = ssString.length();
+ char[] trans = new char[len];
+ for (int i = 0; i < len; i++)
{
- String ssc = ssstring.substring(i, i + 1);
- if (toDssp3State.containsKey(ssc))
+ char c = ssString.charAt(i);
+ int index = c - 'A';
+ if (index < 0 || index >= lookupSize)
{
- ss.append(toDssp3State.get(ssc));
+ trans[i] = ' ';
}
else
{
- ss.append(" ");
+ trans[i] = toDssp3State[index];
}
}
- return ss.toString();
+ return new String(trans);
}
static
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
import jalview.datamodel.SequenceI;
import jalview.util.Comparison;
import java.awt.Color;
-import java.util.Map;
/**
* DOCUMENT ME!
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new ScoreColourScheme(symbolIndex, scores, min, max);
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
import java.awt.Color;
-import java.util.Map;
/**
* DOCUMENT ME!
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new StrandColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.AnnotatedCollectionI;
// assume only one set of TCOFFEE scores - but could have more than one
// potentially.
- List<AlignmentAnnotation> annots = new ArrayList<AlignmentAnnotation>();
+ List<AlignmentAnnotation> annots = new ArrayList<>();
// Search alignment to get all tcoffee annotation and pick one set of
// annotation to use to colour seqs.
- seqMap = new IdentityHashMap<SequenceI, Color[]>();
+ seqMap = new IdentityHashMap<>();
AnnotatedCollectionI alcontext = alignment instanceof AlignmentI
? alignment
: alignment.getContext();
}
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI sg,
- Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI sg)
{
return new TCoffeeColourScheme(sg);
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
-
-import java.util.Map;
public class TaylorColourScheme extends ResidueColourScheme
{
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new TaylorColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
import java.awt.Color;
-import java.util.Map;
/**
* DOCUMENT ME!
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new TurnColourScheme();
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
import jalview.util.ColorUtils;
import jalview.util.StringUtils;
}
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI sg,
- Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI sg)
{
return new UserColourScheme(this);
}
*/
package jalview.schemes;
+import jalview.api.AlignViewportI;
import jalview.datamodel.AnnotatedCollectionI;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceI;
-
-import java.util.Map;
/**
* DOCUMENT ME!
* be coloured
*/
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI coll,
- Map<SequenceI, SequenceCollectionI> hrs)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI coll)
{
return new ZappoColourScheme();
}
import java.util.HashSet;
import java.util.List;
import java.util.Map;
+import java.util.Set;
import com.stevesoft.pat.Regex;
/**
* Utilities for handling DBRef objects and their collections.
*/
-public class DBRefUtils {
+public class DBRefUtils
+{
+ /*
+ * lookup from lower-case form of a name to its canonical (standardised) form
+ */
+ private static Map<String, String> canonicalSourceNameLookup = new HashMap<>();
public final static int DB_SOURCE = 1;
public final static int DB_VERSION = 2;
public final static int SEARCH_MODE_NO_MAP_NO_VERSION = DB_SOURCE | DB_ID;
public final static int SEARCH_MODE_FULL = DB_SOURCE | DB_VERSION | DB_ID | DB_MAP;
- /*
- * lookup from lower-case form of a name to its canonical (standardised) form
- */
- private static Map<String, String> canonicalSourceNameLookup = new HashMap<String, String>();
-
- private static Map<String, String> dasCoordinateSystemsLookup = new HashMap<String, String>();
-
- static {
+ static
+ {
// TODO load these from a resource file?
canonicalSourceNameLookup.put("uniprotkb/swiss-prot", DBRefSource.UNIPROT);
canonicalSourceNameLookup.put("uniprotkb/trembl", DBRefSource.UNIPROT);
canonicalSourceNameLookup.put("ensembl-tr", DBRefSource.ENSEMBL);
canonicalSourceNameLookup.put("ensembl-gn", DBRefSource.ENSEMBL);
- // Make sure we have lowercase entries for all canonical string lookups
-// BH 2019.01.25 unnecessary -- they are all lower case already
- // Set<String> keys = canonicalSourceNameLookup.keySet();
-// for (String k : keys)
-// {
-// canonicalSourceNameLookup.put(k.toLowerCase(),
-// canonicalSourceNameLookup.get(k));
-// }
-
- dasCoordinateSystemsLookup.put("pdbresnum", DBRefSource.PDB);
- dasCoordinateSystemsLookup.put("uniprot", DBRefSource.UNIPROT);
- dasCoordinateSystemsLookup.put("embl", DBRefSource.EMBL);
- // dasCoordinateSystemsLookup.put("embl", DBRefSource.EMBLCDS);
+ // guarantee we always have lowercase entries for canonical string lookups
+ for (String k : canonicalSourceNameLookup.keySet())
+ {
+ canonicalSourceNameLookup.put(k.toLowerCase(),
+ canonicalSourceNameLookup.get(k));
+ }
+ }
+
+ /**
+ * Returns those DBRefEntry objects whose source identifier (once converted to
+ * Jalview's canonical form) is in the list of sources to search for. Returns
+ * null if no matches found.
+ *
+ * @param dbrefs DBRefEntry objects to search
+ * @param sources array of sources to select
+ * @return
+ */
+ public static List<DBRefEntry> selectRefs(List<DBRefEntry> dbrefs, String[] sources)
+ {
+ if (dbrefs == null || sources == null)
+ {
+ return dbrefs;
}
- /**
- * Returns those DBRefEntry objects whose source identifier (once converted to
- * Jalview's canonical form) is in the list of sources to search for. Returns
- * null if no matches found.
- *
- * @param dbrefs DBRefEntry objects to search
- * @param sources array of sources to select
- * @return
- */
- public static List<DBRefEntry> selectRefs(List<DBRefEntry> dbrefs, String[] sources) {
- if (dbrefs == null || sources == null) {
- return dbrefs;
- }
-
- // BH TODO
- HashSet<String> srcs = new HashSet<String>();
- for (String src : sources) {
- srcs.add(src.toUpperCase());
- }
-
- int nrefs = dbrefs.size();
- List<DBRefEntry> res = new ArrayList<DBRefEntry>();
- for (int ib = 0; ib < nrefs; ib++) {
- DBRefEntry dbr = dbrefs.get(ib);
- String source = getCanonicalName(dbr.getSource());
- if (srcs.contains(source.toUpperCase())) {
- res.add(dbr);
- }
- }
-
- if (res.size() > 0) {
- // List<DBRefEntry> reply = new DBRefEntry[res.size()];
- return res;// .toArray(reply);
- }
- return null;
+ // BH TODO (what?)
+ HashSet<String> srcs = new HashSet<String>();
+ for (String src : sources)
+ {
+ srcs.add(src.toUpperCase());
}
- private static boolean selectRefsBS(List<DBRefEntry> dbrefs, int sourceKeys, BitSet bsSelect) {
- if (dbrefs == null || sourceKeys == 0) {
- return false;
- }
- for (int i = 0, n = dbrefs.size(); i < n; i++) {
- DBRefEntry dbr = dbrefs.get(i);
- if ((dbr.getSourceKey() & sourceKeys) != 0) {
- bsSelect.clear(i);
- }
- }
- return !bsSelect.isEmpty();
+ int nrefs = dbrefs.size();
+ List<DBRefEntry> res = new ArrayList<DBRefEntry>();
+ for (int ib = 0; ib < nrefs; ib++)
+ {
+ DBRefEntry dbr = dbrefs.get(ib);
+ String source = getCanonicalName(dbr.getSource());
+ if (srcs.contains(source.toUpperCase()))
+ {
+ res.add(dbr);
+ }
}
-
- /**
- * isDasCoordinateSystem
- *
- * @param string String
- * @param dBRefEntry DBRefEntry
- * @return boolean true if Source DBRefEntry is compatible with DAS
- * CoordinateSystem name
- */
-
- public static boolean isDasCoordinateSystem(String string, DBRefEntry dBRefEntry) {
- if (string == null || dBRefEntry == null) {
- return false;
- }
- String coordsys = dasCoordinateSystemsLookup.get(string.toLowerCase());
- return coordsys == null ? false : coordsys.equals(dBRefEntry.getSource());
+ if (res.size() > 0)
+ {
+ // List<DBRefEntry> reply = new DBRefEntry[res.size()];
+ return res;// .toArray(reply);
}
+ return null;
+ }
+
+ private static boolean selectRefsBS(List<DBRefEntry> dbrefs, int sourceKeys, BitSet bsSelect)
+ {
+ if (dbrefs == null || sourceKeys == 0)
+ {
+ return false;
+ }
+ for (int i = 0, n = dbrefs.size(); i < n; i++)
+ {
+ DBRefEntry dbr = dbrefs.get(i);
+ if ((dbr.getSourceKey() & sourceKeys) != 0)
+ {
+ bsSelect.clear(i);
+ }
+ }
+ return !bsSelect.isEmpty();
+ }
+
+ /**
+ * Returns a (possibly empty) list of those references that match the given
+ * entry, according to the given comparator.
+ *
+ * @param refs
+ * an array of database references to search
+ * @param entry
+ * an entry to compare against
+ * @param comparator
+ * @return
+ */
+ static List<DBRefEntry> searchRefs(DBRefEntry[] refs, DBRefEntry entry,
+ DbRefComp comparator)
+ {
+ List<DBRefEntry> rfs = new ArrayList<>();
+ if (refs == null || entry == null)
+ {
+ return rfs;
+ }
+ for (int i = 0; i < refs.length; i++)
+ {
+ if (comparator.matches(entry, refs[i]))
+ {
+ rfs.add(refs[i]);
+ }
+ }
+ return rfs;
+ }
/**
* look up source in an internal list of database reference sources and return
* @return canonical jalview source (one of jalview.datamodel.DBRefSource.*) or
* original source
*/
- public static String getCanonicalName(String source) {
- if (source == null) {
- return null;
- }
- String canonical = canonicalSourceNameLookup.get(source.toLowerCase());
- return canonical == null ? source : canonical;
+ public static String getCanonicalName(String source)
+ {
+ if (source == null)
+ {
+ return null;
+ }
+ String canonical = canonicalSourceNameLookup.get(source.toLowerCase());
+ return canonical == null ? source : canonical;
}
/**
* map on either or map but no maplist on either or maplist of map on a is
* equivalent to the maplist of map on b.
*/
- public static DbRefComp matchDbAndIdAndEitherMapOrEquivalentMapList = new DbRefComp() {
+ public static DbRefComp matchDbAndIdAndEitherMapOrEquivalentMapList = new DbRefComp()
+ {
@Override
- public boolean matches(DBRefEntry refa, DBRefEntry refb, int mode) {
+ public boolean matches(DBRefEntry refa, DBRefEntry refb, int mode)
+ {
if (refa.getSource() != null && refb.getSource() != null && DBRefUtils.getCanonicalName(refb.getSource())
- .equals(DBRefUtils.getCanonicalName(refa.getSource()))) {
+ .equals(DBRefUtils.getCanonicalName(refa.getSource())))
+ {
// We dont care about version
-
- if (refa.getAccessionId() == null || refa.getAccessionId().equals(refb.getAccessionId())) {
- if (refa.getMap() == null || refb.getMap() == null) {
+ if (refa.getAccessionId() == null || refa.getAccessionId().equals(refb.getAccessionId()))
+ {
+ if (refa.getMap() == null || refb.getMap() == null)
+ {
return true;
}
if ((refa.getMap() != null && refb.getMap() != null)
&& (refb.getMap().getMap() == null && refa.getMap().getMap() == null)
|| (refb.getMap().getMap() != null && refa.getMap().getMap() != null
- && (refb.getMap().getMap().equals(refa.getMap().getMap())))) {
+ && (refb.getMap().getMap().equals(refa.getMap().getMap()))))
+ {
return true;
}
}
};
/**
- * accession ID only must be identical.
- */
- public static DbRefComp matchId = new DbRefComp() {
- @Override
- public boolean matches(DBRefEntry refa, DBRefEntry refb, int mode) {
- if (refa.getAccessionId() != null && refb.getAccessionId() != null
- && refb.getAccessionId().equals(refa.getAccessionId())) {
- return true;
- }
- return false;
- }
- };
+ * Returns the (possibly empty) list of those supplied dbrefs which have the
+ * specified source database, with a case-insensitive match of source name
+ *
+ * @param dbRefs
+ * @param source
+ * @return
+ */
+ public static List<DBRefEntry> searchRefsForSource(DBRefEntry[] dbRefs,
+ String source)
+ {
+ List<DBRefEntry> matches = new ArrayList<>();
+ if (dbRefs != null && source != null)
+ {
+ for (DBRefEntry dbref : dbRefs)
+ {
+ if (source.equalsIgnoreCase(dbref.getSource()))
+ {
+ matches.add(dbref);
+ }
+ }
+ }
+ return matches;
+ }
/**
* Parses a DBRefEntry and adds it to the sequence, also a PDBEntry if the
* retain any colour thresholds per group while
* changing choice of colour scheme (JAL-2386)
*/
- sg.setColourScheme(cs);
+ sg.setColourScheme(
+ cs == null ? null : cs.getInstance(this, sg));
if (cs != null)
{
sg.getGroupColourScheme().alignmentChanged(sg,
public void invertColumnSelection()
{
colSel.invertColumnSelection(0, alignment.getWidth(), alignment);
+ isColSelChanged(true);
}
@Override
omitHidden, alignmentStartEnd);
return ed;
}
+
+ /**
+ * flag set to indicate if structure views might be out of sync with sequences
+ * in the alignment
+ */
+
+ private boolean needToUpdateStructureViews = false;
+
+ @Override
+ public boolean isUpdateStructures()
+ {
+ return needToUpdateStructureViews;
+ }
+
+ @Override
+ public void setUpdateStructures(boolean update)
+ {
+ needToUpdateStructureViews = update;
+ }
+
+ @Override
+ public boolean needToUpdateStructureViews()
+ {
+ boolean update = needToUpdateStructureViews;
+ needToUpdateStructureViews = false;
+ return update;
+ }
+
+ @Override
+ public void addSequenceGroup(SequenceGroup sequenceGroup)
+ {
+ alignment.addGroup(sequenceGroup);
+
+ Color col = sequenceGroup.idColour;
+ if (col != null)
+ {
+ col = col.brighter();
+
+ for (SequenceI sq : sequenceGroup.getSequences())
+ {
+ setSequenceColour(sq, col);
+ }
+ }
+
+ if (codingComplement != null)
+ {
+ SequenceGroup mappedGroup = MappingUtils
+ .mapSequenceGroup(sequenceGroup, this, codingComplement);
+ if (mappedGroup.getSequences().size() > 0)
+ {
+ codingComplement.getAlignment().addGroup(mappedGroup);
+
+ if (col != null)
+ {
+ for (SequenceI seq : mappedGroup.getSequences())
+ {
+ codingComplement.setSequenceColour(seq, col);
+ }
+ }
+ }
+ // propagate the structure view update flag according to our own setting
+ codingComplement.setUpdateStructures(needToUpdateStructureViews);
+ }
+ }
}
import jalview.api.analysis.ScoreModelI;
import jalview.api.analysis.SimilarityParamsI;
import jalview.datamodel.AlignmentView;
+import jalview.datamodel.Point;
import jalview.datamodel.SequenceI;
import jalview.datamodel.SequencePoint;
+import java.util.List;
import java.util.Vector;
public class PCAModel
{
- private volatile PCA pca;
-
- int top;
+ /*
+ * inputs
+ */
+ private AlignmentView inputData;
- AlignmentView seqstrings;
+ private final SequenceI[] seqs;
- SequenceI[] seqs;
+ private final SimilarityParamsI similarityParams;
/*
- * Name of score model used to calculate PCA
+ * options - score model, nucleotide / protein
*/
- ScoreModelI scoreModel;
+ private ScoreModelI scoreModel;
private boolean nucleotide = false;
- private Vector<SequencePoint> points;
+ /*
+ * outputs
+ */
+ private PCA pca;
- private SimilarityParamsI similarityParams;
+ int top;
+
+ private List<SequencePoint> points;
/**
* Constructor given sequence data, score model and score calculation
public PCAModel(AlignmentView seqData, SequenceI[] sqs, boolean nuc,
ScoreModelI modelName, SimilarityParamsI params)
{
- seqstrings = seqData;
+ inputData = seqData;
seqs = sqs;
nucleotide = nuc;
scoreModel = modelName;
similarityParams = params;
}
- public void run()
+ /**
+ * Performs the PCA calculation (in the same thread) and extracts result data
+ * needed for visualisation by PCAPanel
+ */
+ public void calculate()
{
- pca = new PCA(seqstrings, scoreModel, similarityParams);
- pca.run();
+ pca = new PCA(inputData, scoreModel, similarityParams);
+ pca.run(); // executes in same thread, wait for completion
// Now find the component coordinates
int ii = 0;
// top = pca.getM().height() - 1;
top = height - 1;
- points = new Vector<SequencePoint>();
- float[][] scores = pca.getComponents(top - 1, top - 2, top - 3, 100);
+ points = new Vector<>();
+ Point[] scores = pca.getComponents(top - 1, top - 2, top - 3, 100);
for (int i = 0; i < height; i++)
{
SequencePoint sp = new SequencePoint(seqs[i], scores[i]);
- points.addElement(sp);
+ points.add(sp);
}
}
}
/**
+ * Answers the index of the principal dimension of the PCA
*
- *
- * @return index of principle dimension of PCA
+ * @return
*/
public int getTop()
{
return top;
}
+ public void setTop(int t)
+ {
+ top = t;
+ }
+
/**
- * update the 2d coordinates for the list of points to the given dimensions
+ * Updates the 3D coordinates for the list of points to the given dimensions.
* Principal dimension is getTop(). Next greatest eigenvector is getTop()-1.
* Note - pca.getComponents starts counting the spectrum from rank-2 to zero,
* rather than rank-1, so getComponents(dimN ...) == updateRcView(dimN+1 ..)
public void updateRcView(int dim1, int dim2, int dim3)
{
// note: actual indices for components are dim1-1, etc (patch for JAL-1123)
- float[][] scores = pca.getComponents(dim1 - 1, dim2 - 1, dim3 - 1, 100);
+ Point[] scores = pca.getComponents(dim1 - 1, dim2 - 1, dim3 - 1, 100);
for (int i = 0; i < pca.getHeight(); i++)
{
- points.elementAt(i).coord = scores[i];
+ points.get(i).coord = scores[i];
}
}
return pca.getDetails();
}
- public AlignmentView getSeqtrings()
+ public AlignmentView getInputData()
+ {
+ return inputData;
+ }
+
+ public void setInputData(AlignmentView data)
{
- return seqstrings;
+ inputData = data;
}
public String getPointsasCsv(boolean transformed, int xdim, int ydim,
}
else
{
- // output current x,y,z coords for points
- fl = getPointPosition(s);
- for (int d = 0; d < fl.length; d++)
- {
- csv.append(",");
- csv.append(fl[d]);
- }
+ Point p = points.get(s).coord;
+ csv.append(",").append(p.x);
+ csv.append(",").append(p.y);
+ csv.append(",").append(p.z);
}
csv.append("\n");
}
return csv.toString();
}
+ public String getScoreModelName()
+ {
+ return scoreModel == null ? "" : scoreModel.getName();
+ }
+
+ public void setScoreModel(ScoreModelI sm)
+ {
+ this.scoreModel = sm;
+ }
+
/**
+ * Answers the parameters configured for pairwise similarity calculations
*
- * @return x,y,z positions of point s (index into points) under current
- * transform.
+ * @return
*/
- public double[] getPointPosition(int s)
+ public SimilarityParamsI getSimilarityParameters()
{
- double pts[] = new double[3];
- float[] p = points.elementAt(s).coord;
- pts[0] = p[0];
- pts[1] = p[1];
- pts[2] = p[2];
- return pts;
+ return similarityParams;
}
- public String getScoreModelName()
+ public List<SequencePoint> getSequencePoints()
{
- return scoreModel == null ? "" : scoreModel.getName();
+ return points;
}
- public void setScoreModel(ScoreModelI sm)
+ public void setSequencePoints(List<SequencePoint> sp)
{
- this.scoreModel = sm;
+ points = sp;
+ }
+
+ /**
+ * Answers the object holding the values of the computed PCA
+ *
+ * @return
+ */
+ public PCA getPcaData()
+ {
+ return pca;
}
+ public void setPCA(PCA data)
+ {
+ pca = data;
+ }
}
*/
public int getVisibleAlignmentWidth()
{
- return al.getWidth() - al.getHiddenColumns().getSize();
+ return al.getVisibleWidth();
}
/**
}
/**
- * Removes from the list of features any that duplicate the location of a
- * feature of the same type. Should be used only for features of the same,
- * simple, feature colour (which normally implies the same feature type). Does
- * not check visibility settings for feature type or feature group. No
- * filtering is done if transparency, or any feature filters, are in force.
+ * Removes from the list of features any whose group is not shown, or that are
+ * visible and duplicate the location of a visible feature of the same type.
+ * Should be used only for features of the same, simple, feature colour (which
+ * normally implies the same feature type). No filtering is done if
+ * transparency, or any feature filters, are in force.
*
* @param features
*/
while (it.hasNext())
{
SequenceFeature sf = it.next();
+ if (featureGroupNotShown(sf))
+ {
+ it.remove();
+ continue;
+ }
/*
* a feature is redundant for rendering purposes if it has the
* (checking type and isContactFeature as a fail-safe here, although
* currently they are guaranteed to match in this context)
*/
- if (lastFeature != null && sf.getBegin() == lastFeature.getBegin()
+ if (lastFeature != null
+ && sf.getBegin() == lastFeature.getBegin()
&& sf.getEnd() == lastFeature.getEnd()
&& sf.isContactFeature() == lastFeature.isContactFeature()
&& sf.getType().equals(lastFeature.getType()))
{
Arrays.sort(renderOrder, order);
}
+
+ @Override
+ public boolean isVisible(SequenceFeature feature)
+ {
+ if (feature == null)
+ {
+ return false;
+ }
+ if (getFeaturesDisplayed() == null
+ || !getFeaturesDisplayed().isVisible(feature.getType()))
+ {
+ return false;
+ }
+ if (featureGroupNotShown(feature))
+ {
+ return false;
+ }
+ FeatureColourI fc = featureColours.get(feature.getType());
+ if (fc != null && fc.isOutwithThreshold(feature))
+ {
+ return false;
+ }
+ if (!featureMatchesFilters(feature))
+ {
+ return false;
+ }
+ return true;
+ }
}
protected void eraseConsensus(int aWidth)
{
AlignmentAnnotation consensus = getConsensusAnnotation();
- consensus.annotations = new Annotation[aWidth];
+ if (consensus != null)
+ {
+ consensus.annotations = new Annotation[aWidth];
+ }
AlignmentAnnotation gap = getGapAnnotation();
if (gap != null)
{
// and remove it from the rest
// TODO: decide if we should remove annotated sequence from set
sdataset.remove(sequence);
- // TODO: should we make a note of sequences that have received new DB
- // ids, so we can query all enabled DAS servers for them ?
}
}
return modified;
SequenceI uniprotEntryToSequence(Entry entry)
{
String id = getUniprotEntryId(entry);
- String seqString = entry.getSequence().getValue();
-
/*
- * for backwards compatibility with Castor processing,
- * remove any internal spaces
+ * Sequence should not include any whitespace, but JAXB leaves these in
*/
- if (seqString.indexOf(' ') > -1)
- {
- seqString = seqString.replace(" ", "");
- }
+ String seqString = entry.getSequence().getValue().replaceAll("\\s*",
+ "");
+
SequenceI sequence = new Sequence(id,
seqString);
sequence.setDescription(getUniprotEntryDescription(entry));
{
// set graduated color as fading to white for minimum, and
// autoscaling to values on alignment
- FeatureColourI ggc = new FeatureColour(Color.white,
- gc.getColour(), Float.MIN_VALUE, Float.MAX_VALUE);
+ FeatureColourI ggc = new FeatureColour(gc.getColour(),
+ Color.white, gc.getColour(), Color.white,
+ Float.MIN_VALUE, Float.MAX_VALUE);
ggc.setAutoScaled(true);
fr.setColour(ft, ggc);
}
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
--- /dev/null
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
+//
+
+
+package jalview.xml.binding.jalview;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlAttribute;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for DoubleMatrix complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="DoubleMatrix">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="row" type="{www.jalview.org}DoubleVector" maxOccurs="unbounded" minOccurs="0"/>
+ * <element name="D" type="{www.jalview.org}DoubleVector" minOccurs="0"/>
+ * <element name="E" type="{www.jalview.org}DoubleVector" minOccurs="0"/>
+ * </sequence>
+ * <attribute name="rows" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="columns" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "DoubleMatrix", namespace = "www.jalview.org", propOrder = {
+ "row",
+ "d",
+ "e"
+})
+public class DoubleMatrix {
+
+ protected List<DoubleVector> row;
+ @XmlElement(name = "D")
+ protected DoubleVector d;
+ @XmlElement(name = "E")
+ protected DoubleVector e;
+ @XmlAttribute(name = "rows")
+ protected Integer rows;
+ @XmlAttribute(name = "columns")
+ protected Integer columns;
+
+ /**
+ * Gets the value of the row property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the row property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getRow().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link DoubleVector }
+ *
+ *
+ */
+ public List<DoubleVector> getRow() {
+ if (row == null) {
+ row = new ArrayList<DoubleVector>();
+ }
+ return this.row;
+ }
+
+ /**
+ * Gets the value of the d property.
+ *
+ * @return
+ * possible object is
+ * {@link DoubleVector }
+ *
+ */
+ public DoubleVector getD() {
+ return d;
+ }
+
+ /**
+ * Sets the value of the d property.
+ *
+ * @param value
+ * allowed object is
+ * {@link DoubleVector }
+ *
+ */
+ public void setD(DoubleVector value) {
+ this.d = value;
+ }
+
+ /**
+ * Gets the value of the e property.
+ *
+ * @return
+ * possible object is
+ * {@link DoubleVector }
+ *
+ */
+ public DoubleVector getE() {
+ return e;
+ }
+
+ /**
+ * Sets the value of the e property.
+ *
+ * @param value
+ * allowed object is
+ * {@link DoubleVector }
+ *
+ */
+ public void setE(DoubleVector value) {
+ this.e = value;
+ }
+
+ /**
+ * Gets the value of the rows property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getRows() {
+ return rows;
+ }
+
+ /**
+ * Sets the value of the rows property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setRows(Integer value) {
+ this.rows = value;
+ }
+
+ /**
+ * Gets the value of the columns property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getColumns() {
+ return columns;
+ }
+
+ /**
+ * Sets the value of the columns property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setColumns(Integer value) {
+ this.columns = value;
+ }
+
+}
--- /dev/null
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
+//
+
+
+package jalview.xml.binding.jalview;
+
+import java.util.ArrayList;
+import java.util.List;
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ * <p>Java class for DoubleVector complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="DoubleVector">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="v" type="{http://www.w3.org/2001/XMLSchema}double" maxOccurs="unbounded" minOccurs="0"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "DoubleVector", namespace = "www.jalview.org", propOrder = {
+ "v"
+})
+public class DoubleVector {
+
+ @XmlElement(type = Double.class)
+ protected List<Double> v;
+
+ /**
+ * Gets the value of the v property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the v property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getV().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link Double }
+ *
+ *
+ */
+ public List<Double> getV() {
+ if (v == null) {
+ v = new ArrayList<Double>();
+ }
+ return this.v;
+ }
+
+}
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
* <attribute name="fitToWindow" type="{http://www.w3.org/2001/XMLSchema}boolean" />
* <attribute name="currentTree" type="{http://www.w3.org/2001/XMLSchema}boolean" />
* <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * <attribute name="linkToAllViews" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * <element name="PcaViewer" maxOccurs="unbounded" minOccurs="0">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="sequencePoint" maxOccurs="unbounded">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * <attribute name="sequenceRef" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * <element name="axis" maxOccurs="3" minOccurs="3">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * <element name="seqPointMin">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * <element name="seqPointMax">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * <element name="pcaData" type="{www.jalview.org}PcaDataType"/>
+ * </sequence>
+ * <attGroup ref="{www.jalview.org}swingwindow"/>
+ * <attGroup ref="{www.jalview.org}SimilarityParams"/>
+ * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * <attribute name="scoreModelName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * <attribute name="xDim" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="yDim" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="zDim" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="scaleFactor" type="{http://www.w3.org/2001/XMLSchema}float" />
+ * <attribute name="showLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * <attribute name="linkToAllViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
* </restriction>
* </complexContent>
* </complexType>
"viewport",
"userColours",
"tree",
+ "pcaViewer",
"featureSettings"
})
public class JalviewModel {
@XmlElement(name = "UserColours")
protected List<JalviewModel.UserColours> userColours;
protected List<JalviewModel.Tree> tree;
+ @XmlElement(name = "PcaViewer")
+ protected List<JalviewModel.PcaViewer> pcaViewer;
@XmlElement(name = "FeatureSettings")
protected JalviewModel.FeatureSettings featureSettings;
}
/**
+ * Gets the value of the pcaViewer property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the pcaViewer property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getPcaViewer().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link JalviewModel.PcaViewer }
+ *
+ *
+ */
+ public List<JalviewModel.PcaViewer> getPcaViewer() {
+ if (pcaViewer == null) {
+ pcaViewer = new ArrayList<JalviewModel.PcaViewer>();
+ }
+ return this.pcaViewer;
+ }
+
+ /**
* Gets the value of the featureSettings property.
*
* @return
* <complexType>
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence minOccurs="0">
- * <element name="title" type="{http://www.w3.org/2001/XMLSchema}string"/>
- * <element name="newick" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * <sequence>
+ * <element name="sequencePoint" maxOccurs="unbounded">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * <attribute name="sequenceRef" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * <element name="axis" maxOccurs="3" minOccurs="3">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * <element name="seqPointMin">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * <element name="seqPointMax">
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </element>
+ * <element name="pcaData" type="{www.jalview.org}PcaDataType"/>
* </sequence>
* <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="showBootstrap" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showDistances" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="markUnlinked" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="fitToWindow" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="currentTree" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * <attGroup ref="{www.jalview.org}SimilarityParams"/>
+ * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * <attribute name="scoreModelName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * <attribute name="xDim" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="yDim" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="zDim" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="scaleFactor" type="{http://www.w3.org/2001/XMLSchema}float" />
+ * <attribute name="showLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * <attribute name="linkToAllViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
* </restriction>
* </complexContent>
* </complexType>
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "", propOrder = {
- "title",
- "newick"
+ "sequencePoint",
+ "axis",
+ "seqPointMin",
+ "seqPointMax",
+ "pcaData"
})
- public static class Tree {
+ public static class PcaViewer {
- @XmlElement(namespace = "www.jalview.org")
+ @XmlElement(namespace = "www.jalview.org", required = true)
+ protected List<JalviewModel.PcaViewer.SequencePoint> sequencePoint;
+ @XmlElement(namespace = "www.jalview.org", required = true)
+ protected List<JalviewModel.PcaViewer.Axis> axis;
+ @XmlElement(namespace = "www.jalview.org", required = true)
+ protected JalviewModel.PcaViewer.SeqPointMin seqPointMin;
+ @XmlElement(namespace = "www.jalview.org", required = true)
+ protected JalviewModel.PcaViewer.SeqPointMax seqPointMax;
+ @XmlElement(namespace = "www.jalview.org", required = true)
+ protected PcaDataType pcaData;
+ @XmlAttribute(name = "title")
protected String title;
- @XmlElement(namespace = "www.jalview.org")
- protected String newick;
- @XmlAttribute(name = "fontName")
- protected String fontName;
- @XmlAttribute(name = "fontSize")
- protected Integer fontSize;
- @XmlAttribute(name = "fontStyle")
- protected Integer fontStyle;
- @XmlAttribute(name = "threshold")
- protected Float threshold;
- @XmlAttribute(name = "showBootstrap")
- protected Boolean showBootstrap;
- @XmlAttribute(name = "showDistances")
- protected Boolean showDistances;
- @XmlAttribute(name = "markUnlinked")
- protected Boolean markUnlinked;
- @XmlAttribute(name = "fitToWindow")
- protected Boolean fitToWindow;
- @XmlAttribute(name = "currentTree")
- protected Boolean currentTree;
- @XmlAttribute(name = "id")
- @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
- @XmlID
- @XmlSchemaType(name = "ID")
- protected String id;
+ @XmlAttribute(name = "scoreModelName")
+ protected String scoreModelName;
+ @XmlAttribute(name = "xDim")
+ protected Integer xDim;
+ @XmlAttribute(name = "yDim")
+ protected Integer yDim;
+ @XmlAttribute(name = "zDim")
+ protected Integer zDim;
+ @XmlAttribute(name = "bgColour")
+ protected Integer bgColour;
+ @XmlAttribute(name = "scaleFactor")
+ protected Float scaleFactor;
+ @XmlAttribute(name = "showLabels")
+ protected Boolean showLabels;
+ @XmlAttribute(name = "linkToAllViews")
+ protected Boolean linkToAllViews;
@XmlAttribute(name = "width")
protected Integer width;
@XmlAttribute(name = "height")
protected Integer xpos;
@XmlAttribute(name = "ypos")
protected Integer ypos;
+ @XmlAttribute(name = "includeGaps")
+ protected Boolean includeGaps;
+ @XmlAttribute(name = "matchGaps")
+ protected Boolean matchGaps;
+ @XmlAttribute(name = "includeGappedColumns")
+ protected Boolean includeGappedColumns;
+ @XmlAttribute(name = "denominateByShortestLength")
+ protected Boolean denominateByShortestLength;
/**
- * Gets the value of the title property.
+ * Gets the value of the sequencePoint property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the sequencePoint property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getSequencePoint().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link JalviewModel.PcaViewer.SequencePoint }
+ *
*
- * @return
- * possible object is
- * {@link String }
- *
*/
- public String getTitle() {
- return title;
+ public List<JalviewModel.PcaViewer.SequencePoint> getSequencePoint() {
+ if (sequencePoint == null) {
+ sequencePoint = new ArrayList<JalviewModel.PcaViewer.SequencePoint>();
+ }
+ return this.sequencePoint;
}
/**
- * Sets the value of the title property.
+ * Gets the value of the axis property.
+ *
+ * <p>
+ * This accessor method returns a reference to the live list,
+ * not a snapshot. Therefore any modification you make to the
+ * returned list will be present inside the JAXB object.
+ * This is why there is not a <CODE>set</CODE> method for the axis property.
+ *
+ * <p>
+ * For example, to add a new item, do as follows:
+ * <pre>
+ * getAxis().add(newItem);
+ * </pre>
+ *
+ *
+ * <p>
+ * Objects of the following type(s) are allowed in the list
+ * {@link JalviewModel.PcaViewer.Axis }
+ *
*
- * @param value
- * allowed object is
- * {@link String }
- *
*/
- public void setTitle(String value) {
- this.title = value;
+ public List<JalviewModel.PcaViewer.Axis> getAxis() {
+ if (axis == null) {
+ axis = new ArrayList<JalviewModel.PcaViewer.Axis>();
+ }
+ return this.axis;
}
/**
- * Gets the value of the newick property.
+ * Gets the value of the seqPointMin property.
*
* @return
* possible object is
- * {@link String }
+ * {@link JalviewModel.PcaViewer.SeqPointMin }
*
*/
- public String getNewick() {
- return newick;
+ public JalviewModel.PcaViewer.SeqPointMin getSeqPointMin() {
+ return seqPointMin;
}
/**
- * Sets the value of the newick property.
+ * Sets the value of the seqPointMin property.
*
* @param value
* allowed object is
- * {@link String }
+ * {@link JalviewModel.PcaViewer.SeqPointMin }
*
*/
- public void setNewick(String value) {
- this.newick = value;
+ public void setSeqPointMin(JalviewModel.PcaViewer.SeqPointMin value) {
+ this.seqPointMin = value;
}
/**
- * Gets the value of the fontName property.
+ * Gets the value of the seqPointMax property.
*
* @return
* possible object is
- * {@link String }
+ * {@link JalviewModel.PcaViewer.SeqPointMax }
*
*/
- public String getFontName() {
- return fontName;
+ public JalviewModel.PcaViewer.SeqPointMax getSeqPointMax() {
+ return seqPointMax;
}
/**
- * Sets the value of the fontName property.
+ * Sets the value of the seqPointMax property.
*
* @param value
* allowed object is
- * {@link String }
+ * {@link JalviewModel.PcaViewer.SeqPointMax }
*
*/
- public void setFontName(String value) {
- this.fontName = value;
+ public void setSeqPointMax(JalviewModel.PcaViewer.SeqPointMax value) {
+ this.seqPointMax = value;
}
/**
- * Gets the value of the fontSize property.
+ * Gets the value of the pcaData property.
*
* @return
* possible object is
- * {@link Integer }
+ * {@link PcaDataType }
*
*/
- public Integer getFontSize() {
- return fontSize;
+ public PcaDataType getPcaData() {
+ return pcaData;
}
/**
- * Sets the value of the fontSize property.
+ * Sets the value of the pcaData property.
*
* @param value
* allowed object is
- * {@link Integer }
+ * {@link PcaDataType }
*
*/
- public void setFontSize(Integer value) {
- this.fontSize = value;
+ public void setPcaData(PcaDataType value) {
+ this.pcaData = value;
}
/**
- * Gets the value of the fontStyle property.
+ * Gets the value of the title property.
*
* @return
* possible object is
- * {@link Integer }
+ * {@link String }
*
*/
- public Integer getFontStyle() {
- return fontStyle;
+ public String getTitle() {
+ return title;
}
/**
- * Sets the value of the fontStyle property.
+ * Sets the value of the title property.
*
* @param value
* allowed object is
- * {@link Integer }
+ * {@link String }
*
*/
- public void setFontStyle(Integer value) {
- this.fontStyle = value;
+ public void setTitle(String value) {
+ this.title = value;
}
/**
- * Gets the value of the threshold property.
+ * Gets the value of the scoreModelName property.
*
* @return
* possible object is
- * {@link Float }
+ * {@link String }
*
*/
- public Float getThreshold() {
- return threshold;
+ public String getScoreModelName() {
+ return scoreModelName;
}
/**
- * Sets the value of the threshold property.
+ * Sets the value of the scoreModelName property.
*
* @param value
* allowed object is
- * {@link Float }
+ * {@link String }
*
*/
- public void setThreshold(Float value) {
- this.threshold = value;
+ public void setScoreModelName(String value) {
+ this.scoreModelName = value;
}
/**
- * Gets the value of the showBootstrap property.
+ * Gets the value of the xDim property.
*
* @return
* possible object is
- * {@link Boolean }
+ * {@link Integer }
*
*/
- public Boolean isShowBootstrap() {
- return showBootstrap;
+ public Integer getXDim() {
+ return xDim;
}
/**
- * Sets the value of the showBootstrap property.
+ * Sets the value of the xDim property.
*
* @param value
* allowed object is
- * {@link Boolean }
+ * {@link Integer }
*
*/
- public void setShowBootstrap(Boolean value) {
- this.showBootstrap = value;
+ public void setXDim(Integer value) {
+ this.xDim = value;
}
/**
- * Gets the value of the showDistances property.
+ * Gets the value of the yDim property.
*
* @return
* possible object is
- * {@link Boolean }
+ * {@link Integer }
*
*/
- public Boolean isShowDistances() {
- return showDistances;
+ public Integer getYDim() {
+ return yDim;
}
/**
- * Sets the value of the showDistances property.
+ * Sets the value of the yDim property.
*
* @param value
* allowed object is
- * {@link Boolean }
+ * {@link Integer }
*
*/
- public void setShowDistances(Boolean value) {
- this.showDistances = value;
+ public void setYDim(Integer value) {
+ this.yDim = value;
}
/**
- * Gets the value of the markUnlinked property.
+ * Gets the value of the zDim property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getZDim() {
+ return zDim;
+ }
+
+ /**
+ * Sets the value of the zDim property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setZDim(Integer value) {
+ this.zDim = value;
+ }
+
+ /**
+ * Gets the value of the bgColour property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getBgColour() {
+ return bgColour;
+ }
+
+ /**
+ * Sets the value of the bgColour property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setBgColour(Integer value) {
+ this.bgColour = value;
+ }
+
+ /**
+ * Gets the value of the scaleFactor property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getScaleFactor() {
+ return scaleFactor;
+ }
+
+ /**
+ * Sets the value of the scaleFactor property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setScaleFactor(Float value) {
+ this.scaleFactor = value;
+ }
+
+ /**
+ * Gets the value of the showLabels property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public Boolean isShowLabels() {
+ return showLabels;
+ }
+
+ /**
+ * Sets the value of the showLabels property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setShowLabels(Boolean value) {
+ this.showLabels = value;
+ }
+
+ /**
+ * Gets the value of the linkToAllViews property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public Boolean isLinkToAllViews() {
+ return linkToAllViews;
+ }
+
+ /**
+ * Sets the value of the linkToAllViews property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setLinkToAllViews(Boolean value) {
+ this.linkToAllViews = value;
+ }
+
+ /**
+ * Gets the value of the width property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getWidth() {
+ return width;
+ }
+
+ /**
+ * Sets the value of the width property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setWidth(Integer value) {
+ this.width = value;
+ }
+
+ /**
+ * Gets the value of the height property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getHeight() {
+ return height;
+ }
+
+ /**
+ * Sets the value of the height property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setHeight(Integer value) {
+ this.height = value;
+ }
+
+ /**
+ * Gets the value of the xpos property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getXpos() {
+ return xpos;
+ }
+
+ /**
+ * Sets the value of the xpos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setXpos(Integer value) {
+ this.xpos = value;
+ }
+
+ /**
+ * Gets the value of the ypos property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getYpos() {
+ return ypos;
+ }
+
+ /**
+ * Sets the value of the ypos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setYpos(Integer value) {
+ this.ypos = value;
+ }
+
+ /**
+ * Gets the value of the includeGaps property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public Boolean isIncludeGaps() {
+ return includeGaps;
+ }
+
+ /**
+ * Sets the value of the includeGaps property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setIncludeGaps(Boolean value) {
+ this.includeGaps = value;
+ }
+
+ /**
+ * Gets the value of the matchGaps property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public Boolean isMatchGaps() {
+ return matchGaps;
+ }
+
+ /**
+ * Sets the value of the matchGaps property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setMatchGaps(Boolean value) {
+ this.matchGaps = value;
+ }
+
+ /**
+ * Gets the value of the includeGappedColumns property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public Boolean isIncludeGappedColumns() {
+ return includeGappedColumns;
+ }
+
+ /**
+ * Sets the value of the includeGappedColumns property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setIncludeGappedColumns(Boolean value) {
+ this.includeGappedColumns = value;
+ }
+
+ /**
+ * Gets the value of the denominateByShortestLength property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public Boolean isDenominateByShortestLength() {
+ return denominateByShortestLength;
+ }
+
+ /**
+ * Sets the value of the denominateByShortestLength property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setDenominateByShortestLength(Boolean value) {
+ this.denominateByShortestLength = value;
+ }
+
+
+ /**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+ @XmlAccessorType(XmlAccessType.FIELD)
+ @XmlType(name = "")
+ public static class Axis {
+
+ @XmlAttribute(name = "xPos")
+ protected Float xPos;
+ @XmlAttribute(name = "yPos")
+ protected Float yPos;
+ @XmlAttribute(name = "zPos")
+ protected Float zPos;
+
+ /**
+ * Gets the value of the xPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getXPos() {
+ return xPos;
+ }
+
+ /**
+ * Sets the value of the xPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setXPos(Float value) {
+ this.xPos = value;
+ }
+
+ /**
+ * Gets the value of the yPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getYPos() {
+ return yPos;
+ }
+
+ /**
+ * Sets the value of the yPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setYPos(Float value) {
+ this.yPos = value;
+ }
+
+ /**
+ * Gets the value of the zPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getZPos() {
+ return zPos;
+ }
+
+ /**
+ * Sets the value of the zPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setZPos(Float value) {
+ this.zPos = value;
+ }
+
+ }
+
+
+ /**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+ @XmlAccessorType(XmlAccessType.FIELD)
+ @XmlType(name = "")
+ public static class SeqPointMax {
+
+ @XmlAttribute(name = "xPos")
+ protected Float xPos;
+ @XmlAttribute(name = "yPos")
+ protected Float yPos;
+ @XmlAttribute(name = "zPos")
+ protected Float zPos;
+
+ /**
+ * Gets the value of the xPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getXPos() {
+ return xPos;
+ }
+
+ /**
+ * Sets the value of the xPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setXPos(Float value) {
+ this.xPos = value;
+ }
+
+ /**
+ * Gets the value of the yPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getYPos() {
+ return yPos;
+ }
+
+ /**
+ * Sets the value of the yPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setYPos(Float value) {
+ this.yPos = value;
+ }
+
+ /**
+ * Gets the value of the zPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getZPos() {
+ return zPos;
+ }
+
+ /**
+ * Sets the value of the zPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setZPos(Float value) {
+ this.zPos = value;
+ }
+
+ }
+
+
+ /**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+ @XmlAccessorType(XmlAccessType.FIELD)
+ @XmlType(name = "")
+ public static class SeqPointMin {
+
+ @XmlAttribute(name = "xPos")
+ protected Float xPos;
+ @XmlAttribute(name = "yPos")
+ protected Float yPos;
+ @XmlAttribute(name = "zPos")
+ protected Float zPos;
+
+ /**
+ * Gets the value of the xPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getXPos() {
+ return xPos;
+ }
+
+ /**
+ * Sets the value of the xPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setXPos(Float value) {
+ this.xPos = value;
+ }
+
+ /**
+ * Gets the value of the yPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getYPos() {
+ return yPos;
+ }
+
+ /**
+ * Sets the value of the yPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setYPos(Float value) {
+ this.yPos = value;
+ }
+
+ /**
+ * Gets the value of the zPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getZPos() {
+ return zPos;
+ }
+
+ /**
+ * Sets the value of the zPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setZPos(Float value) {
+ this.zPos = value;
+ }
+
+ }
+
+
+ /**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <attGroup ref="{www.jalview.org}position"/>
+ * <attribute name="sequenceRef" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+ @XmlAccessorType(XmlAccessType.FIELD)
+ @XmlType(name = "")
+ public static class SequencePoint {
+
+ @XmlAttribute(name = "sequenceRef")
+ protected String sequenceRef;
+ @XmlAttribute(name = "xPos")
+ protected Float xPos;
+ @XmlAttribute(name = "yPos")
+ protected Float yPos;
+ @XmlAttribute(name = "zPos")
+ protected Float zPos;
+
+ /**
+ * Gets the value of the sequenceRef property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getSequenceRef() {
+ return sequenceRef;
+ }
+
+ /**
+ * Sets the value of the sequenceRef property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setSequenceRef(String value) {
+ this.sequenceRef = value;
+ }
+
+ /**
+ * Gets the value of the xPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getXPos() {
+ return xPos;
+ }
+
+ /**
+ * Sets the value of the xPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setXPos(Float value) {
+ this.xPos = value;
+ }
+
+ /**
+ * Gets the value of the yPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getYPos() {
+ return yPos;
+ }
+
+ /**
+ * Sets the value of the yPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setYPos(Float value) {
+ this.yPos = value;
+ }
+
+ /**
+ * Gets the value of the zPos property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getZPos() {
+ return zPos;
+ }
+
+ /**
+ * Sets the value of the zPos property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setZPos(Float value) {
+ this.zPos = value;
+ }
+
+ }
+
+ }
+
+
+ /**
+ * <p>Java class for anonymous complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType>
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence minOccurs="0">
+ * <element name="title" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * <element name="newick" type="{http://www.w3.org/2001/XMLSchema}string"/>
+ * </sequence>
+ * <attGroup ref="{www.jalview.org}swingwindow"/>
+ * <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
+ * <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
+ * <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
+ * <attribute name="showBootstrap" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * <attribute name="showDistances" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * <attribute name="markUnlinked" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * <attribute name="fitToWindow" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * <attribute name="currentTree" type="{http://www.w3.org/2001/XMLSchema}boolean" />
+ * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
+ * <attribute name="linkToAllViews" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+ @XmlAccessorType(XmlAccessType.FIELD)
+ @XmlType(name = "", propOrder = {
+ "title",
+ "newick"
+ })
+ public static class Tree {
+
+ @XmlElement(namespace = "www.jalview.org")
+ protected String title;
+ @XmlElement(namespace = "www.jalview.org")
+ protected String newick;
+ @XmlAttribute(name = "fontName")
+ protected String fontName;
+ @XmlAttribute(name = "fontSize")
+ protected Integer fontSize;
+ @XmlAttribute(name = "fontStyle")
+ protected Integer fontStyle;
+ @XmlAttribute(name = "threshold")
+ protected Float threshold;
+ @XmlAttribute(name = "showBootstrap")
+ protected Boolean showBootstrap;
+ @XmlAttribute(name = "showDistances")
+ protected Boolean showDistances;
+ @XmlAttribute(name = "markUnlinked")
+ protected Boolean markUnlinked;
+ @XmlAttribute(name = "fitToWindow")
+ protected Boolean fitToWindow;
+ @XmlAttribute(name = "currentTree")
+ protected Boolean currentTree;
+ @XmlAttribute(name = "id")
+ @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
+ @XmlID
+ @XmlSchemaType(name = "ID")
+ protected String id;
+ @XmlAttribute(name = "linkToAllViews")
+ protected Boolean linkToAllViews;
+ @XmlAttribute(name = "width")
+ protected Integer width;
+ @XmlAttribute(name = "height")
+ protected Integer height;
+ @XmlAttribute(name = "xpos")
+ protected Integer xpos;
+ @XmlAttribute(name = "ypos")
+ protected Integer ypos;
+
+ /**
+ * Gets the value of the title property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getTitle() {
+ return title;
+ }
+
+ /**
+ * Sets the value of the title property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setTitle(String value) {
+ this.title = value;
+ }
+
+ /**
+ * Gets the value of the newick property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getNewick() {
+ return newick;
+ }
+
+ /**
+ * Sets the value of the newick property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setNewick(String value) {
+ this.newick = value;
+ }
+
+ /**
+ * Gets the value of the fontName property.
+ *
+ * @return
+ * possible object is
+ * {@link String }
+ *
+ */
+ public String getFontName() {
+ return fontName;
+ }
+
+ /**
+ * Sets the value of the fontName property.
+ *
+ * @param value
+ * allowed object is
+ * {@link String }
+ *
+ */
+ public void setFontName(String value) {
+ this.fontName = value;
+ }
+
+ /**
+ * Gets the value of the fontSize property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getFontSize() {
+ return fontSize;
+ }
+
+ /**
+ * Sets the value of the fontSize property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setFontSize(Integer value) {
+ this.fontSize = value;
+ }
+
+ /**
+ * Gets the value of the fontStyle property.
+ *
+ * @return
+ * possible object is
+ * {@link Integer }
+ *
+ */
+ public Integer getFontStyle() {
+ return fontStyle;
+ }
+
+ /**
+ * Sets the value of the fontStyle property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Integer }
+ *
+ */
+ public void setFontStyle(Integer value) {
+ this.fontStyle = value;
+ }
+
+ /**
+ * Gets the value of the threshold property.
+ *
+ * @return
+ * possible object is
+ * {@link Float }
+ *
+ */
+ public Float getThreshold() {
+ return threshold;
+ }
+
+ /**
+ * Sets the value of the threshold property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Float }
+ *
+ */
+ public void setThreshold(Float value) {
+ this.threshold = value;
+ }
+
+ /**
+ * Gets the value of the showBootstrap property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public Boolean isShowBootstrap() {
+ return showBootstrap;
+ }
+
+ /**
+ * Sets the value of the showBootstrap property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setShowBootstrap(Boolean value) {
+ this.showBootstrap = value;
+ }
+
+ /**
+ * Gets the value of the showDistances property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public Boolean isShowDistances() {
+ return showDistances;
+ }
+
+ /**
+ * Sets the value of the showDistances property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setShowDistances(Boolean value) {
+ this.showDistances = value;
+ }
+
+ /**
+ * Gets the value of the markUnlinked property.
*
* @return
* possible object is
}
/**
+ * Gets the value of the linkToAllViews property.
+ *
+ * @return
+ * possible object is
+ * {@link Boolean }
+ *
+ */
+ public boolean isLinkToAllViews() {
+ if (linkToAllViews == null) {
+ return false;
+ } else {
+ return linkToAllViews;
+ }
+ }
+
+ /**
+ * Sets the value of the linkToAllViews property.
+ *
+ * @param value
+ * allowed object is
+ * {@link Boolean }
+ *
+ */
+ public void setLinkToAllViews(Boolean value) {
+ this.linkToAllViews = value;
+ }
+
+ /**
* Gets the value of the width property.
*
* @return
+++ /dev/null
-//
-// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
-// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
-// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.18 at 01:33:02 PM BST
-//
-
-
-package jalview.xml.binding.jalview;
-
-import java.util.ArrayList;
-import java.util.List;
-import javax.xml.bind.annotation.XmlAccessType;
-import javax.xml.bind.annotation.XmlAccessorType;
-import javax.xml.bind.annotation.XmlAttribute;
-import javax.xml.bind.annotation.XmlElement;
-import javax.xml.bind.annotation.XmlID;
-import javax.xml.bind.annotation.XmlSchemaType;
-import javax.xml.bind.annotation.XmlType;
-import javax.xml.bind.annotation.XmlValue;
-import javax.xml.bind.annotation.adapters.CollapsedStringAdapter;
-import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
-import javax.xml.datatype.XMLGregorianCalendar;
-
-
-/**
- * <p>Java class for JalviewModelType complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType name="JalviewModelType">
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="creationDate" type="{http://www.w3.org/2001/XMLSchema}dateTime"/>
- * <element name="version" type="{http://www.w3.org/2001/XMLSchema}string"/>
- * <element name="vamsasModel" type="{www.vamsas.ac.uk/jalview/version2}VAMSAS"/>
- * <sequence>
- * <element name="JSeq" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="features" type="{www.jalview.org}feature" maxOccurs="unbounded" minOccurs="0"/>
- * <element name="pdbids" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <extension base="{www.jalview.org}pdbentry">
- * <sequence>
- * <element name="structureState" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <simpleContent>
- * <extension base="<http://www.w3.org/2001/XMLSchema>string">
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </extension>
- * </simpleContent>
- * </complexType>
- * </element>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="hiddenSequences" type="{http://www.w3.org/2001/XMLSchema}int" maxOccurs="unbounded" minOccurs="0"/>
- * <element name="rnaViewer" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="secondaryStructure" maxOccurs="unbounded">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="id" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="hidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewreference" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="JGroup" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="seq" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
- * <element name="annotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
- * </sequence>
- * <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="consThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="pidThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="outlineColour" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="displayBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="displayText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="colourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="ignoreGapsinConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="showConsensusHistogram" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="showSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="normaliseSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="Viewport" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="AnnotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
- * <element name="hiddenColumns" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="calcIdParam" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
- * <attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </extension>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="conservationSelected" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="pidSelected" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="consThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="pidThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="showFullId" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="rightAlignIds" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showColourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="showBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="wrapAlignment" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="renderGaps" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showSequenceFeatures" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showNPfeatureTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showDbRefTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="followHighlight" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="followSelection" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="showAnnotation" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="centreColumnLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="showGroupConservation" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="showGroupConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="showConsensusHistogram" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="showSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="normaliseSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="ignoreGapsinConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="startRes" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="startSeq" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="scaleProteinAsCdna" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="viewName" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="sequenceSetId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="gatheredViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * <attribute name="complementId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="UserColours" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="UserColourScheme" type="{www.jalview.org/colours}JalviewUserColours"/>
- * </sequence>
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="tree" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence minOccurs="0">
- * <element name="title" type="{http://www.w3.org/2001/XMLSchema}string"/>
- * <element name="newick" type="{http://www.w3.org/2001/XMLSchema}string"/>
- * </sequence>
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="showBootstrap" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showDistances" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="markUnlinked" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="fitToWindow" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="currentTree" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="FeatureSettings" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="setting" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
- * <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
- * </sequence>
- * <attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
- * <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="group" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
-@XmlAccessorType(XmlAccessType.FIELD)
-@XmlType(name = "JalviewModelType", namespace = "www.jalview.org", propOrder = {
- "creationDate",
- "version",
- "vamsasModel",
- "jSeq",
- "jGroup",
- "viewport",
- "userColours",
- "tree",
- "featureSettings"
-})
-public class JalviewModelType {
-
- @XmlElement(required = true)
- @XmlSchemaType(name = "dateTime")
- protected XMLGregorianCalendar creationDate;
- @XmlElement(required = true)
- protected String version;
- @XmlElement(required = true)
- protected VAMSAS vamsasModel;
- @XmlElement(name = "JSeq")
- protected List<JalviewModelType.JSeq> jSeq;
- @XmlElement(name = "JGroup")
- protected List<JalviewModelType.JGroup> jGroup;
- @XmlElement(name = "Viewport")
- protected List<JalviewModelType.Viewport> viewport;
- @XmlElement(name = "UserColours")
- protected List<JalviewModelType.UserColours> userColours;
- protected List<JalviewModelType.Tree> tree;
- @XmlElement(name = "FeatureSettings")
- protected JalviewModelType.FeatureSettings featureSettings;
-
- /**
- * Gets the value of the creationDate property.
- *
- * @return
- * possible object is
- * {@link XMLGregorianCalendar }
- *
- */
- public XMLGregorianCalendar getCreationDate() {
- return creationDate;
- }
-
- /**
- * Sets the value of the creationDate property.
- *
- * @param value
- * allowed object is
- * {@link XMLGregorianCalendar }
- *
- */
- public void setCreationDate(XMLGregorianCalendar value) {
- this.creationDate = value;
- }
-
- /**
- * Gets the value of the version property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getVersion() {
- return version;
- }
-
- /**
- * Sets the value of the version property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setVersion(String value) {
- this.version = value;
- }
-
- /**
- * Gets the value of the vamsasModel property.
- *
- * @return
- * possible object is
- * {@link VAMSAS }
- *
- */
- public VAMSAS getVamsasModel() {
- return vamsasModel;
- }
-
- /**
- * Sets the value of the vamsasModel property.
- *
- * @param value
- * allowed object is
- * {@link VAMSAS }
- *
- */
- public void setVamsasModel(VAMSAS value) {
- this.vamsasModel = value;
- }
-
- /**
- * Gets the value of the jSeq property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the jSeq property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getJSeq().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.JSeq }
- *
- *
- */
- public List<JalviewModelType.JSeq> getJSeq() {
- if (jSeq == null) {
- jSeq = new ArrayList<JalviewModelType.JSeq>();
- }
- return this.jSeq;
- }
-
- /**
- * Gets the value of the jGroup property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the jGroup property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getJGroup().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.JGroup }
- *
- *
- */
- public List<JalviewModelType.JGroup> getJGroup() {
- if (jGroup == null) {
- jGroup = new ArrayList<JalviewModelType.JGroup>();
- }
- return this.jGroup;
- }
-
- /**
- * Gets the value of the viewport property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the viewport property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getViewport().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.Viewport }
- *
- *
- */
- public List<JalviewModelType.Viewport> getViewport() {
- if (viewport == null) {
- viewport = new ArrayList<JalviewModelType.Viewport>();
- }
- return this.viewport;
- }
-
- /**
- * Gets the value of the userColours property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the userColours property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getUserColours().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.UserColours }
- *
- *
- */
- public List<JalviewModelType.UserColours> getUserColours() {
- if (userColours == null) {
- userColours = new ArrayList<JalviewModelType.UserColours>();
- }
- return this.userColours;
- }
-
- /**
- * Gets the value of the tree property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the tree property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getTree().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.Tree }
- *
- *
- */
- public List<JalviewModelType.Tree> getTree() {
- if (tree == null) {
- tree = new ArrayList<JalviewModelType.Tree>();
- }
- return this.tree;
- }
-
- /**
- * Gets the value of the featureSettings property.
- *
- * @return
- * possible object is
- * {@link JalviewModelType.FeatureSettings }
- *
- */
- public JalviewModelType.FeatureSettings getFeatureSettings() {
- return featureSettings;
- }
-
- /**
- * Sets the value of the featureSettings property.
- *
- * @param value
- * allowed object is
- * {@link JalviewModelType.FeatureSettings }
- *
- */
- public void setFeatureSettings(JalviewModelType.FeatureSettings value) {
- this.featureSettings = value;
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="setting" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
- * <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
- * </sequence>
- * <attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
- * <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="group" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "setting",
- "group"
- })
- public static class FeatureSettings {
-
- @XmlElement(namespace = "www.jalview.org")
- protected List<JalviewModelType.FeatureSettings.Setting> setting;
- @XmlElement(namespace = "www.jalview.org")
- protected List<JalviewModelType.FeatureSettings.Group> group;
-
- /**
- * Gets the value of the setting property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the setting property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getSetting().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.FeatureSettings.Setting }
- *
- *
- */
- public List<JalviewModelType.FeatureSettings.Setting> getSetting() {
- if (setting == null) {
- setting = new ArrayList<JalviewModelType.FeatureSettings.Setting>();
- }
- return this.setting;
- }
-
- /**
- * Gets the value of the group property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the group property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getGroup().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.FeatureSettings.Group }
- *
- *
- */
- public List<JalviewModelType.FeatureSettings.Group> getGroup() {
- if (group == null) {
- group = new ArrayList<JalviewModelType.FeatureSettings.Group>();
- }
- return this.group;
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="name" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "")
- public static class Group {
-
- @XmlAttribute(name = "name", required = true)
- protected String name;
- @XmlAttribute(name = "display", required = true)
- protected boolean display;
-
- /**
- * Gets the value of the name property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getName() {
- return name;
- }
-
- /**
- * Sets the value of the name property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setName(String value) {
- this.name = value;
- }
-
- /**
- * Gets the value of the display property.
- *
- */
- public boolean isDisplay() {
- return display;
- }
-
- /**
- * Sets the value of the display property.
- *
- */
- public void setDisplay(boolean value) {
- this.display = value;
- }
-
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="attributeName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="2" minOccurs="0"/>
- * <element name="matcherSet" type="{www.jalview.org/colours}FeatureMatcherSet" minOccurs="0"/>
- * </sequence>
- * <attribute name="type" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="colour" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="display" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="order" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="mincolour" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="noValueColour" type="{www.jalview.org/colours}NoValueColour" default="Min" />
- * <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="threshstate" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="max" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="min" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="colourByLabel" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="autoScale" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "attributeName",
- "matcherSet"
- })
- public static class Setting {
-
- @XmlElement(namespace = "www.jalview.org")
- protected List<String> attributeName;
- @XmlElement(namespace = "www.jalview.org")
- protected FeatureMatcherSet matcherSet;
- @XmlAttribute(name = "type", required = true)
- protected String type;
- @XmlAttribute(name = "colour", required = true)
- protected int colour;
- @XmlAttribute(name = "display", required = true)
- protected boolean display;
- @XmlAttribute(name = "order")
- protected Float order;
- @XmlAttribute(name = "mincolour")
- protected Integer mincolour;
- @XmlAttribute(name = "noValueColour")
- protected NoValueColour noValueColour;
- @XmlAttribute(name = "threshold")
- protected Float threshold;
- @XmlAttribute(name = "threshstate")
- protected Integer threshstate;
- @XmlAttribute(name = "max")
- protected Float max;
- @XmlAttribute(name = "min")
- protected Float min;
- @XmlAttribute(name = "colourByLabel")
- protected Boolean colourByLabel;
- @XmlAttribute(name = "autoScale")
- protected Boolean autoScale;
-
- /**
- * Gets the value of the attributeName property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the attributeName property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getAttributeName().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link String }
- *
- *
- */
- public List<String> getAttributeName() {
- if (attributeName == null) {
- attributeName = new ArrayList<String>();
- }
- return this.attributeName;
- }
-
- /**
- * Gets the value of the matcherSet property.
- *
- * @return
- * possible object is
- * {@link FeatureMatcherSet }
- *
- */
- public FeatureMatcherSet getMatcherSet() {
- return matcherSet;
- }
-
- /**
- * Sets the value of the matcherSet property.
- *
- * @param value
- * allowed object is
- * {@link FeatureMatcherSet }
- *
- */
- public void setMatcherSet(FeatureMatcherSet value) {
- this.matcherSet = value;
- }
-
- /**
- * Gets the value of the type property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getType() {
- return type;
- }
-
- /**
- * Sets the value of the type property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setType(String value) {
- this.type = value;
- }
-
- /**
- * Gets the value of the colour property.
- *
- */
- public int getColour() {
- return colour;
- }
-
- /**
- * Sets the value of the colour property.
- *
- */
- public void setColour(int value) {
- this.colour = value;
- }
-
- /**
- * Gets the value of the display property.
- *
- */
- public boolean isDisplay() {
- return display;
- }
-
- /**
- * Sets the value of the display property.
- *
- */
- public void setDisplay(boolean value) {
- this.display = value;
- }
-
- /**
- * Gets the value of the order property.
- *
- * @return
- * possible object is
- * {@link Float }
- *
- */
- public Float getOrder() {
- return order;
- }
-
- /**
- * Sets the value of the order property.
- *
- * @param value
- * allowed object is
- * {@link Float }
- *
- */
- public void setOrder(Float value) {
- this.order = value;
- }
-
- /**
- * Gets the value of the mincolour property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getMincolour() {
- return mincolour;
- }
-
- /**
- * Sets the value of the mincolour property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setMincolour(Integer value) {
- this.mincolour = value;
- }
-
- /**
- * Gets the value of the noValueColour property.
- *
- * @return
- * possible object is
- * {@link NoValueColour }
- *
- */
- public NoValueColour getNoValueColour() {
- if (noValueColour == null) {
- return NoValueColour.MIN;
- } else {
- return noValueColour;
- }
- }
-
- /**
- * Sets the value of the noValueColour property.
- *
- * @param value
- * allowed object is
- * {@link NoValueColour }
- *
- */
- public void setNoValueColour(NoValueColour value) {
- this.noValueColour = value;
- }
-
- /**
- * Gets the value of the threshold property.
- *
- * @return
- * possible object is
- * {@link Float }
- *
- */
- public Float getThreshold() {
- return threshold;
- }
-
- /**
- * Sets the value of the threshold property.
- *
- * @param value
- * allowed object is
- * {@link Float }
- *
- */
- public void setThreshold(Float value) {
- this.threshold = value;
- }
-
- /**
- * Gets the value of the threshstate property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getThreshstate() {
- return threshstate;
- }
-
- /**
- * Sets the value of the threshstate property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setThreshstate(Integer value) {
- this.threshstate = value;
- }
-
- /**
- * Gets the value of the max property.
- *
- * @return
- * possible object is
- * {@link Float }
- *
- */
- public Float getMax() {
- return max;
- }
-
- /**
- * Sets the value of the max property.
- *
- * @param value
- * allowed object is
- * {@link Float }
- *
- */
- public void setMax(Float value) {
- this.max = value;
- }
-
- /**
- * Gets the value of the min property.
- *
- * @return
- * possible object is
- * {@link Float }
- *
- */
- public Float getMin() {
- return min;
- }
-
- /**
- * Sets the value of the min property.
- *
- * @param value
- * allowed object is
- * {@link Float }
- *
- */
- public void setMin(Float value) {
- this.min = value;
- }
-
- /**
- * Gets the value of the colourByLabel property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isColourByLabel() {
- return colourByLabel;
- }
-
- /**
- * Sets the value of the colourByLabel property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setColourByLabel(Boolean value) {
- this.colourByLabel = value;
- }
-
- /**
- * Gets the value of the autoScale property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isAutoScale() {
- return autoScale;
- }
-
- /**
- * Sets the value of the autoScale property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setAutoScale(Boolean value) {
- this.autoScale = value;
- }
-
- }
-
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="seq" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/>
- * <element name="annotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
- * </sequence>
- * <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="name" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="consThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="pidThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="outlineColour" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="displayBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="displayText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="colourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="ignoreGapsinConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="showConsensusHistogram" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="showSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="normaliseSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "seq",
- "annotationColours"
- })
- public static class JGroup {
-
- @XmlElement(namespace = "www.jalview.org", required = true)
- protected List<String> seq;
- @XmlElement(namespace = "www.jalview.org")
- protected AnnotationColourScheme annotationColours;
- @XmlAttribute(name = "start")
- protected Integer start;
- @XmlAttribute(name = "end")
- protected Integer end;
- @XmlAttribute(name = "name")
- protected String name;
- @XmlAttribute(name = "colour")
- protected String colour;
- @XmlAttribute(name = "consThreshold")
- protected Integer consThreshold;
- @XmlAttribute(name = "pidThreshold")
- protected Integer pidThreshold;
- @XmlAttribute(name = "outlineColour")
- protected Integer outlineColour;
- @XmlAttribute(name = "displayBoxes")
- protected Boolean displayBoxes;
- @XmlAttribute(name = "displayText")
- protected Boolean displayText;
- @XmlAttribute(name = "colourText")
- protected Boolean colourText;
- @XmlAttribute(name = "textCol1")
- protected Integer textCol1;
- @XmlAttribute(name = "textCol2")
- protected Integer textCol2;
- @XmlAttribute(name = "textColThreshold")
- protected Integer textColThreshold;
- @XmlAttribute(name = "showUnconserved")
- protected Boolean showUnconserved;
- @XmlAttribute(name = "ignoreGapsinConsensus")
- protected Boolean ignoreGapsinConsensus;
- @XmlAttribute(name = "showConsensusHistogram")
- protected Boolean showConsensusHistogram;
- @XmlAttribute(name = "showSequenceLogo")
- protected Boolean showSequenceLogo;
- @XmlAttribute(name = "normaliseSequenceLogo")
- protected Boolean normaliseSequenceLogo;
- @XmlAttribute(name = "id")
- protected String id;
-
- /**
- * Gets the value of the seq property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the seq property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getSeq().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link String }
- *
- *
- */
- public List<String> getSeq() {
- if (seq == null) {
- seq = new ArrayList<String>();
- }
- return this.seq;
- }
-
- /**
- * Gets the value of the annotationColours property.
- *
- * @return
- * possible object is
- * {@link AnnotationColourScheme }
- *
- */
- public AnnotationColourScheme getAnnotationColours() {
- return annotationColours;
- }
-
- /**
- * Sets the value of the annotationColours property.
- *
- * @param value
- * allowed object is
- * {@link AnnotationColourScheme }
- *
- */
- public void setAnnotationColours(AnnotationColourScheme value) {
- this.annotationColours = value;
- }
-
- /**
- * Gets the value of the start property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getStart() {
- return start;
- }
-
- /**
- * Sets the value of the start property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setStart(Integer value) {
- this.start = value;
- }
-
- /**
- * Gets the value of the end property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getEnd() {
- return end;
- }
-
- /**
- * Sets the value of the end property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setEnd(Integer value) {
- this.end = value;
- }
-
- /**
- * Gets the value of the name property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getName() {
- return name;
- }
-
- /**
- * Sets the value of the name property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setName(String value) {
- this.name = value;
- }
-
- /**
- * Gets the value of the colour property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getColour() {
- return colour;
- }
-
- /**
- * Sets the value of the colour property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setColour(String value) {
- this.colour = value;
- }
-
- /**
- * Gets the value of the consThreshold property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getConsThreshold() {
- return consThreshold;
- }
-
- /**
- * Sets the value of the consThreshold property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setConsThreshold(Integer value) {
- this.consThreshold = value;
- }
-
- /**
- * Gets the value of the pidThreshold property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getPidThreshold() {
- return pidThreshold;
- }
-
- /**
- * Sets the value of the pidThreshold property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setPidThreshold(Integer value) {
- this.pidThreshold = value;
- }
-
- /**
- * Gets the value of the outlineColour property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getOutlineColour() {
- return outlineColour;
- }
-
- /**
- * Sets the value of the outlineColour property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setOutlineColour(Integer value) {
- this.outlineColour = value;
- }
-
- /**
- * Gets the value of the displayBoxes property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isDisplayBoxes() {
- return displayBoxes;
- }
-
- /**
- * Sets the value of the displayBoxes property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setDisplayBoxes(Boolean value) {
- this.displayBoxes = value;
- }
-
- /**
- * Gets the value of the displayText property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isDisplayText() {
- return displayText;
- }
-
- /**
- * Sets the value of the displayText property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setDisplayText(Boolean value) {
- this.displayText = value;
- }
-
- /**
- * Gets the value of the colourText property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isColourText() {
- return colourText;
- }
-
- /**
- * Sets the value of the colourText property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setColourText(Boolean value) {
- this.colourText = value;
- }
-
- /**
- * Gets the value of the textCol1 property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getTextCol1() {
- return textCol1;
- }
-
- /**
- * Sets the value of the textCol1 property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setTextCol1(Integer value) {
- this.textCol1 = value;
- }
-
- /**
- * Gets the value of the textCol2 property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getTextCol2() {
- return textCol2;
- }
-
- /**
- * Sets the value of the textCol2 property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setTextCol2(Integer value) {
- this.textCol2 = value;
- }
-
- /**
- * Gets the value of the textColThreshold property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getTextColThreshold() {
- return textColThreshold;
- }
-
- /**
- * Sets the value of the textColThreshold property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setTextColThreshold(Integer value) {
- this.textColThreshold = value;
- }
-
- /**
- * Gets the value of the showUnconserved property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowUnconserved() {
- return showUnconserved;
- }
-
- /**
- * Sets the value of the showUnconserved property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowUnconserved(Boolean value) {
- this.showUnconserved = value;
- }
-
- /**
- * Gets the value of the ignoreGapsinConsensus property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isIgnoreGapsinConsensus() {
- if (ignoreGapsinConsensus == null) {
- return true;
- } else {
- return ignoreGapsinConsensus;
- }
- }
-
- /**
- * Sets the value of the ignoreGapsinConsensus property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setIgnoreGapsinConsensus(Boolean value) {
- this.ignoreGapsinConsensus = value;
- }
-
- /**
- * Gets the value of the showConsensusHistogram property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isShowConsensusHistogram() {
- if (showConsensusHistogram == null) {
- return true;
- } else {
- return showConsensusHistogram;
- }
- }
-
- /**
- * Sets the value of the showConsensusHistogram property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowConsensusHistogram(Boolean value) {
- this.showConsensusHistogram = value;
- }
-
- /**
- * Gets the value of the showSequenceLogo property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isShowSequenceLogo() {
- if (showSequenceLogo == null) {
- return false;
- } else {
- return showSequenceLogo;
- }
- }
-
- /**
- * Sets the value of the showSequenceLogo property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowSequenceLogo(Boolean value) {
- this.showSequenceLogo = value;
- }
-
- /**
- * Gets the value of the normaliseSequenceLogo property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isNormaliseSequenceLogo() {
- if (normaliseSequenceLogo == null) {
- return false;
- } else {
- return normaliseSequenceLogo;
- }
- }
-
- /**
- * Sets the value of the normaliseSequenceLogo property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setNormaliseSequenceLogo(Boolean value) {
- this.normaliseSequenceLogo = value;
- }
-
- /**
- * Gets the value of the id property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getId() {
- return id;
- }
-
- /**
- * Sets the value of the id property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setId(String value) {
- this.id = value;
- }
-
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="features" type="{www.jalview.org}feature" maxOccurs="unbounded" minOccurs="0"/>
- * <element name="pdbids" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <extension base="{www.jalview.org}pdbentry">
- * <sequence>
- * <element name="structureState" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <simpleContent>
- * <extension base="<http://www.w3.org/2001/XMLSchema>string">
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </extension>
- * </simpleContent>
- * </complexType>
- * </element>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="hiddenSequences" type="{http://www.w3.org/2001/XMLSchema}int" maxOccurs="unbounded" minOccurs="0"/>
- * <element name="rnaViewer" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="secondaryStructure" maxOccurs="unbounded">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * <attribute name="colour" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="start" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="end" use="required" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="id" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="hidden" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewreference" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "features",
- "pdbids",
- "hiddenSequences",
- "rnaViewer"
- })
- public static class JSeq {
-
- @XmlElement(namespace = "www.jalview.org")
- protected List<Feature> features;
- @XmlElement(namespace = "www.jalview.org")
- protected List<JalviewModelType.JSeq.Pdbids> pdbids;
- @XmlElement(namespace = "www.jalview.org", type = Integer.class)
- protected List<Integer> hiddenSequences;
- @XmlElement(namespace = "www.jalview.org")
- protected List<JalviewModelType.JSeq.RnaViewer> rnaViewer;
- @XmlAttribute(name = "colour")
- protected Integer colour;
- @XmlAttribute(name = "start", required = true)
- protected int start;
- @XmlAttribute(name = "end", required = true)
- protected int end;
- @XmlAttribute(name = "id", required = true)
- protected String id;
- @XmlAttribute(name = "hidden")
- protected Boolean hidden;
- @XmlAttribute(name = "viewreference")
- protected Boolean viewreference;
-
- /**
- * Gets the value of the features property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the features property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getFeatures().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link Feature }
- *
- *
- */
- public List<Feature> getFeatures() {
- if (features == null) {
- features = new ArrayList<Feature>();
- }
- return this.features;
- }
-
- /**
- * Gets the value of the pdbids property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the pdbids property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getPdbids().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.JSeq.Pdbids }
- *
- *
- */
- public List<JalviewModelType.JSeq.Pdbids> getPdbids() {
- if (pdbids == null) {
- pdbids = new ArrayList<JalviewModelType.JSeq.Pdbids>();
- }
- return this.pdbids;
- }
-
- /**
- * Gets the value of the hiddenSequences property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the hiddenSequences property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getHiddenSequences().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link Integer }
- *
- *
- */
- public List<Integer> getHiddenSequences() {
- if (hiddenSequences == null) {
- hiddenSequences = new ArrayList<Integer>();
- }
- return this.hiddenSequences;
- }
-
- /**
- * Gets the value of the rnaViewer property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the rnaViewer property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getRnaViewer().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.JSeq.RnaViewer }
- *
- *
- */
- public List<JalviewModelType.JSeq.RnaViewer> getRnaViewer() {
- if (rnaViewer == null) {
- rnaViewer = new ArrayList<JalviewModelType.JSeq.RnaViewer>();
- }
- return this.rnaViewer;
- }
-
- /**
- * Gets the value of the colour property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getColour() {
- return colour;
- }
-
- /**
- * Sets the value of the colour property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setColour(Integer value) {
- this.colour = value;
- }
-
- /**
- * Gets the value of the start property.
- *
- */
- public int getStart() {
- return start;
- }
-
- /**
- * Sets the value of the start property.
- *
- */
- public void setStart(int value) {
- this.start = value;
- }
-
- /**
- * Gets the value of the end property.
- *
- */
- public int getEnd() {
- return end;
- }
-
- /**
- * Sets the value of the end property.
- *
- */
- public void setEnd(int value) {
- this.end = value;
- }
-
- /**
- * Gets the value of the id property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getId() {
- return id;
- }
-
- /**
- * Sets the value of the id property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setId(String value) {
- this.id = value;
- }
-
- /**
- * Gets the value of the hidden property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isHidden() {
- return hidden;
- }
-
- /**
- * Sets the value of the hidden property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setHidden(Boolean value) {
- this.hidden = value;
- }
-
- /**
- * Gets the value of the viewreference property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isViewreference() {
- return viewreference;
- }
-
- /**
- * Sets the value of the viewreference property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setViewreference(Boolean value) {
- this.viewreference = value;
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <extension base="{www.jalview.org}pdbentry">
- * <sequence>
- * <element name="structureState" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <simpleContent>
- * <extension base="<http://www.w3.org/2001/XMLSchema>string">
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </extension>
- * </simpleContent>
- * </complexType>
- * </element>
- * </sequence>
- * </extension>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "structureState"
- })
- public static class Pdbids
- extends Pdbentry
- {
-
- @XmlElement(namespace = "www.jalview.org")
- protected List<JalviewModelType.JSeq.Pdbids.StructureState> structureState;
-
- /**
- * Gets the value of the structureState property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the structureState property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getStructureState().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.JSeq.Pdbids.StructureState }
- *
- *
- */
- public List<JalviewModelType.JSeq.Pdbids.StructureState> getStructureState() {
- if (structureState == null) {
- structureState = new ArrayList<JalviewModelType.JSeq.Pdbids.StructureState>();
- }
- return this.structureState;
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <simpleContent>
- * <extension base="<http://www.w3.org/2001/XMLSchema>string">
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="visible" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="alignwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="colourwithAlignPanel" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="colourByJmol" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="type" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </extension>
- * </simpleContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "value"
- })
- public static class StructureState {
-
- @XmlValue
- protected String value;
- @XmlAttribute(name = "visible")
- protected Boolean visible;
- @XmlAttribute(name = "viewId")
- protected String viewId;
- @XmlAttribute(name = "alignwithAlignPanel")
- protected Boolean alignwithAlignPanel;
- @XmlAttribute(name = "colourwithAlignPanel")
- protected Boolean colourwithAlignPanel;
- @XmlAttribute(name = "colourByJmol")
- protected Boolean colourByJmol;
- @XmlAttribute(name = "type")
- protected String type;
- @XmlAttribute(name = "width")
- protected Integer width;
- @XmlAttribute(name = "height")
- protected Integer height;
- @XmlAttribute(name = "xpos")
- protected Integer xpos;
- @XmlAttribute(name = "ypos")
- protected Integer ypos;
-
- /**
- * Gets the value of the value property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getValue() {
- return value;
- }
-
- /**
- * Sets the value of the value property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setValue(String value) {
- this.value = value;
- }
-
- /**
- * Gets the value of the visible property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isVisible() {
- return visible;
- }
-
- /**
- * Sets the value of the visible property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setVisible(Boolean value) {
- this.visible = value;
- }
-
- /**
- * Gets the value of the viewId property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getViewId() {
- return viewId;
- }
-
- /**
- * Sets the value of the viewId property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setViewId(String value) {
- this.viewId = value;
- }
-
- /**
- * Gets the value of the alignwithAlignPanel property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isAlignwithAlignPanel() {
- if (alignwithAlignPanel == null) {
- return true;
- } else {
- return alignwithAlignPanel;
- }
- }
-
- /**
- * Sets the value of the alignwithAlignPanel property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setAlignwithAlignPanel(Boolean value) {
- this.alignwithAlignPanel = value;
- }
-
- /**
- * Gets the value of the colourwithAlignPanel property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isColourwithAlignPanel() {
- if (colourwithAlignPanel == null) {
- return false;
- } else {
- return colourwithAlignPanel;
- }
- }
-
- /**
- * Sets the value of the colourwithAlignPanel property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setColourwithAlignPanel(Boolean value) {
- this.colourwithAlignPanel = value;
- }
-
- /**
- * Gets the value of the colourByJmol property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isColourByJmol() {
- if (colourByJmol == null) {
- return true;
- } else {
- return colourByJmol;
- }
- }
-
- /**
- * Sets the value of the colourByJmol property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setColourByJmol(Boolean value) {
- this.colourByJmol = value;
- }
-
- /**
- * Gets the value of the type property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getType() {
- return type;
- }
-
- /**
- * Sets the value of the type property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setType(String value) {
- this.type = value;
- }
-
- /**
- * Gets the value of the width property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getWidth() {
- return width;
- }
-
- /**
- * Sets the value of the width property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setWidth(Integer value) {
- this.width = value;
- }
-
- /**
- * Gets the value of the height property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getHeight() {
- return height;
- }
-
- /**
- * Sets the value of the height property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setHeight(Integer value) {
- this.height = value;
- }
-
- /**
- * Gets the value of the xpos property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getXpos() {
- return xpos;
- }
-
- /**
- * Sets the value of the xpos property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setXpos(Integer value) {
- this.xpos = value;
- }
-
- /**
- * Gets the value of the ypos property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getYpos() {
- return ypos;
- }
-
- /**
- * Sets the value of the ypos property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setYpos(Integer value) {
- this.ypos = value;
- }
-
- }
-
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="secondaryStructure" maxOccurs="unbounded">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="viewId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="dividerLocation" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="selectedRna" type="{http://www.w3.org/2001/XMLSchema}int" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "secondaryStructure"
- })
- public static class RnaViewer {
-
- @XmlElement(namespace = "www.jalview.org", required = true)
- protected List<JalviewModelType.JSeq.RnaViewer.SecondaryStructure> secondaryStructure;
- @XmlAttribute(name = "title")
- protected String title;
- @XmlAttribute(name = "viewId")
- protected String viewId;
- @XmlAttribute(name = "dividerLocation")
- protected Integer dividerLocation;
- @XmlAttribute(name = "selectedRna")
- protected Integer selectedRna;
- @XmlAttribute(name = "width")
- protected Integer width;
- @XmlAttribute(name = "height")
- protected Integer height;
- @XmlAttribute(name = "xpos")
- protected Integer xpos;
- @XmlAttribute(name = "ypos")
- protected Integer ypos;
-
- /**
- * Gets the value of the secondaryStructure property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the secondaryStructure property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getSecondaryStructure().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.JSeq.RnaViewer.SecondaryStructure }
- *
- *
- */
- public List<JalviewModelType.JSeq.RnaViewer.SecondaryStructure> getSecondaryStructure() {
- if (secondaryStructure == null) {
- secondaryStructure = new ArrayList<JalviewModelType.JSeq.RnaViewer.SecondaryStructure>();
- }
- return this.secondaryStructure;
- }
-
- /**
- * Gets the value of the title property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getTitle() {
- return title;
- }
-
- /**
- * Sets the value of the title property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setTitle(String value) {
- this.title = value;
- }
-
- /**
- * Gets the value of the viewId property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getViewId() {
- return viewId;
- }
-
- /**
- * Sets the value of the viewId property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setViewId(String value) {
- this.viewId = value;
- }
-
- /**
- * Gets the value of the dividerLocation property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getDividerLocation() {
- return dividerLocation;
- }
-
- /**
- * Sets the value of the dividerLocation property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setDividerLocation(Integer value) {
- this.dividerLocation = value;
- }
-
- /**
- * Gets the value of the selectedRna property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getSelectedRna() {
- return selectedRna;
- }
-
- /**
- * Sets the value of the selectedRna property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setSelectedRna(Integer value) {
- this.selectedRna = value;
- }
-
- /**
- * Gets the value of the width property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getWidth() {
- return width;
- }
-
- /**
- * Sets the value of the width property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setWidth(Integer value) {
- this.width = value;
- }
-
- /**
- * Gets the value of the height property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getHeight() {
- return height;
- }
-
- /**
- * Sets the value of the height property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setHeight(Integer value) {
- this.height = value;
- }
-
- /**
- * Gets the value of the xpos property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getXpos() {
- return xpos;
- }
-
- /**
- * Sets the value of the xpos property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setXpos(Integer value) {
- this.xpos = value;
- }
-
- /**
- * Gets the value of the ypos property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getYpos() {
- return ypos;
- }
-
- /**
- * Sets the value of the ypos property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setYpos(Integer value) {
- this.ypos = value;
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="annotationId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="gapped" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="viewerState" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "")
- public static class SecondaryStructure {
-
- @XmlAttribute(name = "title")
- protected String title;
- @XmlAttribute(name = "annotationId", required = true)
- protected String annotationId;
- @XmlAttribute(name = "gapped")
- protected Boolean gapped;
- @XmlAttribute(name = "viewerState")
- protected String viewerState;
-
- /**
- * Gets the value of the title property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getTitle() {
- return title;
- }
-
- /**
- * Sets the value of the title property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setTitle(String value) {
- this.title = value;
- }
-
- /**
- * Gets the value of the annotationId property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getAnnotationId() {
- return annotationId;
- }
-
- /**
- * Sets the value of the annotationId property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setAnnotationId(String value) {
- this.annotationId = value;
- }
-
- /**
- * Gets the value of the gapped property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isGapped() {
- return gapped;
- }
-
- /**
- * Sets the value of the gapped property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setGapped(Boolean value) {
- this.gapped = value;
- }
-
- /**
- * Gets the value of the viewerState property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getViewerState() {
- return viewerState;
- }
-
- /**
- * Sets the value of the viewerState property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setViewerState(String value) {
- this.viewerState = value;
- }
-
- }
-
- }
-
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence minOccurs="0">
- * <element name="title" type="{http://www.w3.org/2001/XMLSchema}string"/>
- * <element name="newick" type="{http://www.w3.org/2001/XMLSchema}string"/>
- * </sequence>
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="threshold" type="{http://www.w3.org/2001/XMLSchema}float" />
- * <attribute name="showBootstrap" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showDistances" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="markUnlinked" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="fitToWindow" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="currentTree" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "title",
- "newick"
- })
- public static class Tree {
-
- @XmlElement(namespace = "www.jalview.org")
- protected String title;
- @XmlElement(namespace = "www.jalview.org")
- protected String newick;
- @XmlAttribute(name = "fontName")
- protected String fontName;
- @XmlAttribute(name = "fontSize")
- protected Integer fontSize;
- @XmlAttribute(name = "fontStyle")
- protected Integer fontStyle;
- @XmlAttribute(name = "threshold")
- protected Float threshold;
- @XmlAttribute(name = "showBootstrap")
- protected Boolean showBootstrap;
- @XmlAttribute(name = "showDistances")
- protected Boolean showDistances;
- @XmlAttribute(name = "markUnlinked")
- protected Boolean markUnlinked;
- @XmlAttribute(name = "fitToWindow")
- protected Boolean fitToWindow;
- @XmlAttribute(name = "currentTree")
- protected Boolean currentTree;
- @XmlAttribute(name = "id")
- @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
- @XmlID
- @XmlSchemaType(name = "ID")
- protected String id;
- @XmlAttribute(name = "width")
- protected Integer width;
- @XmlAttribute(name = "height")
- protected Integer height;
- @XmlAttribute(name = "xpos")
- protected Integer xpos;
- @XmlAttribute(name = "ypos")
- protected Integer ypos;
-
- /**
- * Gets the value of the title property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getTitle() {
- return title;
- }
-
- /**
- * Sets the value of the title property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setTitle(String value) {
- this.title = value;
- }
-
- /**
- * Gets the value of the newick property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getNewick() {
- return newick;
- }
-
- /**
- * Sets the value of the newick property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setNewick(String value) {
- this.newick = value;
- }
-
- /**
- * Gets the value of the fontName property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getFontName() {
- return fontName;
- }
-
- /**
- * Sets the value of the fontName property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setFontName(String value) {
- this.fontName = value;
- }
-
- /**
- * Gets the value of the fontSize property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getFontSize() {
- return fontSize;
- }
-
- /**
- * Sets the value of the fontSize property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setFontSize(Integer value) {
- this.fontSize = value;
- }
-
- /**
- * Gets the value of the fontStyle property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getFontStyle() {
- return fontStyle;
- }
-
- /**
- * Sets the value of the fontStyle property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setFontStyle(Integer value) {
- this.fontStyle = value;
- }
-
- /**
- * Gets the value of the threshold property.
- *
- * @return
- * possible object is
- * {@link Float }
- *
- */
- public Float getThreshold() {
- return threshold;
- }
-
- /**
- * Sets the value of the threshold property.
- *
- * @param value
- * allowed object is
- * {@link Float }
- *
- */
- public void setThreshold(Float value) {
- this.threshold = value;
- }
-
- /**
- * Gets the value of the showBootstrap property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowBootstrap() {
- return showBootstrap;
- }
-
- /**
- * Sets the value of the showBootstrap property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowBootstrap(Boolean value) {
- this.showBootstrap = value;
- }
-
- /**
- * Gets the value of the showDistances property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowDistances() {
- return showDistances;
- }
-
- /**
- * Sets the value of the showDistances property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowDistances(Boolean value) {
- this.showDistances = value;
- }
-
- /**
- * Gets the value of the markUnlinked property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isMarkUnlinked() {
- return markUnlinked;
- }
-
- /**
- * Sets the value of the markUnlinked property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setMarkUnlinked(Boolean value) {
- this.markUnlinked = value;
- }
-
- /**
- * Gets the value of the fitToWindow property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isFitToWindow() {
- return fitToWindow;
- }
-
- /**
- * Sets the value of the fitToWindow property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setFitToWindow(Boolean value) {
- this.fitToWindow = value;
- }
-
- /**
- * Gets the value of the currentTree property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isCurrentTree() {
- return currentTree;
- }
-
- /**
- * Sets the value of the currentTree property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setCurrentTree(Boolean value) {
- this.currentTree = value;
- }
-
- /**
- * Gets the value of the id property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getId() {
- return id;
- }
-
- /**
- * Sets the value of the id property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setId(String value) {
- this.id = value;
- }
-
- /**
- * Gets the value of the width property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getWidth() {
- return width;
- }
-
- /**
- * Sets the value of the width property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setWidth(Integer value) {
- this.width = value;
- }
-
- /**
- * Gets the value of the height property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getHeight() {
- return height;
- }
-
- /**
- * Sets the value of the height property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setHeight(Integer value) {
- this.height = value;
- }
-
- /**
- * Gets the value of the xpos property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getXpos() {
- return xpos;
- }
-
- /**
- * Sets the value of the xpos property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setXpos(Integer value) {
- this.xpos = value;
- }
-
- /**
- * Gets the value of the ypos property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getYpos() {
- return ypos;
- }
-
- /**
- * Sets the value of the ypos property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setYpos(Integer value) {
- this.ypos = value;
- }
-
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="UserColourScheme" type="{www.jalview.org/colours}JalviewUserColours"/>
- * </sequence>
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "userColourScheme"
- })
- public static class UserColours {
-
- @XmlElement(name = "UserColourScheme", namespace = "www.jalview.org", required = true)
- protected JalviewUserColours userColourScheme;
- @XmlAttribute(name = "id")
- protected String id;
-
- /**
- * Gets the value of the userColourScheme property.
- *
- * @return
- * possible object is
- * {@link JalviewUserColours }
- *
- */
- public JalviewUserColours getUserColourScheme() {
- return userColourScheme;
- }
-
- /**
- * Sets the value of the userColourScheme property.
- *
- * @param value
- * allowed object is
- * {@link JalviewUserColours }
- *
- */
- public void setUserColourScheme(JalviewUserColours value) {
- this.userColourScheme = value;
- }
-
- /**
- * Gets the value of the id property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getId() {
- return id;
- }
-
- /**
- * Sets the value of the id property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setId(String value) {
- this.id = value;
- }
-
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <sequence>
- * <element name="AnnotationColours" type="{www.jalview.org}AnnotationColourScheme" minOccurs="0"/>
- * <element name="hiddenColumns" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </element>
- * <element name="calcIdParam" maxOccurs="unbounded" minOccurs="0">
- * <complexType>
- * <complexContent>
- * <extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
- * <attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </extension>
- * </complexContent>
- * </complexType>
- * </element>
- * </sequence>
- * <attGroup ref="{www.jalview.org}swingwindow"/>
- * <attribute name="conservationSelected" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="pidSelected" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="bgColour" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="consThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="pidThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="title" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="showFullId" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="rightAlignIds" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showColourText" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showUnconserved" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="showBoxes" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="wrapAlignment" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="renderGaps" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showSequenceFeatures" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showNPfeatureTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="showDbRefTooltip" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="followHighlight" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="followSelection" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="showAnnotation" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="centreColumnLabels" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="showGroupConservation" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="showGroupConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="showConsensusHistogram" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="showSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="normaliseSequenceLogo" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="ignoreGapsinConsensus" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="startRes" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="startSeq" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="fontName" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="fontSize" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="fontStyle" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="scaleProteinAsCdna" type="{http://www.w3.org/2001/XMLSchema}boolean" default="true" />
- * <attribute name="viewName" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="sequenceSetId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="gatheredViews" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * <attribute name="textCol1" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="textCol2" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="textColThreshold" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="id" type="{http://www.w3.org/2001/XMLSchema}ID" />
- * <attribute name="complementId" type="{http://www.w3.org/2001/XMLSchema}string" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "", propOrder = {
- "annotationColours",
- "hiddenColumns",
- "calcIdParam"
- })
- public static class Viewport {
-
- @XmlElement(name = "AnnotationColours", namespace = "www.jalview.org")
- protected AnnotationColourScheme annotationColours;
- @XmlElement(namespace = "www.jalview.org")
- protected List<JalviewModelType.Viewport.HiddenColumns> hiddenColumns;
- @XmlElement(namespace = "www.jalview.org")
- protected List<JalviewModelType.Viewport.CalcIdParam> calcIdParam;
- @XmlAttribute(name = "conservationSelected")
- protected Boolean conservationSelected;
- @XmlAttribute(name = "pidSelected")
- protected Boolean pidSelected;
- @XmlAttribute(name = "bgColour")
- protected String bgColour;
- @XmlAttribute(name = "consThreshold")
- protected Integer consThreshold;
- @XmlAttribute(name = "pidThreshold")
- protected Integer pidThreshold;
- @XmlAttribute(name = "title")
- protected String title;
- @XmlAttribute(name = "showFullId")
- protected Boolean showFullId;
- @XmlAttribute(name = "rightAlignIds")
- protected Boolean rightAlignIds;
- @XmlAttribute(name = "showText")
- protected Boolean showText;
- @XmlAttribute(name = "showColourText")
- protected Boolean showColourText;
- @XmlAttribute(name = "showUnconserved")
- protected Boolean showUnconserved;
- @XmlAttribute(name = "showBoxes")
- protected Boolean showBoxes;
- @XmlAttribute(name = "wrapAlignment")
- protected Boolean wrapAlignment;
- @XmlAttribute(name = "renderGaps")
- protected Boolean renderGaps;
- @XmlAttribute(name = "showSequenceFeatures")
- protected Boolean showSequenceFeatures;
- @XmlAttribute(name = "showNPfeatureTooltip")
- protected Boolean showNPfeatureTooltip;
- @XmlAttribute(name = "showDbRefTooltip")
- protected Boolean showDbRefTooltip;
- @XmlAttribute(name = "followHighlight")
- protected Boolean followHighlight;
- @XmlAttribute(name = "followSelection")
- protected Boolean followSelection;
- @XmlAttribute(name = "showAnnotation")
- protected Boolean showAnnotation;
- @XmlAttribute(name = "centreColumnLabels")
- protected Boolean centreColumnLabels;
- @XmlAttribute(name = "showGroupConservation")
- protected Boolean showGroupConservation;
- @XmlAttribute(name = "showGroupConsensus")
- protected Boolean showGroupConsensus;
- @XmlAttribute(name = "showConsensusHistogram")
- protected Boolean showConsensusHistogram;
- @XmlAttribute(name = "showSequenceLogo")
- protected Boolean showSequenceLogo;
- @XmlAttribute(name = "normaliseSequenceLogo")
- protected Boolean normaliseSequenceLogo;
- @XmlAttribute(name = "ignoreGapsinConsensus")
- protected Boolean ignoreGapsinConsensus;
- @XmlAttribute(name = "startRes")
- protected Integer startRes;
- @XmlAttribute(name = "startSeq")
- protected Integer startSeq;
- @XmlAttribute(name = "fontName")
- protected String fontName;
- @XmlAttribute(name = "fontSize")
- protected Integer fontSize;
- @XmlAttribute(name = "fontStyle")
- protected Integer fontStyle;
- @XmlAttribute(name = "scaleProteinAsCdna")
- protected Boolean scaleProteinAsCdna;
- @XmlAttribute(name = "viewName")
- protected String viewName;
- @XmlAttribute(name = "sequenceSetId")
- protected String sequenceSetId;
- @XmlAttribute(name = "gatheredViews")
- protected Boolean gatheredViews;
- @XmlAttribute(name = "textCol1")
- protected Integer textCol1;
- @XmlAttribute(name = "textCol2")
- protected Integer textCol2;
- @XmlAttribute(name = "textColThreshold")
- protected Integer textColThreshold;
- @XmlAttribute(name = "id")
- @XmlJavaTypeAdapter(CollapsedStringAdapter.class)
- @XmlID
- @XmlSchemaType(name = "ID")
- protected String id;
- @XmlAttribute(name = "complementId")
- protected String complementId;
- @XmlAttribute(name = "width")
- protected Integer width;
- @XmlAttribute(name = "height")
- protected Integer height;
- @XmlAttribute(name = "xpos")
- protected Integer xpos;
- @XmlAttribute(name = "ypos")
- protected Integer ypos;
-
- /**
- * Gets the value of the annotationColours property.
- *
- * @return
- * possible object is
- * {@link AnnotationColourScheme }
- *
- */
- public AnnotationColourScheme getAnnotationColours() {
- return annotationColours;
- }
-
- /**
- * Sets the value of the annotationColours property.
- *
- * @param value
- * allowed object is
- * {@link AnnotationColourScheme }
- *
- */
- public void setAnnotationColours(AnnotationColourScheme value) {
- this.annotationColours = value;
- }
-
- /**
- * Gets the value of the hiddenColumns property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the hiddenColumns property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getHiddenColumns().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.Viewport.HiddenColumns }
- *
- *
- */
- public List<JalviewModelType.Viewport.HiddenColumns> getHiddenColumns() {
- if (hiddenColumns == null) {
- hiddenColumns = new ArrayList<JalviewModelType.Viewport.HiddenColumns>();
- }
- return this.hiddenColumns;
- }
-
- /**
- * Gets the value of the calcIdParam property.
- *
- * <p>
- * This accessor method returns a reference to the live list,
- * not a snapshot. Therefore any modification you make to the
- * returned list will be present inside the JAXB object.
- * This is why there is not a <CODE>set</CODE> method for the calcIdParam property.
- *
- * <p>
- * For example, to add a new item, do as follows:
- * <pre>
- * getCalcIdParam().add(newItem);
- * </pre>
- *
- *
- * <p>
- * Objects of the following type(s) are allowed in the list
- * {@link JalviewModelType.Viewport.CalcIdParam }
- *
- *
- */
- public List<JalviewModelType.Viewport.CalcIdParam> getCalcIdParam() {
- if (calcIdParam == null) {
- calcIdParam = new ArrayList<JalviewModelType.Viewport.CalcIdParam>();
- }
- return this.calcIdParam;
- }
-
- /**
- * Gets the value of the conservationSelected property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isConservationSelected() {
- return conservationSelected;
- }
-
- /**
- * Sets the value of the conservationSelected property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setConservationSelected(Boolean value) {
- this.conservationSelected = value;
- }
-
- /**
- * Gets the value of the pidSelected property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isPidSelected() {
- return pidSelected;
- }
-
- /**
- * Sets the value of the pidSelected property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setPidSelected(Boolean value) {
- this.pidSelected = value;
- }
-
- /**
- * Gets the value of the bgColour property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getBgColour() {
- return bgColour;
- }
-
- /**
- * Sets the value of the bgColour property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setBgColour(String value) {
- this.bgColour = value;
- }
-
- /**
- * Gets the value of the consThreshold property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getConsThreshold() {
- return consThreshold;
- }
-
- /**
- * Sets the value of the consThreshold property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setConsThreshold(Integer value) {
- this.consThreshold = value;
- }
-
- /**
- * Gets the value of the pidThreshold property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getPidThreshold() {
- return pidThreshold;
- }
-
- /**
- * Sets the value of the pidThreshold property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setPidThreshold(Integer value) {
- this.pidThreshold = value;
- }
-
- /**
- * Gets the value of the title property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getTitle() {
- return title;
- }
-
- /**
- * Sets the value of the title property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setTitle(String value) {
- this.title = value;
- }
-
- /**
- * Gets the value of the showFullId property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowFullId() {
- return showFullId;
- }
-
- /**
- * Sets the value of the showFullId property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowFullId(Boolean value) {
- this.showFullId = value;
- }
-
- /**
- * Gets the value of the rightAlignIds property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isRightAlignIds() {
- return rightAlignIds;
- }
-
- /**
- * Sets the value of the rightAlignIds property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setRightAlignIds(Boolean value) {
- this.rightAlignIds = value;
- }
-
- /**
- * Gets the value of the showText property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowText() {
- return showText;
- }
-
- /**
- * Sets the value of the showText property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowText(Boolean value) {
- this.showText = value;
- }
-
- /**
- * Gets the value of the showColourText property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowColourText() {
- return showColourText;
- }
-
- /**
- * Sets the value of the showColourText property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowColourText(Boolean value) {
- this.showColourText = value;
- }
-
- /**
- * Gets the value of the showUnconserved property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isShowUnconserved() {
- if (showUnconserved == null) {
- return false;
- } else {
- return showUnconserved;
- }
- }
-
- /**
- * Sets the value of the showUnconserved property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowUnconserved(Boolean value) {
- this.showUnconserved = value;
- }
-
- /**
- * Gets the value of the showBoxes property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowBoxes() {
- return showBoxes;
- }
-
- /**
- * Sets the value of the showBoxes property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowBoxes(Boolean value) {
- this.showBoxes = value;
- }
-
- /**
- * Gets the value of the wrapAlignment property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isWrapAlignment() {
- return wrapAlignment;
- }
-
- /**
- * Sets the value of the wrapAlignment property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setWrapAlignment(Boolean value) {
- this.wrapAlignment = value;
- }
-
- /**
- * Gets the value of the renderGaps property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isRenderGaps() {
- return renderGaps;
- }
-
- /**
- * Sets the value of the renderGaps property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setRenderGaps(Boolean value) {
- this.renderGaps = value;
- }
-
- /**
- * Gets the value of the showSequenceFeatures property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowSequenceFeatures() {
- return showSequenceFeatures;
- }
-
- /**
- * Sets the value of the showSequenceFeatures property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowSequenceFeatures(Boolean value) {
- this.showSequenceFeatures = value;
- }
-
- /**
- * Gets the value of the showNPfeatureTooltip property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowNPfeatureTooltip() {
- return showNPfeatureTooltip;
- }
-
- /**
- * Sets the value of the showNPfeatureTooltip property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowNPfeatureTooltip(Boolean value) {
- this.showNPfeatureTooltip = value;
- }
-
- /**
- * Gets the value of the showDbRefTooltip property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowDbRefTooltip() {
- return showDbRefTooltip;
- }
-
- /**
- * Sets the value of the showDbRefTooltip property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowDbRefTooltip(Boolean value) {
- this.showDbRefTooltip = value;
- }
-
- /**
- * Gets the value of the followHighlight property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isFollowHighlight() {
- if (followHighlight == null) {
- return true;
- } else {
- return followHighlight;
- }
- }
-
- /**
- * Sets the value of the followHighlight property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setFollowHighlight(Boolean value) {
- this.followHighlight = value;
- }
-
- /**
- * Gets the value of the followSelection property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isFollowSelection() {
- if (followSelection == null) {
- return true;
- } else {
- return followSelection;
- }
- }
-
- /**
- * Sets the value of the followSelection property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setFollowSelection(Boolean value) {
- this.followSelection = value;
- }
-
- /**
- * Gets the value of the showAnnotation property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isShowAnnotation() {
- return showAnnotation;
- }
-
- /**
- * Sets the value of the showAnnotation property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowAnnotation(Boolean value) {
- this.showAnnotation = value;
- }
-
- /**
- * Gets the value of the centreColumnLabels property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isCentreColumnLabels() {
- if (centreColumnLabels == null) {
- return false;
- } else {
- return centreColumnLabels;
- }
- }
-
- /**
- * Sets the value of the centreColumnLabels property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setCentreColumnLabels(Boolean value) {
- this.centreColumnLabels = value;
- }
-
- /**
- * Gets the value of the showGroupConservation property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isShowGroupConservation() {
- if (showGroupConservation == null) {
- return false;
- } else {
- return showGroupConservation;
- }
- }
-
- /**
- * Sets the value of the showGroupConservation property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowGroupConservation(Boolean value) {
- this.showGroupConservation = value;
- }
-
- /**
- * Gets the value of the showGroupConsensus property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isShowGroupConsensus() {
- if (showGroupConsensus == null) {
- return false;
- } else {
- return showGroupConsensus;
- }
- }
-
- /**
- * Sets the value of the showGroupConsensus property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowGroupConsensus(Boolean value) {
- this.showGroupConsensus = value;
- }
-
- /**
- * Gets the value of the showConsensusHistogram property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isShowConsensusHistogram() {
- if (showConsensusHistogram == null) {
- return true;
- } else {
- return showConsensusHistogram;
- }
- }
-
- /**
- * Sets the value of the showConsensusHistogram property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowConsensusHistogram(Boolean value) {
- this.showConsensusHistogram = value;
- }
-
- /**
- * Gets the value of the showSequenceLogo property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isShowSequenceLogo() {
- if (showSequenceLogo == null) {
- return false;
- } else {
- return showSequenceLogo;
- }
- }
-
- /**
- * Sets the value of the showSequenceLogo property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setShowSequenceLogo(Boolean value) {
- this.showSequenceLogo = value;
- }
-
- /**
- * Gets the value of the normaliseSequenceLogo property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isNormaliseSequenceLogo() {
- if (normaliseSequenceLogo == null) {
- return false;
- } else {
- return normaliseSequenceLogo;
- }
- }
-
- /**
- * Sets the value of the normaliseSequenceLogo property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setNormaliseSequenceLogo(Boolean value) {
- this.normaliseSequenceLogo = value;
- }
-
- /**
- * Gets the value of the ignoreGapsinConsensus property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isIgnoreGapsinConsensus() {
- if (ignoreGapsinConsensus == null) {
- return true;
- } else {
- return ignoreGapsinConsensus;
- }
- }
-
- /**
- * Sets the value of the ignoreGapsinConsensus property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setIgnoreGapsinConsensus(Boolean value) {
- this.ignoreGapsinConsensus = value;
- }
-
- /**
- * Gets the value of the startRes property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getStartRes() {
- return startRes;
- }
-
- /**
- * Sets the value of the startRes property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setStartRes(Integer value) {
- this.startRes = value;
- }
-
- /**
- * Gets the value of the startSeq property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getStartSeq() {
- return startSeq;
- }
-
- /**
- * Sets the value of the startSeq property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setStartSeq(Integer value) {
- this.startSeq = value;
- }
-
- /**
- * Gets the value of the fontName property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getFontName() {
- return fontName;
- }
-
- /**
- * Sets the value of the fontName property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setFontName(String value) {
- this.fontName = value;
- }
-
- /**
- * Gets the value of the fontSize property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getFontSize() {
- return fontSize;
- }
-
- /**
- * Sets the value of the fontSize property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setFontSize(Integer value) {
- this.fontSize = value;
- }
-
- /**
- * Gets the value of the fontStyle property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getFontStyle() {
- return fontStyle;
- }
-
- /**
- * Sets the value of the fontStyle property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setFontStyle(Integer value) {
- this.fontStyle = value;
- }
-
- /**
- * Gets the value of the scaleProteinAsCdna property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isScaleProteinAsCdna() {
- if (scaleProteinAsCdna == null) {
- return true;
- } else {
- return scaleProteinAsCdna;
- }
- }
-
- /**
- * Sets the value of the scaleProteinAsCdna property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setScaleProteinAsCdna(Boolean value) {
- this.scaleProteinAsCdna = value;
- }
-
- /**
- * Gets the value of the viewName property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getViewName() {
- return viewName;
- }
-
- /**
- * Sets the value of the viewName property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setViewName(String value) {
- this.viewName = value;
- }
-
- /**
- * Gets the value of the sequenceSetId property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getSequenceSetId() {
- return sequenceSetId;
- }
-
- /**
- * Sets the value of the sequenceSetId property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setSequenceSetId(String value) {
- this.sequenceSetId = value;
- }
-
- /**
- * Gets the value of the gatheredViews property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public Boolean isGatheredViews() {
- return gatheredViews;
- }
-
- /**
- * Sets the value of the gatheredViews property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setGatheredViews(Boolean value) {
- this.gatheredViews = value;
- }
-
- /**
- * Gets the value of the textCol1 property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getTextCol1() {
- return textCol1;
- }
-
- /**
- * Sets the value of the textCol1 property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setTextCol1(Integer value) {
- this.textCol1 = value;
- }
-
- /**
- * Gets the value of the textCol2 property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getTextCol2() {
- return textCol2;
- }
-
- /**
- * Sets the value of the textCol2 property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setTextCol2(Integer value) {
- this.textCol2 = value;
- }
-
- /**
- * Gets the value of the textColThreshold property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getTextColThreshold() {
- return textColThreshold;
- }
-
- /**
- * Sets the value of the textColThreshold property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setTextColThreshold(Integer value) {
- this.textColThreshold = value;
- }
-
- /**
- * Gets the value of the id property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getId() {
- return id;
- }
-
- /**
- * Sets the value of the id property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setId(String value) {
- this.id = value;
- }
-
- /**
- * Gets the value of the complementId property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getComplementId() {
- return complementId;
- }
-
- /**
- * Sets the value of the complementId property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setComplementId(String value) {
- this.complementId = value;
- }
-
- /**
- * Gets the value of the width property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getWidth() {
- return width;
- }
-
- /**
- * Sets the value of the width property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setWidth(Integer value) {
- this.width = value;
- }
-
- /**
- * Gets the value of the height property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getHeight() {
- return height;
- }
-
- /**
- * Sets the value of the height property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setHeight(Integer value) {
- this.height = value;
- }
-
- /**
- * Gets the value of the xpos property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getXpos() {
- return xpos;
- }
-
- /**
- * Sets the value of the xpos property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setXpos(Integer value) {
- this.xpos = value;
- }
-
- /**
- * Gets the value of the ypos property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getYpos() {
- return ypos;
- }
-
- /**
- * Sets the value of the ypos property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setYpos(Integer value) {
- this.ypos = value;
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <extension base="{www.jalview.org/xml/wsparamset}WebServiceParameterSet">
- * <attribute name="calcId" use="required" type="{http://www.w3.org/2001/XMLSchema}string" />
- * <attribute name="needsUpdate" type="{http://www.w3.org/2001/XMLSchema}boolean" default="false" />
- * <attribute name="autoUpdate" use="required" type="{http://www.w3.org/2001/XMLSchema}boolean" />
- * </extension>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "")
- public static class CalcIdParam
- extends WebServiceParameterSet
- {
-
- @XmlAttribute(name = "calcId", required = true)
- protected String calcId;
- @XmlAttribute(name = "needsUpdate")
- protected Boolean needsUpdate;
- @XmlAttribute(name = "autoUpdate", required = true)
- protected boolean autoUpdate;
-
- /**
- * Gets the value of the calcId property.
- *
- * @return
- * possible object is
- * {@link String }
- *
- */
- public String getCalcId() {
- return calcId;
- }
-
- /**
- * Sets the value of the calcId property.
- *
- * @param value
- * allowed object is
- * {@link String }
- *
- */
- public void setCalcId(String value) {
- this.calcId = value;
- }
-
- /**
- * Gets the value of the needsUpdate property.
- *
- * @return
- * possible object is
- * {@link Boolean }
- *
- */
- public boolean isNeedsUpdate() {
- if (needsUpdate == null) {
- return false;
- } else {
- return needsUpdate;
- }
- }
-
- /**
- * Sets the value of the needsUpdate property.
- *
- * @param value
- * allowed object is
- * {@link Boolean }
- *
- */
- public void setNeedsUpdate(Boolean value) {
- this.needsUpdate = value;
- }
-
- /**
- * Gets the value of the autoUpdate property.
- *
- */
- public boolean isAutoUpdate() {
- return autoUpdate;
- }
-
- /**
- * Sets the value of the autoUpdate property.
- *
- */
- public void setAutoUpdate(boolean value) {
- this.autoUpdate = value;
- }
-
- }
-
-
- /**
- * <p>Java class for anonymous complex type.
- *
- * <p>The following schema fragment specifies the expected content contained within this class.
- *
- * <pre>
- * <complexType>
- * <complexContent>
- * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
- * <attribute name="start" type="{http://www.w3.org/2001/XMLSchema}int" />
- * <attribute name="end" type="{http://www.w3.org/2001/XMLSchema}int" />
- * </restriction>
- * </complexContent>
- * </complexType>
- * </pre>
- *
- *
- */
- @XmlAccessorType(XmlAccessType.FIELD)
- @XmlType(name = "")
- public static class HiddenColumns {
-
- @XmlAttribute(name = "start")
- protected Integer start;
- @XmlAttribute(name = "end")
- protected Integer end;
-
- /**
- * Gets the value of the start property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getStart() {
- return start;
- }
-
- /**
- * Sets the value of the start property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setStart(Integer value) {
- this.start = value;
- }
-
- /**
- * Gets the value of the end property.
- *
- * @return
- * possible object is
- * {@link Integer }
- *
- */
- public Integer getEnd() {
- return end;
- }
-
- /**
- * Sets the value of the end property.
- *
- * @param value
- * allowed object is
- * {@link Integer }
- *
- */
- public void setEnd(Integer value) {
- this.end = value;
- }
-
- }
-
- }
-
-}
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
}
/**
+ * Create an instance of {@link JalviewModel.PcaViewer }
+ *
+ */
+ public JalviewModel.PcaViewer createJalviewModelPcaViewer() {
+ return new JalviewModel.PcaViewer();
+ }
+
+ /**
* Create an instance of {@link JalviewModel.Viewport }
*
*/
}
/**
+ * Create an instance of {@link DoubleMatrix }
+ *
+ */
+ public DoubleMatrix createDoubleMatrix() {
+ return new DoubleMatrix();
+ }
+
+ /**
* Create an instance of {@link AnnotationColourScheme }
*
*/
}
/**
+ * Create an instance of {@link PcaDataType }
+ *
+ */
+ public PcaDataType createPcaDataType() {
+ return new PcaDataType();
+ }
+
+ /**
+ * Create an instance of {@link DoubleVector }
+ *
+ */
+ public DoubleVector createDoubleVector() {
+ return new DoubleVector();
+ }
+
+ /**
* Create an instance of {@link AlcodonFrame.Alcodon }
*
*/
}
/**
+ * Create an instance of {@link JalviewModel.PcaViewer.SequencePoint }
+ *
+ */
+ public JalviewModel.PcaViewer.SequencePoint createJalviewModelPcaViewerSequencePoint() {
+ return new JalviewModel.PcaViewer.SequencePoint();
+ }
+
+ /**
+ * Create an instance of {@link JalviewModel.PcaViewer.Axis }
+ *
+ */
+ public JalviewModel.PcaViewer.Axis createJalviewModelPcaViewerAxis() {
+ return new JalviewModel.PcaViewer.Axis();
+ }
+
+ /**
+ * Create an instance of {@link JalviewModel.PcaViewer.SeqPointMin }
+ *
+ */
+ public JalviewModel.PcaViewer.SeqPointMin createJalviewModelPcaViewerSeqPointMin() {
+ return new JalviewModel.PcaViewer.SeqPointMin();
+ }
+
+ /**
+ * Create an instance of {@link JalviewModel.PcaViewer.SeqPointMax }
+ *
+ */
+ public JalviewModel.PcaViewer.SeqPointMax createJalviewModelPcaViewerSeqPointMax() {
+ return new JalviewModel.PcaViewer.SeqPointMax();
+ }
+
+ /**
* Create an instance of {@link JalviewModel.Viewport.HiddenColumns }
*
*/
--- /dev/null
+//
+// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
+// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
+// Any modifications to this file will be lost upon recompilation of the source schema.
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
+//
+
+
+package jalview.xml.binding.jalview;
+
+import javax.xml.bind.annotation.XmlAccessType;
+import javax.xml.bind.annotation.XmlAccessorType;
+import javax.xml.bind.annotation.XmlElement;
+import javax.xml.bind.annotation.XmlType;
+
+
+/**
+ *
+ * The results of a PCA calculation
+ *
+ *
+ * <p>Java class for PcaDataType complex type.
+ *
+ * <p>The following schema fragment specifies the expected content contained within this class.
+ *
+ * <pre>
+ * <complexType name="PcaDataType">
+ * <complexContent>
+ * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
+ * <sequence>
+ * <element name="pairwiseMatrix" type="{www.jalview.org}DoubleMatrix"/>
+ * <element name="tridiagonalMatrix" type="{www.jalview.org}DoubleMatrix"/>
+ * <element name="eigenMatrix" type="{www.jalview.org}DoubleMatrix"/>
+ * </sequence>
+ * </restriction>
+ * </complexContent>
+ * </complexType>
+ * </pre>
+ *
+ *
+ */
+@XmlAccessorType(XmlAccessType.FIELD)
+@XmlType(name = "PcaDataType", namespace = "www.jalview.org", propOrder = {
+ "pairwiseMatrix",
+ "tridiagonalMatrix",
+ "eigenMatrix"
+})
+public class PcaDataType {
+
+ @XmlElement(required = true)
+ protected DoubleMatrix pairwiseMatrix;
+ @XmlElement(required = true)
+ protected DoubleMatrix tridiagonalMatrix;
+ @XmlElement(required = true)
+ protected DoubleMatrix eigenMatrix;
+
+ /**
+ * Gets the value of the pairwiseMatrix property.
+ *
+ * @return
+ * possible object is
+ * {@link DoubleMatrix }
+ *
+ */
+ public DoubleMatrix getPairwiseMatrix() {
+ return pairwiseMatrix;
+ }
+
+ /**
+ * Sets the value of the pairwiseMatrix property.
+ *
+ * @param value
+ * allowed object is
+ * {@link DoubleMatrix }
+ *
+ */
+ public void setPairwiseMatrix(DoubleMatrix value) {
+ this.pairwiseMatrix = value;
+ }
+
+ /**
+ * Gets the value of the tridiagonalMatrix property.
+ *
+ * @return
+ * possible object is
+ * {@link DoubleMatrix }
+ *
+ */
+ public DoubleMatrix getTridiagonalMatrix() {
+ return tridiagonalMatrix;
+ }
+
+ /**
+ * Sets the value of the tridiagonalMatrix property.
+ *
+ * @param value
+ * allowed object is
+ * {@link DoubleMatrix }
+ *
+ */
+ public void setTridiagonalMatrix(DoubleMatrix value) {
+ this.tridiagonalMatrix = value;
+ }
+
+ /**
+ * Gets the value of the eigenMatrix property.
+ *
+ * @return
+ * possible object is
+ * {@link DoubleMatrix }
+ *
+ */
+ public DoubleMatrix getEigenMatrix() {
+ return eigenMatrix;
+ }
+
+ /**
+ * Sets the value of the eigenMatrix property.
+ *
+ * @param value
+ * allowed object is
+ * {@link DoubleMatrix }
+ *
+ */
+ public void setEigenMatrix(DoubleMatrix value) {
+ this.eigenMatrix = value;
+ }
+
+}
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
// This file was generated by the JavaTM Architecture for XML Binding(JAXB) Reference Implementation, v2.2.8-b130911.1802
// See <a href="http://java.sun.com/xml/jaxb">http://java.sun.com/xml/jaxb</a>
// Any modifications to this file will be lost upon recompilation of the source schema.
-// Generated on: 2018.09.28 at 12:18:54 PM BST
+// Generated on: 2018.12.20 at 11:47:26 AM GMT
//
@javax.xml.bind.annotation.XmlSchema(namespace = "www.vamsas.ac.uk/jalview/version2", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED)
assertEquals(AlignSeq.extractGaps(" -", " AC-G.T"), "ACG.T");
assertEquals(AlignSeq.extractGaps(" -.", " AC-G.T ."), "ACGT");
assertEquals(AlignSeq.extractGaps("-", " AC-G.T"), " ACG.T");
+ assertEquals(AlignSeq.extractGaps("-. ", " -. .-"), "");
}
@Test(groups = { "Functional" })
assertSame(pep2, xrefs.getSequenceAt(1));
}
- @AfterClass
+ @AfterClass(alwaysRun = true)
public void tearDown()
{
SequenceFetcherFactory.setSequenceFetcher(null);
Iterator<int[]> contigs = cs.getVisContigsIterator(0, alf.getWidth(),
false);
Dna dna = new Dna(av, contigs);
- AlignmentI translated = dna.translateCdna();
+ AlignmentI translated = dna.translateCdna(GeneticCodes.getInstance()
+ .getStandardCodeTable());
assertNotNull("Couldn't do a full width translation of test data.",
translated);
}
alf.getWidth(), false);
AlignViewportI av = new AlignViewport(alf, cs);
Dna dna = new Dna(av, vcontigs);
- AlignmentI transAlf = dna.translateCdna();
+ AlignmentI transAlf = dna.translateCdna(GeneticCodes.getInstance()
+ .getStandardCodeTable());
assertTrue("Translation failed (ipos=" + ipos
+ ") No alignment data.", transAlf != null);
Iterator<int[]> contigs = cs.getVisContigsIterator(0, alf.getWidth(),
false);
Dna dna = new Dna(av, contigs);
- AlignmentI translated = dna.translateCdna();
+ AlignmentI translated = dna.translateCdna(GeneticCodes.getInstance()
+ .getStandardCodeTable());
String aa = translated.getSequenceAt(0).getSequenceAsString();
assertEquals(
"AAAACCDDEEFFGGGGHHIIIKKLLLLLLMNNPPPPQQRRRRRRSSSSSSTTTTVVVVWYY***",
Iterator<int[]> contigs = cs.getVisContigsIterator(0, alf.getWidth(),
false);
Dna dna = new Dna(av, contigs);
- AlignmentI translated = dna.translateCdna();
+ AlignmentI translated = dna.translateCdna(GeneticCodes.getInstance()
+ .getStandardCodeTable());
String aa = translated.getSequenceAt(0).getSequenceAsString();
assertEquals("AACDDGGGGHHIIIKKLLLLLLMNNPPPPQQRRRRRRSSSSSSTTTTVVVVW", aa);
}
Iterator<int[]> contigs = cs.getVisContigsIterator(0, cdna.getWidth(),
false);
Dna dna = new Dna(av, contigs);
- AlignmentI translated = dna.translateCdna();
+ AlignmentI translated = dna.translateCdna(GeneticCodes.getInstance()
+ .getStandardCodeTable());
/*
* Jumble the cDNA sequences and translate.
av = new AlignViewport(cdnaReordered, cs);
contigs = cs.getVisContigsIterator(0, cdna.getWidth(), false);
dna = new Dna(av, contigs);
- AlignmentI translated2 = dna.translateCdna();
+ AlignmentI translated2 = dna.translateCdna(GeneticCodes.getInstance()
+ .getStandardCodeTable());
/*
* Check translated sequences are the same in both alignments.
import static org.testng.Assert.assertSame;
import static org.testng.Assert.assertTrue;
+import jalview.api.AlignViewportI;
+import jalview.api.FinderI;
+import jalview.bin.Cache;
import jalview.datamodel.Alignment;
import jalview.datamodel.AlignmentI;
+import jalview.datamodel.ColumnSelection;
+import jalview.datamodel.HiddenColumns;
import jalview.datamodel.SearchResultMatchI;
import jalview.datamodel.SearchResultsI;
import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceGroup;
import jalview.gui.AlignFrame;
+import jalview.gui.AlignViewport;
import jalview.gui.JvOptionPane;
import jalview.io.DataSourceType;
import jalview.io.FileLoader;
import java.util.List;
+import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
+import junit.extensions.PA;
+
public class FinderTest
{
@BeforeClass(alwaysRun = true)
private AlignmentI al;
+ private AlignViewportI av;
+
@BeforeClass(groups = "Functional")
public void setUp()
{
- String seqData = "seq1 ABCD--EF-GHI\n" + "seq2 A--BCDefHI\n"
+ Cache.loadProperties("test/jalview/io/testProps.jvprops");
+ Cache.applicationProperties.setProperty("PAD_GAPS",
+ Boolean.FALSE.toString());
+
+ String seqData = "seq1seq1/8-18 ABCD--EF-GHIJI\n" + "seq2 A--BCDefHI\n"
+ "seq3 --bcdEFH\n" + "seq4 aa---aMMMMMaaa\n";
af = new FileLoader().LoadFileWaitTillLoaded(seqData,
DataSourceType.PASTE);
- al = af.getViewport().getAlignment();
+ av = af.getViewport();
+ al = av.getAlignment();
+ }
+
+ @AfterMethod(alwaysRun = true)
+ public void tearDownAfterTest()
+ {
+ av.setSelectionGroup(null);
}
/**
- * Test for find all matches of a regular expression
+ * Test for find matches of a regular expression
*/
@Test(groups = "Functional")
- public void testFindAll_regex()
+ public void testFind_regex()
{
- Finder f = new Finder(al, null);
- f.setFindAll(true);
- f.find("E.H"); // 'E, any character, H'
+ /*
+ * find next match only
+ */
+ Finder f = new Finder(av);
+ f.findNext("E.H", false, false); // 'E, any character, H'
+ // should match seq2 efH only
+ SearchResultsI sr = f.getSearchResults();
+ assertEquals(sr.getSize(), 1);
+ List<SearchResultMatchI> matches = sr.getResults();
+ assertSame(matches.get(0).getSequence(), al.getSequenceAt(1));
+ assertEquals(matches.get(0).getStart(), 5);
+ assertEquals(matches.get(0).getEnd(), 7);
+ f = new Finder(av);
+ f.findAll("E.H", false, false); // 'E, any character, H'
// should match seq2 efH and seq3 EFH
- SearchResultsI sr = f.getSearchResults();
+ sr = f.getSearchResults();
assertEquals(sr.getSize(), 2);
- List<SearchResultMatchI> matches = sr.getResults();
- assertSame(al.getSequenceAt(1), matches.get(0).getSequence());
- assertSame(al.getSequenceAt(2), matches.get(1).getSequence());
+ matches = sr.getResults();
+ assertSame(matches.get(0).getSequence(), al.getSequenceAt(1));
+ assertSame(matches.get(1).getSequence(), al.getSequenceAt(2));
assertEquals(matches.get(0).getStart(), 5);
assertEquals(matches.get(0).getEnd(), 7);
assertEquals(matches.get(1).getStart(), 4);
@Test(groups = "Functional")
public void testFind_residueNumber()
{
- Finder f = new Finder(al, null);
- f.setFindAll(true);
- f.find("9");
+ Finder f = new Finder(av);
- // seq1 and seq4 have 9 residues; no match in other sequences
+ /*
+ * find first match should return seq1 residue 9
+ */
+ f.findNext("9", false, false);
SearchResultsI sr = f.getSearchResults();
- assertEquals(sr.getSize(), 2);
+ assertEquals(sr.getSize(), 1);
List<SearchResultMatchI> matches = sr.getResults();
- assertSame(al.getSequenceAt(0), matches.get(0).getSequence());
- assertSame(al.getSequenceAt(3), matches.get(1).getSequence());
+ assertSame(matches.get(0).getSequence(), al.getSequenceAt(0));
+ assertEquals(matches.get(0).getStart(), 9);
+ assertEquals(matches.get(0).getEnd(), 9);
+
+ /*
+ * find all matches should return seq1 and seq4 (others are too short)
+ */
+ f = new Finder(av);
+ f.findAll("9", false, false);
+ sr = f.getSearchResults();
+ assertEquals(sr.getSize(), 2);
+ matches = sr.getResults();
+ assertSame(matches.get(0).getSequence(), al.getSequenceAt(0));
+ assertSame(matches.get(1).getSequence(), al.getSequenceAt(3));
assertEquals(matches.get(0).getStart(), 9);
assertEquals(matches.get(0).getEnd(), 9);
assertEquals(matches.get(1).getStart(), 9);
assertEquals(matches.get(1).getEnd(), 9);
+
+ /*
+ * parsing of search string as integer is strict
+ */
+ f = new Finder(av);
+ f.findNext(" 9", false, false);
+ assertTrue(f.getSearchResults().isEmpty());
}
/**
public void testFindNext()
{
/*
- * start at second sequence; resIndex of -1
+ * start at second sequence; colIndex of -1
* means sequence id / description is searched
*/
- Finder f = new Finder(al, null, 1, -1);
- f.find("e"); // matches id
+ Finder f = new Finder(av);
+ PA.setValue(f, "sequenceIndex", 1);
+ PA.setValue(f, "columnIndex", -1);
+ f.findNext("e", false, false); // matches id
assertTrue(f.getSearchResults().isEmpty());
- assertEquals(f.getIdMatch().size(), 1);
- assertSame(f.getIdMatch().get(0), al.getSequenceAt(1));
-
- // resIndex is now 0 - for use in next find next
- assertEquals(f.getResIndex(), 0);
- f = new Finder(al, null, 1, 0);
- f.find("e"); // matches in sequence
- assertTrue(f.getIdMatch().isEmpty());
+ assertEquals(f.getIdMatches().size(), 1);
+ assertSame(f.getIdMatches().get(0), al.getSequenceAt(1));
+
+ // colIndex is now 0 - for use in next find next
+ // searching A--BCDefHI
+ assertEquals(PA.getValue(f, "columnIndex"), 0);
+ f = new Finder(av);
+ PA.setValue(f, "sequenceIndex", 1);
+ PA.setValue(f, "columnIndex", 0);
+ f.findNext("e", false, false); // matches in sequence
+ assertTrue(f.getIdMatches().isEmpty());
assertEquals(f.getSearchResults().getSize(), 1);
List<SearchResultMatchI> matches = f.getSearchResults().getResults();
assertEquals(matches.get(0).getStart(), 5);
assertEquals(matches.get(0).getEnd(), 5);
assertSame(matches.get(0).getSequence(), al.getSequenceAt(1));
// still in the second sequence
- assertEquals(f.getSeqIndex(), 1);
- // next residue position to search from is 5
- // (used as base 0 by RegEx so the same as 6 if base 1)
- assertEquals(f.getResIndex(), 5);
+ assertEquals(PA.getValue(f, "sequenceIndex"), 1);
+ // next column position to search from is 7
+ assertEquals(PA.getValue(f, "columnIndex"), 7);
// find next from end of sequence - finds next sequence id
- f = new Finder(al, null, 1, 5);
- f.find("e");
- assertEquals(f.getIdMatch().size(), 1);
- assertSame(f.getIdMatch().get(0), al.getSequenceAt(2));
+ f = new Finder(av);
+ PA.setValue(f, "sequenceIndex", 1);
+ PA.setValue(f, "columnIndex", 7);
+ f.findNext("e", false, false);
+ assertEquals(f.getIdMatches().size(), 1);
+ assertSame(f.getIdMatches().get(0), al.getSequenceAt(2));
+ assertTrue(f.getSearchResults().isEmpty());
}
/**
* Test for matching within sequence descriptions
*/
@Test(groups = "Functional")
- public void testFindAll_inDescription()
+ public void testFind_inDescription()
{
AlignmentI al2 = new Alignment(al);
al2.getSequenceAt(0).setDescription("BRAF");
al2.getSequenceAt(1).setDescription("braf");
- Finder f = new Finder(al2, null);
- f.setFindAll(true);
- f.setIncludeDescription(true);
-
- f.find("rAF");
- assertEquals(f.getIdMatch().size(), 2);
- assertSame(f.getIdMatch().get(0), al2.getSequenceAt(0));
- assertSame(f.getIdMatch().get(1), al2.getSequenceAt(1));
+
+ AlignViewportI av2 = new AlignViewport(al2);
+
+ /*
+ * find first match only
+ */
+ Finder f = new Finder(av2);
+ f.findNext("rAF", false, true);
+ assertEquals(f.getIdMatches().size(), 1);
+ assertSame(f.getIdMatches().get(0), al2.getSequenceAt(0));
assertTrue(f.getSearchResults().isEmpty());
/*
- * case sensitive
+ * find all matches
*/
- f = new Finder(al2, null);
- f.setFindAll(true);
- f.setCaseSensitive(true);
- f.setIncludeDescription(true);
+ f = new Finder(av2);
+ f.findAll("rAF", false, true);
+ assertEquals(f.getIdMatches().size(), 2);
+ assertSame(f.getIdMatches().get(0), al2.getSequenceAt(0));
+ assertSame(f.getIdMatches().get(1), al2.getSequenceAt(1));
+ assertTrue(f.getSearchResults().isEmpty());
- f.find("RAF");
- assertEquals(f.getIdMatch().size(), 1);
- assertSame(f.getIdMatch().get(0), al2.getSequenceAt(0));
+ /*
+ * case sensitive
+ */
+ f = new Finder(av2);
+ f.findAll("RAF", true, true);
+ assertEquals(f.getIdMatches().size(), 1);
+ assertSame(f.getIdMatches().get(0), al2.getSequenceAt(0));
assertTrue(f.getSearchResults().isEmpty());
/*
al2.getSequenceAt(0).setDescription("the efh sequence");
al2.getSequenceAt(0).setName("mouseEFHkinase");
al2.getSequenceAt(1).setName("humanEFHkinase");
- f = new Finder(al2, null);
- f.setFindAll(true);
- f.setIncludeDescription(true);
+ f = new Finder(av2);
/*
* sequence matches should have no duplicates
*/
- f.find("EFH");
- assertEquals(f.getIdMatch().size(), 2);
- assertSame(f.getIdMatch().get(0), al2.getSequenceAt(0));
- assertSame(f.getIdMatch().get(1), al2.getSequenceAt(1));
+ f.findAll("EFH", false, true);
+ assertEquals(f.getIdMatches().size(), 2);
+ assertSame(f.getIdMatches().get(0), al2.getSequenceAt(0));
+ assertSame(f.getIdMatches().get(1), al2.getSequenceAt(1));
assertEquals(f.getSearchResults().getSize(), 2);
SearchResultMatchI match = f.getSearchResults().getResults().get(0);
- assertSame(al2.getSequenceAt(1), match.getSequence());
- assertEquals(5, match.getStart());
- assertEquals(7, match.getEnd());
+ assertSame(match.getSequence(), al2.getSequenceAt(1));
+ assertEquals(match.getStart(), 5);
+ assertEquals(match.getEnd(), 7);
match = f.getSearchResults().getResults().get(1);
- assertSame(al2.getSequenceAt(2), match.getSequence());
- assertEquals(4, match.getStart());
- assertEquals(6, match.getEnd());
+ assertSame(match.getSequence(), al2.getSequenceAt(2));
+ assertEquals(match.getStart(), 4);
+ assertEquals(match.getEnd(), 6);
}
/**
@Test(groups = "Functional")
public void testFindAll_sequenceIds()
{
- Finder f = new Finder(al, null);
- f.setFindAll(true);
+ Finder f = new Finder(av);
/*
- * case insensitive
+ * case insensitive; seq1 occurs twice in sequence id but
+ * only one match should be returned
*/
- f.find("SEQ1");
- assertEquals(f.getIdMatch().size(), 1);
- assertSame(f.getIdMatch().get(0), al.getSequenceAt(0));
- assertTrue(f.getSearchResults().isEmpty());
+ f.findAll("SEQ1", false, false);
+ assertEquals(f.getIdMatches().size(), 1);
+ assertSame(f.getIdMatches().get(0), al.getSequenceAt(0));
+ SearchResultsI searchResults = f.getSearchResults();
+ assertTrue(searchResults.isEmpty());
/*
* case sensitive
*/
- f = new Finder(al, null);
- f.setFindAll(true);
- f.setCaseSensitive(true);
- f.find("SEQ1");
- assertTrue(f.getSearchResults().isEmpty());
+ f = new Finder(av);
+ f.findAll("SEQ1", true, false);
+ searchResults = f.getSearchResults();
+ assertTrue(searchResults.isEmpty());
/*
* match both sequence id and sequence
*/
AlignmentI al2 = new Alignment(al);
+ AlignViewportI av2 = new AlignViewport(al2);
al2.addSequence(new Sequence("aBz", "xyzabZpqrAbZ"));
- f = new Finder(al2, null);
- f.setFindAll(true);
- f.find("ABZ");
- assertEquals(f.getIdMatch().size(), 1);
- assertSame(f.getIdMatch().get(0), al2.getSequenceAt(4));
- assertEquals(f.getSearchResults().getSize(), 2);
- SearchResultMatchI match = f.getSearchResults().getResults().get(0);
- assertSame(al2.getSequenceAt(4), match.getSequence());
- assertEquals(4, match.getStart());
- assertEquals(6, match.getEnd());
- match = f.getSearchResults().getResults().get(1);
- assertSame(al2.getSequenceAt(4), match.getSequence());
- assertEquals(10, match.getStart());
- assertEquals(12, match.getEnd());
+ f = new Finder(av2);
+ f.findAll("ABZ", false, false);
+ assertEquals(f.getIdMatches().size(), 1);
+ assertSame(f.getIdMatches().get(0), al2.getSequenceAt(4));
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 2);
+ SearchResultMatchI match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al2.getSequenceAt(4));
+ assertEquals(match.getStart(), 4);
+ assertEquals(match.getEnd(), 6);
+ match = searchResults.getResults().get(1);
+ assertSame(match.getSequence(), al2.getSequenceAt(4));
+ assertEquals(match.getStart(), 10);
+ assertEquals(match.getEnd(), 12);
}
/**
- * Test finding all matches of a sequence pattern in an alignment
+ * Test finding next match of a sequence pattern in an alignment
*/
@Test(groups = "Functional")
- public void testFindAll_simpleMatch()
+ public void testFind_findNext()
{
- Finder f = new Finder(al, null);
- f.setFindAll(true);
+ /*
+ * efh should be matched in seq2 only
+ */
+ FinderI f = new Finder(av);
+ f.findNext("EfH", false, false);
+ SearchResultsI searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ SearchResultMatchI match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 5);
+ assertEquals(match.getEnd(), 7);
/*
- * case insensitive first
+ * I should be found in seq1 (twice) and seq2 (once)
*/
- f.find("EfH");
+ f = new Finder(av);
+ f.findNext("I", false, false); // find next: seq1/16
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(0));
+ assertEquals(match.getStart(), 16);
+ assertEquals(match.getEnd(), 16);
+
+ f.findNext("I", false, false); // find next: seq1/18
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(0));
+ assertEquals(match.getStart(), 18);
+ assertEquals(match.getEnd(), 18);
+
+ f.findNext("I", false, false); // find next: seq2/8
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 8);
+ assertEquals(match.getEnd(), 8);
+
+ f.findNext("I", false, false);
+ assertTrue(f.getSearchResults().isEmpty());
+
+ /*
+ * find should reset to start of alignment after a failed search
+ */
+ f.findNext("I", false, false); // find next: seq1/16
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(0));
+ assertEquals(match.getStart(), 16);
+ assertEquals(match.getEnd(), 16);
+ }
+
+ /**
+ * Test for JAL-2302 to verify that sub-matches are not included in a find all
+ * result
+ */
+ @Test(groups = "Functional")
+ public void testFind_maximalResultOnly()
+ {
+ Finder f = new Finder(av);
+ f.findAll("M+", false, false);
+ SearchResultsI searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ SearchResultMatchI match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(3));
+ assertEquals(match.getStart(), 4); // dataset sequence positions
+ assertEquals(match.getEnd(), 8); // base 1
+ }
+
+ /**
+ * Test finding all matches of a sequence pattern in an alignment
+ */
+ @Test(groups = "Functional")
+ public void testFind_findAll()
+ {
+ Finder f = new Finder(av);
+ f.findAll("EfH", false, false);
SearchResultsI searchResults = f.getSearchResults();
assertEquals(searchResults.getSize(), 2);
SearchResultMatchI match = searchResults.getResults().get(0);
- assertSame(al.getSequenceAt(1), match.getSequence());
- assertEquals(5, match.getStart());
- assertEquals(7, match.getEnd());
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 5);
+ assertEquals(match.getEnd(), 7);
match = searchResults.getResults().get(1);
- assertSame(al.getSequenceAt(2), match.getSequence());
- assertEquals(4, match.getStart());
- assertEquals(6, match.getEnd());
+ assertSame(match.getSequence(), al.getSequenceAt(2));
+ assertEquals(match.getStart(), 4);
+ assertEquals(match.getEnd(), 6);
/*
- * case sensitive
+ * find all I should find 2 positions in seq1, 1 in seq2
*/
- f = new Finder(al, null);
- f.setFindAll(true);
- f.setCaseSensitive(true);
- f.find("BC");
+ f.findAll("I", false, false);
searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 3);
+ match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(0));
+ assertEquals(match.getStart(), 16);
+ assertEquals(match.getEnd(), 16);
+ match = searchResults.getResults().get(1);
+ assertSame(match.getSequence(), al.getSequenceAt(0));
+ assertEquals(match.getStart(), 18);
+ assertEquals(match.getEnd(), 18);
+ match = searchResults.getResults().get(2);
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 8);
+ assertEquals(match.getEnd(), 8);
+ }
+
+ /**
+ * Test finding all matches, case-sensitive
+ */
+ @Test(groups = "Functional")
+ public void testFind_findAllCaseSensitive()
+ {
+ Finder f = new Finder(av);
+
+ /*
+ * BC should match seq1/9-10 and seq2/2-3
+ */
+ f.findAll("BC", true, false);
+ SearchResultsI searchResults = f.getSearchResults();
assertEquals(searchResults.getSize(), 2);
+ SearchResultMatchI match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(0));
+ assertEquals(match.getStart(), 9);
+ assertEquals(match.getEnd(), 10);
+ match = searchResults.getResults().get(1);
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 2);
+ assertEquals(match.getEnd(), 3);
+
+ /*
+ * bc should match seq3/1-2
+ */
+ f = new Finder(av);
+ f.findAll("bc", true, false);
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(2));
+ assertEquals(match.getStart(), 1);
+ assertEquals(match.getEnd(), 2);
+
+ f.findAll("bC", true, false);
+ assertTrue(f.getSearchResults().isEmpty());
+ }
+
+ /**
+ * Test finding next match of a sequence pattern in a selection group
+ */
+ @Test(groups = "Functional")
+ public void testFind_inSelection()
+ {
+ /*
+ * select sequences 2 and 3, columns 4-6 which contains
+ * BCD
+ * cdE
+ */
+ SequenceGroup sg = new SequenceGroup();
+ sg.setStartRes(3);
+ sg.setEndRes(5);
+ sg.addSequence(al.getSequenceAt(1), false);
+ sg.addSequence(al.getSequenceAt(2), false);
+ av.setSelectionGroup(sg);
+
+ FinderI f = new Finder(av);
+ f.findNext("b", false, false);
+ assertTrue(f.getIdMatches().isEmpty());
+ SearchResultsI searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ SearchResultMatchI match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 2);
+ assertEquals(match.getEnd(), 2);
+
+ /*
+ * a second Find should not return the 'b' in seq3 as outside the selection
+ */
+ f.findNext("b", false, false);
+ assertTrue(f.getSearchResults().isEmpty());
+ assertTrue(f.getIdMatches().isEmpty());
+
+ f = new Finder(av);
+ f.findNext("d", false, false);
+ assertTrue(f.getIdMatches().isEmpty());
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
match = searchResults.getResults().get(0);
- assertSame(al.getSequenceAt(0), match.getSequence());
- assertEquals(2, match.getStart());
- assertEquals(3, match.getEnd());
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 4);
+ assertEquals(match.getEnd(), 4);
+ f.findNext("d", false, false);
+ assertTrue(f.getIdMatches().isEmpty());
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(2));
+ assertEquals(match.getStart(), 3);
+ assertEquals(match.getEnd(), 3);
+ }
+
+ /**
+ * Test finding all matches of a search pattern in a selection group
+ */
+ @Test(groups = "Functional")
+ public void testFind_findAllInSelection()
+ {
+ /*
+ * select sequences 2 and 3, columns 4-6 which contains
+ * BCD
+ * cdE
+ */
+ SequenceGroup sg = new SequenceGroup();
+ sg.setStartRes(3);
+ sg.setEndRes(5);
+ sg.addSequence(al.getSequenceAt(1), false);
+ sg.addSequence(al.getSequenceAt(2), false);
+ av.setSelectionGroup(sg);
+
+ /*
+ * search for 'e' should match two sequence ids and one residue
+ */
+ Finder f = new Finder(av);
+ f.findAll("e", false, false);
+ assertEquals(f.getIdMatches().size(), 2);
+ assertSame(f.getIdMatches().get(0), al.getSequenceAt(1));
+ assertSame(f.getIdMatches().get(1), al.getSequenceAt(2));
+ SearchResultsI searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ SearchResultMatchI match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(2));
+ assertEquals(match.getStart(), 4);
+ assertEquals(match.getEnd(), 4);
+
+ /*
+ * search for 'Q' should match two sequence ids only
+ */
+ f = new Finder(av);
+ f.findAll("Q", false, false);
+ assertEquals(f.getIdMatches().size(), 2);
+ assertSame(f.getIdMatches().get(0), al.getSequenceAt(1));
+ assertSame(f.getIdMatches().get(1), al.getSequenceAt(2));
+ assertTrue(f.getSearchResults().isEmpty());
+ }
+
+ /**
+ * Test finding in selection with a sequence too short to reach it
+ */
+ @Test(groups = "Functional")
+ public void testFind_findAllInSelectionWithShortSequence()
+ {
+ /*
+ * select all sequences, columns 10-12
+ * BCD
+ * cdE
+ */
+ SequenceGroup sg = new SequenceGroup();
+ sg.setStartRes(9);
+ sg.setEndRes(11);
+ sg.addSequence(al.getSequenceAt(0), false);
+ sg.addSequence(al.getSequenceAt(1), false);
+ sg.addSequence(al.getSequenceAt(2), false);
+ sg.addSequence(al.getSequenceAt(3), false);
+ av.setSelectionGroup(sg);
+
+ /*
+ * search for 'I' should match two sequence positions
+ */
+ Finder f = new Finder(av);
+ f.findAll("I", false, false);
+ assertTrue(f.getIdMatches().isEmpty());
+ SearchResultsI searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 2);
+ SearchResultMatchI match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(0));
+ assertEquals(match.getStart(), 16);
+ assertEquals(match.getEnd(), 16);
match = searchResults.getResults().get(1);
- assertSame(al.getSequenceAt(1), match.getSequence());
- assertEquals(2, match.getStart());
- assertEquals(3, match.getEnd());
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 8);
+ assertEquals(match.getEnd(), 8);
}
/**
- * Test for JAL-2302 to verify that sub-matches are not included in a find all
- * result
+ * Test that find does not report hidden positions
*/
@Test(groups = "Functional")
- public void testFind_maximalResultOnly()
+ public void testFind_withHiddenColumns()
{
- Finder f = new Finder(al, null);
- f.setFindAll(true);
- f.find("M+");
+ /*
+ * 0 5 9
+ * ABCD--EF-GHI
+ * A--BCDefHI
+ * --bcdEFH
+ * aa---aMMMMMaaa
+ */
+
+ /*
+ * hide 2-4 (CD- -BC bcd ---)
+ */
+ HiddenColumns hc = new HiddenColumns();
+ hc.hideColumns(2, 4);
+ al.setHiddenColumns(hc);
+
+ /*
+ * find all search for D should ignore hidden positions in seq1 and seq3,
+ * find the visible D in seq2
+ */
+ Finder f = new Finder(av);
+ f.findAll("D", false, false);
SearchResultsI searchResults = f.getSearchResults();
assertEquals(searchResults.getSize(), 1);
SearchResultMatchI match = searchResults.getResults().get(0);
- assertSame(al.getSequenceAt(3), match.getSequence());
- assertEquals(4, match.getStart()); // dataset sequence positions
- assertEquals(8, match.getEnd()); // base 1
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 4);
+ assertEquals(match.getEnd(), 4);
+
+ /*
+ * hide columns 2-5:
+ * find all 'aaa' should find end of seq4 only
+ */
+ hc.hideColumns(2, 5);
+ f = new Finder(av);
+ f.findAll("aaa", false, false);
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(3));
+ assertEquals(match.getStart(), 9);
+ assertEquals(match.getEnd(), 11);
+
+ /*
+ * find all 'BE' should not match across hidden columns in seq1
+ */
+ f.findAll("BE", false, false);
+ assertTrue(f.getSearchResults().isEmpty());
+
+ /*
+ * boundary case: hide columns at end of alignment
+ * search for H should match seq3/6 only
+ */
+ hc.revealAllHiddenColumns(new ColumnSelection());
+ hc.hideColumns(8, 13);
+ f = new Finder(av);
+ f.findNext("H", false, false);
+ searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 1);
+ match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(2));
+ assertEquals(match.getStart(), 6);
+ assertEquals(match.getEnd(), 6);
+ }
+
+ @Test(groups = "Functional")
+ public void testFind_withHiddenColumnsAndSelection()
+ {
+ /*
+ * 0 5 9
+ * ABCD--EF-GHI
+ * A--BCDefHI
+ * --bcdEFH
+ * aa---aMMMMMaaa
+ */
+
+ /*
+ * hide columns 2-4 and 6-7
+ */
+ HiddenColumns hc = new HiddenColumns();
+ hc.hideColumns(2, 4);
+ hc.hideColumns(6, 7);
+ al.setHiddenColumns(hc);
+
+ /*
+ * select rows 2-3
+ */
+ SequenceGroup sg = new SequenceGroup();
+ sg.addSequence(al.getSequenceAt(1), false);
+ sg.addSequence(al.getSequenceAt(2), false);
+ sg.setStartRes(0);
+ sg.setEndRes(13);
+ av.setSelectionGroup(sg);
+
+ /*
+ * find all search for A or H
+ * should match seq2/1, seq2/7, not seq3/6
+ */
+ Finder f = new Finder(av);
+ f.findAll("[AH]", false, false);
+ SearchResultsI searchResults = f.getSearchResults();
+ assertEquals(searchResults.getSize(), 2);
+ SearchResultMatchI match = searchResults.getResults().get(0);
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 1);
+ assertEquals(match.getEnd(), 1);
+ match = searchResults.getResults().get(1);
+ assertSame(match.getSequence(), al.getSequenceAt(1));
+ assertEquals(match.getStart(), 7);
+ assertEquals(match.getEnd(), 7);
}
}
--- /dev/null
+package jalview.analysis;
+
+import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertFalse;
+import static org.testng.Assert.assertNull;
+import static org.testng.Assert.assertSame;
+
+import java.util.Iterator;
+
+import org.testng.annotations.Test;
+
+public class GeneticCodesTest
+{
+ @Test(groups = "Functional")
+ public void testGetCodeTable()
+ {
+ GeneticCodes codes = GeneticCodes.getInstance();
+ assertEquals(codes.getStandardCodeTable().getName(), "Standard");
+ assertEquals(codes.getStandardCodeTable().getId(), "1");
+ assertSame(codes.getStandardCodeTable(), codes.getCodeTable("1"));
+ assertEquals(codes.getCodeTable("2").getName(),
+ "Vertebrate Mitochondrial");
+ assertEquals(codes.getCodeTable("11").getName(),
+ "Bacterial, Archaeal and Plant Plastid");
+ assertEquals(codes.getCodeTable("31").getName(),
+ "Blastocrithidia Nuclear");
+ }
+
+ @Test(groups = "Functional")
+ public void testGetCodeTables()
+ {
+ GeneticCodes codes = GeneticCodes.getInstance();
+ Iterator<GeneticCodeI> tableIterator = codes.getCodeTables().iterator();
+ String[] ids = new String[] { "1", "2", "3", "4", "5", "6", "9", "10",
+ "11", "12", "13", "14", "15", "16", "21", "22", "23", "24", "25",
+ "26", "27", "28", "29", "30", "31" };
+ for (int i = 0; i < ids.length; i++)
+ {
+ assertEquals(tableIterator.next().getId(), ids[i]);
+ }
+ assertFalse(tableIterator.hasNext());
+ }
+
+ @Test(groups = "Functional")
+ public void testTranslate()
+ {
+ GeneticCodes codes = GeneticCodes.getInstance();
+
+ GeneticCodeI gc = codes.getCodeTable("1");
+ assertNull(gc.translate("XYZ"));
+ assertEquals(gc.translate("AGA"), "R");
+
+ gc = codes.getCodeTable("2");
+ assertEquals(gc.translate("AGA"), "*"); // variant
+ assertEquals(gc.translate("ttc"), "F"); // non-variant
+
+ // table 11 has no variant translations - should serve the standard values
+ gc = codes.getCodeTable("11");
+ assertEquals(gc.translate("ttc"), "F");
+
+ gc = codes.getCodeTable("31");
+ assertEquals(gc.translate("TGA"), "W"); // variant
+ assertEquals(gc.translate("tag"), "E"); // variant
+ assertEquals(gc.translate("AGC"), "S"); // non-variant
+ }
+
+ /**
+ * Test 'standard' codon translations (no ambiguity codes)
+ */
+ @Test(groups = { "Functional" })
+ public void testTranslate_standardTable()
+ {
+ GeneticCodeI st = GeneticCodes.getInstance().getStandardCodeTable();
+ assertEquals("F", st.translate("TTT"));
+ assertEquals("F", st.translate("TTC"));
+ assertEquals("L", st.translate("TTA"));
+ assertEquals("L", st.translate("TTG"));
+ assertEquals("L", st.translate("CTT"));
+ assertEquals("L", st.translate("CTC"));
+ assertEquals("L", st.translate("CTA"));
+ assertEquals("L", st.translate("CTG"));
+ assertEquals("I", st.translate("ATT"));
+ assertEquals("I", st.translate("ATC"));
+ assertEquals("I", st.translate("ATA"));
+ assertEquals("M", st.translate("ATG"));
+ assertEquals("V", st.translate("GTT"));
+ assertEquals("V", st.translate("GTC"));
+ assertEquals("V", st.translate("GTA"));
+ assertEquals("V", st.translate("GTG"));
+ assertEquals("S", st.translate("TCT"));
+ assertEquals("S", st.translate("TCC"));
+ assertEquals("S", st.translate("TCA"));
+ assertEquals("S", st.translate("TCG"));
+ assertEquals("P", st.translate("CCT"));
+ assertEquals("P", st.translate("CCC"));
+ assertEquals("P", st.translate("CCA"));
+ assertEquals("P", st.translate("CCG"));
+ assertEquals("T", st.translate("ACT"));
+ assertEquals("T", st.translate("ACC"));
+ assertEquals("T", st.translate("ACA"));
+ assertEquals("T", st.translate("ACG"));
+ assertEquals("A", st.translate("GCT"));
+ assertEquals("A", st.translate("GCC"));
+ assertEquals("A", st.translate("GCA"));
+ assertEquals("A", st.translate("GCG"));
+ assertEquals("Y", st.translate("TAT"));
+ assertEquals("Y", st.translate("TAC"));
+ assertEquals("*", st.translate("TAA"));
+ assertEquals("*", st.translate("TAG"));
+ assertEquals("H", st.translate("CAT"));
+ assertEquals("H", st.translate("CAC"));
+ assertEquals("Q", st.translate("CAA"));
+ assertEquals("Q", st.translate("CAG"));
+ assertEquals("N", st.translate("AAT"));
+ assertEquals("N", st.translate("AAC"));
+ assertEquals("K", st.translate("AAA"));
+ assertEquals("K", st.translate("AAG"));
+ assertEquals("D", st.translate("GAT"));
+ assertEquals("D", st.translate("GAC"));
+ assertEquals("E", st.translate("GAA"));
+ assertEquals("E", st.translate("GAG"));
+ assertEquals("C", st.translate("TGT"));
+ assertEquals("C", st.translate("TGC"));
+ assertEquals("*", st.translate("TGA"));
+ assertEquals("W", st.translate("TGG"));
+ assertEquals("R", st.translate("CGT"));
+ assertEquals("R", st.translate("CGC"));
+ assertEquals("R", st.translate("CGA"));
+ assertEquals("R", st.translate("CGG"));
+ assertEquals("S", st.translate("AGT"));
+ assertEquals("S", st.translate("AGC"));
+ assertEquals("R", st.translate("AGA"));
+ assertEquals("R", st.translate("AGG"));
+ assertEquals("G", st.translate("GGT"));
+ assertEquals("G", st.translate("GGC"));
+ assertEquals("G", st.translate("GGA"));
+ assertEquals("G", st.translate("GGG"));
+ }
+
+ /**
+ * Test a sample of codon translations involving ambiguity codes. Should
+ * return a protein value where the ambiguity does not affect the translation.
+ */
+ @Test(groups = { "Functional" })
+ public void testTranslate_standardTableAmbiguityCodes()
+ {
+ GeneticCodeI st = GeneticCodes.getInstance().getStandardCodeTable();
+ // Y is C or T
+ assertEquals("C", st.translate("TGY"));
+ // Phenylalanine first base variation
+ assertEquals("L", st.translate("YTA"));
+
+ // W is A or T
+ assertEquals("L", st.translate("CTW"));
+ assertNull(st.translate("TTW"));
+
+ // S is G or C
+ assertEquals("G", st.translate("GGS"));
+ assertNull(st.translate("ATS"));
+
+ // K is T or G
+ assertEquals("S", st.translate("TCK"));
+ assertNull(st.translate("ATK"));
+
+ // M is C or A
+ assertEquals("T", st.translate("ACM"));
+ // Arginine first base variation
+ assertEquals("R", st.translate("MGA"));
+ assertEquals("R", st.translate("MGG"));
+ assertNull(st.translate("TAM"));
+
+ // D is A, G or T
+ assertEquals("P", st.translate("CCD"));
+ assertNull(st.translate("AAD"));
+
+ // V is A, C or G
+ assertEquals("V", st.translate("GTV"));
+ assertNull(st.translate("TTV"));
+
+ // H is A, C or T
+ assertEquals("A", st.translate("GCH"));
+ assertEquals("I", st.translate("ATH"));
+ assertNull(st.translate("AGH"));
+
+ // B is C, G or T
+ assertEquals("P", st.translate("CCB"));
+ assertNull(st.translate("TAB"));
+
+ // R is A or G
+ // additional tests for JAL-1685 (resolved)
+ assertEquals("L", st.translate("CTR"));
+ assertEquals("V", st.translate("GTR"));
+ assertEquals("S", st.translate("TCR"));
+ assertEquals("P", st.translate("CCR"));
+ assertEquals("T", st.translate("ACR"));
+ assertEquals("A", st.translate("GCR"));
+ assertEquals("R", st.translate("CGR"));
+ assertEquals("G", st.translate("GGR"));
+ assertEquals("R", st.translate("AGR"));
+ assertEquals("E", st.translate("GAR"));
+ assertEquals("K", st.translate("AAR"));
+ assertEquals("L", st.translate("TTR"));
+ assertEquals("Q", st.translate("CAR"));
+ assertEquals("*", st.translate("TAR"));
+ assertEquals("*", st.translate("TRA"));
+ // Arginine first and third base ambiguity
+ assertEquals("R", st.translate("MGR"));
+ assertNull(st.translate("ATR"));
+
+ // N is any base; 8 proteins accept any base in 3rd position
+ assertEquals("L", st.translate("CTN"));
+ assertEquals("V", st.translate("GTN"));
+ assertEquals("S", st.translate("TCN"));
+ assertEquals("P", st.translate("CCN"));
+ assertEquals("T", st.translate("ACN"));
+ assertEquals("A", st.translate("GCN"));
+ assertEquals("R", st.translate("CGN"));
+ assertEquals("G", st.translate("GGN"));
+ assertNull(st.translate("ATN"));
+ assertNull(st.translate("ANT"));
+ assertNull(st.translate("NAT"));
+ assertNull(st.translate("ANN"));
+ assertNull(st.translate("NNA"));
+ assertNull(st.translate("NNN"));
+
+ // some random stuff
+ assertNull(st.translate("YWB"));
+ assertNull(st.translate("VHD"));
+ assertNull(st.translate("WSK"));
+ }
+
+ /**
+ * Test a sample of codon translations involving ambiguity codes. Should
+ * return a protein value where the ambiguity does not affect the translation.
+ */
+ @Test(groups = { "Functional" })
+ public void testTranslate_nonStandardTableAmbiguityCodes()
+ {
+ GeneticCodeI standard = GeneticCodes.getInstance()
+ .getStandardCodeTable();
+
+ /*
+ * Vertebrate Mitochondrial (Table 2)
+ */
+ GeneticCodeI gc = GeneticCodes.getInstance().getCodeTable("2");
+ // AGR is AGA or AGG - R in standard code, * in table 2
+ assertEquals(gc.translate("AGR"), "*");
+ assertEquals(standard.translate("AGR"), "R");
+ // TGR is TGA or TGG - ambiguous in standard code, W in table 2
+ assertEquals(gc.translate("TGR"), "W");
+ assertNull(standard.translate("TGR"));
+
+ /*
+ * Yeast Mitochondrial (Table 3)
+ */
+ gc = GeneticCodes.getInstance().getCodeTable("3");
+ // CTN is L in standard code, T in table 3
+ assertEquals(gc.translate("ctn"), "T");
+ assertEquals(standard.translate("CTN"), "L");
+
+ /*
+ * Alternative Yeast Nuclear (Table 12)
+ */
+ gc = GeneticCodes.getInstance().getCodeTable("12");
+ // CTG is S; in the standard code CTN is L
+ assertEquals(gc.translate("CTG"), "S");
+ assertNull(gc.translate("CTK")); // K is G or T -> S or L
+ assertEquals(standard.translate("CTK"), "L");
+ assertEquals(gc.translate("CTH"), "L"); // H is anything other than G
+ assertEquals(standard.translate("CTH"), "L");
+ assertEquals(standard.translate("CTN"), "L");
+
+ /*
+ * Trematode Mitochondrial (Table 21)
+ */
+ gc = GeneticCodes.getInstance().getCodeTable("21");
+ // AAR is K in standard code, ambiguous in table 21 as AAA=N not K
+ assertNull(gc.translate("AAR"));
+ assertEquals(standard.translate("AAR"), "K");
+ }
+
+ @Test(groups = "Functional")
+ public void testTranslateCanonical()
+ {
+ GeneticCodes codes = GeneticCodes.getInstance();
+
+ GeneticCodeI gc = codes.getCodeTable("1");
+ assertNull(gc.translateCanonical("XYZ"));
+ assertEquals(gc.translateCanonical("AGA"), "R");
+ // translateCanonical should not resolve ambiguity codes
+ assertNull(gc.translateCanonical("TGY"));
+
+ gc = codes.getCodeTable("2");
+ assertNull(gc.translateCanonical("AGR"));
+ assertEquals(gc.translateCanonical("AGA"), "*"); // variant
+ assertEquals(gc.translateCanonical("ttc"), "F"); // non-variant
+ }
+}
double newScore = PIDModel.computePID(s1, s2, params);
double oldScore = Comparison.PID(s1, s2);
assertEquals(newScore, oldScore, DELTA);
+ // and verify PIDModel calculation is symmetric
+ assertEquals(newScore, PIDModel.computePID(s2, s1, params));
/*
* same length, with gaps
newScore = PIDModel.computePID(s1, s2, params);
oldScore = Comparison.PID(s1, s2);
assertEquals(newScore, oldScore, DELTA);
+ assertEquals(newScore, PIDModel.computePID(s2, s1, params));
/*
* s2 longer than s1, with gaps
newScore = PIDModel.computePID(s1, s2, params);
oldScore = Comparison.PID(s1, s2);
assertEquals(newScore, oldScore, DELTA);
+ assertEquals(newScore, PIDModel.computePID(s2, s1, params));
/*
* s1 longer than s2, with gaps
newScore = PIDModel.computePID(s1, s2, params);
oldScore = Comparison.PID(s1, s2);
assertEquals(newScore, oldScore, DELTA);
+ assertEquals(newScore, PIDModel.computePID(s2, s1, params));
/*
* same but now also with gapped columns
newScore = PIDModel.computePID(s1, s2, params);
oldScore = Comparison.PID(s1, s2);
assertEquals(newScore, oldScore, DELTA);
+ assertEquals(newScore, PIDModel.computePID(s2, s1, params));
}
/**
*/
SimilarityParamsI params = new SimilarityParams(true, true, true, true);
assertEquals(PIDModel.computePID(s1, s2, params), 80d);
+ assertEquals(PIDModel.computePID(s2, s1, params), 80d);
/*
* match gap-char but not gap-gap
*/
params = new SimilarityParams(false, true, true, true);
assertEquals(PIDModel.computePID(s1, s2, params), 75d);
+ assertEquals(PIDModel.computePID(s2, s1, params), 75d);
/*
* include gaps but don't match them
*/
params = new SimilarityParams(true, false, true, true);
assertEquals(PIDModel.computePID(s1, s2, params), 40d);
+ assertEquals(PIDModel.computePID(s2, s1, params), 40d);
/*
* include gaps but don't match them
*/
params = new SimilarityParams(false, false, true, true);
assertEquals(PIDModel.computePID(s1, s2, params), 25d);
+ assertEquals(PIDModel.computePID(s2, s1, params), 25d);
}
/**
*/
SimilarityParamsI params = new SimilarityParams(true, true, true, false);
assertEquals(PIDModel.computePID(s1, s2, params), 500d / 6);
+ assertEquals(PIDModel.computePID(s2, s1, params), 500d / 6);
/*
* match gap-char but not gap-gap
*/
params = new SimilarityParams(false, true, true, false);
assertEquals(PIDModel.computePID(s1, s2, params), 80d);
+ assertEquals(PIDModel.computePID(s2, s1, params), 80d);
/*
* include gaps but don't match them
*/
params = new SimilarityParams(true, false, true, false);
assertEquals(PIDModel.computePID(s1, s2, params), 100d / 3);
+ assertEquals(PIDModel.computePID(s2, s1, params), 100d / 3);
/*
* include gaps but don't match them
*/
params = new SimilarityParams(false, false, true, false);
assertEquals(PIDModel.computePID(s1, s2, params), 20d);
+ assertEquals(PIDModel.computePID(s2, s1, params), 20d);
/*
* no tests for matchGaps=true, includeGaps=false
import jalview.io.DataSourceType;
import jalview.io.FileParse;
import jalview.io.ScoreMatrixFile;
+import jalview.math.Matrix;
import jalview.math.MatrixI;
import jalview.schemes.ResidueProperties;
import org.testng.annotations.Test;
+import junit.extensions.PA;
+
public class ScoreMatrixTest
{
@Test(groups = "Functional")
scores[1] = new float[] { -4f, 5f, 6f };
scores[2] = new float[] { 7f, 8f, 9f };
ScoreMatrix sm = new ScoreMatrix("Test", "ABC".toCharArray(), scores);
+ assertFalse(sm.isSymmetric());
assertEquals(sm.getSize(), 3);
assertArrayEquals(scores, sm.getMatrix());
assertEquals(sm.getPairwiseScore('A', 'a'), 1f);
@Test(
groups = "Functional",
- expectedExceptions = { IllegalArgumentException.class })
+ expectedExceptions =
+ { IllegalArgumentException.class })
public void testConstructor_matrixTooSmall()
{
float[][] scores = new float[2][];
@Test(
groups = "Functional",
- expectedExceptions = { IllegalArgumentException.class })
+ expectedExceptions =
+ { IllegalArgumentException.class })
public void testConstructor_matrixTooBig()
{
float[][] scores = new float[2][];
@Test(
groups = "Functional",
- expectedExceptions = { IllegalArgumentException.class })
+ expectedExceptions =
+ { IllegalArgumentException.class })
public void testConstructor_matrixNotSquare()
{
float[][] scores = new float[2][];
* @throws MalformedURLException
*/
@Test(groups = "Functional")
- public void testOutputMatrix_roundTrip() throws MalformedURLException,
- IOException
+ public void testOutputMatrix_roundTrip()
+ throws MalformedURLException, IOException
{
ScoreMatrix sm = ScoreModels.getInstance().getBlosum62();
String output = sm.outputMatrix(false);
public void testEqualsAndHashCode()
{
ScoreMatrix sm = ScoreModels.getInstance().getBlosum62();
- ScoreMatrix sm2 = new ScoreMatrix(sm.getName(), sm.getSymbols()
- .toCharArray(), sm.getMatrix());
+ ScoreMatrix sm2 = new ScoreMatrix(sm.getName(),
+ sm.getSymbols().toCharArray(), sm.getMatrix());
assertTrue(sm.equals(sm2));
assertEquals(sm.hashCode(), sm2.hashCode());
String s1 = "FR-K-S";
String s2 = "FS--L";
ScoreMatrix blosum = ScoreModels.getInstance().getBlosum62();
-
+
/*
* score gap-gap and gap-char
* shorter sequence treated as if with trailing gaps
* score = F^F + R^S + -^- + K^- + -^L + S^-
* = 6 + -1 + 1 + -4 + -4 + -4 = -6
*/
- SimilarityParamsI params = new SimilarityParams(true, true, true, false);
+ SimilarityParamsI params = new SimilarityParams(true, true, true,
+ false);
assertEquals(blosum.computeSimilarity(s1, s2, params), -6d);
// matchGap (arg2) is ignored:
params = new SimilarityParams(true, false, true, false);
assertEquals(blosum.computeSimilarity(s1, s2, params), -6d);
-
+
/*
* score gap-char but not gap-gap
* score = F^F + R^S + 0 + K^- + -^L + S^-
// matchGap (arg2) is ignored:
params = new SimilarityParams(false, false, true, false);
assertEquals(blosum.computeSimilarity(s1, s2, params), -7d);
-
+
/*
* score gap-gap but not gap-char
* score = F^F + R^S + -^- + 0 + 0 + 0
// matchGap (arg2) is ignored:
params = new SimilarityParams(true, true, false, false);
assertEquals(blosum.computeSimilarity(s1, s2, params), 6d);
-
+
/*
* score neither gap-gap nor gap-char
* score = F^F + R^S + 0 + 0 + 0 + 0
// matchGap (arg2) is ignored:
params = new SimilarityParams(true, false, true, true);
assertEquals(blosum.computeSimilarity(s1, s2, params), -2d);
-
+
/*
* score gap-char but not gap-gap
* score = F^F + R^S + 0 + K^- + -^L
// matchGap (arg2) is ignored:
params = new SimilarityParams(false, false, true, true);
assertEquals(blosum.computeSimilarity(s1, s2, params), -3d);
-
+
/*
* score gap-gap but not gap-char
* score = F^F + R^S + -^- + 0 + 0
// matchGap (arg2) is ignored:
params = new SimilarityParams(true, true, false, true);
assertEquals(blosum.computeSimilarity(s1, s2, params), 6d);
-
+
/*
* score neither gap-gap nor gap-char
* score = F^F + R^S + 0 + 0 + 0
verifySymmetric(ScoreModels.getInstance().getDefaultModel(false)); // dna
}
+ /**
+ * A helper method that inspects a loaded matrix and reports any asymmetry as
+ * a test failure
+ *
+ * @param sm
+ */
private void verifySymmetric(ScoreMatrix sm)
{
float[][] m = sm.getMatrix();
assertEquals(m[row].length, rows);
for (int col = 0; col < rows; col++)
{
- assertEquals(m[row][col], m[col][row], String.format("%s [%s, %s]",
- sm.getName(), ResidueProperties.aa[row],
- ResidueProperties.aa[col]));
+ assertEquals(m[row][col], m[col][row],
+ String.format("%s [%s, %s]", sm.getName(),
+ ResidueProperties.aa[row],
+ ResidueProperties.aa[col]));
}
}
}
* verify expected scores against ARNDCQEGHILKMFPSTWYVBZX
* scraped from https://www.ncbi.nlm.nih.gov/Class/FieldGuide/BLOSUM62.txt
*/
- verifyValues(sm, 'A', new float[] { 4, -1, -2, -2, 0, -1, -1, 0, -2,
- -1,
- -1, -1, -1, -2, -1, 1, 0, -3, -2, 0, -2, -1, 0 });
- verifyValues(sm, 'R', new float[] { -1, 5, 0, -2, -3, 1, 0, -2, 0, -3,
- -2, 2, -1, -3, -2, -1, -1, -3, -2, -3, -1, 0, -1 });
- verifyValues(sm, 'N', new float[] { -2, 0, 6, 1, -3, 0, 0, 0, 1, -3,
- -3,
- 0, -2, -3, -2, 1, 0, -4, -2, -3, 3, 0, -1 });
- verifyValues(sm, 'D', new float[] { -2, -2, 1, 6, -3, 0, 2, -1, -1, -3,
- -4, -1, -3, -3, -1, 0, -1, -4, -3, -3, 4, 1, -1 });
- verifyValues(sm, 'C', new float[] { 0, -3, -3, -3, 9, -3, -4, -3, -3,
- -1,
- -1, -3, -1, -2, -3, -1, -1, -2, -2, -1, -3, -3, -2 });
- verifyValues(sm, 'Q', new float[] { -1, 1, 0, 0, -3, 5, 2, -2, 0, -3,
- -2,
- 1, 0, -3, -1, 0, -1, -2, -1, -2, 0, 3, -1 });
- verifyValues(sm, 'E', new float[] { -1, 0, 0, 2, -4, 2, 5, -2, 0, -3,
- -3,
- 1, -2, -3, -1, 0, -1, -3, -2, -2, 1, 4, -1 });
- verifyValues(sm, 'G', new float[] { 0, -2, 0, -1, -3, -2, -2, 6, -2,
- -4,
- -4, -2, -3, -3, -2, 0, -2, -2, -3, -3, -1, -2, -1 });
- verifyValues(sm, 'H', new float[] { -2, 0, 1, -1, -3, 0, 0, -2, 8, -3,
- -3, -1, -2, -1, -2, -1, -2, -2, 2, -3, 0, 0, -1 });
- verifyValues(sm, 'I', new float[] { -1, -3, -3, -3, -1, -3, -3, -4, -3,
- 4, 2, -3, 1, 0, -3, -2, -1, -3, -1, 3, -3, -3, -1 });
- verifyValues(sm, 'L', new float[] { -1, -2, -3, -4, -1, -2, -3, -4, -3,
- 2, 4, -2, 2, 0, -3, -2, -1, -2, -1, 1, -4, -3, -1 });
- verifyValues(sm, 'K', new float[] { -1, 2, 0, -1, -3, 1, 1, -2, -1, -3,
- -2, 5, -1, -3, -1, 0, -1, -3, -2, -2, 0, 1, -1 });
- verifyValues(sm, 'M', new float[] { -1, -1, -2, -3, -1, 0, -2, -3, -2,
- 1,
- 2, -1, 5, 0, -2, -1, -1, -1, -1, 1, -3, -1, -1 });
- verifyValues(sm, 'F', new float[] { -2, -3, -3, -3, -2, -3, -3, -3, -1,
- 0, 0, -3, 0, 6, -4, -2, -2, 1, 3, -1, -3, -3, -1 });
- verifyValues(sm, 'P', new float[] { -1, -2, -2, -1, -3, -1, -1, -2, -2,
- -3, -3, -1, -2, -4, 7, -1, -1, -4, -3, -2, -2, -1, -2 });
- verifyValues(sm, 'S', new float[] { 1, -1, 1, 0, -1, 0, 0, 0, -1, -2,
- -2,
- 0, -1, -2, -1, 4, 1, -3, -2, -2, 0, 0, 0 });
- verifyValues(sm, 'T', new float[] { 0, -1, 0, -1, -1, -1, -1, -2, -2,
- -1,
- -1, -1, -1, -2, -1, 1, 5, -2, -2, 0, -1, -1, 0 });
- verifyValues(sm, 'W', new float[] { -3, -3, -4, -4, -2, -2, -3, -2, -2,
- -3, -2, -3, -1, 1, -4, -3, -2, 11, 2, -3, -4, -3, -2 });
- verifyValues(sm, 'Y', new float[] { -2, -2, -2, -3, -2, -1, -2, -3, 2,
- -1, -1, -2, -1, 3, -3, -2, -2, 2, 7, -1, -3, -2, -1 });
- verifyValues(sm, 'V', new float[] { 0, -3, -3, -3, -1, -2, -2, -3, -3,
- 3,
- 1, -2, 1, -1, -2, -2, 0, -3, -1, 4, -3, -2, -1 });
- verifyValues(sm, 'B', new float[] { -2, -1, 3, 4, -3, 0, 1, -1, 0, -3,
- -4, 0, -3, -3, -2, 0, -1, -4, -3, -3, 4, 1, -1 });
- verifyValues(sm, 'Z', new float[] { -1, 0, 0, 1, -3, 3, 4, -2, 0, -3,
- -3,
- 1, -1, -3, -1, 0, -1, -3, -2, -2, 1, 4, -1 });
- verifyValues(sm, 'X', new float[] { 0, -1, -1, -1, -2, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -2, 0, 0, -2, -1, -1, -1, -1, -1 });
+ verifyValues(sm, 'A',
+ new float[]
+ { 4, -1, -2, -2, 0, -1, -1, 0, -2, -1, -1, -1, -1, -2, -1, 1, 0,
+ -3, -2, 0, -2, -1, 0 });
+ verifyValues(sm, 'R',
+ new float[]
+ { -1, 5, 0, -2, -3, 1, 0, -2, 0, -3, -2, 2, -1, -3, -2, -1, -1,
+ -3, -2, -3, -1, 0, -1 });
+ verifyValues(sm, 'N',
+ new float[]
+ { -2, 0, 6, 1, -3, 0, 0, 0, 1, -3, -3, 0, -2, -3, -2, 1, 0, -4,
+ -2, -3, 3, 0, -1 });
+ verifyValues(sm, 'D',
+ new float[]
+ { -2, -2, 1, 6, -3, 0, 2, -1, -1, -3, -4, -1, -3, -3, -1, 0, -1,
+ -4, -3, -3, 4, 1, -1 });
+ verifyValues(sm, 'C',
+ new float[]
+ { 0, -3, -3, -3, 9, -3, -4, -3, -3, -1, -1, -3, -1, -2, -3, -1,
+ -1, -2, -2, -1, -3, -3, -2 });
+ verifyValues(sm, 'Q',
+ new float[]
+ { -1, 1, 0, 0, -3, 5, 2, -2, 0, -3, -2, 1, 0, -3, -1, 0, -1, -2,
+ -1, -2, 0, 3, -1 });
+ verifyValues(sm, 'E',
+ new float[]
+ { -1, 0, 0, 2, -4, 2, 5, -2, 0, -3, -3, 1, -2, -3, -1, 0, -1,
+ -3, -2, -2, 1, 4, -1 });
+ verifyValues(sm, 'G',
+ new float[]
+ { 0, -2, 0, -1, -3, -2, -2, 6, -2, -4, -4, -2, -3, -3, -2, 0,
+ -2, -2, -3, -3, -1, -2, -1 });
+ verifyValues(sm, 'H',
+ new float[]
+ { -2, 0, 1, -1, -3, 0, 0, -2, 8, -3, -3, -1, -2, -1, -2, -1, -2,
+ -2, 2, -3, 0, 0, -1 });
+ verifyValues(sm, 'I',
+ new float[]
+ { -1, -3, -3, -3, -1, -3, -3, -4, -3, 4, 2, -3, 1, 0, -3, -2,
+ -1, -3, -1, 3, -3, -3, -1 });
+ verifyValues(sm, 'L',
+ new float[]
+ { -1, -2, -3, -4, -1, -2, -3, -4, -3, 2, 4, -2, 2, 0, -3, -2,
+ -1, -2, -1, 1, -4, -3, -1 });
+ verifyValues(sm, 'K',
+ new float[]
+ { -1, 2, 0, -1, -3, 1, 1, -2, -1, -3, -2, 5, -1, -3, -1, 0, -1,
+ -3, -2, -2, 0, 1, -1 });
+ verifyValues(sm, 'M',
+ new float[]
+ { -1, -1, -2, -3, -1, 0, -2, -3, -2, 1, 2, -1, 5, 0, -2, -1, -1,
+ -1, -1, 1, -3, -1, -1 });
+ verifyValues(sm, 'F',
+ new float[]
+ { -2, -3, -3, -3, -2, -3, -3, -3, -1, 0, 0, -3, 0, 6, -4, -2,
+ -2, 1, 3, -1, -3, -3, -1 });
+ verifyValues(sm, 'P',
+ new float[]
+ { -1, -2, -2, -1, -3, -1, -1, -2, -2, -3, -3, -1, -2, -4, 7, -1,
+ -1, -4, -3, -2, -2, -1, -2 });
+ verifyValues(sm, 'S',
+ new float[]
+ { 1, -1, 1, 0, -1, 0, 0, 0, -1, -2, -2, 0, -1, -2, -1, 4, 1, -3,
+ -2, -2, 0, 0, 0 });
+ verifyValues(sm, 'T',
+ new float[]
+ { 0, -1, 0, -1, -1, -1, -1, -2, -2, -1, -1, -1, -1, -2, -1, 1,
+ 5, -2, -2, 0, -1, -1, 0 });
+ verifyValues(sm, 'W',
+ new float[]
+ { -3, -3, -4, -4, -2, -2, -3, -2, -2, -3, -2, -3, -1, 1, -4, -3,
+ -2, 11, 2, -3, -4, -3, -2 });
+ verifyValues(sm, 'Y',
+ new float[]
+ { -2, -2, -2, -3, -2, -1, -2, -3, 2, -1, -1, -2, -1, 3, -3, -2,
+ -2, 2, 7, -1, -3, -2, -1 });
+ verifyValues(sm, 'V',
+ new float[]
+ { 0, -3, -3, -3, -1, -2, -2, -3, -3, 3, 1, -2, 1, -1, -2, -2, 0,
+ -3, -1, 4, -3, -2, -1 });
+ verifyValues(sm, 'B',
+ new float[]
+ { -2, -1, 3, 4, -3, 0, 1, -1, 0, -3, -4, 0, -3, -3, -2, 0, -1,
+ -4, -3, -3, 4, 1, -1 });
+ verifyValues(sm, 'Z',
+ new float[]
+ { -1, 0, 0, 1, -3, 3, 4, -2, 0, -3, -3, 1, -1, -3, -1, 0, -1,
+ -3, -2, -2, 1, 4, -1 });
+ verifyValues(sm, 'X',
+ new float[]
+ { 0, -1, -1, -1, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -2, 0,
+ 0, -2, -1, -1, -1, -1, -1 });
}
/**
+ "</table>";
assertEquals(html, expected);
}
+
+ @Test(groups = "Functional")
+ public void testIsSymmetric()
+ {
+ double delta = 0.0001d;
+ float[][] scores = new float[][] { { 1f, -2f }, { -2f, 3f } };
+ ScoreMatrix sm = new ScoreMatrix("Test", "AB".toCharArray(), scores);
+ assertTrue(sm.isSymmetric());
+
+ /*
+ * verify that with a symmetric score matrix,
+ * pairwise similarity matrix is also symmetric
+ * seq1.seq1 = 5*A.A + 3*B.B = 5+9 = 14
+ * seq1.seq2 = 3*A.A + 2*A.B + B.A + 2*B.B = 3 + -4 + -2 + 6 = 3
+ * seq2.seq1 = 3*A.A + A.B + 2*B.A + 2*B.B = 3 + -2 + -4 + 6 = 3
+ * seq2.seq2 = 4*A.A + 4*B.B = 4 + 12 = 16
+ */
+ SimilarityParamsI params = new SimilarityParams(true, true, true,
+ false);
+ String seq1 = "AAABBBAA";
+ String seq2 = "AABBABBA";
+ String[] seqs1 = new String[] { seq1, seq2 };
+ MatrixI res1 = sm.findSimilarities(seqs1, params);
+ assertTrue(
+ res1.equals(new Matrix(new double[][]
+ { { 14d, 3d }, { 3d, 16d } }), delta));
+
+ /*
+ * order of sequences affects diagonal, but not off-diagonal values
+ * [0, 0] is now seq2.seq2, [1, 1] is seq1.seq1
+ * [0, 1] is now seq2.seq1 = seq1.seq2 by symmetry
+ */
+ String[] seqs2 = new String[] { seq2, seq1 };
+ MatrixI res2 = sm.findSimilarities(seqs2, params);
+ assertFalse(res1.equals(res2));
+ assertTrue(res2.equals(new Matrix(new double[][]
+ { { 16d, 3d }, { 3d, 14d } }), delta));
+
+ /*
+ * now make the score matrix asymmetric
+ * seq1.seq1 = 5*A.A + 3*B.B = 5+9 = 14
+ * seq1.seq2 = 3*A.A + 2*A.B + B.A + 2*B.B = 3 + -4 + 2 + 6 = 7
+ * seq2.seq1 = 3*A.A + A.B + 2*B.A + 2*B.B = 3 + -2 + 4 + 6 = 11
+ * seq2.seq2 = 4*A.A + 4*B.B = 4 + 12 = 16
+ */
+ scores = new float[][] { { 1f, -2f }, { 2f, 3f } };
+ sm = new ScoreMatrix("Test", "AB".toCharArray(), scores);
+ assertFalse(sm.isSymmetric()); // [0, 1] != [1, 0]
+ res1 = sm.findSimilarities(seqs1, params);
+ assertTrue(res1.equals(new Matrix(new double[][]
+ { { 14d, 7d }, { 11d, 16d } }), delta));
+
+ /*
+ * reverse order of sequences
+ * - reverses order of main diagonal
+ * - reflects off-diagonal values
+ */
+ res2 = sm.findSimilarities(seqs2, params);
+ assertFalse(res1.equals(res2));
+ assertTrue(
+ res2.equals(new Matrix(new double[][]
+ { { 16d, 11d }, { 7d, 14d } }), delta));
+
+ /*
+ * verify that forcing an asymmetric matrix to use
+ * symmetric calculation gives a different (wrong) result
+ */
+ PA.setValue(sm, "symmetric", true);
+ assertTrue(sm.isSymmetric()); // it's not true!
+ res2 = sm.findSimilarities(seqs1, params);
+ assertFalse(res1.equals(res2, delta));
+ }
}
assertTrue(sm instanceof SimilarityScoreModel);
assertTrue(sm instanceof PairwiseScoreModelI);
assertFalse(sm instanceof DistanceScoreModel);
- assertEquals(sm.getName(), "PID");
- assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('R', 'C'), 0f);
- assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('R', 'r'), 1f);
+ assertEquals(sm.getName(), "DNA");
+ assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('c', 'x'), 1f);
sm = models.next();
assertTrue(sm instanceof SimilarityScoreModel);
assertTrue(sm instanceof PairwiseScoreModelI);
assertFalse(sm instanceof DistanceScoreModel);
- assertEquals(sm.getName(), "DNA");
- assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('c', 'x'), 1f);
+ assertEquals(sm.getName(), "PID");
+ assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('R', 'C'), 0f);
+ assertEquals(((PairwiseScoreModelI) sm).getPairwiseScore('R', 'r'), 1f);
sm = models.next();
assertFalse(sm instanceof SimilarityScoreModel);
"Failed command : -open examples/uniref50.fa" },
{ "CMD [-nosortbytree] executed successfully!",
"Failed command : -nosortbytree" },
- { "CMD [-dasserver nickname=www.test.com] executed successfully!",
- "Failed command : -dasserver nickname=www.test.com" },
{
"CMD [-features examples/testdata/plantfdx.features] executed successfully!",
"Failed command : -features examples/testdata/plantfdx.features" },
{ "CMD [-nousagestats] executed successfully!",
"Failed command : -nousagestats" },
{ "CMD [-noquestionnaire] executed successfully!",
- "Failed command : -noquestionnaire nickname=www.test.com" } };
+ "Failed command : -noquestionnaire" } };
}
import jalview.analysis.Finder;
import jalview.api.AlignViewControllerI;
import jalview.api.FeatureColourI;
+import jalview.api.FinderI;
import jalview.datamodel.Alignment;
import jalview.datamodel.SearchResults;
import jalview.datamodel.SearchResultsI;
* seq1 feature in columns 4-6 is hidden
* seq2 feature in columns 6-7 is shown
*/
- FeatureColourI fc = new FeatureColour(Color.red, Color.blue, 0f, 10f);
+ FeatureColourI fc = new FeatureColour(null, Color.red, Color.blue, null,
+ 0f, 10f);
fc.setAboveThreshold(true);
fc.setThreshold(5f);
af.getFeatureRenderer().setColour("Metal", fc);
/*
* test Match/Find works first
*/
- Finder f = new Finder(af.getViewport().getAlignment(), null);
- f.setFindAll(true);
- f.setCaseSensitive(true);
- f.find("M+");
+ FinderI f = new Finder(af.getViewport());
+ f.findAll("M+", true, false);
assertEquals(
"Finder found different set of results to manually created SearchResults",
sr, f.getSearchResults());
assertEquals(".JKLMNO", seq2.getSequenceAsString());
assertEquals(".PQR...", seq3.getSequenceAsString());
}
+
+ /**
+ * Test for setHiddenColumns, to check it returns true if the hidden columns
+ * have changed, else false
+ */
+ @Test(groups = { "Functional" })
+ public void testSetHiddenColumns()
+ {
+ AlignmentI al = new Alignment(new SequenceI[] {});
+ assertFalse(al.getHiddenColumns().hasHiddenColumns());
+
+ HiddenColumns hc = new HiddenColumns();
+ assertFalse(al.setHiddenColumns(hc)); // no change
+ assertSame(hc, al.getHiddenColumns());
+
+ hc.hideColumns(2, 4);
+ assertTrue(al.getHiddenColumns().hasHiddenColumns());
+
+ /*
+ * set a different object but with the same columns hidden
+ */
+ HiddenColumns hc2 = new HiddenColumns();
+ hc2.hideColumns(2, 4);
+ assertFalse(al.setHiddenColumns(hc2)); // no change
+ assertSame(hc2, al.getHiddenColumns());
+
+ assertTrue(al.setHiddenColumns(null));
+ assertNull(al.getHiddenColumns());
+ assertTrue(al.setHiddenColumns(hc));
+ assertSame(hc, al.getHiddenColumns());
+
+ al.getHiddenColumns().hideColumns(10, 12);
+ hc2.hideColumns(10, 12);
+ assertFalse(al.setHiddenColumns(hc2)); // no change
+
+ /*
+ * hide columns 15-16 then 17-18 in hc
+ * hide columns 15-18 in hc2
+ * these are not now 'equal' objects even though they
+ * represent the same set of columns
+ */
+ assertSame(hc2, al.getHiddenColumns());
+ hc.hideColumns(15, 16);
+ hc.hideColumns(17, 18);
+ hc2.hideColumns(15, 18);
+ assertFalse(hc.equals(hc2));
+ assertTrue(al.setHiddenColumns(hc)); // 'changed'
+ }
+
+ @Test(groups = { "Functional" })
+ public void testGetWidth()
+ {
+ SequenceI seq1 = new Sequence("seq1", "ABCDEF--");
+ SequenceI seq2 = new Sequence("seq2", "-JKLMNO--");
+ SequenceI seq3 = new Sequence("seq2", "-PQR");
+ AlignmentI a = new Alignment(new SequenceI[] { seq1, seq2, seq3 });
+
+ assertEquals(9, a.getWidth());
+
+ // width includes hidden columns
+ a.getHiddenColumns().hideColumns(2, 5);
+ assertEquals(9, a.getWidth());
+ }
+
+ @Test(groups = { "Functional" })
+ public void testGetVisibleWidth()
+ {
+ SequenceI seq1 = new Sequence("seq1", "ABCDEF--");
+ SequenceI seq2 = new Sequence("seq2", "-JKLMNO--");
+ SequenceI seq3 = new Sequence("seq2", "-PQR");
+ AlignmentI a = new Alignment(new SequenceI[] { seq1, seq2, seq3 });
+
+ assertEquals(9, a.getVisibleWidth());
+
+ // width excludes hidden columns
+ a.getHiddenColumns().hideColumns(2, 5);
+ assertEquals(5, a.getVisibleWidth());
+ }
}
{
HiddenColumns hiddenCols;
- @BeforeClass
+ @BeforeClass(alwaysRun = true)
public void setup()
{
hiddenCols = new HiddenColumns();
- hiddenCols.hideColumns(2,4);
+ hiddenCols.hideColumns(2, 4);
}
Hashtable<SequenceI, SequenceCollectionI> hiddenRepSequences = new Hashtable<>();
- @BeforeClass
+ @BeforeClass(alwaysRun = true)
public void setup()
{
// create random alignment
assertEquals(5, m.getEnd());
}
+ @Test(groups = { "Functional" })
+ public void testMatchContains()
+ {
+ SequenceI seq1 = new Sequence("", "abcdefghijklm");
+ SequenceI seq2 = new Sequence("", "abcdefghijklm");
+ SearchResultMatchI m = new SearchResults().new Match(seq1, 2, 5);
+
+ assertTrue(m.contains(seq1, 2, 5));
+ assertTrue(m.contains(seq1, 3, 5));
+ assertTrue(m.contains(seq1, 2, 4));
+ assertTrue(m.contains(seq1, 3, 3));
+
+ assertFalse(m.contains(seq1, 2, 6));
+ assertFalse(m.contains(seq1, 1, 5));
+ assertFalse(m.contains(seq1, 1, 8));
+ assertFalse(m.contains(seq2, 3, 3));
+ assertFalse(m.contains(null, 3, 3));
+ }
+
/**
* test markColumns for creating column selections
*/
"Didn't set expected number of columns in total for two successive marks",
2, tbs.cardinality());
}
+
+ /**
+ * Test to verify adding doesn't create duplicate results
+ */
+ @Test(groups = { "Functional" })
+ public void testAddResult()
+ {
+ SequenceI seq1 = new Sequence("", "abcdefghijklm");
+ SearchResultsI sr = new SearchResults();
+ sr.addResult(seq1, 3, 5);
+ assertEquals(1, sr.getSize());
+ sr.addResult(seq1, 3, 5);
+ assertEquals(1, sr.getSize());
+ sr.addResult(seq1, 3, 6);
+ assertEquals(2, sr.getSize());
+ }
}
import jalview.schemes.PIDColourScheme;
import java.awt.Color;
+import java.util.ArrayList;
import java.util.Collections;
-
-import junit.extensions.PA;
+import java.util.List;
import org.testng.annotations.Test;
+import junit.extensions.PA;
+
public class SequenceGroupTest
{
@Test(groups={"Functional"})
*/
assertNull(sg2.getContext());
}
+
+ @Test(groups = { "Functional" })
+ public void testConstructor_list()
+ {
+ SequenceI s1 = new Sequence("abcde", "fg");
+ SequenceI s2 = new Sequence("foo", "bar");
+ List<SequenceI> seqs = new ArrayList<SequenceI>();
+ seqs.add(s1);
+ seqs.add(s2);
+ SequenceGroup sg = new SequenceGroup(seqs);
+
+ /*
+ * verify sg has a copy of the original list
+ */
+ List<SequenceI> sgList = sg.getSequences();
+ assertNotSame(sgList, seqs);
+ assertEquals(sgList, seqs);
+
+ /*
+ * add to sgList, original is unchanged
+ */
+ sg.addSequence(new Sequence("bar", "foo"), false);
+ assertEquals(sgList.size(), 3);
+ assertEquals(seqs.size(), 2);
+
+ /*
+ * delete from original, sgList is unchanged
+ */
+ seqs.remove(s1);
+ assertEquals(sgList.size(), 3);
+ assertEquals(seqs.size(), 1);
+ }
}
public class SequenceTest
{
-
@BeforeClass(alwaysRun = true)
public void setUpJvOptionPane()
{
assertTrue(overlaps.contains(sf));
}
- /**
- * Tests for the method that returns false for an attempt to add a feature
- * that would enclose, or be enclosed by, another feature
- */
- @Test(groups = "Functional")
- public void testAddNonNestedFeature()
- {
- FeatureStore fs = new FeatureStore();
-
- String type = "Domain";
- SequenceFeature sf1 = new SequenceFeature(type, type, 10, 20,
- Float.NaN, null);
- assertTrue(fs.addNonNestedFeature(sf1));
-
- // co-located feature is ok
- SequenceFeature sf2 = new SequenceFeature(type, type, 10, 20,
- Float.NaN, null);
- assertTrue(fs.addNonNestedFeature(sf2));
-
- // overlap left is ok
- SequenceFeature sf3 = new SequenceFeature(type, type, 5, 15, Float.NaN,
- null);
- assertTrue(fs.addNonNestedFeature(sf3));
-
- // overlap right is ok
- SequenceFeature sf4 = new SequenceFeature(type, type, 15, 25,
- Float.NaN, null);
- assertTrue(fs.addNonNestedFeature(sf4));
-
- // add enclosing feature is not ok
- SequenceFeature sf5 = new SequenceFeature(type, type, 10, 21,
- Float.NaN, null);
- assertFalse(fs.addNonNestedFeature(sf5));
- SequenceFeature sf6 = new SequenceFeature(type, type, 4, 15, Float.NaN,
- null);
- assertFalse(fs.addNonNestedFeature(sf6));
- SequenceFeature sf7 = new SequenceFeature(type, type, 1, 50, Float.NaN,
- null);
- assertFalse(fs.addNonNestedFeature(sf7));
-
- // add enclosed feature is not ok
- SequenceFeature sf8 = new SequenceFeature(type, type, 10, 19,
- Float.NaN, null);
- assertFalse(fs.addNonNestedFeature(sf8));
- SequenceFeature sf9 = new SequenceFeature(type, type, 16, 25,
- Float.NaN, null);
- assertFalse(fs.addNonNestedFeature(sf9));
- SequenceFeature sf10 = new SequenceFeature(type, type, 7, 7, Float.NaN,
- null);
- assertFalse(fs.addNonNestedFeature(sf10));
- }
-
@Test(groups = "Functional")
public void testGetPositionalFeatures()
{
assertEquals(fs.getFeatureCount(true), 3);
assertTrue(fs.delete(sf1));
assertEquals(fs.getFeatureCount(true), 2);
- // FeatureStore should now only contain features in the NCList
- assertTrue(fs.nonNestedFeatures.isEmpty());
- assertEquals(fs.nestedFeatures.size(), 2);
+ assertEquals(fs.features.size(), 2);
assertFalse(fs.isEmpty());
assertTrue(fs.delete(sf2));
assertEquals(fs.getFeatureCount(true), 1);
public void testListContains()
{
assertFalse(FeatureStore.listContains(null, null));
- List<SequenceFeature> features = new ArrayList<SequenceFeature>();
+ List<SequenceFeature> features = new ArrayList<>();
assertFalse(FeatureStore.listContains(features, null));
SequenceFeature sf1 = new SequenceFeature("type1", "desc1", 20, 30, 3f,
assertEquals(features.size(), 2);
assertTrue(features.contains(sf1));
assertTrue(features.contains(sf2));
- assertTrue(store.nonNestedFeatures.contains(sf1));
- assertTrue(store.nestedFeatures.contains(sf2));
+ assertTrue(store.features.contains(sf1));
+ assertTrue(store.features.contains(sf2));
/*
* delete the first feature
+++ /dev/null
-package jalview.datamodel.features;
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertFalse;
-import static org.testng.Assert.assertSame;
-import static org.testng.Assert.assertTrue;
-
-import jalview.datamodel.ContiguousI;
-import jalview.datamodel.Range;
-import jalview.datamodel.SequenceFeature;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Comparator;
-import java.util.List;
-import java.util.Random;
-
-import junit.extensions.PA;
-
-import org.testng.annotations.DataProvider;
-import org.testng.annotations.Test;
-
-public class NCListTest
-{
-
- private Random random = new Random(107);
-
- private Comparator<ContiguousI> sorter = new RangeComparator(true);
-
- /**
- * A basic sanity test of the constructor
- */
- @Test(groups = "Functional")
- public void testConstructor()
- {
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(20, 20));
- ranges.add(new Range(10, 20));
- ranges.add(new Range(15, 30));
- ranges.add(new Range(10, 30));
- ranges.add(new Range(11, 19));
- ranges.add(new Range(10, 20));
- ranges.add(new Range(1, 100));
-
- NCList<Range> ncl = new NCList<Range>(ranges);
- String expected = "[1-100 [10-30 [10-20 [10-20 [11-19]]]], 15-30 [20-20]]";
- assertEquals(ncl.toString(), expected);
- assertTrue(ncl.isValid());
-
- Collections.reverse(ranges);
- ncl = new NCList<Range>(ranges);
- assertEquals(ncl.toString(), expected);
- assertTrue(ncl.isValid());
- }
-
- @Test(groups = "Functional")
- public void testFindOverlaps()
- {
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(20, 50));
- ranges.add(new Range(30, 70));
- ranges.add(new Range(1, 100));
- ranges.add(new Range(70, 120));
-
- NCList<Range> ncl = new NCList<Range>(ranges);
-
- List<Range> overlaps = ncl.findOverlaps(121, 122);
- assertEquals(overlaps.size(), 0);
-
- overlaps = ncl.findOverlaps(21, 22);
- assertEquals(overlaps.size(), 2);
- assertEquals(((ContiguousI) overlaps.get(0)).getBegin(), 1);
- assertEquals(((ContiguousI) overlaps.get(0)).getEnd(), 100);
- assertEquals(((ContiguousI) overlaps.get(1)).getBegin(), 20);
- assertEquals(((ContiguousI) overlaps.get(1)).getEnd(), 50);
-
- overlaps = ncl.findOverlaps(110, 110);
- assertEquals(overlaps.size(), 1);
- assertEquals(((ContiguousI) overlaps.get(0)).getBegin(), 70);
- assertEquals(((ContiguousI) overlaps.get(0)).getEnd(), 120);
- }
-
- @Test(groups = "Functional")
- public void testAdd_onTheEnd()
- {
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(20, 50));
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertEquals(ncl.toString(), "[20-50]");
- assertTrue(ncl.isValid());
-
- ncl.add(new Range(60, 70));
- assertEquals(ncl.toString(), "[20-50, 60-70]");
- assertTrue(ncl.isValid());
- }
-
- @Test(groups = "Functional")
- public void testAdd_inside()
- {
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(20, 50));
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertEquals(ncl.toString(), "[20-50]");
- assertTrue(ncl.isValid());
-
- ncl.add(new Range(30, 40));
- assertEquals(ncl.toString(), "[20-50 [30-40]]");
- }
-
- @Test(groups = "Functional")
- public void testAdd_onTheFront()
- {
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(20, 50));
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertEquals(ncl.toString(), "[20-50]");
- assertTrue(ncl.isValid());
-
- ncl.add(new Range(5, 15));
- assertEquals(ncl.toString(), "[5-15, 20-50]");
- assertTrue(ncl.isValid());
- }
-
- @Test(groups = "Functional")
- public void testAdd_enclosing()
- {
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(20, 50));
- ranges.add(new Range(30, 60));
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertEquals(ncl.toString(), "[20-50, 30-60]");
- assertTrue(ncl.isValid());
- assertEquals(ncl.getStart(), 20);
-
- ncl.add(new Range(10, 70));
- assertEquals(ncl.toString(), "[10-70 [20-50, 30-60]]");
- assertTrue(ncl.isValid());
- }
-
- @Test(groups = "Functional")
- public void testAdd_spanning()
- {
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(20, 40));
- ranges.add(new Range(60, 70));
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertEquals(ncl.toString(), "[20-40, 60-70]");
- assertTrue(ncl.isValid());
-
- ncl.add(new Range(30, 50));
- assertEquals(ncl.toString(), "[20-40, 30-50, 60-70]");
- assertTrue(ncl.isValid());
-
- ncl.add(new Range(40, 65));
- assertEquals(ncl.toString(), "[20-40, 30-50, 40-65, 60-70]");
- assertTrue(ncl.isValid());
- }
-
- /**
- * Provides the scales for pseudo-random NCLists i.e. the range of the maximal
- * [0-scale] interval to be stored
- *
- * @return
- */
- @DataProvider(name = "scalesOfLife")
- public Object[][] getScales()
- {
- return new Object[][] { new Integer[] { 10 }, new Integer[] { 100 } };
- }
-
- /**
- * Do a number of pseudo-random (reproducible) builds of an NCList, to
- * exercise as many methods of the class as possible while generating the
- * range of possible structure topologies
- * <ul>
- * <li>verify that add adds an entry and increments size</li>
- * <li>...except where the entry is already contained (by equals test)</li>
- * <li>verify that the structure is valid at all stages of construction</li>
- * <li>generate, run and verify a range of overlap queries</li>
- * <li>tear down the structure by deleting entries, verifying correctness at
- * each stage</li>
- * </ul>
- */
- @Test(groups = "Functional", dataProvider = "scalesOfLife")
- public void test_pseudoRandom(Integer scale)
- {
- NCList<SequenceFeature> ncl = new NCList<SequenceFeature>();
- List<SequenceFeature> features = new ArrayList<SequenceFeature>(scale);
-
- testAdd_pseudoRandom(scale, ncl, features);
-
- /*
- * sort the list of added ranges - this doesn't affect the test,
- * just makes it easier to inspect the data in the debugger
- */
- Collections.sort(features, sorter);
-
- testFindOverlaps_pseudoRandom(ncl, scale, features);
-
- testDelete_pseudoRandom(ncl, features);
- }
-
- /**
- * Pick randomly selected entries to delete in turn, checking the NCList size
- * and validity at each stage, until it is empty
- *
- * @param ncl
- * @param features
- */
- protected void testDelete_pseudoRandom(NCList<SequenceFeature> ncl,
- List<SequenceFeature> features)
- {
- int deleted = 0;
-
- while (!features.isEmpty())
- {
- assertEquals(ncl.size(), features.size());
- int toDelete = random.nextInt(features.size());
- SequenceFeature entry = features.get(toDelete);
- assertTrue(ncl.contains(entry), String.format(
- "NCList doesn't contain entry [%d] '%s'!", deleted,
- entry.toString()));
-
- ncl.delete(entry);
- assertFalse(ncl.contains(entry), String.format(
- "NCList still contains deleted entry [%d] '%s'!", deleted,
- entry.toString()));
- features.remove(toDelete);
- deleted++;
-
- assertTrue(ncl.isValid(), String.format(
- "NCList invalid after %d deletions, last deleted was '%s'",
- deleted, entry.toString()));
-
- /*
- * brute force check that deleting one entry didn't delete any others
- */
- for (int i = 0; i < features.size(); i++)
- {
- SequenceFeature sf = features.get(i);
- assertTrue(ncl.contains(sf), String.format(
- "NCList doesn't contain entry [%d] %s after deleting '%s'!",
- i, sf.toString(), entry.toString()));
- }
- }
- assertEquals(ncl.size(), 0); // all gone
- }
-
- /**
- * Randomly generate entries and add them to the NCList, checking its validity
- * and size at each stage. A few entries should be duplicates (by equals test)
- * so not get added.
- *
- * @param scale
- * @param ncl
- * @param features
- */
- protected void testAdd_pseudoRandom(Integer scale,
- NCList<SequenceFeature> ncl,
- List<SequenceFeature> features)
- {
- int count = 0;
- final int size = 50;
-
- for (int i = 0; i < size; i++)
- {
- int r1 = random.nextInt(scale + 1);
- int r2 = random.nextInt(scale + 1);
- int from = Math.min(r1, r2);
- int to = Math.max(r1, r2);
-
- /*
- * choice of two feature values means that occasionally an identical
- * feature may be generated, in which case it should not be added
- */
- float value = (float) i % 2;
- SequenceFeature feature = new SequenceFeature("Pfam", "", from, to,
- value, "group");
-
- /*
- * add to NCList - with duplicate entries (by equals) disallowed
- */
- ncl.add(feature, false);
- if (features.contains(feature))
- {
- System.out.println("Duplicate feature generated "
- + feature.toString());
- }
- else
- {
- features.add(feature);
- count++;
- }
-
- /*
- * check list format is valid at each stage of its construction
- */
- assertTrue(ncl.isValid(),
- String.format("Failed for scale = %d, i=%d", scale, i));
- assertEquals(ncl.size(), count);
- }
- // System.out.println(ncl.prettyPrint());
- }
-
- /**
- * A helper method that generates pseudo-random range queries and veries that
- * findOverlaps returns the correct matches
- *
- * @param ncl
- * the NCList to query
- * @param scale
- * ncl maximal range is [0, scale]
- * @param features
- * a list of the ranges stored in ncl
- */
- protected void testFindOverlaps_pseudoRandom(NCList<SequenceFeature> ncl,
- int scale,
- List<SequenceFeature> features)
- {
- int halfScale = scale / 2;
- int minIterations = 20;
-
- /*
- * generates ranges in [-halfScale, scale+halfScale]
- * - some should be internal to [0, scale] P = 1/4
- * - some should lie before 0 P = 1/16
- * - some should lie after scale P = 1/16
- * - some should overlap left P = 1/4
- * - some should overlap right P = 1/4
- * - some should enclose P = 1/8
- *
- * 50 iterations give a 96% probability of including the
- * unlikeliest case; keep going until we have done all!
- */
- boolean inside = false;
- boolean enclosing = false;
- boolean before = false;
- boolean after = false;
- boolean overlapLeft = false;
- boolean overlapRight = false;
- boolean allCasesCovered = false;
-
- int i = 0;
- while (i < minIterations || !allCasesCovered)
- {
- i++;
- int r1 = random.nextInt((scale + 1) * 2);
- int r2 = random.nextInt((scale + 1) * 2);
- int from = Math.min(r1, r2) - halfScale;
- int to = Math.max(r1, r2) - halfScale;
-
- /*
- * ensure all cases of interest get covered
- */
- inside |= from >= 0 && to <= scale;
- enclosing |= from <= 0 && to >= scale;
- before |= to < 0;
- after |= from > scale;
- overlapLeft |= from < 0 && to >= 0 && to <= scale;
- overlapRight |= from >= 0 && from <= scale && to > scale;
- if (!allCasesCovered)
- {
- allCasesCovered |= inside && enclosing && before && after
- && overlapLeft && overlapRight;
- if (allCasesCovered)
- {
- System.out
- .println(String
- .format("Covered all findOverlaps cases after %d iterations for scale %d",
- i, scale));
- }
- }
-
- verifyFindOverlaps(ncl, from, to, features);
- }
- }
-
- /**
- * A helper method that verifies that overlaps found by interrogating an
- * NCList correctly match those found by brute force search
- *
- * @param ncl
- * @param from
- * @param to
- * @param features
- */
- protected void verifyFindOverlaps(NCList<SequenceFeature> ncl, int from,
- int to, List<SequenceFeature> features)
- {
- List<SequenceFeature> overlaps = ncl.findOverlaps(from, to);
-
- /*
- * check returned entries do indeed overlap from-to range
- */
- for (ContiguousI sf : overlaps)
- {
- int begin = sf.getBegin();
- int end = sf.getEnd();
- assertTrue(begin <= to && end >= from, String.format(
- "[%d, %d] does not overlap query range [%d, %d]", begin, end,
- from, to));
- }
-
- /*
- * check overlapping ranges are included in the results
- * (the test above already shows non-overlapping ranges are not)
- */
- for (ContiguousI sf : features)
- {
- int begin = sf.getBegin();
- int end = sf.getEnd();
- if (begin <= to && end >= from)
- {
- boolean found = overlaps.contains(sf);
- assertTrue(found, String.format(
- "[%d, %d] missing in query range [%d, %d]", begin, end,
- from, to));
- }
- }
- }
-
- @Test(groups = "Functional")
- public void testGetEntries()
- {
- List<Range> ranges = new ArrayList<Range>();
- Range r1 = new Range(20, 20);
- Range r2 = new Range(10, 20);
- Range r3 = new Range(15, 30);
- Range r4 = new Range(10, 30);
- Range r5 = new Range(11, 19);
- Range r6 = new Range(10, 20);
- ranges.add(r1);
- ranges.add(r2);
- ranges.add(r3);
- ranges.add(r4);
- ranges.add(r5);
- ranges.add(r6);
-
- NCList<Range> ncl = new NCList<Range>(ranges);
- Range r7 = new Range(1, 100);
- ncl.add(r7);
-
- List<Range> contents = ncl.getEntries();
- assertEquals(contents.size(), 7);
- assertTrue(contents.contains(r1));
- assertTrue(contents.contains(r2));
- assertTrue(contents.contains(r3));
- assertTrue(contents.contains(r4));
- assertTrue(contents.contains(r5));
- assertTrue(contents.contains(r6));
- assertTrue(contents.contains(r7));
-
- ncl = new NCList<Range>();
- assertTrue(ncl.getEntries().isEmpty());
- }
-
- @Test(groups = "Functional")
- public void testDelete()
- {
- List<Range> ranges = new ArrayList<Range>();
- Range r1 = new Range(20, 30);
- ranges.add(r1);
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertTrue(ncl.getEntries().contains(r1));
-
- Range r2 = new Range(20, 30);
- assertFalse(ncl.delete(null)); // null argument
- assertFalse(ncl.delete(r2)); // never added
- assertTrue(ncl.delete(r1)); // success
- assertTrue(ncl.getEntries().isEmpty());
-
- /*
- * tests where object.equals() == true
- */
- NCList<SequenceFeature> features = new NCList<SequenceFeature>();
- SequenceFeature sf1 = new SequenceFeature("type", "desc", 1, 10, 2f,
- "group");
- SequenceFeature sf2 = new SequenceFeature("type", "desc", 1, 10, 2f,
- "group");
- features.add(sf1);
- assertEquals(sf1, sf2); // sf1.equals(sf2)
- assertFalse(features.delete(sf2)); // equality is not enough for deletion
- assertTrue(features.getEntries().contains(sf1)); // still there!
- assertTrue(features.delete(sf1));
- assertTrue(features.getEntries().isEmpty()); // gone now
-
- /*
- * test with duplicate objects in NCList
- */
- features.add(sf1);
- features.add(sf1);
- assertEquals(features.getEntries().size(), 2);
- assertSame(features.getEntries().get(0), sf1);
- assertSame(features.getEntries().get(1), sf1);
- assertTrue(features.delete(sf1)); // first match only is deleted
- assertTrue(features.contains(sf1));
- assertEquals(features.size(), 1);
- assertTrue(features.delete(sf1));
- assertTrue(features.getEntries().isEmpty());
- }
-
- @Test(groups = "Functional")
- public void testAdd_overlapping()
- {
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(40, 50));
- ranges.add(new Range(20, 30));
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertEquals(ncl.toString(), "[20-30, 40-50]");
- assertTrue(ncl.isValid());
-
- /*
- * add range overlapping internally
- */
- ncl.add(new Range(25, 35));
- assertEquals(ncl.toString(), "[20-30, 25-35, 40-50]");
- assertTrue(ncl.isValid());
-
- /*
- * add range overlapping last range
- */
- ncl.add(new Range(45, 55));
- assertEquals(ncl.toString(), "[20-30, 25-35, 40-50, 45-55]");
- assertTrue(ncl.isValid());
-
- /*
- * add range overlapping first range
- */
- ncl.add(new Range(15, 25));
- assertEquals(ncl.toString(), "[15-25, 20-30, 25-35, 40-50, 45-55]");
- assertTrue(ncl.isValid());
- }
-
- /**
- * Test the contains method (which uses object equals test)
- */
- @Test(groups = "Functional")
- public void testContains()
- {
- NCList<SequenceFeature> ncl = new NCList<SequenceFeature>();
- SequenceFeature sf1 = new SequenceFeature("type", "desc", 1, 10, 2f,
- "group");
- SequenceFeature sf2 = new SequenceFeature("type", "desc", 1, 10, 2f,
- "group");
- SequenceFeature sf3 = new SequenceFeature("type", "desc", 1, 10, 2f,
- "anothergroup");
- ncl.add(sf1);
-
- assertTrue(ncl.contains(sf1));
- assertTrue(ncl.contains(sf2)); // sf1.equals(sf2)
- assertFalse(ncl.contains(sf3)); // !sf1.equals(sf3)
-
- /*
- * make some deeper structure in the NCList
- */
- SequenceFeature sf4 = new SequenceFeature("type", "desc", 2, 9, 2f,
- "group");
- ncl.add(sf4);
- assertTrue(ncl.contains(sf4));
- SequenceFeature sf5 = new SequenceFeature("type", "desc", 4, 5, 2f,
- "group");
- SequenceFeature sf6 = new SequenceFeature("type", "desc", 6, 8, 2f,
- "group");
- ncl.add(sf5);
- ncl.add(sf6);
- assertTrue(ncl.contains(sf5));
- assertTrue(ncl.contains(sf6));
- }
-
- @Test(groups = "Functional")
- public void testIsValid()
- {
- List<Range> ranges = new ArrayList<Range>();
- Range r1 = new Range(40, 50);
- ranges.add(r1);
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertTrue(ncl.isValid());
-
- Range r2 = new Range(42, 44);
- ncl.add(r2);
- assertTrue(ncl.isValid());
- Range r3 = new Range(46, 48);
- ncl.add(r3);
- assertTrue(ncl.isValid());
- Range r4 = new Range(43, 43);
- ncl.add(r4);
- assertTrue(ncl.isValid());
-
- assertEquals(ncl.toString(), "[40-50 [42-44 [43-43], 46-48]]");
- assertTrue(ncl.isValid());
-
- PA.setValue(r1, "start", 43);
- assertFalse(ncl.isValid()); // r2 not inside r1
- PA.setValue(r1, "start", 40);
- assertTrue(ncl.isValid());
-
- PA.setValue(r3, "start", 41);
- assertFalse(ncl.isValid()); // r3 should precede r2
- PA.setValue(r3, "start", 46);
- assertTrue(ncl.isValid());
-
- PA.setValue(r4, "start", 41);
- assertFalse(ncl.isValid()); // r4 not inside r2
- PA.setValue(r4, "start", 43);
- assertTrue(ncl.isValid());
-
- PA.setValue(r4, "start", 44);
- assertFalse(ncl.isValid()); // r4 has reverse range
- }
-
- @Test(groups = "Functional")
- public void testPrettyPrint()
- {
- /*
- * construct NCList from a list of ranges
- * they are sorted then assembled into NCList subregions
- * notice that 42-42 end up inside 41-46
- */
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(40, 50));
- ranges.add(new Range(45, 55));
- ranges.add(new Range(40, 45));
- ranges.add(new Range(41, 46));
- ranges.add(new Range(42, 42));
- ranges.add(new Range(42, 42));
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertTrue(ncl.isValid());
- assertEquals(ncl.toString(),
- "[40-50 [40-45], 41-46 [42-42 [42-42]], 45-55]");
- String expected = "40-50\n 40-45\n41-46\n 42-42\n 42-42\n45-55\n";
- assertEquals(ncl.prettyPrint(), expected);
-
- /*
- * repeat but now add ranges one at a time
- * notice that 42-42 end up inside 40-50 so we get
- * a different but equal valid NCList structure
- */
- ranges.clear();
- ncl = new NCList<Range>(ranges);
- ncl.add(new Range(40, 50));
- ncl.add(new Range(45, 55));
- ncl.add(new Range(40, 45));
- ncl.add(new Range(41, 46));
- ncl.add(new Range(42, 42));
- ncl.add(new Range(42, 42));
- assertTrue(ncl.isValid());
- assertEquals(ncl.toString(),
- "[40-50 [40-45 [42-42 [42-42]], 41-46], 45-55]");
- expected = "40-50\n 40-45\n 42-42\n 42-42\n 41-46\n45-55\n";
- assertEquals(ncl.prettyPrint(), expected);
- }
-
- /**
- * A test that shows different valid trees can be constructed from the same
- * set of ranges, depending on the order of construction
- */
- @Test(groups = "Functional")
- public void testConstructor_alternativeTrees()
- {
- List<Range> ranges = new ArrayList<Range>();
- ranges.add(new Range(10, 60));
- ranges.add(new Range(20, 30));
- ranges.add(new Range(40, 50));
-
- /*
- * constructor with greedy traversal of sorted ranges to build nested
- * containment lists results in 20-30 inside 10-60, 40-50 a sibling
- */
- NCList<Range> ncl = new NCList<Range>(ranges);
- assertEquals(ncl.toString(), "[10-60 [20-30], 40-50]");
- assertTrue(ncl.isValid());
-
- /*
- * adding ranges one at a time results in 40-50
- * a sibling of 20-30 inside 10-60
- */
- ncl = new NCList<Range>(new Range(10, 60));
- ncl.add(new Range(20, 30));
- ncl.add(new Range(40, 50));
- assertEquals(ncl.toString(), "[10-60 [20-30, 40-50]]");
- assertTrue(ncl.isValid());
- }
-}
+++ /dev/null
-package jalview.datamodel.features;
-
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertFalse;
-import static org.testng.Assert.assertTrue;
-
-import jalview.datamodel.Range;
-import jalview.datamodel.SequenceFeature;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import junit.extensions.PA;
-
-import org.testng.annotations.Test;
-
-public class NCNodeTest
-{
- @Test(groups = "Functional")
- public void testAdd()
- {
- Range r1 = new Range(10, 20);
- NCNode<Range> node = new NCNode<Range>(r1);
- assertEquals(node.getBegin(), 10);
- Range r2 = new Range(10, 15);
- node.add(r2);
-
- List<Range> contents = new ArrayList<Range>();
- node.getEntries(contents);
- assertEquals(contents.size(), 2);
- assertTrue(contents.contains(r1));
- assertTrue(contents.contains(r2));
- }
-
- @Test(
- groups = "Functional",
- expectedExceptions = { IllegalArgumentException.class })
- public void testAdd_invalidRangeStart()
- {
- Range r1 = new Range(10, 20);
- NCNode<Range> node = new NCNode<Range>(r1);
- assertEquals(node.getBegin(), 10);
- Range r2 = new Range(9, 15);
- node.add(r2);
- }
-
- @Test(
- groups = "Functional",
- expectedExceptions = { IllegalArgumentException.class })
- public void testAdd_invalidRangeEnd()
- {
- Range r1 = new Range(10, 20);
- NCNode<Range> node = new NCNode<Range>(r1);
- assertEquals(node.getBegin(), 10);
- Range r2 = new Range(12, 21);
- node.add(r2);
- }
-
- @Test(groups = "Functional")
- public void testGetEntries()
- {
- Range r1 = new Range(10, 20);
- NCNode<Range> node = new NCNode<Range>(r1);
- List<Range> entries = new ArrayList<Range>();
-
- node.getEntries(entries);
- assertEquals(entries.size(), 1);
- assertTrue(entries.contains(r1));
-
- // clearing the returned list does not affect the NCNode
- entries.clear();
- node.getEntries(entries);
- assertEquals(entries.size(), 1);
- assertTrue(entries.contains(r1));
-
- Range r2 = new Range(15, 18);
- node.add(r2);
- entries.clear();
- node.getEntries(entries);
- assertEquals(entries.size(), 2);
- assertTrue(entries.contains(r1));
- assertTrue(entries.contains(r2));
- }
-
- /**
- * Tests for the contains method (uses entry.equals() test)
- */
- @Test(groups = "Functional")
- public void testContains()
- {
- SequenceFeature sf1 = new SequenceFeature("type", "desc", 1, 10, 2f,
- "group");
- SequenceFeature sf2 = new SequenceFeature("type", "desc", 1, 10, 2f,
- "group");
- SequenceFeature sf3 = new SequenceFeature("type", "desc", 1, 10, 2f,
- "anothergroup");
- NCNode<SequenceFeature> node = new NCNode<SequenceFeature>(sf1);
-
- assertFalse(node.contains(null));
- assertTrue(node.contains(sf1));
- assertTrue(node.contains(sf2)); // sf1.equals(sf2)
- assertFalse(node.contains(sf3)); // !sf1.equals(sf3)
- }
-
- /**
- * Test method that checks for valid structure. Valid means that all
- * subregions (if any) lie within the root range, and that all subregions have
- * valid structure.
- */
- @Test(groups = "Functional")
- public void testIsValid()
- {
- Range r1 = new Range(10, 20);
- Range r2 = new Range(14, 15);
- Range r3 = new Range(16, 17);
- NCNode<Range> node = new NCNode<Range>(r1);
- node.add(r2);
- node.add(r3);
-
- /*
- * node has root range [10-20] and contains an
- * NCList of [14-15, 16-17]
- */
- assertTrue(node.isValid());
- PA.setValue(r1, "start", 15);
- assertFalse(node.isValid()); // r2 not within r1
- PA.setValue(r1, "start", 10);
- assertTrue(node.isValid());
- PA.setValue(r1, "end", 16);
- assertFalse(node.isValid()); // r3 not within r1
- PA.setValue(r1, "end", 20);
- assertTrue(node.isValid());
- PA.setValue(r3, "start", 12);
- assertFalse(node.isValid()); // r3 should precede r2
- }
-}
+++ /dev/null
-package jalview.datamodel.features;
-
-import static org.testng.Assert.assertEquals;
-
-import jalview.datamodel.ContiguousI;
-import jalview.datamodel.Range;
-
-import java.util.Comparator;
-
-import org.testng.annotations.Test;
-
-public class RangeComparatorTest
-{
-
- @Test(groups = "Functional")
- public void testCompare()
- {
- RangeComparator comp = new RangeComparator(true);
-
- // same position, same length
- assertEquals(comp.compare(10, 10, 20, 20), 0);
- // same position, len1 > len2
- assertEquals(comp.compare(10, 10, 20, 19), -1);
- // same position, len1 < len2
- assertEquals(comp.compare(10, 10, 20, 21), 1);
- // pos1 > pos2
- assertEquals(comp.compare(11, 10, 20, 20), 1);
- // pos1 < pos2
- assertEquals(comp.compare(10, 11, 20, 10), -1);
- }
-
- @Test(groups = "Functional")
- public void testCompare_byStart()
- {
- Comparator<ContiguousI> comp = RangeComparator.BY_START_POSITION;
-
- // same start position, same length
- assertEquals(comp.compare(new Range(10, 20), new Range(10, 20)), 0);
- // same start position, len1 > len2
- assertEquals(comp.compare(new Range(10, 20), new Range(10, 19)), -1);
- // same start position, len1 < len2
- assertEquals(comp.compare(new Range(10, 18), new Range(10, 20)), 1);
- // pos1 > pos2
- assertEquals(comp.compare(new Range(11, 20), new Range(10, 20)), 1);
- // pos1 < pos2
- assertEquals(comp.compare(new Range(10, 20), new Range(11, 20)), -1);
- }
-
- @Test(groups = "Functional")
- public void testCompare_byEnd()
- {
- Comparator<ContiguousI> comp = RangeComparator.BY_END_POSITION;
-
- // same end position, same length
- assertEquals(comp.compare(new Range(10, 20), new Range(10, 20)), 0);
- // same end position, len1 > len2
- assertEquals(comp.compare(new Range(10, 20), new Range(11, 20)), -1);
- // same end position, len1 < len2
- assertEquals(comp.compare(new Range(11, 20), new Range(10, 20)), 1);
- // end1 > end2
- assertEquals(comp.compare(new Range(10, 21), new Range(10, 20)), 1);
- // end1 < end2
- assertEquals(comp.compare(new Range(10, 20), new Range(10, 21)), -1);
- }
-}
// verify attributes string is updated with reverse complement
assertEquals("x=y,z;alleles=" + revcomp + ";a=b,c", sf.getAttributes());
}
-
- @Test(groups = "Functional")
- public void testSortFeatures()
- {
- SequenceFeature sf1 = new SequenceFeature("", "", 10, 15, 0f, null);
- SequenceFeature sf2 = new SequenceFeature("", "", 8, 12, 0f, null);
- SequenceFeature sf3 = new SequenceFeature("", "", 8, 13, 0f, null);
- SequenceFeature sf4 = new SequenceFeature("", "", 11, 11, 0f, null);
- List<SequenceFeature> sfs = Arrays.asList(new SequenceFeature[] { sf1,
- sf2, sf3, sf4 });
-
- // sort by start position ascending (forward strand)
- // sf2 and sf3 tie and should not be reordered by sorting
- SequenceFeatures.sortFeatures(sfs, true);
- assertSame(sfs.get(0), sf2);
- assertSame(sfs.get(1), sf3);
- assertSame(sfs.get(2), sf1);
- assertSame(sfs.get(3), sf4);
-
- // sort by end position descending (reverse strand)
- SequenceFeatures.sortFeatures(sfs, false);
- assertSame(sfs.get(0), sf1);
- assertSame(sfs.get(1), sf3);
- assertSame(sfs.get(2), sf2);
- assertSame(sfs.get(3), sf4);
- }
}
*/
package jalview.gui;
+import static org.junit.Assert.assertNotEquals;
import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertFalse;
import static org.testng.Assert.assertNotSame;
import jalview.datamodel.SequenceI;
import jalview.io.DataSourceType;
import jalview.io.FileLoader;
-import jalview.io.Jalview2xmlTests;
+import jalview.project.Jalview2xmlTests;
import jalview.renderer.ResidueShaderI;
import jalview.schemes.BuriedColourScheme;
import jalview.schemes.FeatureColour;
* seq1 feature in columns 1-5 is hidden
* seq2 feature in columns 6-10 is shown
*/
- FeatureColourI fc = new FeatureColour(Color.red, Color.blue, 0f, 10f);
+ FeatureColourI fc = new FeatureColour(null, Color.red, Color.blue, null,
+ 0f, 10f);
fc.setAboveThreshold(true);
fc.setThreshold(5f);
alignFrame.getFeatureRenderer().setColour("Metal", fc);
sp.valueChanged(22);
assertEquals(av2.getResidueShading().getConservationInc(), 22);
}
+
+ /**
+ * Verify that making a New View preserves the dataset reference for the
+ * alignment. Otherwise, see a 'duplicate jar entry' reference when trying to
+ * save alignments with multiple views, and codon mappings will not be shared
+ * across all panels in a split frame.
+ *
+ * @see Jalview2xmlTests#testStoreAndRecoverColourThresholds()
+ */
+ @Test(groups = "Functional")
+ public void testNewView_dsRefPreserved()
+ {
+ AlignViewport av = af.getViewport();
+ AlignmentI al = av.getAlignment();
+ AlignmentI original_ds = al.getDataset();
+ af.newView_actionPerformed(null);
+ assertNotEquals("New view didn't select the a new panel", av,
+ af.getViewport());
+ org.testng.Assert.assertEquals(original_ds,
+ af.getViewport().getAlignment().getDataset(),
+ "Dataset was not preserved in new view");
+ }
}
import static org.testng.AssertJUnit.assertEquals;
import static org.testng.AssertJUnit.assertFalse;
import static org.testng.AssertJUnit.assertNotNull;
+import static org.testng.AssertJUnit.assertNotSame;
import static org.testng.AssertJUnit.assertSame;
import static org.testng.AssertJUnit.assertTrue;
import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.Annotation;
-import jalview.datamodel.PDBEntry;
-import jalview.datamodel.PDBEntry.Type;
import jalview.datamodel.SearchResults;
import jalview.datamodel.SearchResultsI;
import jalview.datamodel.Sequence;
import jalview.datamodel.SequenceI;
import jalview.io.DataSourceType;
import jalview.io.FileLoader;
+import jalview.schemes.ClustalxColourScheme;
import jalview.schemes.ColourSchemeI;
import jalview.schemes.PIDColourScheme;
import jalview.structure.StructureSelectionManager;
AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
"examples/uniref50.fa", DataSourceType.FILE);
ColourSchemeI cs = new PIDColourScheme();
- af.getViewport().setGlobalColourScheme(cs);
- assertFalse(af.getViewport().getResidueShading()
+ AlignViewport viewport = af.getViewport();
+ viewport.setGlobalColourScheme(cs);
+ assertFalse(viewport.getResidueShading()
.conservationApplied());
+
+ /*
+ * JAL-3201 groups have their own ColourSchemeI instances
+ */
+ AlignmentI aln = viewport.getAlignment();
+ SequenceGroup sg1 = new SequenceGroup();
+ sg1.addSequence(aln.getSequenceAt(0), false);
+ sg1.addSequence(aln.getSequenceAt(2), false);
+ SequenceGroup sg2 = new SequenceGroup();
+ sg2.addSequence(aln.getSequenceAt(1), false);
+ sg2.addSequence(aln.getSequenceAt(3), false);
+ aln.addGroup(sg1);
+ aln.addGroup(sg2);
+ viewport.setColourAppliesToAllGroups(true);
+ viewport.setGlobalColourScheme(new ClustalxColourScheme());
+ ColourSchemeI cs0 = viewport.getGlobalColourScheme();
+ ColourSchemeI cs1 = sg1.getColourScheme();
+ ColourSchemeI cs2 = sg2.getColourScheme();
+ assertTrue(cs0 instanceof ClustalxColourScheme);
+ assertTrue(cs1 instanceof ClustalxColourScheme);
+ assertTrue(cs2 instanceof ClustalxColourScheme);
+ assertNotSame(cs0, cs1);
+ assertNotSame(cs0, cs2);
+ assertNotSame(cs1, cs2);
}
@Test(groups = { "Functional" })
--- /dev/null
+package jalview.gui;
+
+import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertNull;
+
+import jalview.datamodel.AlignmentAnnotation;
+import jalview.datamodel.Sequence;
+
+import org.testng.annotations.Test;
+
+public class AnnotationLabelsTest
+{
+ @Test(groups = "Functional")
+ public void testGetTooltip()
+ {
+ assertNull(AnnotationLabels.getTooltip(null));
+
+ /*
+ * simple description only
+ */
+ AlignmentAnnotation ann = new AlignmentAnnotation("thelabel", "thedesc",
+ null);
+ String expected = "<html>thedesc</html>";
+ assertEquals(AnnotationLabels.getTooltip(ann), expected);
+
+ /*
+ * description needing html encoding
+ * (no idea why '<' is encoded but '>' is not)
+ */
+ ann.description = "TCoffee scores < 56 and > 28";
+ expected = "<html>TCoffee scores < 56 and > 28</html>";
+ assertEquals(AnnotationLabels.getTooltip(ann), expected);
+
+ /*
+ * description already html formatted
+ */
+ ann.description = "<html>hello world</html>";
+ assertEquals(AnnotationLabels.getTooltip(ann), ann.description);
+
+ /*
+ * simple description and score
+ */
+ ann.description = "hello world";
+ ann.setScore(2.34d);
+ expected = "<html>hello world<br/> Score: 2.34</html>";
+ assertEquals(AnnotationLabels.getTooltip(ann), expected);
+
+ /*
+ * html description and score
+ */
+ ann.description = "<html>hello world</html>";
+ ann.setScore(2.34d);
+ expected = "<html>hello world<br/> Score: 2.34</html>";
+ assertEquals(AnnotationLabels.getTooltip(ann), expected);
+
+ /*
+ * score, no description
+ */
+ ann.description = " ";
+ assertEquals(AnnotationLabels.getTooltip(ann),
+ "<html> Score: 2.34</html>");
+ ann.description = null;
+ assertEquals(AnnotationLabels.getTooltip(ann),
+ "<html> Score: 2.34</html>");
+
+ /*
+ * sequenceref, simple description
+ */
+ ann.description = "Count < 12";
+ ann.sequenceRef = new Sequence("Seq1", "MLRIQST");
+ ann.hasScore = false;
+ ann.score = Double.NaN;
+ expected = "<html>Seq1 : Count < 12</html>";
+ assertEquals(AnnotationLabels.getTooltip(ann), expected);
+
+ /*
+ * sequenceref, html description, score
+ */
+ ann.description = "<html>Score < 4.8</html>";
+ ann.sequenceRef = new Sequence("Seq1", "MLRIQST");
+ ann.setScore(-2.1D);
+ expected = "<html>Seq1 : Score < 4.8<br/> Score: -2.1</html>";
+ assertEquals(AnnotationLabels.getTooltip(ann), expected);
+
+ /*
+ * no score, null description
+ */
+ ann.description = null;
+ ann.hasScore = false;
+ ann.score = Double.NaN;
+ assertNull(AnnotationLabels.getTooltip(ann));
+
+ /*
+ * no score, empty description, sequenceRef
+ */
+ ann.description = "";
+ assertEquals(AnnotationLabels.getTooltip(ann), "<html>Seq1 :</html>");
+
+ /*
+ * no score, empty description, no sequenceRef
+ */
+ ann.sequenceRef = null;
+ assertNull(AnnotationLabels.getTooltip(ann));
+ }
+
+ @Test(groups = "Functional")
+ public void testGetStatusMessage()
+ {
+ assertNull(AnnotationLabels.getStatusMessage(null, null));
+
+ /*
+ * simple label
+ */
+ AlignmentAnnotation aa = new AlignmentAnnotation("IUPredWS Short",
+ "Protein disorder", null);
+ assertEquals(AnnotationLabels.getStatusMessage(aa, null),
+ "IUPredWS Short");
+
+ /*
+ * with sequence ref
+ */
+ aa.setSequenceRef(new Sequence("FER_CAPAA", "MIGRKQL"));
+ assertEquals(AnnotationLabels.getStatusMessage(aa, null),
+ "FER_CAPAA : IUPredWS Short");
+
+ /*
+ * with graph group (degenerate, one annotation only)
+ */
+ aa.graphGroup = 1;
+ AlignmentAnnotation aa2 = new AlignmentAnnotation("IUPredWS Long",
+ "Protein disorder", null);
+ assertEquals(
+ AnnotationLabels.getStatusMessage(aa, new AlignmentAnnotation[]
+ { aa, aa2 }), "FER_CAPAA : IUPredWS Short");
+
+ /*
+ * graph group with two members; note labels are appended in
+ * reverse order (matching rendering order on screen)
+ */
+ aa2.graphGroup = 1;
+ assertEquals(
+ AnnotationLabels.getStatusMessage(aa, new AlignmentAnnotation[]
+ { aa, aa2 }), "FER_CAPAA : IUPredWS Long, IUPredWS Short");
+
+ /*
+ * graph group with no sequence ref
+ */
+ aa.sequenceRef = null;
+ assertEquals(
+ AnnotationLabels.getStatusMessage(aa, new AlignmentAnnotation[]
+ { aa, aa2 }), "IUPredWS Long, IUPredWS Short");
+ }
+}
--- /dev/null
+package jalview.gui;
+
+import static org.testng.Assert.assertEquals;
+
+import jalview.datamodel.AlignmentAnnotation;
+
+import org.testng.annotations.Test;
+
+public class AnnotationPanelTest
+{
+
+ @Test(groups = "Functional")
+ public void testGetRowIndex()
+ {
+ assertEquals(AnnotationPanel.getRowIndex(0, null), -1);
+
+ AlignmentAnnotation[] anns = new AlignmentAnnotation[] {};
+ assertEquals(AnnotationPanel.getRowIndex(0, anns), -1);
+
+ AlignmentAnnotation ann1 = new AlignmentAnnotation(null, null, null);
+ AlignmentAnnotation ann2 = new AlignmentAnnotation(null, null, null);
+ AlignmentAnnotation ann3 = new AlignmentAnnotation(null, null, null);
+ ann1.visible = true;
+ ann2.visible = true;
+ ann3.visible = true;
+ ann1.height = 10;
+ ann2.height = 20;
+ ann3.height = 30;
+ anns = new AlignmentAnnotation[] { ann1, ann2, ann3 };
+
+ assertEquals(AnnotationPanel.getRowIndex(0, anns), 0);
+ assertEquals(AnnotationPanel.getRowIndex(9, anns), 0);
+ assertEquals(AnnotationPanel.getRowIndex(10, anns), 1);
+ assertEquals(AnnotationPanel.getRowIndex(29, anns), 1);
+ assertEquals(AnnotationPanel.getRowIndex(30, anns), 2);
+ assertEquals(AnnotationPanel.getRowIndex(59, anns), 2);
+ assertEquals(AnnotationPanel.getRowIndex(60, anns), -1);
+
+ ann2.visible = false;
+ assertEquals(AnnotationPanel.getRowIndex(0, anns), 0);
+ assertEquals(AnnotationPanel.getRowIndex(9, anns), 0);
+ assertEquals(AnnotationPanel.getRowIndex(10, anns), 2);
+ assertEquals(AnnotationPanel.getRowIndex(39, anns), 2);
+ assertEquals(AnnotationPanel.getRowIndex(40, anns), -1);
+
+ ann1.visible = false;
+ assertEquals(AnnotationPanel.getRowIndex(0, anns), 2);
+ assertEquals(AnnotationPanel.getRowIndex(29, anns), 2);
+ assertEquals(AnnotationPanel.getRowIndex(30, anns), -1);
+ }
+}
--- /dev/null
+package jalview.gui;
+
+import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertSame;
+
+import jalview.analysis.scoremodels.ScoreModels;
+import jalview.api.analysis.ScoreModelI;
+import jalview.bin.Cache;
+
+import java.util.List;
+
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
+
+public class CalculationChooserTest
+{
+ @BeforeClass(alwaysRun = true)
+ public void setUp()
+ {
+ // read-only Jalview properties
+ Cache.loadProperties("test/jalview/io/testProps.jvprops");
+ Cache.applicationProperties.setProperty("BLOSUM62_PCA_FOR_NUCLEOTIDE",
+ Boolean.FALSE.toString());
+ }
+
+ @Test(groups = "Functional")
+ public void testGetApplicableScoreModels()
+ {
+ ScoreModels models = ScoreModels.getInstance();
+ ScoreModelI blosum62 = models.getBlosum62();
+ ScoreModelI pam250 = models.getPam250();
+ ScoreModelI dna = models.getDefaultModel(false);
+
+ /*
+ * peptide models for PCA
+ */
+ List<ScoreModelI> filtered = CalculationChooser
+ .getApplicableScoreModels(false, true);
+ assertEquals(filtered.size(), 4);
+ assertSame(filtered.get(0), blosum62);
+ assertSame(filtered.get(1), pam250);
+ assertEquals(filtered.get(2).getName(), "PID");
+ assertEquals(filtered.get(3).getName(), "Sequence Feature Similarity");
+
+ /*
+ * peptide models for Tree are the same
+ */
+ filtered = CalculationChooser.getApplicableScoreModels(false, false);
+ assertEquals(filtered.size(), 4);
+ assertSame(filtered.get(0), blosum62);
+ assertSame(filtered.get(1), pam250);
+ assertEquals(filtered.get(2).getName(), "PID");
+ assertEquals(filtered.get(3).getName(), "Sequence Feature Similarity");
+
+ /*
+ * nucleotide models for PCA
+ */
+ filtered = CalculationChooser.getApplicableScoreModels(true, true);
+ assertEquals(filtered.size(), 3);
+ assertSame(filtered.get(0), dna);
+ assertEquals(filtered.get(1).getName(), "PID");
+ assertEquals(filtered.get(2).getName(), "Sequence Feature Similarity");
+
+ /*
+ * nucleotide models for Tree are the same
+ */
+ filtered = CalculationChooser.getApplicableScoreModels(true, false);
+ assertEquals(filtered.size(), 3);
+ assertSame(filtered.get(0), dna);
+ assertEquals(filtered.get(1).getName(), "PID");
+ assertEquals(filtered.get(2).getName(), "Sequence Feature Similarity");
+
+ /*
+ * enable inclusion of BLOSUM62 for nucleotide PCA (JAL-2962)
+ */
+ Cache.applicationProperties.setProperty("BLOSUM62_PCA_FOR_NUCLEOTIDE",
+ Boolean.TRUE.toString());
+
+ /*
+ * nucleotide models for Tree are unchanged
+ */
+ filtered = CalculationChooser.getApplicableScoreModels(true, false);
+ assertEquals(filtered.size(), 3);
+ assertSame(filtered.get(0), dna);
+ assertEquals(filtered.get(1).getName(), "PID");
+ assertEquals(filtered.get(2).getName(), "Sequence Feature Similarity");
+
+ /*
+ * nucleotide models for PCA add BLOSUM62 as last option
+ */
+ filtered = CalculationChooser.getApplicableScoreModels(true, true);
+ assertEquals(filtered.size(), 4);
+ assertSame(filtered.get(0), dna);
+ assertEquals(filtered.get(1).getName(), "PID");
+ assertEquals(filtered.get(2).getName(), "Sequence Feature Similarity");
+ assertSame(filtered.get(3), blosum62);
+ }
+}
--- /dev/null
+package jalview.gui;
+
+import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertFalse;
+import static org.testng.Assert.assertSame;
+import static org.testng.Assert.assertTrue;
+
+import jalview.bin.Cache;
+import jalview.datamodel.Alignment;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceI;
+import jalview.schemes.ClustalxColourScheme;
+import jalview.schemes.ColourSchemeI;
+import jalview.schemes.ColourSchemes;
+import jalview.schemes.NucleotideColourScheme;
+import jalview.schemes.PIDColourScheme;
+import jalview.schemes.ResidueColourScheme;
+import jalview.util.MessageManager;
+
+import java.util.Enumeration;
+import java.util.Iterator;
+
+import javax.swing.AbstractButton;
+import javax.swing.ButtonGroup;
+import javax.swing.JMenu;
+import javax.swing.JMenuItem;
+
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
+
+public class ColourMenuHelperTest
+{
+ /**
+ * Use a properties file with a user-defined colour scheme
+ */
+ @BeforeClass(alwaysRun = true)
+ public void setUp()
+ {
+ Cache.loadProperties("test/jalview/io/testProps.jvprops");
+ }
+
+ @Test(groups = "Functional")
+ public void testAddMenuItems_peptide()
+ {
+ SequenceI s1 = new Sequence("s1", "KFRQSILM");
+ AlignmentI al = new Alignment(new SequenceI[] { s1 });
+ JMenu menu = new JMenu();
+
+ ButtonGroup bg = ColourMenuHelper.addMenuItems(menu, null, al, false);
+ Enumeration<AbstractButton> bgElements = bg.getElements();
+
+ /*
+ * first entry is 'No Colour' option
+ */
+ JMenuItem item = menu.getItem(0);
+ assertEquals(item.getName(), ResidueColourScheme.NONE);
+ assertEquals(item.getText(), MessageManager.getString("label.none"));
+ AbstractButton bgItem = bgElements.nextElement();
+ assertSame(bgItem, item);
+
+ /*
+ * check that each registered colour scheme is in the menu,
+ * and in the button group;
+ * nucleotide-only schemes should be disabled menu items
+ */
+ Iterator<ColourSchemeI> colourSchemes = ColourSchemes.getInstance()
+ .getColourSchemes().iterator();
+ final int items = menu.getItemCount();
+ for (int i = 1; i < items; i++)
+ {
+ item = menu.getItem(i);
+ bgItem = bgElements.nextElement();
+ assertSame(bgItem, item);
+ ColourSchemeI cs = colourSchemes.next();
+ String name = cs.getSchemeName();
+ assertEquals(item.getName(), name);
+ boolean enabled = item.isEnabled();
+ assertEquals(enabled, cs.isApplicableTo(al));
+ if (cs instanceof NucleotideColourScheme) // nucleotide only
+ {
+ assertFalse(enabled);
+ }
+ if (cs instanceof ClustalxColourScheme) // peptide only
+ {
+ assertTrue(enabled);
+ }
+ if (cs instanceof PIDColourScheme) // nucleotide or peptide
+ {
+ assertTrue(enabled);
+ }
+
+ /*
+ * check i18n for display name
+ */
+ String label = MessageManager.getStringOrReturn("label.colourScheme_",
+ name.toLowerCase().replace(" ", "_"));
+ assertEquals(item.getText(), label);
+ }
+
+ /*
+ * check nothing left over
+ */
+ assertFalse(colourSchemes.hasNext());
+ assertFalse(bgElements.hasMoreElements());
+ }
+
+ @Test(groups = "Functional")
+ public void testAddMenuItems_nucleotide()
+ {
+ SequenceI s1 = new Sequence("s1", "GAATAATCCATAACAG");
+ AlignmentI al = new Alignment(new SequenceI[] { s1 });
+ JMenu menu = new JMenu();
+ AlignFrame af = new AlignFrame(al, 500, 500);
+
+ /*
+ * menu for SequenceGroup excludes 'User Defined Colour'
+ */
+ PopupMenu popup = new PopupMenu(af.alignPanel, s1, null);
+ ButtonGroup bg = ColourMenuHelper.addMenuItems(menu, popup, al, false);
+ Enumeration<AbstractButton> bgElements = bg.getElements();
+
+ /*
+ * first entry is 'No Colour' option
+ */
+ JMenuItem item = menu.getItem(0);
+ assertEquals(item.getName(), ResidueColourScheme.NONE);
+ assertEquals(item.getText(), MessageManager.getString("label.none"));
+ AbstractButton bgItem = bgElements.nextElement();
+ assertSame(bgItem, item);
+
+ /*
+ * check that each registered colour scheme is in the menu,
+ * and in the button group;
+ * nucleotide-only schemes should be disabled menu items
+ */
+ Iterator<ColourSchemeI> colourSchemes = ColourSchemes.getInstance()
+ .getColourSchemes().iterator();
+ final int items = menu.getItemCount();
+ for (int i = 1; i < items; i++)
+ {
+ item = menu.getItem(i);
+ bgItem = bgElements.nextElement();
+ assertSame(bgItem, item);
+ ColourSchemeI cs = colourSchemes.next();
+ String name = cs.getSchemeName();
+ assertEquals(item.getName(), name);
+ boolean enabled = item.isEnabled();
+ assertEquals(enabled, cs.isApplicableTo(al));
+ if (cs instanceof NucleotideColourScheme) // nucleotide only
+ {
+ assertTrue(enabled);
+ }
+ if (cs instanceof ClustalxColourScheme) // peptide only
+ {
+ assertFalse(enabled);
+ }
+ if (cs instanceof PIDColourScheme) // nucleotide or peptide
+ {
+ assertTrue(enabled);
+ }
+
+ /*
+ * check i18n for display name
+ */
+ String label = MessageManager.getStringOrReturn("label.colourScheme_",
+ name.toLowerCase().replace(" ", "_"));
+ assertEquals(item.getText(), label);
+ }
+
+ /*
+ * check nothing left over
+ */
+ assertFalse(colourSchemes.hasNext());
+ assertFalse(bgElements.hasMoreElements());
+ }
+
+ /**
+ * 'Simple only' mode constructs colour menu for structures
+ * <ul>
+ * <li>no 'No Colour' option</li>
+ * <li>only simple colour schemes (colour per residue)</li>
+ * </ul>
+ */
+ @Test(groups = "Functional")
+ public void testAddMenuItems_simpleOnly()
+ {
+ SequenceI s1 = new Sequence("s1", "KFRQSILM");
+ AlignmentI al = new Alignment(new SequenceI[] { s1 });
+ JMenu menu = new JMenu();
+
+ ButtonGroup bg = ColourMenuHelper.addMenuItems(menu, null, al, true);
+ Enumeration<AbstractButton> bgElements = bg.getElements();
+
+ /*
+ * check that only 'simple' colour schemes are included
+ */
+ Iterator<ColourSchemeI> colourSchemes = ColourSchemes.getInstance()
+ .getColourSchemes().iterator();
+ int i = 0;
+ while (colourSchemes.hasNext())
+ {
+ ColourSchemeI cs = colourSchemes.next();
+ if (!cs.isSimple())
+ {
+ continue;
+ }
+ JMenuItem item = menu.getItem(i++);
+ AbstractButton bgItem = bgElements.nextElement();
+ assertSame(bgItem, item);
+ }
+
+ /*
+ * check nothing left over
+ */
+ assertEquals(i, menu.getItemCount());
+ assertFalse(bgElements.hasMoreElements());
+ }
+
+ /*
+ * menu for AlignFrame includes 'User Defined Colour'
+ */
+ @Test(groups = "Functional")
+ public void testAddMenuItems_forAlignFrame()
+ {
+ SequenceI s1 = new Sequence("s1", "KFRQSILM");
+ AlignmentI al = new Alignment(new SequenceI[] { s1 });
+ AlignFrame af = new AlignFrame(al, 500, 500);
+ JMenu menu = new JMenu();
+
+ ButtonGroup bg = ColourMenuHelper.addMenuItems(menu, af, al, false);
+ Enumeration<AbstractButton> bgElements = bg.getElements();
+
+ /*
+ * check that each registered colour scheme is in the menu,
+ * (skipping over No Colour which is the first menu item),
+ * and in the button group
+ */
+ bgElements.nextElement(); // skip No Colour
+ Iterator<ColourSchemeI> colourSchemes = ColourSchemes.getInstance()
+ .getColourSchemes().iterator();
+ final int items = menu.getItemCount();
+ for (int i = 1; i < items - 1; i++)
+ {
+ JMenuItem item = menu.getItem(i);
+ AbstractButton bgItem = bgElements.nextElement();
+ assertSame(bgItem, item);
+ ColourSchemeI cs = colourSchemes.next();
+ assertEquals(item.getName(), cs.getSchemeName());
+ }
+
+ /*
+ * check menu also has User Defined Colour
+ */
+ assertFalse(colourSchemes.hasNext());
+ JMenuItem item = menu.getItem(items - 1);
+ AbstractButton bgItem = bgElements.nextElement();
+ assertSame(bgItem, item);
+ assertEquals(item.getName(), ResidueColourScheme.USER_DEFINED_MENU);
+ assertEquals(item.getText(),
+ MessageManager.getString("action.user_defined"));
+ }
+}
fr.setColour("type2", byLabel);
// type3: by score above threshold
- FeatureColourI byScore = new FeatureColour(Color.BLACK, Color.BLUE, 1,
- 10);
+ FeatureColourI byScore = new FeatureColour(null, Color.BLACK,
+ Color.BLUE, null, 1, 10);
byScore.setAboveThreshold(true);
byScore.setThreshold(2f);
fr.setColour("type3", byScore);
fr.setColour("type4", byAF);
// type5: by attribute CSQ:PolyPhen below threshold
- FeatureColourI byPolyPhen = new FeatureColour(Color.BLACK, Color.BLUE,
- 1, 10);
+ FeatureColourI byPolyPhen = new FeatureColour(null, Color.BLACK,
+ Color.BLUE, null, 1, 10);
byPolyPhen.setBelowThreshold(true);
byPolyPhen.setThreshold(3f);
byPolyPhen.setAttributeName("CSQ", "PolyPhen");
/*
* graduated colour with threshold is html-encoded
*/
- fc = new FeatureColour(Color.red, Color.blue, 2f, 10f);
+ fc = new FeatureColour(null, Color.red, Color.blue, null, 2f, 10f);
fc.setBelowThreshold(true);
fc.setThreshold(4f);
assertEquals(FeatureSettings.getColorTooltip(fc, false),
assertEquals(PA.getValue(testee, "wrappedVisibleWidths"), 3);
/*
- * reduce canvas height by 1 pixel - should not be enough height
- * to draw 3 widths
+ * reduce canvas height by 1 pixel
+ * - should not be enough height to draw 3 widths
*/
canvasHeight -= 1;
testee.calculateWrappedGeometry(canvasWidth, canvasHeight);
canvasWidth += 8;
wrappedWidth = testee.calculateWrappedGeometry(canvasWidth,
canvasHeight);
- assertEquals(wrappedWidth, 27);
+ assertEquals(wrappedWidth, 27); // 8px not enough
canvasWidth += 1;
wrappedWidth = testee.calculateWrappedGeometry(canvasWidth,
canvasHeight);
- assertEquals(wrappedWidth, 28);
+ assertEquals(wrappedWidth, 28); // 9px is enough
/*
* now West but not East scale - lose 39 pixels or 4 columns
canvasWidth += 2;
wrappedWidth = testee.calculateWrappedGeometry(canvasWidth,
canvasHeight);
- assertEquals(wrappedWidth, 24);
+ assertEquals(wrappedWidth, 24); // 2px not enough
canvasWidth += 1;
wrappedWidth = testee.calculateWrappedGeometry(canvasWidth,
canvasHeight);
- assertEquals(wrappedWidth, 25);
+ assertEquals(wrappedWidth, 25); // 3px is enough
/*
* turn off scales left and right, make width exactly 157 columns
2 * charHeight);
int repeatingHeight = (int) PA.getValue(testee, "wrappedRepeatHeightPx");
assertEquals(repeatingHeight, charHeight * (2 + al.getHeight())
- + annotationHeight);
+ + SeqCanvas.SEQS_ANNOTATION_GAP + annotationHeight);
assertEquals(PA.getValue(testee, "wrappedVisibleWidths"), 1);
/*
- * repeat height is 17 * (2 + 15) = 289 + annotationHeight = 507
- * make canvas height 2 * 289 + 3 * charHeight so just enough to
- * draw 2 widths and the first sequence of a third
+ * repeat height is 17 * (2 + 15) = 289 + 3 + annotationHeight = 510
+ * make canvas height 2 of these plus 3 charHeights
+ * so just enough to draw 2 widths, gap + scale + the first sequence of a third
*/
- canvasHeight = charHeight * (17 * 2 + 3) + 2 * annotationHeight;
+ canvasHeight = charHeight * (17 * 2 + 3)
+ + 2 * (annotationHeight + SeqCanvas.SEQS_ANNOTATION_GAP);
testee.calculateWrappedGeometry(canvasWidth, canvasHeight);
assertEquals(PA.getValue(testee, "wrappedVisibleWidths"), 3);
* reduce height to enough for 2 widths and not quite a third
* i.e. two repeating heights + spacer + sequence - 1 pixel
*/
- canvasHeight = charHeight * (16 * 2 + 2) + 2 * annotationHeight - 1;
+ canvasHeight = charHeight * (16 * 2 + 2)
+ + 2 * (annotationHeight + SeqCanvas.SEQS_ANNOTATION_GAP) - 1;
testee.calculateWrappedGeometry(canvasWidth, canvasHeight);
assertEquals(PA.getValue(testee, "wrappedVisibleWidths"), 2);
package jalview.gui;
import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertNull;
+import static org.testng.Assert.assertTrue;
+import jalview.api.AlignViewportI;
+import jalview.bin.Cache;
+import jalview.bin.Jalview;
+import jalview.commands.EditCommand;
+import jalview.commands.EditCommand.Action;
+import jalview.commands.EditCommand.Edit;
import jalview.datamodel.Alignment;
+import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AlignmentI;
import jalview.datamodel.Sequence;
import jalview.datamodel.SequenceI;
+import jalview.gui.SeqPanel.MousePos;
+import jalview.io.DataSourceType;
+import jalview.io.FileLoader;
+import jalview.util.MessageManager;
+import java.awt.Event;
+import java.awt.EventQueue;
+import java.awt.event.MouseEvent;
+import java.lang.reflect.InvocationTargetException;
+
+import javax.swing.JLabel;
+
+import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
+import junit.extensions.PA;
+
public class SeqPanelTest
{
AlignFrame af;
assertEquals(
alignFrame.alignPanel.getSeqPanel().setStatusMessage(
visAl.getSequenceAt(1), 1, 1), 2);
- assertEquals(alignFrame.statusBar.getText(),
+ assertEquals(((JLabel) PA.getValue(alignFrame, "statusBar")).getText(),
"Sequence 2 ID: Seq2 Residue: ALA (2)");
assertEquals(
alignFrame.alignPanel.getSeqPanel().setStatusMessage(
visAl.getSequenceAt(1), 4, 1), 3);
- assertEquals(alignFrame.statusBar.getText(),
+ assertEquals(((JLabel) PA.getValue(alignFrame, "statusBar")).getText(),
"Sequence 2 ID: Seq2 Residue: GLU (3)");
// no status message at a gap, returns next residue position to the right
assertEquals(
alignFrame.alignPanel.getSeqPanel().setStatusMessage(
visAl.getSequenceAt(1), 2, 1), 3);
- assertEquals(alignFrame.statusBar.getText(), "Sequence 2 ID: Seq2");
+ assertEquals(((JLabel) PA.getValue(alignFrame, "statusBar")).getText(),
+ "Sequence 2 ID: Seq2");
assertEquals(
alignFrame.alignPanel.getSeqPanel().setStatusMessage(
visAl.getSequenceAt(1), 3, 1), 3);
- assertEquals(alignFrame.statusBar.getText(), "Sequence 2 ID: Seq2");
+ assertEquals(((JLabel) PA.getValue(alignFrame, "statusBar")).getText(),
+ "Sequence 2 ID: Seq2");
}
@Test(groups = "Functional")
assertEquals(
alignFrame.alignPanel.getSeqPanel().setStatusMessage(
visAl.getSequenceAt(1), 1, 1), 2);
- assertEquals(alignFrame.statusBar.getText(),
+ assertEquals(((JLabel) PA.getValue(alignFrame, "statusBar")).getText(),
"Sequence 2 ID: Seq2 Residue: B (2)");
}
+
+ @Test(groups = "Functional")
+ public void testGetEditStatusMessage()
+ {
+ assertNull(SeqPanel.getEditStatusMessage(null));
+
+ EditCommand edit = new EditCommand(); // empty
+ assertNull(SeqPanel.getEditStatusMessage(edit));
+
+ SequenceI[] seqs = new SequenceI[] { new Sequence("a", "b") };
+
+ // 1 gap
+ edit.addEdit(edit.new Edit(Action.INSERT_GAP, seqs, 1, 1, '-'));
+ String expected = MessageManager.formatMessage("label.insert_gap", "1");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+
+ // 3 more gaps makes +4
+ edit.addEdit(edit.new Edit(Action.INSERT_GAP, seqs, 1, 3, '-'));
+ expected = MessageManager.formatMessage("label.insert_gaps", "4");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+
+ // 2 deletes makes + 2
+ edit.addEdit(edit.new Edit(Action.DELETE_GAP, seqs, 1, 2, '-'));
+ expected = MessageManager.formatMessage("label.insert_gaps", "2");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+
+ // 2 more deletes makes 0 - no text
+ edit.addEdit(edit.new Edit(Action.DELETE_GAP, seqs, 1, 2, '-'));
+ assertNull(SeqPanel.getEditStatusMessage(edit));
+
+ // 1 more delete makes 1 delete
+ edit.addEdit(edit.new Edit(Action.DELETE_GAP, seqs, 1, 1, '-'));
+ expected = MessageManager.formatMessage("label.delete_gap", "1");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+
+ // 1 more delete makes 2 deletes
+ edit.addEdit(edit.new Edit(Action.DELETE_GAP, seqs, 1, 1, '-'));
+ expected = MessageManager.formatMessage("label.delete_gaps", "2");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+ }
+
+ /**
+ * Tests that simulate 'locked editing', where an inserted gap is balanced by
+ * a gap deletion in the selection group, and vice versa
+ */
+ @Test(groups = "Functional")
+ public void testGetEditStatusMessage_lockedEditing()
+ {
+ EditCommand edit = new EditCommand(); // empty
+ SequenceI[] seqs = new SequenceI[] { new Sequence("a", "b") };
+
+ // 1 gap inserted, balanced by 1 delete
+ Edit e1 = edit.new Edit(Action.INSERT_GAP, seqs, 1, 1, '-');
+ edit.addEdit(e1);
+ Edit e2 = edit.new Edit(Action.DELETE_GAP, seqs, 5, 1, '-');
+ e2.setSystemGenerated(true);
+ edit.addEdit(e2);
+ String expected = MessageManager.formatMessage("label.insert_gap", "1");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+
+ // 2 more gaps makes +3
+ Edit e3 = edit.new Edit(Action.INSERT_GAP, seqs, 1, 2, '-');
+ edit.addEdit(e3);
+ Edit e4 = edit.new Edit(Action.DELETE_GAP, seqs, 5, 2, '-');
+ e4.setSystemGenerated(true);
+ edit.addEdit(e4);
+ expected = MessageManager.formatMessage("label.insert_gaps", "3");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+
+ // 2 deletes makes + 1
+ Edit e5 = edit.new Edit(Action.DELETE_GAP, seqs, 1, 2, '-');
+ edit.addEdit(e5);
+ Edit e6 = edit.new Edit(Action.INSERT_GAP, seqs, 5, 2, '-');
+ e6.setSystemGenerated(true);
+ edit.addEdit(e6);
+ expected = MessageManager.formatMessage("label.insert_gap", "1");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+
+ // 1 more delete makes 0 - no text
+ Edit e7 = edit.new Edit(Action.DELETE_GAP, seqs, 1, 1, '-');
+ edit.addEdit(e7);
+ Edit e8 = edit.new Edit(Action.INSERT_GAP, seqs, 5, 1, '-');
+ e8.setSystemGenerated(true);
+ edit.addEdit(e8);
+ expected = MessageManager.formatMessage("label.insert_gaps", "2");
+ assertNull(SeqPanel.getEditStatusMessage(edit));
+
+ // 1 more delete makes 1 delete
+ Edit e9 = edit.new Edit(Action.DELETE_GAP, seqs, 1, 1, '-');
+ edit.addEdit(e9);
+ Edit e10 = edit.new Edit(Action.INSERT_GAP, seqs, 5, 1, '-');
+ e10.setSystemGenerated(true);
+ edit.addEdit(e10);
+ expected = MessageManager.formatMessage("label.delete_gap", "1");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+
+ // 2 more deletes makes 3 deletes
+ Edit e11 = edit.new Edit(Action.DELETE_GAP, seqs, 1, 2, '-');
+ edit.addEdit(e11);
+ Edit e12 = edit.new Edit(Action.INSERT_GAP, seqs, 5, 2, '-');
+ e12.setSystemGenerated(true);
+ edit.addEdit(e12);
+ expected = MessageManager.formatMessage("label.delete_gaps", "3");
+ assertEquals(SeqPanel.getEditStatusMessage(edit), expected);
+ }
+
+ public void testFindMousePosition_unwrapped()
+ {
+ String seqData = ">Seq1\nAACDE\n>Seq2\nAA--E\n";
+ AlignFrame alignFrame = new FileLoader().LoadFileWaitTillLoaded(seqData,
+ DataSourceType.PASTE);
+ AlignViewportI av = alignFrame.getViewport();
+ av.setShowAnnotation(true);
+ av.setWrapAlignment(false);
+ final int charHeight = av.getCharHeight();
+ final int charWidth = av.getCharWidth();
+ // sanity checks:
+ assertTrue(charHeight > 0);
+ assertTrue(charWidth > 0);
+ assertTrue(alignFrame.alignPanel.getSeqPanel().getWidth() > 0);
+
+ SeqPanel testee = alignFrame.alignPanel.getSeqPanel();
+ int x = 0;
+ int y = 0;
+
+ /*
+ * mouse at top left of unwrapped panel
+ */
+ MouseEvent evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y,
+ 0, 0, 0, false, 0);
+ MousePos pos = testee.findMousePosition(evt);
+ assertEquals(pos.column, 0);
+ assertEquals(pos.seqIndex, 0);
+ assertEquals(pos.annotationIndex, -1);
+ }
+
+ @AfterMethod(alwaysRun = true)
+ public void tearDown()
+ {
+ Desktop.instance.closeAll_actionPerformed(null);
+ }
+
+ @Test(groups = "Functional")
+ public void testFindMousePosition_wrapped_annotations()
+ {
+ Cache.applicationProperties.setProperty("SHOW_ANNOTATIONS", "true");
+ Cache.applicationProperties.setProperty("WRAP_ALIGNMENT", "true");
+ AlignFrame alignFrame = new FileLoader().LoadFileWaitTillLoaded(
+ "examples/uniref50.fa", DataSourceType.FILE);
+ AlignViewportI av = alignFrame.getViewport();
+ av.setScaleAboveWrapped(false);
+ av.setScaleLeftWrapped(false);
+ av.setScaleRightWrapped(false);
+ alignFrame.alignPanel.paintAlignment(false, false);
+ waitForSwing(); // for Swing thread
+
+ final int charHeight = av.getCharHeight();
+ final int charWidth = av.getCharWidth();
+ final int alignmentHeight = av.getAlignment().getHeight();
+
+ // sanity checks:
+ assertTrue(charHeight > 0);
+ assertTrue(charWidth > 0);
+ assertTrue(alignFrame.alignPanel.getSeqPanel().getWidth() > 0);
+
+ SeqPanel testee = alignFrame.alignPanel.getSeqPanel();
+ int x = 0;
+ int y = 0;
+
+ /*
+ * mouse at top left of wrapped panel; there is a gap of charHeight
+ * above the alignment
+ */
+ MouseEvent evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y,
+ 0, 0, 0, false, 0);
+ MousePos pos = testee.findMousePosition(evt);
+ assertEquals(pos.column, 0);
+ assertEquals(pos.seqIndex, -1); // above sequences
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of gap above
+ */
+ y = charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor over top of first sequence
+ */
+ y = charHeight;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 0);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of first sequence
+ */
+ y = 2 * charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 0);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at top of second sequence
+ */
+ y = 2 * charHeight;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of second sequence
+ */
+ y = 3 * charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of last sequence
+ */
+ y = charHeight * (1 + alignmentHeight) - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor below sequences, in 3-pixel gap above annotations
+ * method reports index of nearest sequence above
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor still in the gap above annotations, now at the bottom of it
+ */
+ y += SeqCanvas.SEQS_ANNOTATION_GAP - 1; // 3-1 = 2
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ AlignmentAnnotation[] annotationRows = av.getAlignment()
+ .getAlignmentAnnotation();
+ for (int n = 0; n < annotationRows.length; n++)
+ {
+ /*
+ * cursor at the top of the n'th annotation
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, n); // over n'th annotation
+
+ /*
+ * cursor at the bottom of the n'th annotation
+ */
+ y += annotationRows[n].height - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, n);
+ }
+
+ /*
+ * cursor in gap between wrapped widths
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of gap between wrapped widths
+ */
+ y += charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at top of first sequence, second wrapped width
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 0);
+ assertEquals(pos.annotationIndex, -1);
+ }
+
+ @Test(groups = "Functional")
+ public void testFindMousePosition_wrapped_scaleAbove()
+ {
+ Cache.applicationProperties.setProperty("SHOW_ANNOTATIONS", "true");
+ Cache.applicationProperties.setProperty("WRAP_ALIGNMENT", "true");
+ AlignFrame alignFrame = new FileLoader().LoadFileWaitTillLoaded(
+ "examples/uniref50.fa", DataSourceType.FILE);
+ AlignViewportI av = alignFrame.getViewport();
+ av.setScaleAboveWrapped(true);
+ av.setScaleLeftWrapped(false);
+ av.setScaleRightWrapped(false);
+ alignFrame.alignPanel.paintAlignment(false, false);
+ waitForSwing();
+
+ final int charHeight = av.getCharHeight();
+ final int charWidth = av.getCharWidth();
+ final int alignmentHeight = av.getAlignment().getHeight();
+
+ // sanity checks:
+ assertTrue(charHeight > 0);
+ assertTrue(charWidth > 0);
+ assertTrue(alignFrame.alignPanel.getSeqPanel().getWidth() > 0);
+
+ SeqPanel testee = alignFrame.alignPanel.getSeqPanel();
+ int x = 0;
+ int y = 0;
+
+ /*
+ * mouse at top left of wrapped panel; there is a gap of charHeight
+ * above the alignment
+ */
+ MouseEvent evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y,
+ 0, 0, 0, false, 0);
+ MousePos pos = testee.findMousePosition(evt);
+ assertEquals(pos.column, 0);
+ assertEquals(pos.seqIndex, -1); // above sequences
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of gap above
+ * two charHeights including scale panel
+ */
+ y = 2 * charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor over top of first sequence
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 0);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of first sequence
+ */
+ y += charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 0);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at top of second sequence
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of second sequence
+ */
+ y += charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of last sequence
+ * (scale + gap + sequences)
+ */
+ y = charHeight * (2 + alignmentHeight) - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor below sequences, in 3-pixel gap above annotations
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor still in the gap above annotations, now at the bottom of it
+ * method reports index of nearest sequence above
+ */
+ y += SeqCanvas.SEQS_ANNOTATION_GAP - 1; // 3-1 = 2
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ AlignmentAnnotation[] annotationRows = av.getAlignment().getAlignmentAnnotation();
+ for (int n = 0; n < annotationRows.length; n++)
+ {
+ /*
+ * cursor at the top of the n'th annotation
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, n); // over n'th annotation
+
+ /*
+ * cursor at the bottom of the n'th annotation
+ */
+ y += annotationRows[n].height - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, n);
+ }
+
+ /*
+ * cursor in gap between wrapped widths
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of gap between wrapped widths
+ */
+ y += charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at top of scale, second wrapped width
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of scale, second wrapped width
+ */
+ y += charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at top of first sequence, second wrapped width
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 0);
+ assertEquals(pos.annotationIndex, -1);
+ }
+
+ @Test(groups = "Functional")
+ public void testFindMousePosition_wrapped_noAnnotations()
+ {
+ Cache.applicationProperties.setProperty("SHOW_ANNOTATIONS", "false");
+ Cache.applicationProperties.setProperty("WRAP_ALIGNMENT", "true");
+ AlignFrame alignFrame = new FileLoader().LoadFileWaitTillLoaded(
+ "examples/uniref50.fa", DataSourceType.FILE);
+ AlignViewportI av = alignFrame.getViewport();
+ av.setScaleAboveWrapped(false);
+ av.setScaleLeftWrapped(false);
+ av.setScaleRightWrapped(false);
+ alignFrame.alignPanel.paintAlignment(false, false);
+ waitForSwing();
+
+ final int charHeight = av.getCharHeight();
+ final int charWidth = av.getCharWidth();
+ final int alignmentHeight = av.getAlignment().getHeight();
+
+ // sanity checks:
+ assertTrue(charHeight > 0);
+ assertTrue(charWidth > 0);
+ assertTrue(alignFrame.alignPanel.getSeqPanel().getWidth() > 0);
+
+ SeqPanel testee = alignFrame.alignPanel.getSeqPanel();
+ int x = 0;
+ int y = 0;
+
+ /*
+ * mouse at top left of wrapped panel; there is a gap of charHeight
+ * above the alignment
+ */
+ MouseEvent evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y,
+ 0, 0, 0, false, 0);
+ MousePos pos = testee.findMousePosition(evt);
+ assertEquals(pos.column, 0);
+ assertEquals(pos.seqIndex, -1); // above sequences
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor over top of first sequence
+ */
+ y = charHeight;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 0);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at bottom of last sequence
+ */
+ y = charHeight * (1 + alignmentHeight) - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, alignmentHeight - 1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor below sequences, at top of charHeight gap between widths
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor below sequences, at top of charHeight gap between widths
+ */
+ y += charHeight - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, -1);
+ assertEquals(pos.annotationIndex, -1);
+
+ /*
+ * cursor at the top of the first sequence, second width
+ */
+ y += 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, y, 0, 0, 0,
+ false, 0);
+ pos = testee.findMousePosition(evt);
+ assertEquals(pos.seqIndex, 0);
+ assertEquals(pos.annotationIndex, -1);
+ }
+
+ @Test(groups = "Functional")
+ public void testFindColumn_unwrapped()
+ {
+ Cache.applicationProperties.setProperty("WRAP_ALIGNMENT", "false");
+ AlignFrame alignFrame = new FileLoader().LoadFileWaitTillLoaded(
+ "examples/uniref50.fa", DataSourceType.FILE);
+ SeqPanel testee = alignFrame.alignPanel.getSeqPanel();
+ int x = 0;
+ final int charWidth = alignFrame.getViewport().getCharWidth();
+ assertTrue(charWidth > 0); // sanity check
+ assertEquals(alignFrame.getViewport().getRanges().getStartRes(), 0);
+
+ /*
+ * mouse at top left of unwrapped panel
+ */
+ MouseEvent evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0,
+ 0, 0, 0, false, 0);
+ assertEquals(testee.findColumn(evt), 0);
+
+ /*
+ * not quite one charWidth across
+ */
+ x = charWidth-1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0,
+ 0, 0, 0, false, 0);
+ assertEquals(testee.findColumn(evt), 0);
+
+ /*
+ * one charWidth across
+ */
+ x = charWidth;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0, 0, 0, 0,
+ false, 0);
+ assertEquals(testee.findColumn(evt), 1);
+
+ /*
+ * two charWidths across
+ */
+ x = 2 * charWidth;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0, 0, 0, 0,
+ false, 0);
+ assertEquals(testee.findColumn(evt), 2);
+
+ /*
+ * limited to last column of seqcanvas
+ */
+ x = 20000;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0, 0, 0, 0,
+ false, 0);
+ SeqCanvas seqCanvas = alignFrame.alignPanel.getSeqPanel().seqCanvas;
+ int w = seqCanvas.getWidth();
+ // limited to number of whole columns, base 0
+ int expected = w / charWidth - 1;
+ assertEquals(testee.findColumn(evt), expected);
+
+ /*
+ * hide columns 5-10 (base 1)
+ */
+ alignFrame.getViewport().hideColumns(4, 9);
+ x = 5 * charWidth + 2;
+ // x is in 6th visible column, absolute column 12, or 11 base 0
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0, 0, 0, 0,
+ false, 0);
+ assertEquals(testee.findColumn(evt), 11);
+ }
+
+ @Test(groups = "Functional")
+ public void testFindColumn_wrapped()
+ {
+ Cache.applicationProperties.setProperty("WRAP_ALIGNMENT", "true");
+ AlignFrame alignFrame = new FileLoader().LoadFileWaitTillLoaded(
+ "examples/uniref50.fa", DataSourceType.FILE);
+ AlignViewport av = alignFrame.getViewport();
+ av.setScaleAboveWrapped(false);
+ av.setScaleLeftWrapped(false);
+ av.setScaleRightWrapped(false);
+ alignFrame.alignPanel.paintAlignment(false, false);
+ // need to wait for repaint to finish!
+ waitForSwing();
+ SeqPanel testee = alignFrame.alignPanel.getSeqPanel();
+ int x = 0;
+ final int charWidth = av.getCharWidth();
+ assertTrue(charWidth > 0); // sanity check
+ assertEquals(av.getRanges().getStartRes(), 0);
+
+ /*
+ * mouse at top left of wrapped panel, no West (left) scale
+ */
+ MouseEvent evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0,
+ 0, 0, 0, false, 0);
+ assertEquals(testee.findColumn(evt), 0);
+
+ /*
+ * not quite one charWidth across
+ */
+ x = charWidth-1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0,
+ 0, 0, 0, false, 0);
+ assertEquals(testee.findColumn(evt), 0);
+
+ /*
+ * one charWidth across
+ */
+ x = charWidth;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0, 0, 0, 0,
+ false, 0);
+ assertEquals(testee.findColumn(evt), 1);
+
+ /*
+ * x over scale left (before drawn columns) results in -1
+ */
+ av.setScaleLeftWrapped(true);
+ alignFrame.alignPanel.paintAlignment(false, false);
+ waitForSwing();
+ SeqCanvas seqCanvas = testee.seqCanvas;
+ int labelWidth = (int) PA.getValue(seqCanvas, "labelWidthWest");
+ assertTrue(labelWidth > 0);
+ x = labelWidth - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0, 0, 0, 0,
+ false, 0);
+ assertEquals(testee.findColumn(evt), -1);
+
+ x = labelWidth;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0, 0, 0, 0,
+ false, 0);
+ assertEquals(testee.findColumn(evt), 0);
+
+ /*
+ * x over right edge of last residue (including scale left)
+ */
+ int residuesWide = av.getRanges().getViewportWidth();
+ assertTrue(residuesWide > 0);
+ x = labelWidth + charWidth * residuesWide - 1;
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0, 0, 0, 0,
+ false, 0);
+ assertEquals(testee.findColumn(evt), residuesWide - 1);
+
+ /*
+ * x over scale right (beyond drawn columns) results in -1
+ */
+ av.setScaleRightWrapped(true);
+ alignFrame.alignPanel.paintAlignment(false, false);
+ waitForSwing();
+ labelWidth = (int) PA.getValue(seqCanvas, "labelWidthEast");
+ assertTrue(labelWidth > 0);
+ int residuesWide2 = av.getRanges().getViewportWidth();
+ assertTrue(residuesWide2 > 0);
+ assertTrue(residuesWide2 < residuesWide); // available width reduced
+ x += 1; // just over left edge of scale right
+ evt = new MouseEvent(testee, Event.MOUSE_MOVE, 0L, 0, x, 0, 0, 0, 0,
+ false, 0);
+ assertEquals(testee.findColumn(evt), -1);
+
+ // todo add startRes offset, hidden columns
+
+ }
+ @BeforeClass(alwaysRun = true)
+ public static void setUpBeforeClass() throws Exception
+ {
+ /*
+ * use read-only test properties file
+ */
+ Cache.loadProperties("test/jalview/io/testProps.jvprops");
+ Jalview.main(new String[] { "-nonews" });
+ }
+
+ /**
+ * waits for Swing event dispatch queue to empty
+ */
+ synchronized void waitForSwing()
+ {
+ try
+ {
+ EventQueue.invokeAndWait(new Runnable()
+ {
+ @Override
+ public void run()
+ {
+ }
+ });
+ } catch (InterruptedException | InvocationTargetException e)
+ {
+ e.printStackTrace();
+ }
+ }
}
}
}
- AlignmentI readAlignmentFile(File f)
+ protected AlignmentI readAlignmentFile(File f)
{
System.out.println("Reading file: " + f);
String ff = f.getPath();
--- /dev/null
+package jalview.io;
+
+import jalview.bin.Cache;
+import jalview.datamodel.AlignmentI;
+import jalview.datamodel.Sequence;
+import jalview.datamodel.SequenceI;
+import jalview.gui.AlignFrame;
+import jalview.gui.JvOptionPane;
+
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.Enumeration;
+import java.util.HashMap;
+import java.util.List;
+import java.util.TreeMap;
+
+import org.testng.Assert;
+import org.testng.annotations.AfterClass;
+import org.testng.annotations.BeforeClass;
+import org.testng.annotations.Test;
+
+public class BackupFilesTest
+{
+ @BeforeClass(alwaysRun = true)
+ public void setUpJvOptionPane()
+ {
+ JvOptionPane.setInteractiveMode(false);
+ JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
+ }
+
+ private static boolean actuallyDeleteTmpFiles = true;
+ private static String testDir = "examples";
+
+ private static String testBasename = "backupfilestest";
+
+ private static String testExt = ".fa";
+
+ private static String testFilename = testBasename + testExt;
+
+
+ private static String testFile = testDir + File.separatorChar
+ + testFilename;
+
+ private static String newBasename = testBasename + "Temp";
+
+ private static String newFilename = newBasename + testExt;
+
+ private static String newFile = testDir + File.separatorChar
+ + newFilename;
+
+ private static String sequenceName = "BACKUP_FILES";
+
+ private static String sequenceDescription = "backupfiles";
+
+ private static String sequenceData = "AAAARG";
+
+ private static String suffix = "_BACKUPTEST-%n";
+
+ private static int digits = 8;
+
+ private static int rollMax = 2;
+
+ private AlignFrame af;
+
+ // read and save with backupfiles disabled
+ @Test(groups = { "Functional" })
+ public void noBackupsEnabledTest() throws Exception
+ {
+ // set BACKUPFILES_ENABLED to false (i.e. turn off BackupFiles feature -- no
+ // backup files to be made when saving)
+ setBackupFilesOptions(false, true, true);
+
+ // init the newFile and backups (i.e. make sure newFile exists on its own
+ // and has no backups
+ initNewFileForTesting();
+
+ // now save again
+ save();
+
+ // check no backup files
+ File[] backupFiles = getBackupFiles();
+ Assert.assertTrue(backupFiles.length == 0);
+ }
+
+ // save keeping all backup files
+ @Test(groups = { "Functional" })
+ public void backupsEnabledNoRollMaxTest() throws Exception
+ {
+ // Enable BackupFiles and set noMax so all backupfiles get kept
+ setBackupFilesOptions(true, false, true);
+
+ // init the newFile and backups (i.e. make sure newFile exists on its own
+ // and has no backups)
+ initNewFileForTesting();
+
+ // now save a few times again. No rollMax so should have more than two
+ // backup files
+ int numSaves = 10;
+ for (int i = 0; i < numSaves; i++)
+ {
+ save();
+ }
+
+ // check 10 backup files
+ HashMap correctindexmap = new HashMap();
+ correctindexmap.put(1, "backupfilestestTemp.fa_BACKUPTEST-00000001");
+ correctindexmap.put(2, "backupfilestestTemp.fa_BACKUPTEST-00000002");
+ correctindexmap.put(3, "backupfilestestTemp.fa_BACKUPTEST-00000003");
+ correctindexmap.put(4, "backupfilestestTemp.fa_BACKUPTEST-00000004");
+ correctindexmap.put(5, "backupfilestestTemp.fa_BACKUPTEST-00000005");
+ correctindexmap.put(6, "backupfilestestTemp.fa_BACKUPTEST-00000006");
+ correctindexmap.put(7, "backupfilestestTemp.fa_BACKUPTEST-00000007");
+ correctindexmap.put(8, "backupfilestestTemp.fa_BACKUPTEST-00000008");
+ correctindexmap.put(9, "backupfilestestTemp.fa_BACKUPTEST-00000009");
+ correctindexmap.put(10, "backupfilestestTemp.fa_BACKUPTEST-00000010");
+ HashMap wrongindexmap = new HashMap();
+ wrongindexmap.put(1, "backupfilestestTemp.fa_BACKUPTEST-1");
+ wrongindexmap.put(2, "backupfilestestTemp.fa_BACKUPTEST-00000002");
+ wrongindexmap.put(3, "backupfilestestTemp.fa_BACKUPTEST-00000003");
+ wrongindexmap.put(4, "backupfilestestTemp.fa_BACKUPTEST-00000004");
+ wrongindexmap.put(5, "backupfilestestTemp.fa_BACKUPTEST-00000005");
+ wrongindexmap.put(6, "backupfilestestTemp.fa_BACKUPTEST-00000006");
+ wrongindexmap.put(7, "backupfilestestTemp.fa_BACKUPTEST-00000007");
+ wrongindexmap.put(8, "backupfilestestTemp.fa_BACKUPTEST-00000008");
+ wrongindexmap.put(9, "backupfilestestTemp.fa_BACKUPTEST-00000009");
+ wrongindexmap.put(10, "backupfilestestTemp.fa_BACKUPTEST-00000010");
+ int[] indexes2 = { 3, 4, 5, 6, 7, 8, 9, 10 };
+ int[] indexes3 = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 };
+ Assert.assertTrue(checkBackupFiles(correctindexmap));
+ Assert.assertFalse(checkBackupFiles(wrongindexmap));
+ Assert.assertFalse(checkBackupFiles(indexes2));
+ Assert.assertFalse(checkBackupFiles(indexes3));
+ }
+
+ // save keeping only the last rollMax (2) backup files
+ @Test(groups = { "Functional" })
+ public void backupsEnabledRollMaxTest() throws Exception
+ {
+ // Enable BackupFiles and set noMax so all backupfiles get kept
+ setBackupFilesOptions(true, false, false);
+
+ // init the newFile and backups (i.e. make sure newFile exists on its own
+ // and has no backups)
+ initNewFileForTesting();
+
+ // now save a few times again. No rollMax so should have more than two
+ // backup files
+ int numSaves = 10;
+ for (int i = 0; i < numSaves; i++)
+ {
+ save();
+ }
+
+ // check there are "rollMax" backup files and they are all saved correctly
+ // check 10 backup files
+ HashMap correctindexmap = new HashMap();
+ correctindexmap.put(9, "backupfilestestTemp.fa_BACKUPTEST-00000009");
+ correctindexmap.put(10, "backupfilestestTemp.fa_BACKUPTEST-00000010");
+ int[] indexes2 = { 10 };
+ int[] indexes3 = { 8, 9, 10 };
+ Assert.assertTrue(checkBackupFiles(correctindexmap));
+ Assert.assertFalse(checkBackupFiles(indexes2));
+ Assert.assertFalse(checkBackupFiles(indexes3));
+ }
+
+ // save keeping only the last rollMax (2) backup files
+ @Test(groups = { "Functional" })
+ public void backupsEnabledReverseRollMaxTest() throws Exception
+ {
+ // Enable BackupFiles and set noMax so all backupfiles get kept
+ setBackupFilesOptions(true, true, false);
+
+ // init the newFile and backups (i.e. make sure newFile exists on its own
+ // and has no backups)
+ initNewFileForTesting();
+
+ // now save a few times again. No rollMax so should have more than two
+ // backup files
+ int numSaves = 10;
+ for (int i = 0; i < numSaves; i++)
+ {
+ save();
+ }
+
+ // check there are "rollMax" backup files and they are all saved correctly
+ // check 10 backup files
+ HashMap correctindexmap = new HashMap();
+ correctindexmap.put(1, "backupfilestestTemp.fa_BACKUPTEST-00000001");
+ correctindexmap.put(2, "backupfilestestTemp.fa_BACKUPTEST-00000002");
+ int[] indexes2 = { 1 };
+ int[] indexes3 = { 1, 2, 3 };
+ Assert.assertTrue(checkBackupFiles(correctindexmap));
+ Assert.assertFalse(checkBackupFiles(indexes2));
+ Assert.assertFalse(checkBackupFiles(indexes3));
+ }
+
+ private void setBackupFilesOptions()
+ {
+ setBackupFilesOptions(true, false, false);
+ }
+
+ private void setBackupFilesOptions(boolean enabled, boolean reverse,
+ boolean noMax)
+ {
+ Cache.loadProperties("test/jalview/io/testProps.jvprops");
+
+ Cache.applicationProperties.setProperty(BackupFiles.ENABLED,
+ Boolean.toString(enabled));
+ Cache.applicationProperties.setProperty(BackupFiles.SUFFIX, suffix);
+ Cache.applicationProperties.setProperty(BackupFiles.SUFFIX_DIGITS,
+ Integer.toString(digits));
+ Cache.applicationProperties.setProperty(BackupFiles.REVERSE_ORDER,
+ Boolean.toString(reverse));
+ Cache.applicationProperties.setProperty(BackupFiles.NO_MAX,
+ Boolean.toString(noMax));
+ Cache.applicationProperties.setProperty(BackupFiles.ROLL_MAX,
+ Integer.toString(rollMax));
+ Cache.applicationProperties.setProperty(BackupFiles.CONFIRM_DELETE_OLD,
+ "false");
+ }
+
+ private void save()
+ {
+ if (af != null)
+ {
+ af.saveAlignment(newFile, jalview.io.FileFormat.Fasta);
+ }
+ }
+
+ // this runs cleanTmpFiles and then writes the newFile once as a starting
+ // point for all tests
+ private void initNewFileForTesting() throws Exception
+ {
+ cleanupTmpFiles();
+
+ AppletFormatAdapter afa = new AppletFormatAdapter();
+ AlignmentI al = afa.readFile(testFile, DataSourceType.FILE,
+ jalview.io.FileFormat.Fasta);
+ List<SequenceI> l = al.getSequences();
+
+ // check this is right
+ if (l.size() != 1)
+ {
+ throw new Exception("single sequence from '" + testFile
+ + "' not read in correctly (should be a single short sequence). List<SequenceI> size is wrong.");
+ }
+ SequenceI s = l.get(0);
+ Sequence ref = new Sequence(sequenceName, sequenceData);
+ ref.setDescription(sequenceDescription);
+ if (!sequencesEqual(s, ref))
+ {
+ throw new Exception("single sequence from '" + testFile
+ + "' not read in correctly (should be a single short sequence). SequenceI name, description or data is wrong.");
+ }
+ // save alignment file to new filename -- this doesn't test backups disabled
+ // yet as this file shouldn't already exist
+ af = new AlignFrame(al, 0, 0);
+ af.saveAlignment(newFile, jalview.io.FileFormat.Fasta);
+ }
+
+ // this deletes the newFile (if it exists) and any saved backup file for it
+ @AfterClass(alwaysRun = true)
+ private void cleanupTmpFiles()
+ {
+ File newfile = new File(newFile);
+ if (newfile.exists())
+ {
+ newfile.delete();
+ }
+ File[] tmpFiles = getBackupFiles(newFile, suffix, digits);
+ for (int i = 0; i < tmpFiles.length; i++)
+ {
+ if (actuallyDeleteTmpFiles)
+ {
+ tmpFiles[i].delete();
+ }
+ else
+ {
+ System.out.println("Pretending to delete " + tmpFiles[i].getPath());
+ }
+ }
+ }
+
+ private static File[] getBackupFiles(String f, String s, int i)
+ {
+ TreeMap<Integer, File> bfTreeMap = BackupFiles.getBackupFilesAsTreeMap(f,
+ s, i);
+ File[] backupFiles = new File[bfTreeMap.size()];
+ bfTreeMap.values().toArray(backupFiles);
+ return backupFiles;
+ }
+
+ private static File[] getBackupFiles()
+ {
+ return getBackupFiles(newFile, suffix, digits);
+ }
+
+ private static boolean checkBackupFiles(HashMap<Integer, String> indexmap)
+ throws IOException
+ {
+ TreeMap<Integer, File> map = BackupFiles.getBackupFilesAsTreeMap(newFile,
+ suffix, digits);
+ Enumeration<Integer> indexesenum = Collections
+ .enumeration(indexmap.keySet());
+ while (indexesenum.hasMoreElements())
+ {
+ int i = indexesenum.nextElement();
+ String indexfilename = indexmap.get(i);
+ if (!map.containsKey(i))
+ {
+ return false;
+ }
+ File f = map.get(i);
+ if (!filesContentEqual(newFile, f.getPath()))
+ {
+ return false;
+ }
+ map.remove(i);
+ if (f == null)
+ {
+ return false;
+ }
+ if (!f.getName().equals(indexfilename))
+ {
+ return false;
+ }
+ }
+ // should be nothing left in map
+ if (map.size() > 0)
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ private static boolean checkBackupFiles(int[] indexes) throws IOException
+ {
+ TreeMap<Integer, File> map = BackupFiles.getBackupFilesAsTreeMap(newFile,
+ suffix, digits);
+ for (int m = 0; m < indexes.length; m++)
+ {
+ int i = indexes[m];
+ if (!map.containsKey(i))
+ {
+ return false;
+ }
+ File f = map.get(i);
+ if (!filesContentEqual(newFile, f.getPath()))
+ {
+ return false;
+ }
+ map.remove(i);
+ if (f == null)
+ {
+ return false;
+ }
+ // check the filename -- although this uses the same code to forumulate the filename so not much of a test!
+ String filename = BackupFilenameParts.getBackupFilename(i,
+ newBasename + testExt, suffix, digits);
+ if (!filename.equals(f.getName()))
+ {
+ System.out.println("Supposed filename '" + filename
+ + "' not equal to actual filename '" + f.getName() + "'");
+ return false;
+ }
+ }
+ // should be nothing left in map
+ if (map.size() > 0)
+ {
+ return false;
+ }
+
+ return true;
+ }
+
+ private static String[] getBackupFilesAsStrings()
+ {
+ File[] files = getBackupFiles(newFile, suffix, digits);
+ String[] filenames = new String[files.length];
+ for (int i = 0; i < files.length; i++)
+ {
+ filenames[i] = files[i].getPath();
+ }
+ return filenames;
+ }
+
+ public static boolean sequencesEqual(SequenceI s1, SequenceI s2) {
+ if (s1 == null && s2 == null) {
+ return true;
+ } else if (s1 == null || s2 == null) {
+ return false;
+ }
+ return (s1.getName().equals(s2.getName())
+ && s1.getDescription().equals(s2.getDescription())
+ && Arrays.equals(s1.getSequence(), s2.getSequence()));
+ }
+
+ public static boolean filesContentEqual(String fileName1,
+ String fileName2) throws IOException
+ {
+ Path file1 = Paths.get(fileName1);
+ Path file2 = Paths.get(fileName2);
+ byte[] bytes1 = Files.readAllBytes(file1);
+ byte[] bytes2 = Files.readAllBytes(file2);
+ return Arrays.equals(bytes1, bytes2);
+ }
+
+}
import jalview.gui.AlignFrame;
import jalview.gui.CrossRefAction;
import jalview.gui.Desktop;
-import jalview.gui.Jalview2XML;
import jalview.gui.JvOptionPane;
import jalview.gui.SequenceFetcher;
+import jalview.project.Jalview2XML;
import jalview.util.DBRefUtils;
import java.io.File;
import jalview.schemes.FeatureColour;
import jalview.structure.StructureSelectionManager;
import jalview.util.matcher.Condition;
+import jalview.viewmodel.seqfeatures.FeatureRendererModel;
+import jalview.viewmodel.seqfeatures.FeatureRendererModel.FeatureSettingsBean;
import java.awt.Color;
import java.io.File;
import java.io.IOException;
-import java.util.ArrayList;
-import java.util.Arrays;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
* first with no features displayed, exclude non-positional features
*/
FeatureRenderer fr = af.alignPanel.getFeatureRenderer();
- Map<String, FeatureColourI> visible = fr.getDisplayedFeatureCols();
- List<String> visibleGroups = new ArrayList<>(
- Arrays.asList(new String[] {}));
- String exported = featuresFile.printJalviewFormat(
- al.getSequencesArray(), visible, null, visibleGroups, false);
+ String exported = featuresFile
+ .printJalviewFormat(al.getSequencesArray(), fr, false);
String expected = "No Features Visible";
assertEquals(expected, exported);
/*
- * include non-positional features
+ * include non-positional features, but still no positional features
*/
- visibleGroups.add("uniprot");
- exported = featuresFile.printJalviewFormat(al.getSequencesArray(),
- visible, null, visibleGroups, true);
- expected = "Cath\tFER_CAPAA\t-1\t0\t0\tDomain\t0.0\n"
- + "desc1\tFER_CAPAN\t-1\t0\t0\tPfam\t1.3\n"
- + "desc3\tFER1_SOLLC\t-1\t0\t0\tPfam\n" // NaN is not output
- + "\nSTARTGROUP\tuniprot\nENDGROUP\tuniprot\n";
+ fr.setGroupVisibility("uniprot", true);
+ exported = featuresFile.printJalviewFormat(al.getSequencesArray(), fr,
+ true);
+ expected = "\nSTARTGROUP\tuniprot\n"
+ + "Cath\tFER_CAPAA\t-1\t0\t0\tDomain\t0.0\n"
+ + "ENDGROUP\tuniprot\n\n"
+ + "desc1\tFER_CAPAN\t-1\t0\t0\tPfam\t1.3\n\n"
+ + "desc3\tFER1_SOLLC\t-1\t0\t0\tPfam\n"; // NaN is not output
assertEquals(expected, exported);
/*
*/
fr.setVisible("METAL");
fr.setVisible("GAMMA-TURN");
- visible = fr.getDisplayedFeatureCols();
- exported = featuresFile.printJalviewFormat(al.getSequencesArray(),
- visible, null, visibleGroups, false);
+ exported = featuresFile.printJalviewFormat(al.getSequencesArray(), fr,
+ false);
expected = "METAL\tcc9900\n"
+ "GAMMA-TURN\tscore|ff0000|00ffff|noValueMin|20.0|95.0|below|66.0\n"
+ "\nSTARTGROUP\tuniprot\n"
* now set Pfam visible
*/
fr.setVisible("Pfam");
- visible = fr.getDisplayedFeatureCols();
- exported = featuresFile.printJalviewFormat(al.getSequencesArray(),
- visible, null, visibleGroups, false);
+ exported = featuresFile.printJalviewFormat(al.getSequencesArray(), fr,
+ false);
/*
- * features are output within group, ordered by sequence and by type
+ * features are output within group, ordered by sequence and type
*/
expected = "METAL\tcc9900\n"
+ "Pfam\tff0000\n"
+ "Iron\tFER_CAPAA\t-1\t39\t39\tMETAL\t0.0\n"
+ "<html>Pfam domain<a href=\"http://pfam.xfam.org/family/PF00111\">Pfam_3_4</a></html>\tFER_CAPAA\t-1\t20\t20\tPfam\t0.0\n"
+ "ENDGROUP\tuniprot\n"
- // null / empty group features output after features in named
- // groups:
+ // null / empty group features are output after named groups
+ + "\ndesc2\tFER_CAPAN\t-1\t4\t9\tPfam\n"
+ + "\ndesc4\tFER1_SOLLC\t-1\t5\t8\tPfam\t-2.6\n";
+ assertEquals(expected, exported);
+
+ /*
+ * hide uniprot group
+ */
+ fr.setGroupVisibility("uniprot", false);
+ expected = "METAL\tcc9900\n" + "Pfam\tff0000\n"
+ + "GAMMA-TURN\tscore|ff0000|00ffff|noValueMin|20.0|95.0|below|66.0\n"
+ + "\ndesc2\tFER_CAPAN\t-1\t4\t9\tPfam\n"
+ + "\ndesc4\tFER1_SOLLC\t-1\t5\t8\tPfam\t-2.6\n";
+ exported = featuresFile.printJalviewFormat(al.getSequencesArray(), fr,
+ false);
+ assertEquals(expected, exported);
+
+ /*
+ * include non-positional (overrides group not shown)
+ */
+ exported = featuresFile.printJalviewFormat(al.getSequencesArray(), fr,
+ true);
+ expected = "METAL\tcc9900\n" + "Pfam\tff0000\n"
+ + "GAMMA-TURN\tscore|ff0000|00ffff|noValueMin|20.0|95.0|below|66.0\n"
+ + "\nSTARTGROUP\tuniprot\n"
+ + "Cath\tFER_CAPAA\t-1\t0\t0\tDomain\t0.0\n"
+ + "ENDGROUP\tuniprot\n"
+ + "\ndesc1\tFER_CAPAN\t-1\t0\t0\tPfam\t1.3\n"
+ "desc2\tFER_CAPAN\t-1\t4\t9\tPfam\n"
+ + "\ndesc3\tFER1_SOLLC\t-1\t0\t0\tPfam\n"
+ "desc4\tFER1_SOLLC\t-1\t5\t8\tPfam\t-2.6\n";
assertEquals(expected, exported);
}
* no features
*/
FeaturesFile featuresFile = new FeaturesFile();
- FeatureRenderer fr = af.alignPanel.getFeatureRenderer();
- Map<String, FeatureColourI> visible = new HashMap<>();
- List<String> visibleGroups = new ArrayList<>(
- Arrays.asList(new String[] {}));
+ FeatureRendererModel fr = (FeatureRendererModel) af.alignPanel
+ .getFeatureRenderer();
String exported = featuresFile.printGffFormat(al.getSequencesArray(),
- visible, visibleGroups, false);
+ fr, false);
String gffHeader = "##gff-version 2\n";
assertEquals(gffHeader, exported);
- exported = featuresFile.printGffFormat(al.getSequencesArray(), visible,
- visibleGroups, true);
+ exported = featuresFile.printGffFormat(al.getSequencesArray(), fr,
+ true);
assertEquals(gffHeader, exported);
/*
al.getSequenceAt(1).addSequenceFeature(sf);
/*
+ * 'discover' features then hide all feature types
+ */
+ fr.findAllFeatures(true);
+ FeatureSettingsBean[] data = new FeatureSettingsBean[4];
+ FeatureColourI fc = new FeatureColour(Color.PINK);
+ data[0] = new FeatureSettingsBean("Domain", fc, null, false);
+ data[1] = new FeatureSettingsBean("METAL", fc, null, false);
+ data[2] = new FeatureSettingsBean("GAMMA-TURN", fc, null, false);
+ data[3] = new FeatureSettingsBean("Pfam", fc, null, false);
+ fr.setFeaturePriority(data);
+
+ /*
* with no features displayed, exclude non-positional features
*/
- exported = featuresFile.printGffFormat(al.getSequencesArray(), visible,
- visibleGroups, false);
+ exported = featuresFile.printGffFormat(al.getSequencesArray(), fr,
+ false);
assertEquals(gffHeader, exported);
/*
* include non-positional features
*/
- visibleGroups.add("Uniprot");
- exported = featuresFile.printGffFormat(al.getSequencesArray(), visible,
- visibleGroups, true);
+ fr.setGroupVisibility("Uniprot", true);
+ fr.setGroupVisibility("s3dm", false);
+ exported = featuresFile.printGffFormat(al.getSequencesArray(), fr,
+ true);
String expected = gffHeader
+ "FER_CAPAA\tUniprot\tDomain\t0\t0\t0.0\t.\t.\n";
assertEquals(expected, exported);
*/
fr.setVisible("METAL");
fr.setVisible("GAMMA-TURN");
- visible = fr.getDisplayedFeatureCols();
- exported = featuresFile.printGffFormat(al.getSequencesArray(), visible,
- visibleGroups, false);
+ exported = featuresFile.printGffFormat(al.getSequencesArray(), fr,
+ false);
// METAL feature has null group: description used for column 2
expected = gffHeader + "FER_CAPAA\tCath\tMETAL\t39\t39\t1.2\t.\t.\n";
assertEquals(expected, exported);
/*
* set s3dm group visible
*/
- visibleGroups.add("s3dm");
- exported = featuresFile.printGffFormat(al.getSequencesArray(), visible,
- visibleGroups, false);
+ fr.setGroupVisibility("s3dm", true);
+ exported = featuresFile.printGffFormat(al.getSequencesArray(), fr,
+ false);
// METAL feature has null group: description used for column 2
expected = gffHeader + "FER_CAPAA\tCath\tMETAL\t39\t39\t1.2\t.\t.\n"
+ "FER_CAPAN\ts3dm\tGAMMA-TURN\t36\t38\t2.1\t.\t.\n";
* now set Pfam visible
*/
fr.setVisible("Pfam");
- visible = fr.getDisplayedFeatureCols();
- exported = featuresFile.printGffFormat(al.getSequencesArray(), visible,
- visibleGroups, false);
+ exported = featuresFile.printGffFormat(al.getSequencesArray(), fr,
+ false);
// Pfam feature columns include strand(+), phase(2), attributes
expected = gffHeader
+ "FER_CAPAA\tCath\tMETAL\t39\t39\t1.2\t.\t.\n"
featureFilters.put("pfam", filter2);
visible.put("foobar", new FeatureColour(Color.blue));
ff.outputFeatureFilters(sb, visible, featureFilters);
- String expected = "\nSTARTFILTERS\nfoobar\tLabel Present\npfam\t(CSQ:PolyPhen Present) AND (Score LE -2.4)\nENDFILTERS\n\n";
+ String expected = "\nSTARTFILTERS\nfoobar\tLabel Present\npfam\t(CSQ:PolyPhen Present) AND (Score LE -2.4)\nENDFILTERS\n";
assertEquals(expected, sb.toString());
}
+
+ /**
+ * Output as GFF should not include features which are not visible due to
+ * colour threshold or feature filter settings
+ *
+ * @throws Exception
+ */
+ @Test(groups = { "Functional" })
+ public void testPrintGffFormat_withFilters() throws Exception
+ {
+ File f = new File("examples/uniref50.fa");
+ AlignmentI al = readAlignmentFile(f);
+ AlignFrame af = new AlignFrame(al, 500, 500);
+ SequenceFeature sf1 = new SequenceFeature("METAL", "Cath", 39, 39, 1.2f,
+ null);
+ sf1.setValue("clin_sig", "Likely Pathogenic");
+ sf1.setValue("AF", "24");
+ al.getSequenceAt(0).addSequenceFeature(sf1);
+ SequenceFeature sf2 = new SequenceFeature("METAL", "Cath", 41, 41, 0.6f,
+ null);
+ sf2.setValue("clin_sig", "Benign");
+ sf2.setValue("AF", "46");
+ al.getSequenceAt(0).addSequenceFeature(sf2);
+
+ FeaturesFile featuresFile = new FeaturesFile();
+ FeatureRenderer fr = af.alignPanel.getFeatureRenderer();
+ final String gffHeader = "##gff-version 2\n";
+
+ fr.setVisible("METAL");
+ fr.setColour("METAL", new FeatureColour(Color.PINK));
+ String exported = featuresFile.printGffFormat(al.getSequencesArray(),
+ fr, false);
+ String expected = gffHeader
+ + "FER_CAPAA\tCath\tMETAL\t39\t39\t1.2\t.\t.\n"
+ + "FER_CAPAA\tCath\tMETAL\t41\t41\t0.6\t.\t.\n";
+ assertEquals(expected, exported);
+
+ /*
+ * now threshold to Score > 1.1 - should exclude sf2
+ */
+ FeatureColourI fc = new FeatureColour(null, Color.white, Color.BLACK,
+ Color.white, 0f, 2f);
+ fc.setAboveThreshold(true);
+ fc.setThreshold(1.1f);
+ fr.setColour("METAL", fc);
+ exported = featuresFile.printGffFormat(al.getSequencesArray(), fr,
+ false);
+ expected = gffHeader + "FER_CAPAA\tCath\tMETAL\t39\t39\t1.2\t.\t.\n";
+ assertEquals(expected, exported);
+
+ /*
+ * remove threshold and check sf2 is exported
+ */
+ fc.setAboveThreshold(false);
+ exported = featuresFile.printGffFormat(al.getSequencesArray(), fr,
+ false);
+ expected = gffHeader + "FER_CAPAA\tCath\tMETAL\t39\t39\t1.2\t.\t.\n"
+ + "FER_CAPAA\tCath\tMETAL\t41\t41\t0.6\t.\t.\n";
+ assertEquals(expected, exported);
+
+ /*
+ * filter on (clin_sig contains Benign) - should include sf2 and exclude sf1
+ */
+ FeatureMatcherSetI filter = new FeatureMatcherSet();
+ filter.and(FeatureMatcher.byAttribute(Condition.Contains, "benign",
+ "clin_sig"));
+ fr.setFeatureFilter("METAL", filter);
+ exported = featuresFile.printGffFormat(al.getSequencesArray(), fr,
+ false);
+ expected = gffHeader + "FER_CAPAA\tCath\tMETAL\t41\t41\t0.6\t.\t.\n";
+ assertEquals(expected, exported);
+ }
+
+ /**
+ * Output as Jalview should not include features which are not visible due to
+ * colour threshold or feature filter settings
+ *
+ * @throws Exception
+ */
+ @Test(groups = { "Functional" })
+ public void testPrintJalviewFormat_withFilters() throws Exception
+ {
+ File f = new File("examples/uniref50.fa");
+ AlignmentI al = readAlignmentFile(f);
+ AlignFrame af = new AlignFrame(al, 500, 500);
+ SequenceFeature sf1 = new SequenceFeature("METAL", "Cath", 39, 39, 1.2f,
+ "grp1");
+ sf1.setValue("clin_sig", "Likely Pathogenic");
+ sf1.setValue("AF", "24");
+ al.getSequenceAt(0).addSequenceFeature(sf1);
+ SequenceFeature sf2 = new SequenceFeature("METAL", "Cath", 41, 41, 0.6f,
+ "grp2");
+ sf2.setValue("clin_sig", "Benign");
+ sf2.setValue("AF", "46");
+ al.getSequenceAt(0).addSequenceFeature(sf2);
+
+ FeaturesFile featuresFile = new FeaturesFile();
+ FeatureRenderer fr = af.alignPanel.getFeatureRenderer();
+ fr.findAllFeatures(true);
+
+ fr.setVisible("METAL");
+ fr.setColour("METAL", new FeatureColour(Color.PINK));
+ String exported = featuresFile.printJalviewFormat(
+ al.getSequencesArray(),
+ fr, false);
+ String expected = "METAL\tffafaf\n\nSTARTGROUP\tgrp1\n"
+ + "Cath\tFER_CAPAA\t-1\t39\t39\tMETAL\t1.2\n"
+ + "ENDGROUP\tgrp1\n\nSTARTGROUP\tgrp2\n"
+ + "Cath\tFER_CAPAA\t-1\t41\t41\tMETAL\t0.6\n"
+ + "ENDGROUP\tgrp2\n";
+ assertEquals(expected, exported);
+
+ /*
+ * now threshold to Score > 1.1 - should exclude sf2
+ * (and there should be no empty STARTGROUP/ENDGROUP output)
+ */
+ FeatureColourI fc = new FeatureColour(null, Color.white, Color.BLACK,
+ Color.white, 0f, 2f);
+ fc.setAboveThreshold(true);
+ fc.setThreshold(1.1f);
+ fr.setColour("METAL", fc);
+ exported = featuresFile.printJalviewFormat(al.getSequencesArray(), fr,
+ false);
+ expected = "METAL\tscore|ffffff|000000|noValueMin|abso|0.0|2.0|above|1.1\n\n"
+ + "STARTGROUP\tgrp1\n"
+ + "Cath\tFER_CAPAA\t-1\t39\t39\tMETAL\t1.2\n"
+ + "ENDGROUP\tgrp1\n";
+ assertEquals(expected, exported);
+
+ /*
+ * remove threshold and check sf2 is exported
+ */
+ fc.setAboveThreshold(false);
+ exported = featuresFile.printJalviewFormat(al.getSequencesArray(), fr,
+ false);
+ expected = "METAL\tscore|ffffff|000000|noValueMin|abso|0.0|2.0|none\n\n"
+ + "STARTGROUP\tgrp1\n"
+ + "Cath\tFER_CAPAA\t-1\t39\t39\tMETAL\t1.2\n"
+ + "ENDGROUP\tgrp1\n\nSTARTGROUP\tgrp2\n"
+ + "Cath\tFER_CAPAA\t-1\t41\t41\tMETAL\t0.6\n"
+ + "ENDGROUP\tgrp2\n";
+ assertEquals(expected, exported);
+
+ /*
+ * filter on (clin_sig contains Benign) - should include sf2 and exclude sf1
+ */
+ FeatureMatcherSetI filter = new FeatureMatcherSet();
+ filter.and(FeatureMatcher.byAttribute(Condition.Contains, "benign",
+ "clin_sig"));
+ fr.setFeatureFilter("METAL", filter);
+ exported = featuresFile.printJalviewFormat(al.getSequencesArray(), fr,
+ false);
+ expected = "FER_CAPAA\tCath\tMETAL\t41\t41\t0.6\t.\t.\n";
+ expected = "METAL\tscore|ffffff|000000|noValueMin|abso|0.0|2.0|none\n\n"
+ + "STARTFILTERS\nMETAL\tclin_sig Contains benign\nENDFILTERS\n\n"
+ + "STARTGROUP\tgrp2\n"
+ + "Cath\tFER_CAPAA\t-1\t41\t41\tMETAL\t0.6\n"
+ + "ENDGROUP\tgrp2\n";
+ assertEquals(expected, exported);
+ }
}
+++ /dev/null
-/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.io;
-
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertFalse;
-import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertNull;
-import static org.testng.Assert.assertSame;
-import static org.testng.Assert.assertTrue;
-
-import jalview.api.AlignViewportI;
-import jalview.api.AlignmentViewPanel;
-import jalview.api.FeatureColourI;
-import jalview.api.ViewStyleI;
-import jalview.datamodel.AlignmentAnnotation;
-import jalview.datamodel.AlignmentI;
-import jalview.datamodel.HiddenSequences;
-import jalview.datamodel.PDBEntry;
-import jalview.datamodel.PDBEntry.Type;
-import jalview.datamodel.SequenceCollectionI;
-import jalview.datamodel.SequenceFeature;
-import jalview.datamodel.SequenceGroup;
-import jalview.datamodel.SequenceI;
-import jalview.datamodel.features.FeatureMatcher;
-import jalview.datamodel.features.FeatureMatcherSet;
-import jalview.datamodel.features.FeatureMatcherSetI;
-import jalview.gui.AlignFrame;
-import jalview.gui.AlignViewport;
-import jalview.gui.AlignmentPanel;
-import jalview.gui.Desktop;
-import jalview.gui.FeatureRenderer;
-import jalview.gui.Jalview2XML;
-import jalview.gui.JvOptionPane;
-import jalview.gui.PopupMenu;
-import jalview.gui.SliderPanel;
-import jalview.renderer.ResidueShaderI;
-import jalview.schemes.AnnotationColourGradient;
-import jalview.schemes.BuriedColourScheme;
-import jalview.schemes.ColourSchemeI;
-import jalview.schemes.ColourSchemeProperty;
-import jalview.schemes.FeatureColour;
-import jalview.schemes.JalviewColourScheme;
-import jalview.schemes.RNAHelicesColour;
-import jalview.schemes.StrandColourScheme;
-import jalview.schemes.TCoffeeColourScheme;
-import jalview.structure.StructureImportSettings;
-import jalview.util.matcher.Condition;
-import jalview.viewmodel.AlignmentViewport;
-
-import java.awt.Color;
-import java.io.File;
-import java.io.IOException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.testng.Assert;
-import org.testng.AssertJUnit;
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-@Test(singleThreaded = true)
-public class Jalview2xmlTests extends Jalview2xmlBase
-{
-
- @Override
- @BeforeClass(alwaysRun = true)
- public void setUpJvOptionPane()
- {
- JvOptionPane.setInteractiveMode(false);
- JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
- }
-
- @Test(groups = { "Functional" })
- public void testRNAStructureRecovery() throws Exception
- {
- String inFile = "examples/RF00031_folded.stk";
- String tfile = File.createTempFile("JalviewTest", ".jvp")
- .getAbsolutePath();
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(inFile,
- DataSourceType.FILE);
- assertNotNull(af, "Didn't read input file " + inFile);
- int olddsann = countDsAnn(af.getViewport());
- assertTrue(olddsann > 0, "Didn't find any dataset annotations");
- af.changeColour_actionPerformed(JalviewColourScheme.RNAHelices
- .toString());
- assertTrue(
- af.getViewport().getGlobalColourScheme() instanceof RNAHelicesColour,
- "Couldn't apply RNA helices colourscheme");
- af.saveAlignment(tfile, FileFormat.Jalview);
- assertTrue(af.isSaveAlignmentSuccessful(),
- "Failed to store as a project.");
- af.closeMenuItem_actionPerformed(true);
- af = null;
- af = new FileLoader()
- .LoadFileWaitTillLoaded(tfile, DataSourceType.FILE);
- assertNotNull(af, "Failed to import new project");
- int newdsann = countDsAnn(af.getViewport());
- assertEquals(olddsann, newdsann,
- "Differing numbers of dataset sequence annotation\nOriginally "
- + olddsann + " and now " + newdsann);
- System.out
- .println("Read in same number of annotations as originally present ("
- + olddsann + ")");
- assertTrue(
-
- af.getViewport().getGlobalColourScheme() instanceof RNAHelicesColour,
- "RNA helices colourscheme was not applied on import.");
- }
-
- @Test(groups = { "Functional" })
- public void testTCoffeeScores() throws Exception
- {
- String inFile = "examples/uniref50.fa", inAnnot = "examples/uniref50.score_ascii";
- String tfile = File.createTempFile("JalviewTest", ".jvp")
- .getAbsolutePath();
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(inFile,
- DataSourceType.FILE);
- assertNotNull(af, "Didn't read input file " + inFile);
- af.loadJalviewDataFile(inAnnot, DataSourceType.FILE, null, null);
- assertSame(af.getViewport().getGlobalColourScheme().getClass(),
- TCoffeeColourScheme.class, "Didn't set T-coffee colourscheme");
- assertNotNull(ColourSchemeProperty.getColourScheme(af.getViewport()
- .getAlignment(), af.getViewport().getGlobalColourScheme()
- .getSchemeName()), "Recognise T-Coffee score from string");
-
- af.saveAlignment(tfile, FileFormat.Jalview);
- assertTrue(af.isSaveAlignmentSuccessful(),
- "Failed to store as a project.");
- af.closeMenuItem_actionPerformed(true);
- af = null;
- af = new FileLoader()
- .LoadFileWaitTillLoaded(tfile, DataSourceType.FILE);
- assertNotNull(af, "Failed to import new project");
- assertSame(af.getViewport().getGlobalColourScheme().getClass(),
- TCoffeeColourScheme.class,
- "Didn't set T-coffee colourscheme for imported project.");
- System.out
- .println("T-Coffee score shading successfully recovered from project.");
- }
-
- @Test(groups = { "Functional" })
- public void testColourByAnnotScores() throws Exception
- {
- String inFile = "examples/uniref50.fa", inAnnot = "examples/testdata/uniref50_iupred.jva";
- String tfile = File.createTempFile("JalviewTest", ".jvp")
- .getAbsolutePath();
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(inFile,
- DataSourceType.FILE);
- assertNotNull(af, "Didn't read input file " + inFile);
- af.loadJalviewDataFile(inAnnot, DataSourceType.FILE, null, null);
- AlignmentAnnotation[] aa = af.getViewport().getAlignment()
- .getSequenceAt(0).getAnnotation("IUPredWS (Short)");
- assertTrue(
-
- aa != null && aa.length > 0,
- "Didn't find any IUPred annotation to use to shade alignment.");
- AnnotationColourGradient cs = new AnnotationColourGradient(aa[0], null,
- AnnotationColourGradient.ABOVE_THRESHOLD);
- AnnotationColourGradient gcs = new AnnotationColourGradient(aa[0],
- null, AnnotationColourGradient.BELOW_THRESHOLD);
- cs.setSeqAssociated(true);
- gcs.setSeqAssociated(true);
- af.changeColour(cs);
- SequenceGroup sg = new SequenceGroup();
- sg.setStartRes(57);
- sg.setEndRes(92);
- sg.cs.setColourScheme(gcs);
- af.getViewport().getAlignment().addGroup(sg);
- sg.addSequence(af.getViewport().getAlignment().getSequenceAt(1), false);
- sg.addSequence(af.getViewport().getAlignment().getSequenceAt(2), true);
- af.alignPanel.alignmentChanged();
- af.saveAlignment(tfile, FileFormat.Jalview);
- assertTrue(af.isSaveAlignmentSuccessful(),
- "Failed to store as a project.");
- af.closeMenuItem_actionPerformed(true);
- af = null;
- af = new FileLoader()
- .LoadFileWaitTillLoaded(tfile, DataSourceType.FILE);
- assertNotNull(af, "Failed to import new project");
-
- // check for group and alignment colourschemes
-
- ColourSchemeI _rcs = af.getViewport().getGlobalColourScheme();
- ColourSchemeI _rgcs = af.getViewport().getAlignment().getGroups()
- .get(0).getColourScheme();
- assertNotNull(_rcs, "Didn't recover global colourscheme");
- assertTrue(_rcs instanceof AnnotationColourGradient,
- "Didn't recover annotation colour global scheme");
- AnnotationColourGradient __rcs = (AnnotationColourGradient) _rcs;
- assertTrue(__rcs.isSeqAssociated(),
- "Annotation colourscheme wasn't sequence associated");
-
- boolean diffseqcols = false, diffgseqcols = false;
- SequenceI[] sqs = af.getViewport().getAlignment().getSequencesArray();
- for (int p = 0, pSize = af.getViewport().getAlignment().getWidth(); p < pSize
- && (!diffseqcols || !diffgseqcols); p++)
- {
- if (_rcs.findColour(sqs[0].getCharAt(p), p, sqs[0], null, 0f) != _rcs
- .findColour(sqs[5].getCharAt(p), p, sqs[5], null, 0f))
- {
- diffseqcols = true;
- }
- }
- assertTrue(diffseqcols, "Got Different sequence colours");
- System.out
- .println("Per sequence colourscheme (Background) successfully applied and recovered.");
-
- assertNotNull(_rgcs, "Didn't recover group colourscheme");
- assertTrue(_rgcs instanceof AnnotationColourGradient,
- "Didn't recover annotation colour group colourscheme");
- __rcs = (AnnotationColourGradient) _rgcs;
- assertTrue(__rcs.isSeqAssociated(),
- "Group Annotation colourscheme wasn't sequence associated");
-
- for (int p = 0, pSize = af.getViewport().getAlignment().getWidth(); p < pSize
- && (!diffseqcols || !diffgseqcols); p++)
- {
- if (_rgcs.findColour(sqs[1].getCharAt(p), p, sqs[1], null, 0f) != _rgcs
- .findColour(sqs[2].getCharAt(p), p, sqs[2], null, 0f))
- {
- diffgseqcols = true;
- }
- }
- assertTrue(diffgseqcols, "Got Different group sequence colours");
- System.out
- .println("Per sequence (Group) colourscheme successfully applied and recovered.");
- }
-
- @Test(groups = { "Functional" })
- public void gatherViewsHere() throws Exception
- {
- int origCount = Desktop.getAlignFrames() == null ? 0 : Desktop
- .getAlignFrames().length;
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
- "examples/exampleFile_2_7.jar", DataSourceType.FILE);
- assertNotNull(af, "Didn't read in the example file correctly.");
- assertTrue(Desktop.getAlignFrames().length == 1 + origCount,
- "Didn't gather the views in the example file.");
-
- }
-
- /**
- * Test for JAL-2223 - multiple mappings in View Mapping report
- *
- * @throws Exception
- */
- @Test(groups = { "Functional" })
- public void noDuplicatePdbMappingsMade() throws Exception
- {
- StructureImportSettings.setProcessSecondaryStructure(true);
- StructureImportSettings.setVisibleChainAnnotation(true);
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
- "examples/exampleFile_2_7.jar", DataSourceType.FILE);
- assertNotNull(af, "Didn't read in the example file correctly.");
-
- // locate Jmol viewer
- // count number of PDB mappings the structure selection manager holds -
- String pdbFile = af.getCurrentView().getStructureSelectionManager()
- .findFileForPDBId("1A70");
- assertEquals(
- af.getCurrentView().getStructureSelectionManager()
- .getMapping(pdbFile).length,
- 2, "Expected only two mappings for 1A70");
-
- }
-
- @Test(groups = { "Functional" })
- public void viewRefPdbAnnotation() throws Exception
- {
- StructureImportSettings.setProcessSecondaryStructure(true);
- StructureImportSettings.setVisibleChainAnnotation(true);
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
- "examples/exampleFile_2_7.jar", DataSourceType.FILE);
- assertNotNull(af, "Didn't read in the example file correctly.");
- AlignmentViewPanel sps = null;
- for (AlignmentViewPanel ap : af.alignPanel.alignFrame.getAlignPanels())
- {
- if ("Spinach Feredoxin Structure".equals(ap.getViewName()))
- {
- sps = ap;
- break;
- }
- }
- assertNotNull(sps, "Couldn't find the structure view");
- AlignmentAnnotation refan = null;
- for (AlignmentAnnotation ra : sps.getAlignment()
- .getAlignmentAnnotation())
- {
- if (ra.graph != 0)
- {
- refan = ra;
- break;
- }
- }
- assertNotNull(refan, "Annotation secondary structure not found.");
- SequenceI sq = sps.getAlignment().findName("1A70|");
- assertNotNull(sq, "Couldn't find 1a70 null chain");
- // compare the manually added temperature factor annotation
- // to the track automatically transferred from the pdb structure on load
- assertNotNull(sq.getDatasetSequence().getAnnotation(),
- "1a70 has no annotation");
- for (AlignmentAnnotation ala : sq.getDatasetSequence().getAnnotation())
- {
- AlignmentAnnotation alaa;
- sq.addAlignmentAnnotation(alaa = new AlignmentAnnotation(ala));
- alaa.adjustForAlignment();
- if (ala.graph == refan.graph)
- {
- for (int p = 0; p < ala.annotations.length; p++)
- {
- sq.findPosition(p);
- try
- {
- assertTrue(
- (alaa.annotations[p] == null && refan.annotations[p] == null)
- || alaa.annotations[p].value == refan.annotations[p].value,
- "Mismatch at alignment position " + p);
- } catch (NullPointerException q)
- {
- Assert.fail("Mismatch of alignment annotations at position "
- + p + " Ref seq ann: " + refan.annotations[p]
- + " alignment " + alaa.annotations[p]);
- }
- }
- }
- }
-
- }
-
- @Test(groups = { "Functional" })
- public void testCopyViewSettings() throws Exception
- {
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
- "examples/exampleFile_2_7.jar", DataSourceType.FILE);
- assertNotNull(af, "Didn't read in the example file correctly.");
- AlignmentViewPanel sps = null, groups = null;
- for (AlignmentViewPanel ap : af.alignPanel.alignFrame.getAlignPanels())
- {
- if ("Spinach Feredoxin Structure".equals(ap.getViewName()))
- {
- sps = ap;
- }
- if (ap.getViewName().contains("MAFFT"))
- {
- groups = ap;
- }
- }
- assertNotNull(sps, "Couldn't find the structure view");
- assertNotNull(groups, "Couldn't find the MAFFT view");
-
- ViewStyleI structureStyle = sps.getAlignViewport().getViewStyle();
- ViewStyleI groupStyle = groups.getAlignViewport().getViewStyle();
- AssertJUnit.assertFalse(structureStyle.sameStyle(groupStyle));
-
- groups.getAlignViewport().setViewStyle(structureStyle);
- AssertJUnit.assertFalse(groupStyle.sameStyle(groups.getAlignViewport()
- .getViewStyle()));
- Assert.assertTrue(structureStyle.sameStyle(groups.getAlignViewport()
- .getViewStyle()));
-
- }
-
- /**
- * test store and recovery of expanded views
- *
- * @throws Exception
- */
- @Test(groups = { "Functional" }, enabled = true)
- public void testStoreAndRecoverExpandedviews() throws Exception
- {
- Desktop.instance.closeAll_actionPerformed(null);
-
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
- "examples/exampleFile_2_7.jar", DataSourceType.FILE);
- Assert.assertEquals(Desktop.getAlignFrames().length, 1);
- String afid = af.getViewport().getSequenceSetId();
-
- // check FileLoader returned a reference to the one alignFrame that is
- // actually on the Desktop
- assertSame(
- af,
- Desktop.getAlignFrameFor(af.getViewport()),
- "Jalview2XML.loadAlignFrame() didn't return correct AlignFrame reference for multiple view window");
-
- Desktop.explodeViews(af);
-
- int oldviews = Desktop.getAlignFrames().length;
- Assert.assertEquals(Desktop.getAlignFrames().length,
- Desktop.getAlignmentPanels(afid).length);
- File tfile = File.createTempFile("testStoreAndRecoverExpanded", ".jvp");
- try
- {
- new Jalview2XML(false).saveState(tfile);
- } catch (Error e)
- {
- Assert.fail("Didn't save the expanded view state", e);
- } catch (Exception e)
- {
- Assert.fail("Didn't save the expanded view state", e);
- }
- Desktop.instance.closeAll_actionPerformed(null);
- if (Desktop.getAlignFrames() != null)
- {
- Assert.assertEquals(Desktop.getAlignFrames().length, 0);
- }
- af = new FileLoader().LoadFileWaitTillLoaded(tfile.getAbsolutePath(),
- DataSourceType.FILE);
- Assert.assertNotNull(af);
- Assert.assertEquals(
- Desktop.getAlignFrames().length,
- Desktop.getAlignmentPanels(af.getViewport().getSequenceSetId()).length);
- Assert.assertEquals(
- Desktop.getAlignmentPanels(af.getViewport().getSequenceSetId()).length,
- oldviews);
- }
-
- /**
- * Test save and reload of a project with a different representative sequence
- * in each view.
- *
- * @throws Exception
- */
- @Test(groups = { "Functional" })
- public void testStoreAndRecoverReferenceSeqSettings() throws Exception
- {
- Desktop.instance.closeAll_actionPerformed(null);
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
- "examples/exampleFile_2_7.jar", DataSourceType.FILE);
- assertNotNull(af, "Didn't read in the example file correctly.");
- String afid = af.getViewport().getSequenceSetId();
-
- // remember reference sequence for each panel
- Map<String, SequenceI> refseqs = new HashMap<>();
-
- /*
- * mark sequence 2, 3, 4.. in panels 1, 2, 3...
- * as reference sequence for itself and the preceding sequence
- */
- int n = 1;
- for (AlignmentViewPanel ap : Desktop.getAlignmentPanels(afid))
- {
- AlignViewportI av = ap.getAlignViewport();
- AlignmentI alignment = ap.getAlignment();
- int repIndex = n % alignment.getHeight();
- SequenceI rep = alignment.getSequenceAt(repIndex);
- refseqs.put(ap.getViewName(), rep);
-
- // code from mark/unmark sequence as reference in jalview.gui.PopupMenu
- // todo refactor this to an alignment view controller
- av.setDisplayReferenceSeq(true);
- av.setColourByReferenceSeq(true);
- av.getAlignment().setSeqrep(rep);
-
- n++;
- }
- File tfile = File.createTempFile("testStoreAndRecoverReferenceSeq",
- ".jvp");
- try
- {
- new Jalview2XML(false).saveState(tfile);
- } catch (Throwable e)
- {
- Assert.fail("Didn't save the expanded view state", e);
- }
- Desktop.instance.closeAll_actionPerformed(null);
- if (Desktop.getAlignFrames() != null)
- {
- Assert.assertEquals(Desktop.getAlignFrames().length, 0);
- }
-
- af = new FileLoader().LoadFileWaitTillLoaded(tfile.getAbsolutePath(),
- DataSourceType.FILE);
- afid = af.getViewport().getSequenceSetId();
-
- for (AlignmentViewPanel ap : Desktop.getAlignmentPanels(afid))
- {
- // check representative
- AlignmentI alignment = ap.getAlignment();
- SequenceI rep = alignment.getSeqrep();
- Assert.assertNotNull(rep,
- "Couldn't restore sequence representative from project");
- // can't use a strong equals here, because by definition, the sequence IDs
- // will be different.
- // could set vamsas session save/restore flag to preserve IDs across
- // load/saves.
- Assert.assertEquals(refseqs.get(ap.getViewName()).toString(),
- rep.toString(),
- "Representative wasn't the same when recovered.");
- Assert.assertTrue(ap.getAlignViewport().isDisplayReferenceSeq(),
- "Display reference sequence view setting not set.");
- Assert.assertTrue(ap.getAlignViewport().isColourByReferenceSeq(),
- "Colour By Reference Seq view setting not set.");
- }
- }
-
- @Test(groups = { "Functional" })
- public void testIsVersionStringLaterThan()
- {
- /*
- * No version / development / test / autobuild is leniently assumed to be
- * compatible
- */
- assertTrue(Jalview2XML.isVersionStringLaterThan(null, null));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3", null));
- assertTrue(Jalview2XML.isVersionStringLaterThan(null, "2.8.3"));
- assertTrue(Jalview2XML.isVersionStringLaterThan(null,
- "Development Build"));
- assertTrue(Jalview2XML.isVersionStringLaterThan(null,
- "DEVELOPMENT BUILD"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3",
- "Development Build"));
- assertTrue(Jalview2XML.isVersionStringLaterThan(null, "Test"));
- assertTrue(Jalview2XML.isVersionStringLaterThan(null, "TEST"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3", "Test"));
- assertTrue(Jalview2XML
- .isVersionStringLaterThan(null, "Automated Build"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3",
- "Automated Build"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3",
- "AUTOMATED BUILD"));
-
- /*
- * same version returns true i.e. compatible
- */
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8", "2.8"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3", "2.8.3"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3b1", "2.8.3b1"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3B1", "2.8.3b1"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3b1", "2.8.3B1"));
-
- /*
- * later version returns true
- */
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3", "2.8.4"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3", "2.9"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3", "2.9.2"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8", "2.8.3"));
- assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3", "2.8.3b1"));
-
- /*
- * earlier version returns false
- */
- assertFalse(Jalview2XML.isVersionStringLaterThan("2.8.3", "2.8"));
- assertFalse(Jalview2XML.isVersionStringLaterThan("2.8.4", "2.8.3"));
- assertFalse(Jalview2XML.isVersionStringLaterThan("2.8.3b1", "2.8.3"));
- assertFalse(Jalview2XML.isVersionStringLaterThan("2.8.3", "2.8.2b1"));
- assertFalse(Jalview2XML.isVersionStringLaterThan("2.8.0b2", "2.8.0b1"));
- }
-
- /**
- * Test save and reload of a project with a different sequence group (and
- * representative sequence) in each view.
- *
- * @throws Exception
- */
- @Test(groups = { "Functional" })
- public void testStoreAndRecoverGroupRepSeqs() throws Exception
- {
- Desktop.instance.closeAll_actionPerformed(null);
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
- "examples/uniref50.fa", DataSourceType.FILE);
- assertNotNull(af, "Didn't read in the example file correctly.");
- String afid = af.getViewport().getSequenceSetId();
- // make a second view of the alignment
- af.newView_actionPerformed(null);
-
- /*
- * remember representative and hidden sequences marked
- * on each panel
- */
- Map<String, SequenceI> repSeqs = new HashMap<>();
- Map<String, List<String>> hiddenSeqNames = new HashMap<>();
-
- /*
- * mark sequence 2, 3, 4.. in panels 1, 2, 3...
- * as reference sequence for itself and the preceding sequence
- */
- int n = 1;
- for (AlignmentViewPanel ap : Desktop.getAlignmentPanels(afid))
- {
- AlignViewportI av = ap.getAlignViewport();
- AlignmentI alignment = ap.getAlignment();
- int repIndex = n % alignment.getHeight();
- // ensure at least one preceding sequence i.e. index >= 1
- repIndex = Math.max(repIndex, 1);
- SequenceI repSeq = alignment.getSequenceAt(repIndex);
- repSeqs.put(ap.getViewName(), repSeq);
- List<String> hiddenNames = new ArrayList<>();
- hiddenSeqNames.put(ap.getViewName(), hiddenNames);
-
- /*
- * have rep sequence represent itself and the one before it
- * this hides the group (except for the rep seq)
- */
- SequenceGroup sg = new SequenceGroup();
- sg.addSequence(repSeq, false);
- SequenceI precedingSeq = alignment.getSequenceAt(repIndex - 1);
- sg.addSequence(precedingSeq, false);
- sg.setSeqrep(repSeq);
- assertTrue(sg.getSequences().contains(repSeq));
- assertTrue(sg.getSequences().contains(precedingSeq));
- av.setSelectionGroup(sg);
- assertSame(repSeq, sg.getSeqrep());
-
- /*
- * represent group with sequence adds to a map of hidden rep sequences
- * (it does not create a group on the alignment)
- */
- ((AlignmentViewport) av).hideSequences(repSeq, true);
- assertSame(repSeq, sg.getSeqrep());
- assertTrue(sg.getSequences().contains(repSeq));
- assertTrue(sg.getSequences().contains(precedingSeq));
- assertTrue(alignment.getGroups().isEmpty(), "alignment has groups");
- Map<SequenceI, SequenceCollectionI> hiddenRepSeqsMap = av
- .getHiddenRepSequences();
- assertNotNull(hiddenRepSeqsMap);
- assertEquals(1, hiddenRepSeqsMap.size());
- assertSame(sg, hiddenRepSeqsMap.get(repSeq));
- assertTrue(alignment.getHiddenSequences().isHidden(precedingSeq));
- assertFalse(alignment.getHiddenSequences().isHidden(repSeq));
- hiddenNames.add(precedingSeq.getName());
-
- n++;
- }
- File tfile = File
- .createTempFile("testStoreAndRecoverGroupReps", ".jvp");
- try
- {
- new Jalview2XML(false).saveState(tfile);
- } catch (Throwable e)
- {
- Assert.fail("Didn't save the expanded view state", e);
- }
- Desktop.instance.closeAll_actionPerformed(null);
- if (Desktop.getAlignFrames() != null)
- {
- Assert.assertEquals(Desktop.getAlignFrames().length, 0);
- }
-
- af = new FileLoader().LoadFileWaitTillLoaded(tfile.getAbsolutePath(),
- DataSourceType.FILE);
- afid = af.getViewport().getSequenceSetId();
-
- for (AlignmentViewPanel ap : Desktop.getAlignmentPanels(afid))
- {
- String viewName = ap.getViewName();
- AlignViewportI av = ap.getAlignViewport();
- AlignmentI alignment = ap.getAlignment();
- List<SequenceGroup> groups = alignment.getGroups();
- assertNotNull(groups);
- assertTrue(groups.isEmpty(), "Alignment has groups");
- Map<SequenceI, SequenceCollectionI> hiddenRepSeqsMap = av
- .getHiddenRepSequences();
- assertNotNull(hiddenRepSeqsMap, "No hidden represented sequences");
- assertEquals(1, hiddenRepSeqsMap.size());
- assertEquals(repSeqs.get(viewName).getDisplayId(true),
- hiddenRepSeqsMap.keySet().iterator().next()
- .getDisplayId(true));
-
- /*
- * verify hidden sequences in restored panel
- */
- List<String> hidden = hiddenSeqNames.get(ap.getViewName());
- HiddenSequences hs = alignment.getHiddenSequences();
- assertEquals(
- hidden.size(),
- hs.getSize(),
- "wrong number of restored hidden sequences in "
- + ap.getViewName());
- }
- }
-
- /**
- * Test save and reload of PDBEntry in Jalview project
- *
- * @throws Exception
- */
- @Test(groups = { "Functional" })
- public void testStoreAndRecoverPDBEntry() throws Exception
- {
- Desktop.instance.closeAll_actionPerformed(null);
- String exampleFile = "examples/3W5V.pdb";
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(exampleFile,
- DataSourceType.FILE);
- assertNotNull(af, "Didn't read in the example file correctly.");
- String afid = af.getViewport().getSequenceSetId();
-
- AlignmentPanel[] alignPanels = Desktop.getAlignmentPanels(afid);
- System.out.println();
- AlignmentViewPanel ap = alignPanels[0];
- String tfileBase = new File(".").getAbsolutePath().replace(".", "");
- String testFile = tfileBase + exampleFile;
- AlignmentI alignment = ap.getAlignment();
- System.out.println("blah");
- SequenceI[] seqs = alignment.getSequencesArray();
- Assert.assertNotNull(seqs[0]);
- Assert.assertNotNull(seqs[1]);
- Assert.assertNotNull(seqs[2]);
- Assert.assertNotNull(seqs[3]);
- Assert.assertNotNull(seqs[0].getDatasetSequence());
- Assert.assertNotNull(seqs[1].getDatasetSequence());
- Assert.assertNotNull(seqs[2].getDatasetSequence());
- Assert.assertNotNull(seqs[3].getDatasetSequence());
- PDBEntry[] pdbEntries = new PDBEntry[4];
- pdbEntries[0] = new PDBEntry("3W5V", "A", Type.PDB, testFile);
- pdbEntries[1] = new PDBEntry("3W5V", "B", Type.PDB, testFile);
- pdbEntries[2] = new PDBEntry("3W5V", "C", Type.PDB, testFile);
- pdbEntries[3] = new PDBEntry("3W5V", "D", Type.PDB, testFile);
- Assert.assertEquals(seqs[0].getDatasetSequence().getAllPDBEntries()
- .get(0), pdbEntries[0]);
- Assert.assertEquals(seqs[1].getDatasetSequence().getAllPDBEntries()
- .get(0), pdbEntries[1]);
- Assert.assertEquals(seqs[2].getDatasetSequence().getAllPDBEntries()
- .get(0), pdbEntries[2]);
- Assert.assertEquals(seqs[3].getDatasetSequence().getAllPDBEntries()
- .get(0), pdbEntries[3]);
-
- File tfile = File.createTempFile("testStoreAndRecoverPDBEntry", ".jvp");
- try
- {
- new Jalview2XML(false).saveState(tfile);
- } catch (Throwable e)
- {
- Assert.fail("Didn't save the state", e);
- }
- Desktop.instance.closeAll_actionPerformed(null);
- if (Desktop.getAlignFrames() != null)
- {
- Assert.assertEquals(Desktop.getAlignFrames().length, 0);
- }
-
- AlignFrame restoredFrame = new FileLoader().LoadFileWaitTillLoaded(
- tfile.getAbsolutePath(), DataSourceType.FILE);
- String rfid = restoredFrame.getViewport().getSequenceSetId();
- AlignmentPanel[] rAlignPanels = Desktop.getAlignmentPanels(rfid);
- AlignmentViewPanel rap = rAlignPanels[0];
- AlignmentI rAlignment = rap.getAlignment();
- System.out.println("blah");
- SequenceI[] rseqs = rAlignment.getSequencesArray();
- Assert.assertNotNull(rseqs[0]);
- Assert.assertNotNull(rseqs[1]);
- Assert.assertNotNull(rseqs[2]);
- Assert.assertNotNull(rseqs[3]);
- Assert.assertNotNull(rseqs[0].getDatasetSequence());
- Assert.assertNotNull(rseqs[1].getDatasetSequence());
- Assert.assertNotNull(rseqs[2].getDatasetSequence());
- Assert.assertNotNull(rseqs[3].getDatasetSequence());
-
- // The Asserts below are expected to fail until the PDB chainCode is
- // recoverable from a Jalview projects
- for (int chain = 0; chain < 4; chain++)
- {
- PDBEntry recov = rseqs[chain].getDatasetSequence().getAllPDBEntries()
- .get(0);
- PDBEntry expected = pdbEntries[chain];
- Assert.assertEquals(recov.getId(), expected.getId(),
- "Mismatch PDB ID");
- Assert.assertEquals(recov.getChainCode(), expected.getChainCode(),
- "Mismatch PDB ID");
- Assert.assertEquals(recov.getType(), expected.getType(),
- "Mismatch PDBEntry 'Type'");
- Assert.assertNotNull(recov.getFile(),
- "Recovered PDBEntry should have a non-null file entry");
- }
- }
-
- /**
- * Configure an alignment and a sub-group each with distinct colour schemes,
- * Conservation and PID thresholds, and confirm these are restored from the
- * saved project.
- *
- * @throws IOException
- */
- @Test(groups = { "Functional" })
- public void testStoreAndRecoverColourThresholds() throws IOException
- {
- Desktop.instance.closeAll_actionPerformed(null);
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
- "examples/uniref50.fa", DataSourceType.FILE);
-
- AlignViewport av = af.getViewport();
- AlignmentI al = av.getAlignment();
-
- /*
- * Colour alignment by Buried Index, Above 10% PID, By Conservation 20%
- */
- af.changeColour_actionPerformed(JalviewColourScheme.Buried.toString());
- assertTrue(av.getGlobalColourScheme() instanceof BuriedColourScheme);
- af.abovePIDThreshold_actionPerformed(true);
- SliderPanel sp = SliderPanel.getSliderPanel();
- assertFalse(sp.isForConservation());
- sp.valueChanged(10);
- af.conservationMenuItem_actionPerformed(true);
- sp = SliderPanel.getSliderPanel();
- assertTrue(sp.isForConservation());
- sp.valueChanged(20);
- ResidueShaderI rs = av.getResidueShading();
- assertEquals(rs.getThreshold(), 10);
- assertTrue(rs.conservationApplied());
- assertEquals(rs.getConservationInc(), 20);
-
- /*
- * create a group with Strand colouring, 30% Conservation
- * and 40% PID threshold
- */
- SequenceGroup sg = new SequenceGroup();
- sg.addSequence(al.getSequenceAt(0), false);
- sg.setStartRes(15);
- sg.setEndRes(25);
- av.setSelectionGroup(sg);
- PopupMenu popupMenu = new PopupMenu(af.alignPanel, null, null);
- popupMenu.changeColour_actionPerformed(JalviewColourScheme.Strand
- .toString());
- assertTrue(sg.getColourScheme() instanceof StrandColourScheme);
- assertEquals(al.getGroups().size(), 1);
- assertSame(al.getGroups().get(0), sg);
- popupMenu.conservationMenuItem_actionPerformed(true);
- sp = SliderPanel.getSliderPanel();
- assertTrue(sp.isForConservation());
- sp.valueChanged(30);
- popupMenu.abovePIDColour_actionPerformed(true);
- sp = SliderPanel.getSliderPanel();
- assertFalse(sp.isForConservation());
- sp.valueChanged(40);
- assertTrue(sg.getGroupColourScheme().conservationApplied());
- assertEquals(sg.getGroupColourScheme().getConservationInc(), 30);
- assertEquals(sg.getGroupColourScheme().getThreshold(), 40);
-
- /*
- * save project, close windows, reload project, verify
- */
- File tfile = File.createTempFile("testStoreAndRecoverColourThresholds",
- ".jvp");
- tfile.deleteOnExit();
- new Jalview2XML(false).saveState(tfile);
- Desktop.instance.closeAll_actionPerformed(null);
- af = new FileLoader().LoadFileWaitTillLoaded(tfile.getAbsolutePath(),
- DataSourceType.FILE);
- Assert.assertNotNull(af, "Failed to reload project");
-
- /*
- * verify alignment (background) colouring
- */
- rs = af.getViewport().getResidueShading();
- assertTrue(rs.getColourScheme() instanceof BuriedColourScheme);
- assertEquals(rs.getThreshold(), 10);
- assertTrue(rs.conservationApplied());
- assertEquals(rs.getConservationInc(), 20);
-
- /*
- * verify group colouring
- */
- assertEquals(1, af.getViewport().getAlignment().getGroups().size(), 1);
- rs = af.getViewport().getAlignment().getGroups().get(0)
- .getGroupColourScheme();
- assertTrue(rs.getColourScheme() instanceof StrandColourScheme);
- assertEquals(rs.getThreshold(), 40);
- assertTrue(rs.conservationApplied());
- assertEquals(rs.getConservationInc(), 30);
- }
-
- /**
- * Test save and reload of feature colour schemes and filter settings
- *
- * @throws IOException
- */
- @Test(groups = { "Functional" })
- public void testSaveLoadFeatureColoursAndFilters() throws IOException
- {
- AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
- ">Seq1\nACDEFGHIKLM", DataSourceType.PASTE);
- SequenceI seq1 = af.getViewport().getAlignment().getSequenceAt(0);
-
- /*
- * add some features to the sequence
- */
- int score = 1;
- addFeatures(seq1, "type1", score++);
- addFeatures(seq1, "type2", score++);
- addFeatures(seq1, "type3", score++);
- addFeatures(seq1, "type4", score++);
- addFeatures(seq1, "type5", score++);
-
- /*
- * set colour schemes for features
- */
- FeatureRenderer fr = af.getFeatureRenderer();
- fr.findAllFeatures(true);
-
- // type1: red
- fr.setColour("type1", new FeatureColour(Color.red));
-
- // type2: by label
- FeatureColourI byLabel = new FeatureColour();
- byLabel.setColourByLabel(true);
- fr.setColour("type2", byLabel);
-
- // type3: by score above threshold
- FeatureColourI byScore = new FeatureColour(Color.BLACK, Color.BLUE, 1,
- 10);
- byScore.setAboveThreshold(true);
- byScore.setThreshold(2f);
- fr.setColour("type3", byScore);
-
- // type4: by attribute AF
- FeatureColourI byAF = new FeatureColour();
- byAF.setColourByLabel(true);
- byAF.setAttributeName("AF");
- fr.setColour("type4", byAF);
-
- // type5: by attribute CSQ:PolyPhen below threshold
- FeatureColourI byPolyPhen = new FeatureColour(Color.BLACK, Color.BLUE,
- 1, 10);
- byPolyPhen.setBelowThreshold(true);
- byPolyPhen.setThreshold(3f);
- byPolyPhen.setAttributeName("CSQ", "PolyPhen");
- fr.setColour("type5", byPolyPhen);
-
- /*
- * set filters for feature types
- */
-
- // filter type1 features by (label contains "x")
- FeatureMatcherSetI filterByX = new FeatureMatcherSet();
- filterByX.and(FeatureMatcher.byLabel(Condition.Contains, "x"));
- fr.setFeatureFilter("type1", filterByX);
-
- // filter type2 features by (score <= 2.4 and score > 1.1)
- FeatureMatcherSetI filterByScore = new FeatureMatcherSet();
- filterByScore.and(FeatureMatcher.byScore(Condition.LE, "2.4"));
- filterByScore.and(FeatureMatcher.byScore(Condition.GT, "1.1"));
- fr.setFeatureFilter("type2", filterByScore);
-
- // filter type3 features by (AF contains X OR CSQ:PolyPhen != 0)
- FeatureMatcherSetI filterByXY = new FeatureMatcherSet();
- filterByXY
- .and(FeatureMatcher.byAttribute(Condition.Contains, "X", "AF"));
- filterByXY.or(FeatureMatcher.byAttribute(Condition.NE, "0", "CSQ",
- "PolyPhen"));
- fr.setFeatureFilter("type3", filterByXY);
-
- /*
- * save as Jalview project
- */
- File tfile = File.createTempFile("JalviewTest", ".jvp");
- tfile.deleteOnExit();
- String filePath = tfile.getAbsolutePath();
- af.saveAlignment(filePath, FileFormat.Jalview);
- assertTrue(af.isSaveAlignmentSuccessful(),
- "Failed to store as a project.");
-
- /*
- * close current alignment and load the saved project
- */
- af.closeMenuItem_actionPerformed(true);
- af = null;
- af = new FileLoader()
- .LoadFileWaitTillLoaded(filePath, DataSourceType.FILE);
- assertNotNull(af, "Failed to import new project");
-
- /*
- * verify restored feature colour schemes and filters
- */
- fr = af.getFeatureRenderer();
- FeatureColourI fc = fr.getFeatureStyle("type1");
- assertTrue(fc.isSimpleColour());
- assertEquals(fc.getColour(), Color.red);
- fc = fr.getFeatureStyle("type2");
- assertTrue(fc.isColourByLabel());
- fc = fr.getFeatureStyle("type3");
- assertTrue(fc.isGraduatedColour());
- assertNull(fc.getAttributeName());
- assertTrue(fc.isAboveThreshold());
- assertEquals(fc.getThreshold(), 2f);
- fc = fr.getFeatureStyle("type4");
- assertTrue(fc.isColourByLabel());
- assertTrue(fc.isColourByAttribute());
- assertEquals(fc.getAttributeName(), new String[] { "AF" });
- fc = fr.getFeatureStyle("type5");
- assertTrue(fc.isGraduatedColour());
- assertTrue(fc.isColourByAttribute());
- assertEquals(fc.getAttributeName(), new String[] { "CSQ", "PolyPhen" });
- assertTrue(fc.isBelowThreshold());
- assertEquals(fc.getThreshold(), 3f);
-
- assertEquals(fr.getFeatureFilter("type1").toStableString(),
- "Label Contains x");
- assertEquals(fr.getFeatureFilter("type2").toStableString(),
- "(Score LE 2.4) AND (Score GT 1.1)");
- assertEquals(fr.getFeatureFilter("type3").toStableString(),
- "(AF Contains X) OR (CSQ:PolyPhen NE 0.0)");
- }
-
- private void addFeature(SequenceI seq, String featureType, int score)
- {
- SequenceFeature sf = new SequenceFeature(featureType, "desc", 1, 2,
- score, "grp");
- sf.setValue("AF", score);
- sf.setValue("CSQ", new HashMap<String, String>()
- {
- {
- put("PolyPhen", Integer.toString(score));
- }
- });
- seq.addSequenceFeature(sf);
- }
-
- /**
- * Adds two features of the given type to the given sequence, also setting the
- * score as the value of attribute "AF" and sub-attribute "CSQ:PolyPhen"
- *
- * @param seq
- * @param featureType
- * @param score
- */
- private void addFeatures(SequenceI seq, String featureType, int score)
- {
- addFeature(seq, featureType, score++);
- addFeature(seq, featureType, score);
- }
-}
import java.io.IOException;
import java.net.MalformedURLException;
+import org.testng.annotations.AfterMethod;
import org.testng.annotations.Test;
public class ScoreMatrixFileTest
{
+ @AfterMethod(alwaysRun=true)
+ public void tearDownAfterTest()
+ {
+ ScoreModels.getInstance().reset();
+ }
+
/**
* Test a successful parse of a (small) score matrix file
*
import java.awt.Color;
import java.util.Map;
-import junit.extensions.PA;
-
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
+import junit.extensions.PA;
+
public class SequenceAnnotationReportTest
{
/*
* then with colour by an attribute the feature lacks
*/
- FeatureColourI fc = new FeatureColour(Color.white, Color.black, 5, 10);
+ FeatureColourI fc = new FeatureColour(null, Color.white, Color.black,
+ null, 5, 10);
fc.setAttributeName("Pfam");
fr.setColour("METAL", fc);
sb.setLength(0);
FeatureRendererModel fr = new FeatureRenderer(null);
Map<String, float[][]> minmax = fr.getMinMax();
- FeatureColourI fc = new FeatureColour(Color.white, Color.blue, 12, 22);
+ FeatureColourI fc = new FeatureColour(null, Color.white, Color.blue,
+ null, 12, 22);
fc.setAttributeName("clinical_significance");
fr.setColour("METAL", fc);
minmax.put("METAL", new float[][] { { 0f, 1f }, null });
// with showDbRefs = true, colour Variant features by clinical_significance
sb.setLength(0);
- FeatureColourI fc = new FeatureColour(Color.green, Color.pink, 2, 3);
+ FeatureColourI fc = new FeatureColour(null, Color.green, Color.pink,
+ null, 2, 3);
fc.setAttributeName("clinical_significance");
fr.setColour("Variant", fc);
sar.createSequenceAnnotationReport(sb, seq, true, true, fr);
#---JalviewX Properties File---
#Fri Apr 25 09:54:25 BST 2014
+#
+BACKUPFILES_ROLL_MAX=2
+BACKUPFILES_REVERSE_ORDER=false
+BACKUPFILES_SUFFIX=_BACKUPFILESTESTTMP%n
+BACKUPFILES_CONFIRM_DELETE_OLD=false
+BACKUPFILES_NO_MAX=false
+BACKUPFILES_ENABLED=true
+BACKUPFILES_SUFFIX_DIGITS=8
SCREEN_Y=768
SCREEN_X=936
SHOW_WSDISCOVERY_ERRORS=true
// insertion G/GA is transferred to nucleotide but not to peptide
"17\t45051613\t.\tG\tGA,C\t1666.64\tRF\tAC=15;AF=3.0e-03,2.0e-03" };
- @BeforeClass
+ @BeforeClass(alwaysRun = true)
public void setUp()
{
/*
assertEquals(sf.getFeatureGroup(), "VCF");
assertEquals(sf.getBegin(), 2);
assertEquals(sf.getEnd(), 2);
- assertEquals(sf.getScore(), 4.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 4.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "A,C");
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
sf = geneFeatures.get(1);
assertEquals(sf.getBegin(), 2);
assertEquals(sf.getEnd(), 2);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 5.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 5.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "A,T");
sf = geneFeatures.get(2);
assertEquals(sf.getBegin(), 4);
assertEquals(sf.getEnd(), 4);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 2.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 2.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "G,C");
sf = geneFeatures.get(3);
assertEquals(sf.getBegin(), 4);
assertEquals(sf.getEnd(), 4);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 3.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 3.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "G,GA");
/*
assertEquals(sf.getBegin(), 2);
assertEquals(sf.getEnd(), 2);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 2.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 2.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "G,C");
sf = transcriptFeatures.get(1);
assertEquals(sf.getFeatureGroup(), "VCF");
assertEquals(sf.getBegin(), 2);
assertEquals(sf.getEnd(), 2);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 3.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 3.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "G,GA");
/*
assertEquals(sf.getBegin(), 24);
assertEquals(sf.getEnd(), 24);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 5.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 5.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "T,A");
/*
assertEquals(sf.getBegin(), 24);
assertEquals(sf.getEnd(), 24);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 4.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 4.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "T,G");
/*
assertEquals(sf.getBegin(), 22);
assertEquals(sf.getEnd(), 22);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 2.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 2.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "C,G");
/*
assertEquals(sf.getBegin(), 21);
assertEquals(sf.getEnd(), 21);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 3.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 3.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "G,GT");
/*
assertEquals(sf.getBegin(), 16);
assertEquals(sf.getEnd(), 16);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 3.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 3.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "G,GT");
/*
assertEquals(sf.getBegin(), 17);
assertEquals(sf.getEnd(), 17);
assertEquals(sf.getType(), SequenceOntologyI.SEQUENCE_VARIANT);
- assertEquals(sf.getScore(), 2.0e-03, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 2.0e-03,
+ DELTA);
assertEquals(sf.getValue(Gff3Helper.ALLELES), "C,G");
/*
SequenceFeature sf = geneFeatures.get(0);
assertEquals(sf.getBegin(), 1);
assertEquals(sf.getEnd(), 1);
- assertEquals(sf.getScore(), 0.1f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.1f, DELTA);
assertEquals(sf.getValue("alleles"), "C,A");
// gene features include Consequence for all transcripts
Map map = (Map) sf.getValue("CSQ");
sf = geneFeatures.get(1);
assertEquals(sf.getBegin(), 5);
assertEquals(sf.getEnd(), 5);
- assertEquals(sf.getScore(), 0.2f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.2f, DELTA);
assertEquals(sf.getValue("alleles"), "C,T");
map = (Map) sf.getValue("CSQ");
assertEquals(map.size(), 9);
sf = geneFeatures.get(2);
assertEquals(sf.getBegin(), 9);
assertEquals(sf.getEnd(), 11); // deletion over 3 positions
- assertEquals(sf.getScore(), 0.3f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.3f, DELTA);
assertEquals(sf.getValue("alleles"), "CGG,C");
map = (Map) sf.getValue("CSQ");
assertEquals(map.size(), 9);
sf = geneFeatures.get(3);
assertEquals(sf.getBegin(), 13);
assertEquals(sf.getEnd(), 13);
- assertEquals(sf.getScore(), 0.5f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.5f, DELTA);
assertEquals(sf.getValue("alleles"), "C,T");
map = (Map) sf.getValue("CSQ");
assertEquals(map.size(), 9);
sf = geneFeatures.get(4);
assertEquals(sf.getBegin(), 13);
assertEquals(sf.getEnd(), 13);
- assertEquals(sf.getScore(), 0.4f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.4f, DELTA);
assertEquals(sf.getValue("alleles"), "C,G");
map = (Map) sf.getValue("CSQ");
assertEquals(map.size(), 9);
sf = geneFeatures.get(5);
assertEquals(sf.getBegin(), 17);
assertEquals(sf.getEnd(), 17);
- assertEquals(sf.getScore(), 0.7f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.7f, DELTA);
assertEquals(sf.getValue("alleles"), "A,G");
map = (Map) sf.getValue("CSQ");
assertEquals(map.size(), 9);
sf = geneFeatures.get(6);
assertEquals(sf.getBegin(), 17);
assertEquals(sf.getEnd(), 17); // insertion
- assertEquals(sf.getScore(), 0.6f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.6f, DELTA);
assertEquals(sf.getValue("alleles"), "A,AC");
map = (Map) sf.getValue("CSQ");
assertEquals(map.size(), 9);
sf = transcriptFeatures.get(0);
assertEquals(sf.getBegin(), 3);
assertEquals(sf.getEnd(), 3);
- assertEquals(sf.getScore(), 0.2f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.2f, DELTA);
assertEquals(sf.getValue("alleles"), "C,T");
// transcript features only have Consequence for that transcripts
map = (Map) sf.getValue("CSQ");
sf = transcriptFeatures.get(1);
assertEquals(sf.getBegin(), 11);
assertEquals(sf.getEnd(), 11);
- assertEquals(sf.getScore(), 0.7f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.7f, DELTA);
assertEquals(sf.getValue("alleles"), "A,G");
assertEquals(map.size(), 9);
assertEquals(sf.getValueAsString("CSQ", "Feature"), "transcript3");
sf = transcriptFeatures.get(2);
assertEquals(sf.getBegin(), 11);
assertEquals(sf.getEnd(), 11);
- assertEquals(sf.getScore(), 0.6f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.6f, DELTA);
assertEquals(sf.getValue("alleles"), "A,AC");
assertEquals(map.size(), 9);
assertEquals(sf.getValueAsString("CSQ", "Feature"), "transcript3");
sf = transcriptFeatures.get(0);
assertEquals(sf.getBegin(), 7);
assertEquals(sf.getEnd(), 7);
- assertEquals(sf.getScore(), 0.5f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.5f, DELTA);
assertEquals(sf.getValue("alleles"), "C,T");
assertEquals(map.size(), 9);
assertEquals(sf.getValueAsString("CSQ", "Feature"), "transcript4");
sf = transcriptFeatures.get(1);
assertEquals(sf.getBegin(), 7);
assertEquals(sf.getEnd(), 7);
- assertEquals(sf.getScore(), 0.4f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.4f, DELTA);
assertEquals(sf.getValue("alleles"), "C,G");
assertEquals(map.size(), 9);
assertEquals(sf.getValueAsString("CSQ", "Feature"), "transcript4");
sf = transcriptFeatures.get(2);
assertEquals(sf.getBegin(), 11);
assertEquals(sf.getEnd(), 11);
- assertEquals(sf.getScore(), 0.7f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.7f, DELTA);
assertEquals(sf.getValue("alleles"), "A,G");
assertEquals(map.size(), 9);
assertEquals(sf.getValueAsString("CSQ", "Feature"), "transcript4");
sf = transcriptFeatures.get(3);
assertEquals(sf.getBegin(), 11);
assertEquals(sf.getEnd(), 11);
- assertEquals(sf.getScore(), 0.6f, DELTA);
+ assertEquals(sf.getScore(), 0f);
+ assertEquals(Float.parseFloat((String) sf.getValue("AF")), 0.6f, DELTA);
assertEquals(sf.getValue("alleles"), "A,AC");
assertEquals(map.size(), 9);
assertEquals(sf.getValueAsString("CSQ", "Feature"), "transcript4");
package jalview.math;
import static org.testng.Assert.assertEquals;
+import static org.testng.Assert.assertFalse;
import static org.testng.Assert.assertNotSame;
import static org.testng.Assert.assertNull;
import static org.testng.Assert.assertTrue;
}
}
Matrix m1 = new Matrix(in);
+
Matrix m2 = (Matrix) m1.copy();
assertNotSame(m1, m2);
assertTrue(matrixEquals(m1, m2));
+ assertNull(m2.d);
+ assertNull(m2.e);
+
+ /*
+ * now add d and e vectors and recopy
+ */
+ m1.d = Arrays.copyOf(in[2], in[2].length);
+ m1.e = Arrays.copyOf(in[4], in[4].length);
+ m2 = (Matrix) m1.copy();
+ assertNotSame(m2.d, m1.d);
+ assertNotSame(m2.e, m1.e);
+ assertEquals(m2.d, m1.d);
+ assertEquals(m2.e, m1.e);
}
/**
assertMatricesMatch(m1, m2);
}
- private void assertMatricesMatch(MatrixI m1, MatrixI m2)
+ public static void assertMatricesMatch(MatrixI m1, MatrixI m2)
{
if (m1.height() != m2.height())
{
}
}
}
- ArrayAsserts.assertArrayEquals(m1.getD(), m2.getD(), 0.00001d);
- ArrayAsserts.assertArrayEquals(m1.getE(), m2.getE(), 0.00001d);
+ ArrayAsserts.assertArrayEquals("D vector", m1.getD(), m2.getD(),
+ 0.00001d);
+ ArrayAsserts.assertArrayEquals("E vector", m1.getE(), m2.getE(),
+ 0.00001d);
}
@Test(groups = "Functional")
values[0][0] = -1d;
assertEquals(m.getValue(0, 0), 1d, DELTA); // unchanged
}
+
+ @Test(groups = "Functional")
+ public void testEquals()
+ {
+ double[][] values = new double[][] { { 1, 2, 3 }, { 4, 5, 6 } };
+ Matrix m1 = new Matrix(values);
+ double[][] values2 = new double[][] { { 1, 2, 3 }, { 4, 5, 6 } };
+ Matrix m2 = new Matrix(values2);
+
+ double delta = 0.0001d;
+ assertTrue(m1.equals(m1, delta));
+ assertTrue(m1.equals(m2, delta));
+ assertTrue(m2.equals(m1, delta));
+
+ double[][] values3 = new double[][] { { 1, 2, 3 }, { 4, 5, 7 } };
+ m2 = new Matrix(values3);
+ assertFalse(m1.equals(m2, delta));
+ assertFalse(m2.equals(m1, delta));
+
+ // must be same shape
+ values2 = new double[][] { { 1, 2, 3 } };
+ m2 = new Matrix(values2);
+ assertFalse(m2.equals(m1, delta));
+
+ assertFalse(m1.equals(null, delta));
+ }
}
--- /dev/null
+package jalview.math;
+
+import static org.testng.Assert.assertEquals;
+
+import jalview.math.RotatableMatrix.Axis;
+
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+public class RotatableMatrixTest
+{
+ private RotatableMatrix rm;
+
+ @BeforeMethod(alwaysRun = true)
+ public void setUp()
+ {
+ rm = new RotatableMatrix();
+
+ /*
+ * 0.5 1.0 1.5
+ * 1.0 2.0 3.0
+ * 1.5 3.0 4.5
+ */
+ for (int i = 1; i <= 3; i++)
+ {
+ for (int j = 1; j <= 3; j++)
+ {
+ rm.setValue(i - 1, j - 1, i * j / 2f);
+ }
+ }
+ }
+
+ @Test(groups = "Functional")
+ public void testPreMultiply()
+ {
+ float[][] pre = new float[3][3];
+ int i = 1;
+ for (int j = 0; j < 3; j++)
+ {
+ for (int k = 0; k < 3; k++)
+ {
+ pre[j][k] = i++;
+ }
+ }
+
+ rm.preMultiply(pre);
+
+ /*
+ * check rm[i, j] is now the product of the i'th row of pre
+ * and the j'th column of (original) rm
+ */
+ for (int j = 0; j < 3; j++)
+ {
+ for (int k = 0; k < 3; k++)
+ {
+ float expected = 0f;
+ for (int l = 0; l < 3; l++)
+ {
+ float rm_l_k = (l + 1) * (k + 1) / 2f;
+ expected += pre[j][l] * rm_l_k;
+ }
+ assertEquals(rm.getValue(j, k), expected,
+ String.format("[%d, %d]", j, k));
+ }
+ }
+ }
+
+ @Test(groups = "Functional")
+ public void testVectorMultiply()
+ {
+ float[] result = rm.vectorMultiply(new float[] { 2f, 3f, 4.5f });
+
+ // vector times first column of matrix
+ assertEquals(result[0], 2f * 0.5f + 3f * 1f + 4.5f * 1.5f);
+
+ // vector times second column of matrix
+ assertEquals(result[1], 2f * 1.0f + 3f * 2f + 4.5f * 3f);
+
+ // vector times third column of matrix
+ assertEquals(result[2], 2f * 1.5f + 3f * 3f + 4.5f * 4.5f);
+ }
+
+ @Test(groups = "Functional")
+ public void testGetRotation()
+ {
+ float theta = 60f;
+ double cosTheta = Math.cos((theta * Math.PI / 180f));
+ double sinTheta = Math.sin((theta * Math.PI / 180f));
+
+ /*
+ * sanity check that sin(60) = sqrt(3) / 2, cos(60) = 1/2
+ */
+ double delta = 0.0001d;
+ assertEquals(cosTheta, 0.5f, delta);
+ assertEquals(sinTheta, Math.sqrt(3d) / 2d, delta);
+
+ /*
+ * so far so good, now verify rotations
+ * @see https://en.wikipedia.org/wiki/Rotation_matrix#Basic_rotations
+ */
+
+ /*
+ * 60 degrees about X axis should be
+ * 1 0 0
+ * 0 cos -sin
+ * 0 sin cos
+ * but code applies the negative of this
+ * nb cos(-x) = cos(x), sin(-x) = -sin(x)
+ */
+ float[][] rot = RotatableMatrix.getRotation(theta, Axis.X);
+ assertEquals(rot[0][0], 1f, delta);
+ assertEquals(rot[0][1], 0f, delta);
+ assertEquals(rot[0][2], 0f, delta);
+ assertEquals(rot[1][0], 0f, delta);
+ assertEquals(rot[1][1], cosTheta, delta);
+ assertEquals(rot[1][2], sinTheta, delta);
+ assertEquals(rot[2][0], 0f, delta);
+ assertEquals(rot[2][1], -sinTheta, delta);
+ assertEquals(rot[2][2], cosTheta, delta);
+
+ /*
+ * 60 degrees about Y axis should be
+ * cos 0 sin
+ * 0 1 0
+ * -sin 0 cos
+ * but code applies the negative of this
+ */
+ rot = RotatableMatrix.getRotation(theta, Axis.Y);
+ assertEquals(rot[0][0], cosTheta, delta);
+ assertEquals(rot[0][1], 0f, delta);
+ assertEquals(rot[0][2], -sinTheta, delta);
+ assertEquals(rot[1][0], 0f, delta);
+ assertEquals(rot[1][1], 1f, delta);
+ assertEquals(rot[1][2], 0f, delta);
+ assertEquals(rot[2][0], sinTheta, delta);
+ assertEquals(rot[2][1], 0f, delta);
+ assertEquals(rot[2][2], cosTheta, delta);
+
+ /*
+ * 60 degrees about Z axis should be
+ * cos -sin 0
+ * sin cos 0
+ * 0 0 1
+ * - and it is!
+ */
+ rot = RotatableMatrix.getRotation(theta, Axis.Z);
+ assertEquals(rot[0][0], cosTheta, delta);
+ assertEquals(rot[0][1], -sinTheta, delta);
+ assertEquals(rot[0][2], 0f, delta);
+ assertEquals(rot[1][0], sinTheta, delta);
+ assertEquals(rot[1][1], cosTheta, delta);
+ assertEquals(rot[1][2], 0f, delta);
+ assertEquals(rot[2][0], 0f, delta);
+ assertEquals(rot[2][1], 0f, delta);
+ assertEquals(rot[2][2], 1f, delta);
+ }
+}
import static org.testng.Assert.assertSame;
import static org.testng.Assert.assertTrue;
+import jalview.analysis.scoremodels.SimilarityParams;
import jalview.api.AlignViewportI;
import jalview.api.AlignmentViewPanel;
import jalview.api.FeatureColourI;
import jalview.gui.Desktop;
import jalview.gui.FeatureRenderer;
import jalview.gui.JvOptionPane;
+import jalview.gui.PCAPanel;
import jalview.gui.PopupMenu;
import jalview.gui.SliderPanel;
import jalview.io.DataSourceType;
import java.util.List;
import java.util.Map;
+import javax.swing.JInternalFrame;
+
import org.testng.Assert;
import org.testng.AssertJUnit;
import org.testng.annotations.BeforeClass;
assertNotNull(af, "Didn't read input file " + inFile);
int olddsann = countDsAnn(af.getViewport());
assertTrue(olddsann > 0, "Didn't find any dataset annotations");
- af.changeColour_actionPerformed(JalviewColourScheme.RNAHelices
- .toString());
+ af.changeColour_actionPerformed(
+ JalviewColourScheme.RNAHelices.toString());
assertTrue(
- af.getViewport().getGlobalColourScheme() instanceof RNAHelicesColour,
+ af.getViewport()
+ .getGlobalColourScheme() instanceof RNAHelicesColour,
"Couldn't apply RNA helices colourscheme");
af.saveAlignment(tfile, FileFormat.Jalview);
assertTrue(af.isSaveAlignmentSuccessful(),
"Failed to store as a project.");
af.closeMenuItem_actionPerformed(true);
af = null;
- af = new FileLoader()
- .LoadFileWaitTillLoaded(tfile, DataSourceType.FILE);
+ af = new FileLoader().LoadFileWaitTillLoaded(tfile,
+ DataSourceType.FILE);
assertNotNull(af, "Failed to import new project");
int newdsann = countDsAnn(af.getViewport());
assertEquals(olddsann, newdsann,
"Differing numbers of dataset sequence annotation\nOriginally "
+ olddsann + " and now " + newdsann);
- System.out
- .println("Read in same number of annotations as originally present ("
+ System.out.println(
+ "Read in same number of annotations as originally present ("
+ olddsann + ")");
assertTrue(
- af.getViewport().getGlobalColourScheme() instanceof RNAHelicesColour,
+ af.getViewport()
+ .getGlobalColourScheme() instanceof RNAHelicesColour,
"RNA helices colourscheme was not applied on import.");
}
@Test(groups = { "Functional" })
public void testTCoffeeScores() throws Exception
{
- String inFile = "examples/uniref50.fa", inAnnot = "examples/uniref50.score_ascii";
+ String inFile = "examples/uniref50.fa",
+ inAnnot = "examples/uniref50.score_ascii";
String tfile = File.createTempFile("JalviewTest", ".jvp")
.getAbsolutePath();
AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(inFile,
DataSourceType.FILE);
assertNotNull(af, "Didn't read input file " + inFile);
af.loadJalviewDataFile(inAnnot, DataSourceType.FILE, null, null);
- assertSame(af.getViewport().getGlobalColourScheme().getClass(),
+ AlignViewport viewport = af.getViewport();
+ assertSame(viewport.getGlobalColourScheme().getClass(),
TCoffeeColourScheme.class, "Didn't set T-coffee colourscheme");
- assertNotNull(ColourSchemeProperty.getColourScheme(af.getViewport()
- .getAlignment(), af.getViewport().getGlobalColourScheme()
- .getSchemeName()), "Recognise T-Coffee score from string");
+ assertNotNull(
+ ColourSchemeProperty.getColourScheme(viewport,
+ viewport.getAlignment(),
+ viewport.getGlobalColourScheme()
+ .getSchemeName()),
+ "Recognise T-Coffee score from string");
af.saveAlignment(tfile, FileFormat.Jalview);
assertTrue(af.isSaveAlignmentSuccessful(),
"Failed to store as a project.");
af.closeMenuItem_actionPerformed(true);
af = null;
- af = new FileLoader()
- .LoadFileWaitTillLoaded(tfile, DataSourceType.FILE);
+ af = new FileLoader().LoadFileWaitTillLoaded(tfile,
+ DataSourceType.FILE);
assertNotNull(af, "Failed to import new project");
assertSame(af.getViewport().getGlobalColourScheme().getClass(),
TCoffeeColourScheme.class,
"Didn't set T-coffee colourscheme for imported project.");
- System.out
- .println("T-Coffee score shading successfully recovered from project.");
+ System.out.println(
+ "T-Coffee score shading successfully recovered from project.");
}
@Test(groups = { "Functional" })
public void testColourByAnnotScores() throws Exception
{
- String inFile = "examples/uniref50.fa", inAnnot = "examples/testdata/uniref50_iupred.jva";
+ String inFile = "examples/uniref50.fa",
+ inAnnot = "examples/testdata/uniref50_iupred.jva";
String tfile = File.createTempFile("JalviewTest", ".jvp")
.getAbsolutePath();
AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(inFile,
.getSequenceAt(0).getAnnotation("IUPredWS (Short)");
assertTrue(
- aa != null && aa.length > 0,
+ aa != null && aa.length > 0,
"Didn't find any IUPred annotation to use to shade alignment.");
AnnotationColourGradient cs = new AnnotationColourGradient(aa[0], null,
AnnotationColourGradient.ABOVE_THRESHOLD);
- AnnotationColourGradient gcs = new AnnotationColourGradient(aa[0],
- null, AnnotationColourGradient.BELOW_THRESHOLD);
+ AnnotationColourGradient gcs = new AnnotationColourGradient(aa[0], null,
+ AnnotationColourGradient.BELOW_THRESHOLD);
cs.setSeqAssociated(true);
gcs.setSeqAssociated(true);
af.changeColour(cs);
"Failed to store as a project.");
af.closeMenuItem_actionPerformed(true);
af = null;
- af = new FileLoader()
- .LoadFileWaitTillLoaded(tfile, DataSourceType.FILE);
+ af = new FileLoader().LoadFileWaitTillLoaded(tfile,
+ DataSourceType.FILE);
assertNotNull(af, "Failed to import new project");
// check for group and alignment colourschemes
ColourSchemeI _rcs = af.getViewport().getGlobalColourScheme();
- ColourSchemeI _rgcs = af.getViewport().getAlignment().getGroups()
- .get(0).getColourScheme();
+ ColourSchemeI _rgcs = af.getViewport().getAlignment().getGroups().get(0)
+ .getColourScheme();
assertNotNull(_rcs, "Didn't recover global colourscheme");
assertTrue(_rcs instanceof AnnotationColourGradient,
"Didn't recover annotation colour global scheme");
boolean diffseqcols = false, diffgseqcols = false;
SequenceI[] sqs = af.getViewport().getAlignment().getSequencesArray();
- for (int p = 0, pSize = af.getViewport().getAlignment().getWidth(); p < pSize
- && (!diffseqcols || !diffgseqcols); p++)
+ for (int p = 0, pSize = af.getViewport().getAlignment()
+ .getWidth(); p < pSize && (!diffseqcols || !diffgseqcols); p++)
{
if (_rcs.findColour(sqs[0].getCharAt(p), p, sqs[0], null, 0f) != _rcs
.findColour(sqs[5].getCharAt(p), p, sqs[5], null, 0f))
}
}
assertTrue(diffseqcols, "Got Different sequence colours");
- System.out
- .println("Per sequence colourscheme (Background) successfully applied and recovered.");
+ System.out.println(
+ "Per sequence colourscheme (Background) successfully applied and recovered.");
assertNotNull(_rgcs, "Didn't recover group colourscheme");
assertTrue(_rgcs instanceof AnnotationColourGradient,
assertTrue(__rcs.isSeqAssociated(),
"Group Annotation colourscheme wasn't sequence associated");
- for (int p = 0, pSize = af.getViewport().getAlignment().getWidth(); p < pSize
- && (!diffseqcols || !diffgseqcols); p++)
+ for (int p = 0, pSize = af.getViewport().getAlignment()
+ .getWidth(); p < pSize && (!diffseqcols || !diffgseqcols); p++)
{
- if (_rgcs.findColour(sqs[1].getCharAt(p), p, sqs[1], null, 0f) != _rgcs
- .findColour(sqs[2].getCharAt(p), p, sqs[2], null, 0f))
+ if (_rgcs.findColour(sqs[1].getCharAt(p), p, sqs[1], null,
+ 0f) != _rgcs.findColour(sqs[2].getCharAt(p), p, sqs[2], null,
+ 0f))
{
diffgseqcols = true;
}
}
assertTrue(diffgseqcols, "Got Different group sequence colours");
- System.out
- .println("Per sequence (Group) colourscheme successfully applied and recovered.");
+ System.out.println(
+ "Per sequence (Group) colourscheme successfully applied and recovered.");
}
@Test(groups = { "Functional" })
public void gatherViewsHere() throws Exception
{
- int origCount = Desktop.getAlignFrames() == null ? 0 : Desktop
- .getAlignFrames().length;
+ int origCount = Desktop.getAlignFrames() == null ? 0
+ : Desktop.getAlignFrames().length;
AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
"examples/exampleFile_2_7.jar", DataSourceType.FILE);
assertNotNull(af, "Didn't read in the example file correctly.");
sq.findPosition(p);
try
{
- assertTrue(
- (alaa.annotations[p] == null && refan.annotations[p] == null)
- || alaa.annotations[p].value == refan.annotations[p].value,
+ assertTrue((alaa.annotations[p] == null
+ && refan.annotations[p] == null)
+ || alaa.annotations[p].value == refan.annotations[p].value,
"Mismatch at alignment position " + p);
} catch (NullPointerException q)
{
- Assert.fail("Mismatch of alignment annotations at position "
- + p + " Ref seq ann: " + refan.annotations[p]
+ Assert.fail("Mismatch of alignment annotations at position " + p
+ + " Ref seq ann: " + refan.annotations[p]
+ " alignment " + alaa.annotations[p]);
}
}
AssertJUnit.assertFalse(structureStyle.sameStyle(groupStyle));
groups.getAlignViewport().setViewStyle(structureStyle);
- AssertJUnit.assertFalse(groupStyle.sameStyle(groups.getAlignViewport()
- .getViewStyle()));
- Assert.assertTrue(structureStyle.sameStyle(groups.getAlignViewport()
- .getViewStyle()));
+ AssertJUnit.assertFalse(
+ groupStyle.sameStyle(groups.getAlignViewport().getViewStyle()));
+ Assert.assertTrue(structureStyle
+ .sameStyle(groups.getAlignViewport().getViewStyle()));
}
// check FileLoader returned a reference to the one alignFrame that is
// actually on the Desktop
- assertSame(
- af,
- Desktop.getAlignFrameFor(af.getViewport()),
+ assertSame(af, Desktop.getAlignFrameFor(af.getViewport()),
"Jalview2XML.loadAlignFrame() didn't return correct AlignFrame reference for multiple view window");
Desktop.explodeViews(af);
af = new FileLoader().LoadFileWaitTillLoaded(tfile.getAbsolutePath(),
DataSourceType.FILE);
Assert.assertNotNull(af);
+ Assert.assertEquals(Desktop.getAlignFrames().length,
+ Desktop.getAlignmentPanels(
+ af.getViewport().getSequenceSetId()).length);
Assert.assertEquals(
- Desktop.getAlignFrames().length,
- Desktop.getAlignmentPanels(af.getViewport().getSequenceSetId()).length);
- Assert.assertEquals(
- Desktop.getAlignmentPanels(af.getViewport().getSequenceSetId()).length,
+ Desktop.getAlignmentPanels(
+ af.getViewport().getSequenceSetId()).length,
oldviews);
}
assertTrue(Jalview2XML.isVersionStringLaterThan(null, "Test"));
assertTrue(Jalview2XML.isVersionStringLaterThan(null, "TEST"));
assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3", "Test"));
- assertTrue(Jalview2XML
- .isVersionStringLaterThan(null, "Automated Build"));
+ assertTrue(
+ Jalview2XML.isVersionStringLaterThan(null, "Automated Build"));
assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3",
"Automated Build"));
assertTrue(Jalview2XML.isVersionStringLaterThan("2.8.3",
n++;
}
- File tfile = File
- .createTempFile("testStoreAndRecoverGroupReps", ".jvp");
+ File tfile = File.createTempFile("testStoreAndRecoverGroupReps",
+ ".jvp");
try
{
new Jalview2XML(false).saveState(tfile);
*/
List<String> hidden = hiddenSeqNames.get(ap.getViewName());
HiddenSequences hs = alignment.getHiddenSequences();
- assertEquals(
- hidden.size(),
- hs.getSize(),
+ assertEquals(hidden.size(), hs.getSize(),
"wrong number of restored hidden sequences in "
+ ap.getViewName());
}
pdbEntries[1] = new PDBEntry("3W5V", "B", Type.PDB, testFile);
pdbEntries[2] = new PDBEntry("3W5V", "C", Type.PDB, testFile);
pdbEntries[3] = new PDBEntry("3W5V", "D", Type.PDB, testFile);
- Assert.assertEquals(seqs[0].getDatasetSequence().getAllPDBEntries()
- .get(0), pdbEntries[0]);
- Assert.assertEquals(seqs[1].getDatasetSequence().getAllPDBEntries()
- .get(0), pdbEntries[1]);
- Assert.assertEquals(seqs[2].getDatasetSequence().getAllPDBEntries()
- .get(0), pdbEntries[2]);
- Assert.assertEquals(seqs[3].getDatasetSequence().getAllPDBEntries()
- .get(0), pdbEntries[3]);
+ Assert.assertEquals(
+ seqs[0].getDatasetSequence().getAllPDBEntries().get(0),
+ pdbEntries[0]);
+ Assert.assertEquals(
+ seqs[1].getDatasetSequence().getAllPDBEntries().get(0),
+ pdbEntries[1]);
+ Assert.assertEquals(
+ seqs[2].getDatasetSequence().getAllPDBEntries().get(0),
+ pdbEntries[2]);
+ Assert.assertEquals(
+ seqs[3].getDatasetSequence().getAllPDBEntries().get(0),
+ pdbEntries[3]);
File tfile = File.createTempFile("testStoreAndRecoverPDBEntry", ".jvp");
try
/*
* Colour alignment by Buried Index, Above 10% PID, By Conservation 20%
*/
+ av.setColourAppliesToAllGroups(false);
af.changeColour_actionPerformed(JalviewColourScheme.Buried.toString());
assertTrue(av.getGlobalColourScheme() instanceof BuriedColourScheme);
af.abovePIDThreshold_actionPerformed(true);
sg.setEndRes(25);
av.setSelectionGroup(sg);
PopupMenu popupMenu = new PopupMenu(af.alignPanel, null, null);
- popupMenu.changeColour_actionPerformed(JalviewColourScheme.Strand
- .toString());
+ popupMenu.changeColour_actionPerformed(
+ JalviewColourScheme.Strand.toString());
assertTrue(sg.getColourScheme() instanceof StrandColourScheme);
assertEquals(al.getGroups().size(), 1);
assertSame(al.getGroups().get(0), sg);
fr.setColour("type2", byLabel);
// type3: by score above threshold
- FeatureColourI byScore = new FeatureColour(Color.BLACK, Color.BLUE, 1,
- 10);
+ FeatureColourI byScore = new FeatureColour(null, Color.BLACK,
+ Color.BLUE, null, 1, 10);
byScore.setAboveThreshold(true);
byScore.setThreshold(2f);
fr.setColour("type3", byScore);
fr.setColour("type4", byAF);
// type5: by attribute CSQ:PolyPhen below threshold
- FeatureColourI byPolyPhen = new FeatureColour(Color.BLACK, Color.BLUE,
- 1, 10);
+ FeatureColourI byPolyPhen = new FeatureColour(null, Color.BLACK,
+ Color.BLUE, null, 1, 10);
byPolyPhen.setBelowThreshold(true);
byPolyPhen.setThreshold(3f);
byPolyPhen.setAttributeName("CSQ", "PolyPhen");
*/
af.closeMenuItem_actionPerformed(true);
af = null;
- af = new FileLoader()
- .LoadFileWaitTillLoaded(filePath, DataSourceType.FILE);
+ af = new FileLoader().LoadFileWaitTillLoaded(filePath,
+ DataSourceType.FILE);
assertNotNull(af, "Failed to import new project");
/*
addFeature(seq, featureType, score++);
addFeature(seq, featureType, score);
}
+
+ /**
+ * pre 2.11 - jalview 2.10 erroneously created new dataset entries for each
+ * view (JAL-3171) this test ensures we can import and merge those views
+ */
+ @Test(groups = { "Functional" })
+ public void testMergeDatasetsforViews() throws IOException
+ {
+ // simple project - two views on one alignment
+ AlignFrame af = new FileLoader(false).LoadFileWaitTillLoaded(
+ "examples/testdata/projects/twoViews.jvp", DataSourceType.FILE);
+ assertNotNull(af);
+ assertTrue(af.getAlignPanels().size() > 1);
+ verifyDs(af);
+ }
+
+ /**
+ * pre 2.11 - jalview 2.10 erroneously created new dataset entries for each
+ * view (JAL-3171) this test ensures we can import and merge those views This
+ * is a more complex project
+ */
+ @Test(groups = { "Functional" })
+ public void testMergeDatasetsforManyViews() throws IOException
+ {
+ Desktop.instance.closeAll_actionPerformed(null);
+
+ // complex project - one dataset, several views on several alignments
+ AlignFrame af = new FileLoader(false).LoadFileWaitTillLoaded(
+ "examples/testdata/projects/manyViews.jvp",
+ DataSourceType.FILE);
+ assertNotNull(af);
+
+ AlignmentI ds = null;
+ for (AlignFrame alignFrame : Desktop.getAlignFrames())
+ {
+ if (ds == null)
+ {
+ ds = verifyDs(alignFrame);
+ }
+ else
+ {
+ // check that this frame's dataset matches the last
+ assertTrue(ds == verifyDs(alignFrame));
+ }
+ }
+ }
+
+ private AlignmentI verifyDs(AlignFrame af)
+ {
+ AlignmentI ds = null;
+ for (AlignmentViewPanel ap : af.getAlignPanels())
+ {
+ if (ds == null)
+ {
+ ds = ap.getAlignment().getDataset();
+ }
+ else
+ {
+ assertTrue(ap.getAlignment().getDataset() == ds,
+ "Dataset was not the same for imported 2.10.5 project with several alignment views");
+ }
+ }
+ return ds;
+ }
+
+ @Test(groups = "Functional")
+ public void testPcaViewAssociation() throws IOException
+ {
+ Desktop.instance.closeAll_actionPerformed(null);
+ final String PCAVIEWNAME = "With PCA";
+ // create a new tempfile
+ File tempfile = File.createTempFile("jvPCAviewAssoc", "jvp");
+
+ {
+ String exampleFile = "examples/uniref50.fa";
+ AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(exampleFile,
+ DataSourceType.FILE);
+ assertNotNull(af, "Didn't read in the example file correctly.");
+ AlignmentPanel origView = (AlignmentPanel) af.getAlignPanels().get(0);
+ AlignmentPanel newview = af.newView(PCAVIEWNAME, true);
+ // create another for good measure
+ af.newView("Not the PCA View", true);
+ PCAPanel pcaPanel = new PCAPanel(origView, "BLOSUM62",
+ new SimilarityParams(true, true, true, false));
+ // we're in the test exec thread, so we can just run synchronously here
+ pcaPanel.run();
+
+ // now switch the linked view
+ pcaPanel.selectAssociatedView(newview);
+
+ assertTrue(pcaPanel.getAlignViewport() == newview.getAlignViewport(),
+ "PCA should be associated with 'With PCA' view: test is broken");
+
+ // now save and reload project
+ Jalview2XML jv2xml = new jalview.project.Jalview2XML(false);
+ tempfile.delete();
+ jv2xml.saveState(tempfile);
+ assertTrue(jv2xml.errorMessage == null,
+ "Failed to save dummy project with PCA: test broken");
+ }
+
+ // load again.
+ Desktop.instance.closeAll_actionPerformed(null);
+ AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(
+ tempfile.getCanonicalPath(), DataSourceType.FILE);
+ JInternalFrame[] frames = Desktop.instance.getAllFrames();
+ // PCA and the tabbed alignment view should be the only two windows on the
+ // desktop
+ assertEquals(frames.length, 2,
+ "PCA and the tabbed alignment view should be the only two windows on the desktop");
+ PCAPanel pcaPanel = (PCAPanel) frames[frames[0] == af ? 1 : 0];
+
+ AlignmentViewPanel restoredNewView = null;
+ for (AlignmentViewPanel alignpanel : Desktop.getAlignmentPanels(null))
+ {
+ if (alignpanel.getAlignViewport() == pcaPanel.getAlignViewport())
+ {
+ restoredNewView = alignpanel;
+ }
+ }
+ assertEquals(restoredNewView.getViewName(), PCAVIEWNAME);
+ assertTrue(
+ restoredNewView.getAlignViewport() == pcaPanel
+ .getAlignViewport(),
+ "Didn't restore correct view association for the PCA view");
+ }
}
*/
Color min = new Color(100, 50, 150);
Color max = new Color(200, 0, 100);
- FeatureColourI fc = new FeatureColour(min, max, 0, 10);
+ FeatureColourI fc = new FeatureColour(null, min, max, null, 0, 10);
fr.setColour("kd", fc);
fr.featuresAdded();
av.setShowSequenceFeatures(true);
*/
Color min = new Color(100, 50, 150);
Color max = new Color(200, 0, 100);
- FeatureColourI fc = new FeatureColour(min, max, 0, 10);
+ FeatureColourI fc = new FeatureColour(null, min, max, null, 0, 10);
fc.setAboveThreshold(true);
fc.setThreshold(5f);
fr.setColour(kdFeature, fc);
* give "Type3" features a graduated colour scheme
* - first with no threshold
*/
- FeatureColourI gc = new FeatureColour(Color.yellow, Color.red, null, 0f,
- 10f);
+ FeatureColourI gc = new FeatureColour(Color.green, Color.yellow,
+ Color.red, null, 0f, 10f);
fr.getFeatureColours().put("Type3", gc);
features = fr.findFeaturesAtColumn(seq, 8);
assertTrue(features.contains(sf4));
SequenceI seq = av.getAlignment().getSequenceAt(0);
SequenceFeature sf1 = new SequenceFeature("Cath", "", 6, 8, Float.NaN,
"group1");
- seq.addSequenceFeature(sf1);
SequenceFeature sf2 = new SequenceFeature("Cath", "", 5, 11, 2f,
"group2");
- seq.addSequenceFeature(sf2);
SequenceFeature sf3 = new SequenceFeature("Cath", "", 5, 11, 3f,
"group3");
- seq.addSequenceFeature(sf3);
SequenceFeature sf4 = new SequenceFeature("Cath", "", 6, 8, 4f,
"group4");
- seq.addSequenceFeature(sf4);
SequenceFeature sf5 = new SequenceFeature("Cath", "", 6, 9, 5f,
"group4");
+ seq.addSequenceFeature(sf1);
+ seq.addSequenceFeature(sf2);
+ seq.addSequenceFeature(sf3);
+ seq.addSequenceFeature(sf4);
seq.addSequenceFeature(sf5);
fr.findAllFeatures(true);
assertTrue(features.contains(sf5));
/*
- * hide groups 2 and 3 makes no difference to this method
+ * features in hidden groups are removed
*/
fr.setGroupVisibility("group2", false);
fr.setGroupVisibility("group3", false);
features = seq.getSequenceFeatures();
fr.filterFeaturesForDisplay(features);
- assertEquals(features.size(), 3);
+ assertEquals(features.size(), 2);
assertTrue(features.contains(sf1) || features.contains(sf4));
assertFalse(features.contains(sf1) && features.contains(sf4));
- assertTrue(features.contains(sf2) || features.contains(sf3));
- assertFalse(features.contains(sf2) && features.contains(sf3));
+ assertFalse(features.contains(sf2));
+ assertFalse(features.contains(sf3));
assertTrue(features.contains(sf5));
/*
* graduated colour by score, no threshold, no score
*
*/
- FeatureColourI gc = new FeatureColour(Color.yellow, Color.red,
- Color.green, 1f, 11f);
+ FeatureColourI gc = new FeatureColour(Color.red, Color.yellow,
+ Color.red, Color.green, 1f, 11f);
fr.getFeatureColours().put("Cath", gc);
assertEquals(fr.getColour(sf1), Color.green);
* threshold is min-max; now score 6 is 1/6 of the way from 5 to 11
* or from yellow(255, 255, 0) to red(255, 0, 0)
*/
- gc = new FeatureColour(Color.yellow, Color.red, Color.green, 5f, 11f);
+ gc = new FeatureColour(Color.red, Color.yellow, Color.red, Color.green,
+ 5f, 11f);
fr.getFeatureColours().put("Cath", gc);
gc.setAutoScaled(false); // this does little other than save a checkbox setting!
assertEquals(fr.getColour(sf2), new Color(255, 213, 0));
* colour by feature attribute value
* first with no value held
*/
- gc = new FeatureColour(Color.yellow, Color.red, Color.green, 1f, 11f);
+ gc = new FeatureColour(Color.red, Color.yellow, Color.red, Color.green,
+ 1f, 11f);
fr.getFeatureColours().put("Cath", gc);
gc.setAttributeName("AF");
assertEquals(fr.getColour(sf2), Color.green);
csqData.put("Feature", "ENST01234");
assertEquals(fr.getColour(sf2), expected);
}
+
+ @Test(groups = "Functional")
+ public void testIsVisible()
+ {
+ String seqData = ">s1\nMLQGIFPRS\n";
+ AlignFrame af = new FileLoader().LoadFileWaitTillLoaded(seqData,
+ DataSourceType.PASTE);
+ AlignViewportI av = af.getViewport();
+ FeatureRenderer fr = new FeatureRenderer(av);
+ SequenceI seq = av.getAlignment().getSequenceAt(0);
+ SequenceFeature sf = new SequenceFeature("METAL", "Desc", 10, 10, 1f,
+ "Group");
+ sf.setValue("AC", "11");
+ sf.setValue("CLIN_SIG", "Likely Pathogenic");
+ seq.addSequenceFeature(sf);
+
+ assertFalse(fr.isVisible(null));
+
+ /*
+ * initial state FeatureRenderer hasn't 'found' feature
+ * and so its feature type has not yet been set visible
+ */
+ assertFalse(fr.getDisplayedFeatureCols().containsKey("METAL"));
+ assertFalse(fr.isVisible(sf));
+
+ fr.findAllFeatures(true);
+ assertTrue(fr.isVisible(sf));
+
+ /*
+ * feature group not visible
+ */
+ fr.setGroupVisibility("Group", false);
+ assertFalse(fr.isVisible(sf));
+ fr.setGroupVisibility("Group", true);
+ assertTrue(fr.isVisible(sf));
+
+ /*
+ * feature score outwith colour threshold (score > 2)
+ */
+ FeatureColourI fc = new FeatureColour(null, Color.white, Color.black,
+ Color.white, 0, 10);
+ fc.setAboveThreshold(true);
+ fc.setThreshold(2f);
+ fr.setColour("METAL", fc);
+ assertFalse(fr.isVisible(sf)); // score 1 is not above threshold 2
+ fc.setBelowThreshold(true);
+ assertTrue(fr.isVisible(sf)); // score 1 is below threshold 2
+
+ /*
+ * colour with threshold on attribute AC (value is 11)
+ */
+ fc.setAttributeName("AC");
+ assertFalse(fr.isVisible(sf)); // value 11 is not below threshold 2
+ fc.setAboveThreshold(true);
+ assertTrue(fr.isVisible(sf)); // value 11 is above threshold 2
+
+ fc.setAttributeName("AF"); // attribute AF is absent in sf
+ assertTrue(fr.isVisible(sf)); // feature is not excluded by threshold
+
+ FeatureMatcherSetI filter = new FeatureMatcherSet();
+ filter.and(FeatureMatcher.byAttribute(Condition.Contains, "pathogenic",
+ "CLIN_SIG"));
+ fr.setFeatureFilter("METAL", filter);
+ assertTrue(fr.isVisible(sf)); // feature matches filter
+ filter.and(FeatureMatcher.byScore(Condition.LE, "0.4"));
+ assertFalse(fr.isVisible(sf)); // feature doesn't match filter
+ }
}
Color result = testee.shadeCalculation(ann, col);
assertEquals(result, expected, "for column " + col);
}
+
+ /*
+ * test for boundary case threshold == graphMax (JAL-3206)
+ */
+ float thresh = ann.threshold.value;
+ ann.threshold.value = ann.graphMax;
+ Color result = testee.shadeCalculation(ann, WIDTH - 1);
+ assertEquals(result, maxColour);
+ testee.setThresholdIsMinMax(false);
+ result = testee.shadeCalculation(ann, WIDTH - 1);
+ assertEquals(result, maxColour);
+ ann.threshold.value = thresh; // reset
}
/**
Color result = testee.shadeCalculation(ann, col);
assertEquals(result, expected, "for column " + col);
}
+
+ /*
+ * test for boundary case threshold == graphMin (JAL-3206)
+ */
+ float thresh = ann.threshold.value;
+ ann.threshold.value = ann.graphMin;
+ Color result = testee.shadeCalculation(ann, 0);
+ assertEquals(result, minColour);
+ testee.setThresholdIsMinMax(false);
+ result = testee.shadeCalculation(ann, 0);
+ assertEquals(result, minColour);
+ ann.threshold.value = thresh; // reset
}
/**
{
AnnotationColourGradient testee = new AnnotationColourGradient(ann,
minColour, maxColour, AnnotationColourGradient.ABOVE_THRESHOLD);
- testee = (AnnotationColourGradient) testee.getInstance(al, null);
+ testee = (AnnotationColourGradient) testee.getInstance(null, al);
for (int col = 0; col < WIDTH; col++)
{
Color result = testee.findColour('a', col, seq);
/*
- * expect white below threshold of 5
+ * expect white at or below threshold of 5
*/
- Color expected = col < 5 ? Color.white : new Color(50 + 10 * col,
+ Color expected = col <= 5 ? Color.white
+ : new Color(50 + 10 * col,
200 - 10 * col,
150 + 10 * col);
assertEquals(result, expected, "for column " + col);
for (int col = 0; col < WIDTH; col++)
{
/*
- * colours for values >= threshold are graduated
+ * colours for values > threshold are graduated
* range is 6-10 so steps of 100/5 = 20
*/
int factor = col - THRESHOLD_FIVE;
- Color expected = col < 5 ? Color.white : new Color(50 + 20 * factor,
+ Color expected = col <= 5 ? Color.white
+ : new Color(50 + 20 * factor,
200 - 20 * factor,
150 + 20 * factor);
Color result = testee.findColour('a', col, seq);
{
AnnotationColourGradient testee = new AnnotationColourGradient(ann,
minColour, maxColour, AnnotationColourGradient.BELOW_THRESHOLD);
- testee = (AnnotationColourGradient) testee.getInstance(al, null);
+ testee = (AnnotationColourGradient) testee.getInstance(null, al);
for (int col = 0; col < WIDTH; col++)
{
Color result = testee.findColour('a', col, seq);
- Color expected = col > 5 ? Color.white : new Color(50 + 10 * col,
+ Color expected = col >= 5 ? Color.white
+ : new Color(50 + 10 * col,
200 - 10 * col, 150 + 10 * col);
assertEquals(result, expected, "for column " + col);
}
for (int col = 0; col < WIDTH; col++)
{
/*
- * colours for values <= threshold are graduated
+ * colours for values < threshold are graduated
* range is 0-5 so steps of 100/5 = 20
*/
- Color expected = col > 5 ? Color.white : new Color(50 + 20 * col,
+ Color expected = col >= 5 ? Color.white
+ : new Color(50 + 20 * col,
200 - 20 * col, 150 + 20 * col);
Color result = testee.findColour('a', col, seq);
assertEquals(result, expected, "for column " + col);
{
AnnotationColourGradient testee = new AnnotationColourGradient(ann,
minColour, maxColour, AnnotationColourGradient.NO_THRESHOLD);
- testee = (AnnotationColourGradient) testee.getInstance(al, null);
+ testee = (AnnotationColourGradient) testee.getInstance(null, al);
for (int col = 0; col < WIDTH; col++)
{
{
AnnotationColourGradient testee = new AnnotationColourGradient(ann,
minColour, maxColour, AnnotationColourGradient.NO_THRESHOLD);
- testee = (AnnotationColourGradient) testee.getInstance(al, null);
+ testee = (AnnotationColourGradient) testee.getInstance(null, al);
/*
* flag corresponding to 'use original colours' checkbox
SequenceI seq = new Sequence("Seq1", "abcd");
AlignmentI al = new Alignment(new SequenceI[] { seq });
// the strings here correspond to JalviewColourScheme.toString() values
- ColourSchemeI cs = ColourSchemeProperty.getColourScheme(al, "Clustal");
+ ColourSchemeI cs = ColourSchemeProperty.getColourScheme(null, al,
+ "Clustal");
assertTrue(cs instanceof ClustalxColourScheme);
// not case-sensitive
- cs = ColourSchemeProperty.getColourScheme(al, "CLUSTAL");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "CLUSTAL");
assertTrue(cs instanceof ClustalxColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "clustal");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "clustal");
assertTrue(cs instanceof ClustalxColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Blosum62");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "Blosum62");
assertTrue(cs instanceof Blosum62ColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "% Identity");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "% Identity");
assertTrue(cs instanceof PIDColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Zappo");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "Zappo");
assertTrue(cs instanceof ZappoColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Taylor");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "Taylor");
assertTrue(cs instanceof TaylorColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Hydrophobic");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "Hydrophobic");
assertTrue(cs instanceof HydrophobicColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Helix Propensity");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "Helix Propensity");
assertTrue(cs instanceof HelixColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Strand Propensity");
+ cs = ColourSchemeProperty.getColourScheme(null, al,
+ "Strand Propensity");
assertTrue(cs instanceof StrandColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Turn Propensity");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "Turn Propensity");
assertTrue(cs instanceof TurnColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Buried Index");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "Buried Index");
assertTrue(cs instanceof BuriedColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Nucleotide");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "Nucleotide");
assertTrue(cs instanceof NucleotideColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "Purine/Pyrimidine");
+ cs = ColourSchemeProperty.getColourScheme(null, al,
+ "Purine/Pyrimidine");
assertTrue(cs instanceof PurinePyrimidineColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "T-Coffee Scores");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "T-Coffee Scores");
assertTrue(cs instanceof TCoffeeColourScheme);
- cs = ColourSchemeProperty.getColourScheme(al, "RNA Helices");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "RNA Helices");
assertTrue(cs instanceof RNAHelicesColour);
// 'None' is a special value
- assertNull(ColourSchemeProperty.getColourScheme(al, "None"));
- assertNull(ColourSchemeProperty.getColourScheme(al, "none"));
+ assertNull(ColourSchemeProperty.getColourScheme(null, al, "None"));
+ assertNull(ColourSchemeProperty.getColourScheme(null, al, "none"));
// default is to convert the name into a fixed colour
- cs = ColourSchemeProperty.getColourScheme(al, "elephants");
+ cs = ColourSchemeProperty.getColourScheme(null, al, "elephants");
assertTrue(cs instanceof UserColourScheme);
/*
* explicit aa colours
*/
UserColourScheme ucs = (UserColourScheme) ColourSchemeProperty
- .getColourScheme(al,
+ .getColourScheme(null, al,
"R,G=red;C=blue;c=green;Q=10,20,30;S,T=11ffdd");
assertEquals(ucs.findColour('H'), Color.white);
assertEquals(ucs.findColour('R'), Color.red);
import static org.testng.Assert.assertSame;
import static org.testng.Assert.assertTrue;
+import jalview.api.AlignViewportI;
import jalview.bin.Cache;
import jalview.bin.Jalview;
import jalview.datamodel.AnnotatedCollectionI;
}
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI sg,
- Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI sg)
{
final ColourSchemeI cs1 = ColourSchemes.getInstance()
.getColourScheme(JalviewColourScheme.Taylor.toString(),
}
@Override
- public ColourSchemeI getInstance(AnnotatedCollectionI sg,
- Map<SequenceI, SequenceCollectionI> hiddenRepSequences)
+ public ColourSchemeI getInstance(AlignViewportI view,
+ AnnotatedCollectionI sg)
{
- return new MyClustal(sg, hiddenRepSequences);
+ return new MyClustal(sg, view.getHiddenRepSequences());
}
@Override
+++ /dev/null
-/*
- * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
- * Copyright (C) $$Year-Rel$$ 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 <http://www.gnu.org/licenses/>.
- * The Jalview Authors are detailed in the 'AUTHORS' file.
- */
-package jalview.schemes;
-
-import static org.testng.AssertJUnit.assertTrue;
-
-import jalview.gui.JvOptionPane;
-
-import java.util.Map;
-
-import org.testng.annotations.BeforeClass;
-import org.testng.annotations.Test;
-
-public class DnaCodonTests
-{
-
- @BeforeClass(alwaysRun = true)
- public void setUpJvOptionPane()
- {
- JvOptionPane.setInteractiveMode(false);
- JvOptionPane.setMockResponse(JvOptionPane.CANCEL_OPTION);
- }
-
- @Test(groups = { "Functional" })
- public void testAmbiguityCodeGeneration()
- {
- assertTrue(ResidueProperties.ambiguityCodes.size() > 0);
- }
-
- @Test(groups = { "Functional" })
- public void testAmbiguityCodon()
- {
- for (String ac : ResidueProperties.ambiguityCodes.keySet())
- {
- assertTrue("Couldn't resolve GGN as glycine codon",
- ResidueProperties.codonHash2.get("GG" + ac).equals("G"));
- }
- }
-
- @Test(groups = { "Functional" })
- public void regenerateCodonTable()
- {
- for (Map.Entry<String, String> codon : ResidueProperties.codonHash2
- .entrySet())
- {
- System.out.println("ResidueProperties.codonHash2.set(\""
- + codon.getKey() + "\", \"" + codon.getValue() + "\");");
- }
- }
-}
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;
-import junit.extensions.PA;
-
public class FeatureColourTest
{
}
@Test(groups = { "Functional" })
+ public void testConstructors()
+ {
+ FeatureColourI fc = new FeatureColour();
+ assertNull(fc.getColour());
+ assertTrue(fc.isSimpleColour());
+ assertFalse(fc.isColourByLabel());
+ assertFalse(fc.isGraduatedColour());
+ assertFalse(fc.isColourByAttribute());
+ assertEquals(Color.white, fc.getMinColour());
+ assertEquals(Color.black, fc.getMaxColour());
+
+ fc = new FeatureColour(Color.RED);
+ assertEquals(Color.red, fc.getColour());
+ assertTrue(fc.isSimpleColour());
+ assertFalse(fc.isColourByLabel());
+ assertFalse(fc.isGraduatedColour());
+ assertFalse(fc.isColourByAttribute());
+ assertEquals(ColorUtils.bleachColour(Color.RED, 0.9f),
+ fc.getMinColour());
+ assertEquals(Color.RED, fc.getMaxColour());
+
+ }
+
+ @Test(groups = { "Functional" })
public void testCopyConstructor()
{
/*
/*
* min-max colour
*/
- fc = new FeatureColour(Color.gray, Color.black, 10f, 20f);
+ fc = new FeatureColour(null, Color.gray, Color.black, Color.gray, 10f,
+ 20f);
fc.setAboveThreshold(true);
fc.setThreshold(12f);
fc1 = new FeatureColour(fc);
/*
* min-max-noValue colour
*/
- fc = new FeatureColour(Color.gray, Color.black, Color.green, 10f, 20f);
+ fc = new FeatureColour(Color.red, Color.gray, Color.black, Color.green,
+ 10f, 20f);
fc.setAboveThreshold(true);
fc.setThreshold(12f);
fc1 = new FeatureColour(fc);
assertTrue(fc1.isGraduatedColour());
assertFalse(fc1.isColourByLabel());
+ assertFalse(fc1.isSimpleColour());
assertFalse(fc1.isColourByAttribute());
assertNull(fc1.getAttributeName());
assertTrue(fc1.isAboveThreshold());
assertEquals(Color.gray, fc1.getMinColour());
assertEquals(Color.black, fc1.getMaxColour());
assertEquals(Color.green, fc1.getNoColour());
+ assertEquals(Color.red, fc1.getColour());
assertEquals(10f, fc1.getMin());
assertEquals(20f, fc1.getMax());
/*
* colour by attribute (value)
*/
- fc = new FeatureColour(Color.gray, Color.black, Color.green, 10f, 20f);
+ fc = new FeatureColour(Color.yellow, Color.gray, Color.black,
+ Color.green, 10f, 20f);
fc.setAboveThreshold(true);
fc.setThreshold(12f);
fc.setAttributeName("AF");
assertTrue(fc1.isGraduatedColour());
assertFalse(fc1.isColourByLabel());
assertTrue(fc1.isColourByAttribute());
+ assertFalse(fc1.isSimpleColour());
assertArrayEquals(new String[] { "AF" }, fc1.getAttributeName());
assertTrue(fc1.isAboveThreshold());
assertEquals(12f, fc1.getThreshold());
assertEquals(Color.gray, fc1.getMinColour());
assertEquals(Color.black, fc1.getMaxColour());
assertEquals(Color.green, fc1.getNoColour());
+ assertEquals(Color.yellow, fc1.getColour());
assertEquals(10f, fc1.getMin());
assertEquals(20f, fc1.getMax());
}
@Test(groups = { "Functional" })
- public void testCopyConstructor_minMax()
- {
- /*
- * graduated colour
- */
- FeatureColour fc = new FeatureColour(Color.BLUE, Color.RED, 1f, 5f);
- assertTrue(fc.isGraduatedColour());
- assertFalse(fc.isColourByLabel());
- assertFalse(fc.isColourByAttribute());
- assertNull(fc.getAttributeName());
- assertEquals(1f, fc.getMin());
- assertEquals(5f, fc.getMax());
-
- /*
- * update min-max bounds
- */
- FeatureColour fc1 = new FeatureColour(fc, 2f, 6f);
- assertTrue(fc1.isGraduatedColour());
- assertFalse(fc1.isColourByLabel());
- assertFalse(fc1.isColourByAttribute());
- assertNull(fc1.getAttributeName());
- assertEquals(2f, fc1.getMin());
- assertEquals(6f, fc1.getMax());
- assertFalse((boolean) PA.getValue(fc1, "isHighToLow"));
-
- /*
- * update min-max bounds - high to low
- */
- fc1 = new FeatureColour(fc, 23f, 16f);
- assertTrue(fc1.isGraduatedColour());
- assertFalse(fc1.isColourByLabel());
- assertFalse(fc1.isColourByAttribute());
- assertNull(fc1.getAttributeName());
- assertEquals(23f, fc1.getMin());
- assertEquals(16f, fc1.getMax());
- assertTrue((boolean) PA.getValue(fc1, "isHighToLow"));
-
- /*
- * graduated colour by attribute
- */
- fc1.setAttributeName("AF");
- fc1 = new FeatureColour(fc1, 13f, 36f);
- assertTrue(fc1.isGraduatedColour());
- assertFalse(fc1.isColourByLabel());
- assertTrue(fc1.isColourByAttribute());
- assertArrayEquals(new String[] { "AF" }, fc1.getAttributeName());
- assertEquals(13f, fc1.getMin());
- assertEquals(36f, fc1.getMax());
- assertFalse((boolean) PA.getValue(fc1, "isHighToLow"));
-
- /*
- * colour by label
- */
- fc = new FeatureColour(Color.BLUE, Color.RED, 1f, 5f);
- fc.setColourByLabel(true);
- assertFalse(fc.isGraduatedColour());
- assertTrue(fc.isColourByLabel());
- assertFalse(fc.isColourByAttribute());
- assertNull(fc.getAttributeName());
- assertEquals(1f, fc.getMin());
- assertEquals(5f, fc.getMax());
-
- /*
- * update min-max bounds
- */
- fc1 = new FeatureColour(fc, 2f, 6f);
- assertFalse(fc1.isGraduatedColour());
- assertTrue(fc1.isColourByLabel());
- assertFalse(fc1.isColourByAttribute());
- assertNull(fc1.getAttributeName());
- assertEquals(2f, fc1.getMin());
- assertEquals(6f, fc1.getMax());
-
- /*
- * colour by attribute text
- */
- fc1.setAttributeName("AC");
- fc1 = new FeatureColour(fc1, 13f, 36f);
- assertFalse(fc1.isGraduatedColour());
- assertTrue(fc1.isColourByLabel());
- assertTrue(fc1.isColourByAttribute());
- assertArrayEquals(new String[] { "AC" }, fc1.getAttributeName());
- assertEquals(13f, fc1.getMin());
- assertEquals(36f, fc1.getMax());
- }
-
- @Test(groups = { "Functional" })
public void testGetColor_simpleColour()
{
FeatureColour fc = new FeatureColour(Color.RED);
* score 0 to 100
* gray(128, 128, 128) to red(255, 0, 0)
*/
- FeatureColour fc = new FeatureColour(Color.GRAY, Color.RED, 0f, 100f);
+ FeatureColour fc = new FeatureColour(null, Color.GRAY, Color.RED, null,
+ 0f, 100f);
// feature score is 75 which is 3/4 of the way from GRAY to RED
SequenceFeature sf = new SequenceFeature("type", "desc", 0, 20, 75f,
null);
public void testGetColor_aboveBelowThreshold()
{
// gradient from [50, 150] from WHITE(255, 255, 255) to BLACK(0, 0, 0)
- FeatureColour fc = new FeatureColour(Color.WHITE, Color.BLACK, 50f,
- 150f);
+ FeatureColour fc = new FeatureColour(null, Color.WHITE, Color.BLACK,
+ Color.white, 50f, 150f);
SequenceFeature sf = new SequenceFeature("type", "desc", 0, 20, 70f,
null);
* graduated colour by score, no threshold
* - default constructor sets noValueColor = minColor
*/
- fc = new FeatureColour(Color.GREEN, Color.RED, 12f, 25f);
+ fc = new FeatureColour(null, Color.GREEN, Color.RED, Color.GREEN, 12f,
+ 25f);
String greenHex = Format.getHexString(Color.GREEN);
String expected = String.format(
"domain\tscore|%s|%s|noValueMin|abso|12.0|25.0|none", greenHex,
/*
* graduated colour by score, no threshold, no value gets min colour
*/
- fc = new FeatureColour(Color.GREEN, Color.RED, Color.GREEN, 12f, 25f);
+ fc = new FeatureColour(Color.RED, Color.GREEN, Color.RED, Color.GREEN,
+ 12f, 25f);
expected = String.format(
"domain\tscore|%s|%s|noValueMin|abso|12.0|25.0|none", greenHex,
redHex);
/*
* graduated colour by score, no threshold, no value gets max colour
*/
- fc = new FeatureColour(Color.GREEN, Color.RED, Color.RED, 12f, 25f);
+ fc = new FeatureColour(Color.RED, Color.GREEN, Color.RED, Color.RED,
+ 12f, 25f);
expected = String.format(
"domain\tscore|%s|%s|noValueMax|abso|12.0|25.0|none", greenHex,
redHex);
* graduated colour based on attribute value for AF
* given a min-max range of 0-100
*/
- FeatureColour fc = new FeatureColour(new Color(50, 100, 150),
- new Color(150, 200, 250), Color.yellow, 0f, 100f);
+ FeatureColour fc = new FeatureColour(Color.white,
+ new Color(50, 100, 150), new Color(150, 200, 250), Color.yellow,
+ 0f, 100f);
String attName = "AF";
fc.setAttributeName(attName);
assertEquals(expected, fc.getColor(sf));
}
+ @Test(groups = { "Functional" })
+ public void testIsOutwithThreshold()
+ {
+ FeatureColourI fc = new FeatureColour(Color.red);
+ SequenceFeature sf = new SequenceFeature("METAL", "desc", 10, 12, 1.2f, "grp");
+ assertFalse(fc.isOutwithThreshold(null));
+ assertFalse(fc.isOutwithThreshold(sf));
+
+ fc = new FeatureColour(null, Color.white, Color.black, Color.green, 0f,
+ 10f);
+ assertFalse(fc.isOutwithThreshold(sf)); // no threshold
+
+ fc.setAboveThreshold(true);
+ fc.setThreshold(1f);
+ assertFalse(fc.isOutwithThreshold(sf)); // feature score 1.2 is above 1
+
+ fc.setThreshold(2f);
+ assertTrue(fc.isOutwithThreshold(sf)); // feature score 1.2 is not above 2
+
+ fc.setBelowThreshold(true);
+ assertFalse(fc.isOutwithThreshold(sf)); // feature score 1.2 is below 2
+
+ fc.setThreshold(1f);
+ assertTrue(fc.isOutwithThreshold(sf)); // feature score 1.2 is not below 1
+
+ /*
+ * with attribute value threshold
+ */
+ fc.setAttributeName("AC");
+ assertFalse(fc.isOutwithThreshold(sf)); // missing attribute AC is ignored
+
+ sf.setValue("AC", "-1");
+ assertFalse(fc.isOutwithThreshold(sf)); // value -1 is below 1
+
+ sf.setValue("AC", "1");
+ assertTrue(fc.isOutwithThreshold(sf)); // value 1 is not below 1
+
+ sf.setValue("AC", "junk");
+ assertFalse(fc.isOutwithThreshold(sf)); // bad value is ignored
+ }
+
/**
* Test description of feature colour suitable for a tooltip
*/
/*
* graduated colour by score, no threshold
*/
- fc = new FeatureColour(Color.GREEN, Color.RED, 12f, 25f);
+ fc = new FeatureColour(null, Color.GREEN, Color.RED, null, 12f, 25f);
assertEquals("By Score", fc.getDescription());
/*
assertTrue(JalviewColourScheme.PurinePyrimidine.getSchemeClass() == PurinePyrimidineColourScheme.class);
assertTrue(JalviewColourScheme.TCoffee.getSchemeClass() == TCoffeeColourScheme.class);
assertTrue(JalviewColourScheme.RNAHelices.getSchemeClass() == RNAHelicesColour.class);
+ assertTrue(JalviewColourScheme.IdColour
+ .getSchemeClass() == IdColourScheme.class);
}
@Test(groups = "Functional")
"Purine/Pyrimidine");
assertEquals(JalviewColourScheme.TCoffee.toString(), "T-Coffee Scores");
assertEquals(JalviewColourScheme.RNAHelices.toString(), "RNA Helices");
+ assertEquals(JalviewColourScheme.IdColour.toString(), "Sequence ID");
}
}
}
@Test(groups = { "Functional" })
+ public void testGetDssp3State()
+ {
+ assertNull(ResidueProperties.getDssp3state(null));
+ assertEquals("", ResidueProperties.getDssp3state(""));
+ String foo = "0123 []<>abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
+ String bar = " E E HHH ";
+ assertEquals(bar, ResidueProperties.getDssp3state(foo));
+ }
+
+ @Test(groups = { "Functional" })
public void testPhysicoChemicalProperties()
{
checkProperty("aromatic", "FYWH-*");
package jalview.util;
import static org.testng.AssertJUnit.assertEquals;
-import static org.testng.AssertJUnit.assertFalse;
import static org.testng.AssertJUnit.assertNull;
import static org.testng.AssertJUnit.assertSame;
import static org.testng.AssertJUnit.assertTrue;
assertEquals("pfam", DBRefUtils.getCanonicalName("pfam"));
}
-
- @Test(groups = { "Functional" })
- public void testIsDasCoordinateSystem()
- {
- assertFalse(DBRefUtils.isDasCoordinateSystem(null, null));
- assertFalse(DBRefUtils.isDasCoordinateSystem("pdbresnum", null));
- assertFalse(DBRefUtils.isDasCoordinateSystem(null, new DBRefEntry(
- "PDB", "v1", "a1")));
-
- assertTrue(DBRefUtils.isDasCoordinateSystem("pdbresnum",
- new DBRefEntry("PDB", "v1", "a1")));
- assertTrue(DBRefUtils.isDasCoordinateSystem("PDBRESNUM",
- new DBRefEntry("PDB", "v1", "a1")));
- // "pdb" is converted to upper-case in DBRefEntry constructor
- assertTrue(DBRefUtils.isDasCoordinateSystem("pdbresnum",
- new DBRefEntry("pdb", "v1", "a1")));
- assertFalse(DBRefUtils.isDasCoordinateSystem("pdb", new DBRefEntry(
- "pdb", "v1", "a1")));
-
- assertTrue(DBRefUtils.isDasCoordinateSystem("UNIPROT", new DBRefEntry(
- "Uniprot", "v1", "a1")));
- assertTrue(DBRefUtils.isDasCoordinateSystem("Uniprot", new DBRefEntry(
- "UNIPROT", "v1", "a1")));
- assertFalse(DBRefUtils.isDasCoordinateSystem("UNIPROTKB",
- new DBRefEntry("pdb", "v1", "a1")));
-
- assertTrue(DBRefUtils.isDasCoordinateSystem("EMBL", new DBRefEntry(
- "EMBL", "v1", "a1")));
- assertTrue(DBRefUtils.isDasCoordinateSystem("embl", new DBRefEntry(
- "embl", "v1", "a1")));
- }
-
/**
* Test 'parsing' a DBRef - non PDB case
*/
SequenceI seq = new Uniprot().uniprotEntryToSequence(entry);
assertNotNull(seq);
assertEquals(6, seq.getDBRefs().size()); // 2*Uniprot, PDB, PDBsum, 2*EMBL
-
+ assertEquals(seq.getSequenceAsString(),
+ seq.createDatasetSequence().getSequenceAsString());
}
/**
import jalview.bin.Cache;
import jalview.datamodel.AlignmentAnnotation;
import jalview.datamodel.AlignmentI;
-import jalview.gui.Jalview2XML;
import jalview.gui.JvOptionPane;
import jalview.io.AnnotationFile;
import jalview.io.DataSourceType;
import jalview.io.FileFormat;
import jalview.io.FormatAdapter;
import jalview.io.StockholmFileTest;
+import jalview.project.Jalview2XML;
import jalview.ws.jws2.Jws2Discoverer;
import jalview.ws.jws2.RNAalifoldClient;
import jalview.ws.jws2.SequenceAnnotationWSClient;
assertNotNull("Couldn't load test data ('" + testseqs + "')", af);
// remove any existing annotation
- List<AlignmentAnnotation> aal = new ArrayList<AlignmentAnnotation>();
+ List<AlignmentAnnotation> aal = new ArrayList<>();
for (AlignmentAnnotation rna : af.getViewport().getAlignment()
.getAlignmentAnnotation())
{
@Test(groups = { "Network" })
public void testRnaalifoldSettingsRecovery()
{
- List<Argument> opts = new ArrayList<Argument>();
+ List<Argument> opts = new ArrayList<>();
for (Argument rg : (List<Argument>) rnaalifoldws.getRunnerConfig()
.getArguments())
{
<taskdef resource="net/sf/antcontrib/antcontrib.properties">
<classpath>
- <pathelement location="${basedir}/utils/ant-contrib-0.3.jar"/>
+ <pathelement location="${basedir}/utils/ant-contrib-1.0b3.jar"/>
+ </classpath>
+</taskdef>
+<taskdef resource="net/sf/antcontrib/antlib.xml">
+ <classpath>
+ <pathelement location="${basedir}/utils/ant-contrib-1.0b3.jar"/>
</classpath>
</taskdef>
-<taskdef resource="net/sf/antcontrib/antlib.xml"/>
<target name="checkLang" description="Reports missing entries in language bundles compared to Message.properties">
<!-- adapted from http://stackoverflow.com/questions/14381660/ant-task-to-compare-two-properties-files -->