+++ /dev/null
-package fr.orsay.lri.varna.models.rna;
-
-import java.awt.Color;
-import java.io.Serializable;
-
-import javax.xml.transform.sax.TransformerHandler;
-
-import org.xml.sax.SAXException;
-import org.xml.sax.helpers.AttributesImpl;
-
-import fr.orsay.lri.varna.utils.XMLUtils;
-
-public class ModeleBackboneElement implements Serializable{
-
- /**
- *
- */
- private static final long serialVersionUID = -614968737102943216L;
-
- public ModeleBackboneElement(int index, BackboneType t)
- {
- _index=index;
- if (t==BackboneType.CUSTOM_COLOR)
- {
- throw new IllegalArgumentException("Error: Missing Color while constructing Backbone");
- }
- _type=t;
- }
-
- public ModeleBackboneElement(int index, Color c)
- {
- _index=index;
- _type=BackboneType.CUSTOM_COLOR;
- _color = c;
- }
-
- public enum BackboneType{
- SOLID_TYPE ("solid"),
- DISCONTINUOUS_TYPE ("discontinuous"),
- MISSING_PART_TYPE ("missing"),
- CUSTOM_COLOR ("custom");
-
- private String label;
-
- BackboneType(String s)
- {
- label = s;
- }
-
- public String getLabel()
- {
- return label;
- }
-
-
- public static BackboneType getType(String lbl)
- {
- BackboneType[] vals = BackboneType.values();
- for(int i=0;i<vals.length;i++)
- {
- if (vals[i].equals(lbl))
- return vals[i];
- }
- return null;
- }
-
- };
-
- private BackboneType _type;
- private Color _color = null;
- private int _index;
-
-
- public BackboneType getType()
- {
- return _type;
- }
-
- public int getIndex()
- {
- return _index;
- }
-
- public Color getColor()
- {
- return _color;
- }
-
- public static String XML_ELEMENT_NAME = "BackboneElement";
- public static String XML_VAR_INDEX_NAME = "index";
- public static String XML_VAR_TYPE_NAME = "type";
- public static String XML_VAR_COLOR_NAME = "color";
-
- public void toXML(TransformerHandler hd) throws SAXException
- {
- AttributesImpl atts = new AttributesImpl();
- atts.addAttribute("","",XML_VAR_INDEX_NAME,"CDATA",""+_index);
- atts.addAttribute("","",XML_VAR_TYPE_NAME,"CDATA",""+_type.getLabel());
- if(_type==BackboneType.CUSTOM_COLOR){
- atts.addAttribute("","",XML_VAR_COLOR_NAME,"CDATA",""+XMLUtils.toHTMLNotation(_color));
- }
- hd.startElement("","",XML_ELEMENT_NAME,atts);
- hd.endElement("","",XML_ELEMENT_NAME);
- }
-
-}