1 package jalview.json.binding.biojson.v1;
4 import java.util.ArrayList;
5 import java.util.HashMap;
9 import com.github.reinert.jjschema.Attributes;
11 @Attributes(title="BioJSON", description="A specification for the representation and exchange of bioinformatics data")
12 public class AlignmentPojo
14 @Attributes(required = true, description = "Serial version identifier for <b>BioJSON</b> schema")
15 private String svid = "1.0";
17 @Attributes(required = true, minItems = 1, maxItems = 1999999999, description = "A sequence group is a bracket of alignment residues spanning <br>across multiple columns and rows. These can be treated as a <br>sub-alignments.")
18 private List<SequencePojo> seqs = new ArrayList<SequencePojo>();
20 @Attributes(required = false, minItems = 0, maxItems = 1999999999, exclusiveMaximum=true, description = "Alignment annotations stores symbols and graphs usually rendered </br>below the alignment.")
21 private List<AlignmentAnnotationPojo> alignAnnotation = new ArrayList<AlignmentAnnotationPojo>();
23 @Attributes(required = false, minItems = 0, maxItems = 1999999999, description = "A sequence group is a bracket of alignment residues spanning <br>across multiple columns and rows. These can be treated as a <br>sub-alignments.")
24 private List<SequenceGrpPojo> seqGroups = new ArrayList<SequenceGrpPojo>();
26 @Attributes(required = false, minItems = 0, maxItems = 1999999999, description = "Sequence features are associated with sequences rather than <br>alignments. A sequence feature can span across multiple <br>sequences in an alignment. They indicate features generated <br>by the same analysis process or retrieved from the same database <br>(such as Uniprot features).")
27 private List<SequenceFeaturesPojo> seqFeatures = new ArrayList<SequenceFeaturesPojo>();
29 @Attributes(required = false, enums = { "None", "Custom", "Clustal",
30 "Zappo", "Taylor", "Nucleotide", "Pyrimidine", "Purine", "Turn",
31 "Strand", "Buried", "Hydro" })
32 private String colourScheme;
34 @Attributes(required = true, maxItems = 1, description = "This is an array of key=value pairs for storing custom application <br>specific settings")
35 Map<String, Object> appSettings = new HashMap<String, Object>();
37 public AlignmentPojo()
41 public List<SequencePojo> getSeqs()
46 public void setSeqs(ArrayList<SequencePojo> seqs)
51 public Map<String, Object> getAppSettings()
56 public void setAppSettings(Map<String, Object> appSettings)
58 this.appSettings = appSettings;
61 public List<AlignmentAnnotationPojo> getAlignAnnotation()
63 return alignAnnotation;
66 public void setAlignAnnotation(
67 List<AlignmentAnnotationPojo> alignAnnotation)
69 this.alignAnnotation = alignAnnotation;
72 public List<SequenceGrpPojo> getSeqGroups()
77 public void setSeqGroups(List<SequenceGrpPojo> seqGroups)
79 this.seqGroups = seqGroups;
82 public List<SequenceFeaturesPojo> getSeqFeatures()
87 public void setSeqFeatures(List<SequenceFeaturesPojo> seqFeatures)
89 this.seqFeatures = seqFeatures;
92 public String getSvid()
97 public void setGlobalColorScheme(String globalColorScheme)
99 // this.appSettings.put("globalColorScheme", globalColorScheme);
102 public String getColourScheme()
107 public void setColourScheme(String colourScheme)
109 this.colourScheme = colourScheme;