001package org.hl7.fhir.r4.formats;
002
003import java.io.IOException;
004import java.math.BigDecimal;
005
006/**
007 * Facade to GSON writer, or something that imposes property ordering first
008 * 
009 * @author Grahame
010 *
011 */
012public interface JsonCreator {
013
014  void setIndent(String string);
015
016  void beginObject() throws IOException;
017
018  void endObject() throws IOException;
019
020  void nullValue() throws IOException;
021
022  void name(String name) throws IOException;
023
024  void value(String value) throws IOException;
025
026  void value(Boolean value) throws IOException;
027
028  void value(BigDecimal value) throws IOException;
029  void valueNum(String value) throws IOException; // allow full control of representation
030
031  void value(Integer value) throws IOException;
032
033  void beginArray() throws IOException;
034
035  void endArray() throws IOException;
036
037  void finish() throws IOException;
038
039  // only used by an creator that actually produces xhtml
040  void link(String href);
041}