001 // License: GPL. For details, see LICENSE file.
002 package org.openstreetmap.josm.gui.mappaint.xml;
003
004 import org.openstreetmap.josm.data.osm.OsmUtils;
005
006 public class XmlCondition
007 {
008 public String key;
009 public String value;
010 public String boolValue;
011
012 public XmlCondition()
013 {
014 init();
015 }
016 public XmlCondition(XmlCondition c)
017 {
018 key = c.key;
019 value = c.value;
020 boolValue = c.boolValue;
021 }
022 public String getKey()
023 {
024 if(value != null)
025 return "n" + key + "=" + value;
026 else if(boolValue != null)
027 return "b" + key + "=" + OsmUtils.getNamedOsmBoolean(boolValue);
028 else
029 return "x" + key;
030 }
031 public void init()
032 {
033 key = value = boolValue = null;
034 }
035
036 public String toString()
037 {
038 return "Rule["+key+","+(boolValue != null ? "b="+boolValue:"v="+value)+"]";
039 }
040 public String toCode()
041 {
042 return "[k="+key+(boolValue != null ? ",b="+boolValue:",v="+value)+"]";
043 }
044 }