001package org.hl7.fhir.utilities.json.model; 002 003import org.hl7.fhir.utilities.Utilities; 004 005public class JsonNumber extends JsonPrimitive { 006 007 private String value; 008 009 public JsonNumber(String value) { 010 this.value = value; 011 } 012 013 public JsonNumber(int value) { 014 this.value = Integer.toString(value); 015 } 016 017 private JsonNumber() { 018 } 019 020 public JsonElementType type() { 021 return JsonElementType.NUMBER; 022 } 023 024 @Override 025 public String getValue() { 026 return value; 027 } 028 029 @Override 030 public String toString() { 031 return value; 032 } 033 034 public Integer getInteger() { 035 if (Utilities.isInteger(value)) { 036 return Integer.parseInt(value); 037 } else { 038 return null; 039 } 040 } 041 042 @Override 043 protected JsonElement copy(JsonElement other) { 044 value = ((JsonNumber) other).value; 045 return this; 046 } 047 048 @Override 049 protected JsonElement make() { 050 return new JsonNumber(); 051 } 052}