X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fjson%2Fbinding%2Fbiojson%2Fv1%2FAlignmentPojo.java;h=94d1bde8d755337d3780f7499aa33519ecf91a47;hb=3d0101179759ef157b088ea135423cd909512d9f;hp=2625b6930e805b28615ebbff79a834fdf7f0652d;hpb=c7d9dbc9b92889077b91bcdb052032fe33fb269e;p=jalview.git diff --git a/src/jalview/json/binding/biojson/v1/AlignmentPojo.java b/src/jalview/json/binding/biojson/v1/AlignmentPojo.java index 2625b69..94d1bde 100644 --- a/src/jalview/json/binding/biojson/v1/AlignmentPojo.java +++ b/src/jalview/json/binding/biojson/v1/AlignmentPojo.java @@ -1,6 +1,25 @@ +/* + * 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 . + * The Jalview Authors are detailed in the 'AUTHORS' file. + */ package jalview.json.binding.biojson.v1; - import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -8,30 +27,58 @@ import java.util.Map; import com.github.reinert.jjschema.Attributes; -@Attributes(title="BioJSON", description="A specification for the representation and exchange of bioinformatics data") +@Attributes( + title = "BioJSON", + description = "A specification for the representation and exchange of bioinformatics data") public class AlignmentPojo { - @Attributes(required = true, description = "Serial version identifier for BioJSON schema") + @Attributes( + required = true, + description = "Serial version identifier for BioJSON schema") private String svid = "1.0"; - @Attributes(required = true, minItems = 1, maxItems = 1999999999, description = "A sequence group is a bracket of alignment residues spanning
across multiple columns and rows. These can be treated as a
sub-alignments.") + @Attributes( + required = true, + minItems = 1, + description = "An array of Sequences which makes up the Alignment") private List seqs = new ArrayList(); - @Attributes(required = false, minItems = 0, maxItems = 1999999999, exclusiveMaximum=true, description = "Alignment annotations stores symbols and graphs usually rendered
below the alignment.") + @Attributes( + required = false, + minItems = 0, + exclusiveMaximum = true, + description = "Alignment annotations stores symbols and graphs usually rendered
" + + "below the alignment and often reflect properties of the alignment
as a whole.") private List alignAnnotation = new ArrayList(); - @Attributes(required = false, minItems = 0, maxItems = 1999999999, description = "A sequence group is a bracket of alignment residues spanning
across multiple columns and rows. These can be treated as a
sub-alignments.") + @Attributes( + required = false, + minItems = 0, + description = "A sequence group is a rectangular region of an alignment
bounded by startRes and endRes positions in the alignment
coordinate system for a set of sequences") private List seqGroups = new ArrayList(); - @Attributes(required = false, minItems = 0, maxItems = 1999999999, description = "Sequence features are associated with sequences rather than
alignments. A sequence feature can span across multiple
sequences in an alignment. They indicate features generated
by the same analysis process or retrieved from the same database
(such as Uniprot features).") + @Attributes( + required = false, + minItems = 0, + description = "Sequence features are properties of the individual sequences,
they do not change with the alignment, but are shown mapped
on to specific residues within the alignment") private List seqFeatures = new ArrayList(); - @Attributes(required = false, enums = { "None", "Custom", "Clustal", - "Zappo", "Taylor", "Nucleotide", "Pyrimidine", "Purine", "Turn", - "Strand", "Buried", "Hydro" }) + @Attributes( + required = false, + enums = + { "None", "User Defined", "Clustal", "Zappo", "Taylor", "Nucleotide", + "Pyrimidine", "Purine", "Turn", "Helix", "Strand", "Buried", + "Hydro", "T-Coffee Scores", "RNA Interaction type", "Blosum62", + "RNA Helices", "% Identity" }, + description = "The Colour Scheme applied to the alignment") private String colourScheme; - - @Attributes(required = true, maxItems = 1, description = "This is an array of key=value pairs for storing custom application
specific settings") + + @Attributes( + required = true, + maxItems = 0, + description = "AppSettings stores key=value pairs of custom application specific
" + + "settings (i.e visualisation settings, etc) for different applications
" + + "that consume or generate BioJSON") Map appSettings = new HashMap(); public AlignmentPojo() @@ -96,7 +143,7 @@ public class AlignmentPojo public void setGlobalColorScheme(String globalColorScheme) { -// this.appSettings.put("globalColorScheme", globalColorScheme); + this.appSettings.put("globalColorScheme", globalColorScheme); } public String getColourScheme()