001package org.hl7.fhir.utilities.graphql;
002
003public class StringValue extends Value {
004  private String value;
005
006  public StringValue(java.lang.String value) {
007    super();
008    this.value = value;
009  }
010
011  public String getValue() {
012    return value;
013  }
014
015  public void setValue(String value) {
016    this.value = value;
017  }
018
019  public boolean isValue(String v) {
020    return v.equals(value);      
021  }
022  public String toString() {
023    return value;
024  }
025  public void write(StringBuilder b, int indent) {
026    b.append("\"");
027    for (char ch : value.toCharArray()) {
028      if (ch == '"') b.append("\"");
029      else if (ch == '\\') b.append("\\");
030      else if (ch == '\r') b.append("\\r");
031      else if (ch == '\n') b.append("\\n");
032      else if (ch == '\t') b.append("\\t");
033      else if (ch < 32)
034        b.append("\\u"+Integer.toHexString(ch));
035      else
036        b.append(ch);
037    }
038    b.append("\"");
039  }
040}