@Override void doSetValueAsQueryToken(FhirContext theContext, String theParamName, String theQualifier, String theValue) { clear(); if (theValue == null) { return; } List<String> parts = ParameterUtil.splitParameterString(theValue, '|', true); if (parts.size() > 0 && StringUtils.isNotBlank(parts.get(0))) { String value = super.extractPrefixAndReturnRest(parts.get(0)); setValue(value); } if (parts.size() > 1 && StringUtils.isNotBlank(parts.get(1))) { setSystem(parts.get(1)); } if (parts.size() > 2 && StringUtils.isNotBlank(parts.get(2))) { setUnits(parts.get(2)); } }
@Override void doSetValueAsQueryToken(FhirContext theContext, String theParamName, String theQualifier, String theValue) { if (isBlank(theValue)) { myLeftType.setValueAsQueryToken(theContext, theParamName, theQualifier, ""); myRightType.setValueAsQueryToken(theContext, theParamName, theQualifier, ""); } else { List<String> parts = ParameterUtil.splitParameterString(theValue, '$', false); if (parts.size() > 2) { throw new InvalidRequestException("Invalid value for composite parameter (only one '$' is valid for this parameter, others must be escaped). Value was: " + theValue); } myLeftType.setValueAsQueryToken(theContext, theParamName, theQualifier, parts.get(0)); if (parts.size() > 1) { myRightType.setValueAsQueryToken(theContext, theParamName, theQualifier, parts.get(1)); } } }
@Override void doSetValueAsQueryToken(FhirContext theContext, String theParamName, String theQualifier, String theValue) { clear(); if (theValue == null) { return; } List<String> parts = ParameterUtil.splitParameterString(theValue, '|', true); if (parts.size() > 0 && StringUtils.isNotBlank(parts.get(0))) { String value = super.extractPrefixAndReturnRest(parts.get(0)); setValue(value); } if (parts.size() > 1 && StringUtils.isNotBlank(parts.get(1))) { setSystem(parts.get(1)); } if (parts.size() > 2 && StringUtils.isNotBlank(parts.get(2))) { setUnits(parts.get(2)); } }
@Override void doSetValueAsQueryToken(FhirContext theContext, String theParamName, String theQualifier, String theValue) { if (isBlank(theValue)) { myLeftType.setValueAsQueryToken(theContext, theParamName, theQualifier, ""); myRightType.setValueAsQueryToken(theContext, theParamName, theQualifier, ""); } else { List<String> parts = ParameterUtil.splitParameterString(theValue, '$', false); if (parts.size() > 2) { throw new InvalidRequestException("Invalid value for composite parameter (only one '$' is valid for this parameter, others must be escaped). Value was: " + theValue); } myLeftType.setValueAsQueryToken(theContext, theParamName, theQualifier, parts.get(0)); if (parts.size() > 1) { myRightType.setValueAsQueryToken(theContext, theParamName, theQualifier, parts.get(1)); } } }