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}