use of org.hl7.fhir.r5.model.DateType in project org.hl7.fhir.core by hapifhir.
the class FHIRPathEngine method funcToday.
private List<Base> funcToday(ExecutionContext context, List<Base> focus, ExpressionNode exp) {
List<Base> result = new ArrayList<Base>();
result.add(new DateType(new Date(), TemporalPrecisionEnum.DAY));
return result;
}
use of org.hl7.fhir.r5.model.DateType in project org.hl7.fhir.core by hapifhir.
the class FHIRPathEngine method processDateConstant.
private Base processDateConstant(Object appInfo, String value, ExpressionNode expr) throws PathEngineException {
String date = null;
String time = null;
String tz = null;
TemporalPrecisionEnum temp = null;
if (value.startsWith("T")) {
time = value.substring(1);
} else if (!value.contains("T")) {
date = value;
} else {
String[] p = value.split("T");
date = p[0];
if (p.length > 1) {
time = p[1];
}
}
if (time != null) {
int i = time.indexOf("-");
if (i == -1) {
i = time.indexOf("+");
}
if (i == -1) {
i = time.indexOf("Z");
}
if (i > -1) {
tz = time.substring(i);
time = time.substring(0, i);
}
if (time.length() == 2) {
time = time + ":00:00";
temp = TemporalPrecisionEnum.MINUTE;
} else if (time.length() == 5) {
temp = TemporalPrecisionEnum.MINUTE;
time = time + ":00";
} else if (time.contains(".")) {
temp = TemporalPrecisionEnum.MILLI;
} else {
temp = TemporalPrecisionEnum.SECOND;
}
}
if (date == null) {
if (tz != null) {
throw makeException(expr, I18nConstants.FHIRPATH_UNKNOWN_CONTEXT, value);
} else {
TimeType tt = new TimeType(time);
tt.setPrecision(temp);
return tt.noExtensions();
}
} else if (time != null) {
DateTimeType dt = new DateTimeType(date + "T" + time + (tz == null ? "" : tz));
dt.setPrecision(temp);
return dt.noExtensions();
} else {
return new DateType(date).noExtensions();
}
}
use of org.hl7.fhir.r5.model.DateType in project org.hl7.fhir.core by hapifhir.
the class DateTypeNullTest method copy.
@Test
@DisplayName("Test null value copy()")
void copy() {
DateType nullDate = new DateType();
DateType copyDate = nullDate.copy();
Assertions.assertNull(copyDate.getValue());
}
use of org.hl7.fhir.r5.model.DateType in project org.hl7.fhir.core by hapifhir.
the class DateTypeNullTest method testToString.
@Test
@DisplayName("Test null value toString()")
void testToString() {
DateType nullDate = new DateType();
System.out.println("Value -> " + nullDate);
}
use of org.hl7.fhir.r5.model.DateType in project org.hl7.fhir.core by hapifhir.
the class DateTypeNullTest method equalsDeep.
@Test
@DisplayName("Test null value equalsDeep()")
void equalsDeep() {
DateType nullDate = new DateType();
DateType validDate = new DateType("1969-07-20");
Assertions.assertFalse(nullDate.equalsDeep(validDate));
}
Aggregations