JAL-2089 patch broken merge to master for Release 2.10.0b1
[jalview.git] / src / jalview / json / binding / biojson / v1 / AlignmentAnnotationPojo.java
1 /*
2  * Jalview - A Sequence Alignment Editor and Viewer ($$Version-Rel$$)
3  * Copyright (C) $$Year-Rel$$ The Jalview Authors
4  * 
5  * This file is part of Jalview.
6  * 
7  * Jalview is free software: you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License 
9  * as published by the Free Software Foundation, either version 3
10  * of the License, or (at your option) any later version.
11  *  
12  * Jalview is distributed in the hope that it will be useful, but 
13  * WITHOUT ANY WARRANTY; without even the implied warranty 
14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
15  * PURPOSE.  See the GNU General Public License for more details.
16  * 
17  * You should have received a copy of the GNU General Public License
18  * along with Jalview.  If not, see <http://www.gnu.org/licenses/>.
19  * The Jalview Authors are detailed in the 'AUTHORS' file.
20  */
21 package jalview.json.binding.biojson.v1;
22
23 import java.util.ArrayList;
24 import java.util.List;
25
26 import com.github.reinert.jjschema.Attributes;
27
28 public class AlignmentAnnotationPojo
29 {
30
31   @Attributes(
32     required = false,
33     description = "Label for the alignment annotation")
34   private String label;
35
36   @Attributes(
37     required = false,
38     description = "Description for the alignment annotation")
39   private String description;
40
41   @Attributes(required = false)
42   private List<AnnotationPojo> annotations = new ArrayList<AnnotationPojo>();
43
44   @Attributes(
45     required = false,
46     enums = { "0", "1", "2" },
47     description = "Determines the rendering for the annotation<br><ul><li>0 - No graph</li><li>1 - Bar Graph</li><li>2 - Line graph</li></ul>")
48   private int graphType;
49
50   @Attributes(
51     required = false,
52     description = "Reference to the sequence in the alignment<br> if per-sequence annotation")
53   private String sequenceRef;
54
55   @Attributes(
56     required = false,
57     description = "Stores display settings for an annotation")
58   private AnnotationDisplaySettingPojo annotationSettings;
59
60   @Attributes(required = false, description = "Score of the annotation")
61   private double score;
62
63   @Attributes(
64     required = false,
65     description = "The annotation generation source")
66   private String calcId;
67
68   public String getLabel()
69   {
70     return label;
71   }
72
73   public void setLabel(String label)
74   {
75     this.label = label;
76   }
77
78   public String getDescription()
79   {
80     return description;
81   }
82
83   public void setDescription(String annotationId)
84   {
85     this.description = annotationId;
86   }
87
88   public List<AnnotationPojo> getAnnotations()
89   {
90     return annotations;
91   }
92
93   public void setAnnotations(List<AnnotationPojo> annotations)
94   {
95     this.annotations = annotations;
96   }
97
98   public String getSequenceRef()
99   {
100     return sequenceRef;
101   }
102
103   public void setSequenceRef(String sequenceRef)
104   {
105     this.sequenceRef = sequenceRef;
106   }
107
108   public int getGraphType()
109   {
110     return graphType;
111   }
112
113   public void setGraphType(int graphType)
114   {
115     this.graphType = graphType;
116   }
117
118   public AnnotationDisplaySettingPojo getAnnotationSettings()
119   {
120     return annotationSettings;
121   }
122
123   public void setAnnotationSettings(
124           AnnotationDisplaySettingPojo annotationSettings)
125   {
126     this.annotationSettings = annotationSettings;
127   }
128
129   public double getScore()
130   {
131     return score;
132   }
133
134   public void setScore(double score)
135   {
136     this.score = score;
137   }
138
139   public String getCalcId()
140   {
141     return calcId;
142   }
143
144   public void setCalcId(String calcId)
145   {
146     this.calcId = calcId;
147   }
148
149 }