@PostConstruct public void postConstruct() { Map<String, Map<String, RuntimeSearchParam>> resourceNameToSearchParams = new HashMap<>(); Set<String> resourceNames = myFhirContext.getResourceNames(); for (String resourceName : resourceNames) { RuntimeResourceDefinition nextResDef = myFhirContext.getResourceDefinition(resourceName); String nextResourceName = nextResDef.getName(); HashMap<String, RuntimeSearchParam> nameToParam = new HashMap<>(); resourceNameToSearchParams.put(nextResourceName, nameToParam); for (RuntimeSearchParam nextSp : nextResDef.getSearchParams()) { nameToParam.put(nextSp.getName(), nextSp); } } myBuiltInSearchParams = Collections.unmodifiableMap(resourceNameToSearchParams); }
for (BoundCodeDt<ResourceTypeEnum> next : targets) { RuntimeResourceDefinition def = ctx.getResourceDefinition(next.getValue()); for (RuntimeSearchParam nextChainedParam : def.getSearchParams()) { nextParam.addChain(nextChainedParam.getName());
public void parse() { for (String nextResourceName : myResourceNames) { RuntimeResourceDefinition def = getCtx().getResourceDefinition(nextResourceName); Resource resource = new Resource(); resource.setName(def.getName()); resource.setElementName(def.getName()); addResource(resource); for (RuntimeSearchParam nextSearchParam : def.getSearchParams()) { SearchParameter param = new SearchParameter(getVersion(), def.getName()); param.setName(nextSearchParam.getName()); param.setDescription(nextSearchParam.getDescription()); param.setCompositeOf(toCompositeOfStrings(nextSearchParam.getCompositeOf())); param.setCompositeTypes(toCompositeOfTypes(nextSearchParam.getCompositeOf())); param.setPath(nextSearchParam.getPath()); param.setType(nextSearchParam.getParamType().getCode()); resource.addSearchParameter(param); } } }
for (BoundCodeDt<ResourceTypeEnum> next : targets) { RuntimeResourceDefinition def = ctx.getResourceDefinition(next.getValue()); for (RuntimeSearchParam nextChainedParam : def.getSearchParams()) { nextParam.addChain(nextChainedParam.getName());