JAL-1831 added changes to allow auto-generation of BioJSON schema from src code
[jalview.git] / src / jalview / json / binding / biojson / v1 / SequenceFeaturesPojo.java
diff --git a/src/jalview/json/binding/biojson/v1/SequenceFeaturesPojo.java b/src/jalview/json/binding/biojson/v1/SequenceFeaturesPojo.java
new file mode 100644 (file)
index 0000000..e493ecb
--- /dev/null
@@ -0,0 +1,165 @@
+package jalview.json.binding.biojson.v1;
+
+import java.util.Map;
+import java.util.Vector;
+
+import com.github.reinert.jjschema.Attributes;
+
+public class SequenceFeaturesPojo
+{
+  @Attributes(required = true, description = "Serial version id for the <b>SeqFeature</b> object")
+  private String svid = "1.0";
+
+  @Attributes(required = true, description = "Start residue position for the sequence feature")
+  private int xStart;
+
+  @Attributes(required = true, description = "End residue position for the sequence feature")
+  private int xEnd;
+
+  @Attributes(required = true, minItems = 1, maxItems = 1999999999, description = "Reference to the sequence in the alignment<br> (more like a foreign key)")
+  private String sequenceRef;
+
+  @Attributes(required = true, description = "The name or type of the SequenceFeature")
+  private String type;
+
+  @Attributes(required = false, description = "Score")
+  private Float score;
+
+  @Attributes(required = false, description = "Description for the feature")
+  private String description;
+  
+  @Attributes(required = false, description = "Additional metadata for the feature")
+  private Map<String, Object> otherDetails;
+
+  @Attributes(required = false, description = "Fill colour")
+  private String fillColor;
+
+  @Attributes(required = true, description = "Feature group")
+  private String featureGroup;
+
+  @Attributes(required = false, description = "URL links associated to the feature")
+  private Vector<String> links;
+
+  public SequenceFeaturesPojo()
+  {
+  }
+
+  public SequenceFeaturesPojo(String sequenceRef)
+  {
+    this.sequenceRef = sequenceRef;
+  }
+
+  public String getFillColor()
+  {
+    return "#" + fillColor;
+  }
+
+  public void setFillColor(String fillColor)
+  {
+    this.fillColor = fillColor;
+  }
+
+  public int getXstart()
+  {
+    return xStart;
+  }
+
+  public void setXstart(int xStart)
+  {
+    this.xStart = xStart;
+  }
+
+  public int getXend()
+  {
+    return xEnd;
+  }
+
+  public void setXend(int xend)
+  {
+    this.xEnd = xend;
+  }
+
+  public String getType()
+  {
+    return type;
+  }
+
+  public void setType(String type)
+  {
+    this.type = type;
+  }
+
+  public Float getScore()
+  {
+    return score;
+  }
+
+  public void setScore(Float score)
+  {
+    this.score = score;
+  }
+
+  public String getDescription()
+  {
+    return description;
+  }
+
+  public void setDescription(String description)
+  {
+    this.description = description;
+  }
+
+  public Map<String, Object> getOtherDetails()
+  {
+    return otherDetails;
+  }
+
+  public void setOtherDetails(Map<String, Object> otherDetails)
+  {
+    this.otherDetails = otherDetails;
+  }
+
+  public Vector<String> getLinks()
+  {
+    return links;
+  }
+
+  public void setLinks(Vector<String> links)
+  {
+    this.links = links;
+  }
+
+  public String getFeatureGroup()
+  {
+    return featureGroup;
+  }
+
+  public void setFeatureGroup(String featureGroup)
+  {
+    this.featureGroup = featureGroup;
+  }
+
+  public String getSequenceRef()
+  {
+    return sequenceRef;
+  }
+
+  public void setSequenceRef(String sequenceRef)
+  {
+    this.sequenceRef = sequenceRef;
+  }
+
+  public String getSvid()
+  {
+    return svid;
+  }
+
+//public Map<String, Object> getOtherDetails() {
+//     return otherDetails;
+//}
+//
+//public void setOtherDetails(Map<String, Object> otherDetails) {
+//     this.otherDetails = otherDetails;
+//}
+
+}