Package ca.uhn.fhir.rest.param

Examples of ca.uhn.fhir.rest.param.SearchParameter


          for (IParameter nextParameterObj : params) {
            if (!(nextParameterObj instanceof SearchParameter)) {
              continue;
            }

            SearchParameter nextParameter = (SearchParameter) nextParameterObj;

            if (searchParam == null) {
              if (!nameToSearchParam.containsKey(nextParameter.getName())) {
                RestResourceSearchParam param = resource.addSearchParam();
                param.setName(nextParameter.getName());
                param.setDocumentation(nextParameter.getDescription());
                param.setType(nextParameter.getParamType());
                searchParam = param;
              } else {
                searchParam = nameToSearchParam.get(nextParameter.getName());
              }

              if (searchParam != null) {
                searchParam.setType(nextParameter.getParamType());
              }

            } else {

              searchParamChain = searchParam.addUndeclaredExtension(false, ExtensionConstants.CONF_ADDITIONAL_PARAM);
             
//              if (searchParamChain == null) {
//              } else {
//                searchParamChain = searchParamChain.addUndeclaredExtension(false, ExtensionConstants.CONF_ADDITIONAL_PARAM);
//              }

              ExtensionDt ext = new ExtensionDt();
              ext.setUrl(ExtensionConstants.CONF_ADDITIONAL_PARAM_NAME);
              ext.setValue(new StringDt(nextParameter.getName()));
              searchParamChain.getUndeclaredExtensions().add(ext);

              ext = new ExtensionDt();
              ext.setUrl(ExtensionConstants.CONF_ADDITIONAL_PARAM_DESCRIPTION);
              ext.setValue(new StringDt(nextParameter.getDescription()));
              searchParamChain.getUndeclaredExtensions().add(ext);

              ext = new ExtensionDt();
              ext.setUrl(ExtensionConstants.CONF_ADDITIONAL_PARAM_TYPE);
              if (nextParameter.getParamType() != null) {
                ext.setValue(new CodeDt(nextParameter.getParamType().getCode()));
              }
              searchParamChain.getUndeclaredExtensions().add(ext);

              ext = new ExtensionDt();
              ext.setUrl(ExtensionConstants.CONF_ADDITIONAL_PARAM_REQUIRED);
              ext.setValue(new BooleanDt(nextParameter.isRequired()));
              searchParamChain.getUndeclaredExtensions().add(ext);

            }

          }
View Full Code Here


          parameterType = ReflectionUtil.getGenericCollectionTypeOfMethodParameter(method, paramIndex);
        }

        IParameter param;
        if (nextAnnotation instanceof RequiredParam) {
          SearchParameter parameter = new SearchParameter();
          parameter.setName(((RequiredParam) nextAnnotation).name());
          parameter.setRequired(true);
          parameter.setType(parameterType, innerCollectionType, outerCollectionType);
          param = parameter;
        } else if (nextAnnotation instanceof OptionalParam) {
          SearchParameter parameter = new SearchParameter();
          parameter.setName(((OptionalParam) nextAnnotation).name());
          parameter.setRequired(false);
          parameter.setType(parameterType, innerCollectionType, innerCollectionType);
          param = parameter;
        } else if (nextAnnotation instanceof IncludeParam) {
          if (parameterType != PathSpecification.class || innerCollectionType == null || outerCollectionType != null) {
            throw new ConfigurationException("Method '" + method.getName() + "' is annotated with @" + IncludeParam.class.getSimpleName() + " but has a type other than Collection<"
                + PathSpecification.class.getSimpleName() + ">");
View Full Code Here

TOP

Related Classes of ca.uhn.fhir.rest.param.SearchParameter

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.