1 package ca.uhn.fhir.model.primitive;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 import ca.uhn.fhir.model.api.BasePrimitive;
24 import ca.uhn.fhir.model.api.annotation.DatatypeDef;
25 import ca.uhn.fhir.model.api.annotation.SimpleSetter;
26 import ca.uhn.fhir.parser.DataFormatException;
27
28 @DatatypeDef(name = "boolean")
29 public class BooleanDt extends BasePrimitive<Boolean> {
30
31 private Boolean myValue;
32
33
34
35
36 public BooleanDt() {
37 super();
38 }
39
40
41
42
43 @SimpleSetter
44 public BooleanDt(@SimpleSetter.Parameter(name="theBoolean") boolean theBoolean) {
45 setValue(theBoolean);
46 }
47
48
49 @Override
50 public void setValueAsString(String theValue) throws DataFormatException {
51 if ("true".equals(theValue)) {
52 myValue = Boolean.TRUE;
53 } else if ("false".equals(theValue)) {
54 myValue = Boolean.FALSE;
55 } else {
56 throw new DataFormatException("Invalid boolean string: '" + theValue + "'");
57 }
58 }
59
60 @Override
61 public String getValueAsString() {
62 if (myValue == null) {
63 return null;
64 } else if (Boolean.TRUE.equals(myValue)) {
65 return "true";
66 } else {
67 return "false";
68 }
69
70 }
71
72 @Override
73 public void setValue(Boolean theValue) {
74 myValue = theValue;
75 }
76
77 @Override
78 public Boolean getValue() {
79 return myValue;
80 }
81
82
83
84
85 }