Package ca.uhn.fhir.model.api

Examples of ca.uhn.fhir.model.api.IResource


          reader = null;
        }

        if (reader != null) {
          IParser parser = ct.newParser(theContext);
          IResource outcome = parser.parseResource(reader);
          if (outcome instanceof OperationOutcome) {
            retVal.setOperationOutcome((OperationOutcome) outcome);
          }
        }
View Full Code Here


  }

  @Override
  public void invokeServer(RestfulServer theServer, Request theRequest) throws BaseServerResponseException, IOException {
    IResource resource;
    if (requestContainsResource()) {
      resource = parseIncomingServerResource(theRequest);
      TagList tagList = new TagList();
      for (Enumeration<String> enumeration = theRequest.getServletRequest().getHeaders(Constants.HEADER_CATEGORY); enumeration.hasMoreElements();) {
        String nextTagComplete = enumeration.nextElement();
        MethodUtil.parseTagValue(tagList, nextTagComplete);
      }
      if (tagList.isEmpty() == false) {
        resource.getResourceMetadata().put(ResourceMetadataKeyEnum.TAG_LIST, tagList);
      }
    } else {
      resource = null;
    }
View Full Code Here

   * @throws IOException
   */
  protected IResource parseIncomingServerResource(Request theRequest) throws IOException {
    EncodingEnum encoding = RestfulServer.determineRequestEncoding(theRequest);
    IParser parser = encoding.newParser(getContext());
    IResource resource = parser.parseResource(theRequest.getServletRequest().getReader());
    return resource;
  }
View Full Code Here

          String resourceText = StringUtils.defaultString(theReq.getParameter("resource"));
          if (StringUtils.isBlank(resourceText)) {
            theResp.sendError(Constants.STATUS_HTTP_400_BAD_REQUEST, "No resource content specified");
          }

          IResource resource;
          if (client.getEncoding() == null || client.getEncoding() == EncodingEnum.XML) {
            resource = myCtx.newXmlParser().parseResource(def.getImplementingClass(), resourceText);
          } else {
            resource = myCtx.newJsonParser().parseResource(def.getImplementingClass(), resourceText);
          }
          returnsResource = false;

          client.create(resource);

        } else if ("validate".equals(method)) {
          RuntimeResourceDefinition def = getResourceType(theReq);
          String resourceText = StringUtils.defaultString(theReq.getParameter("resource"));
          if (StringUtils.isBlank(resourceText)) {
            theResp.sendError(Constants.STATUS_HTTP_400_BAD_REQUEST, "No resource content specified");
          }

          IResource resource;
          if (client.getEncoding() == null || client.getEncoding() == EncodingEnum.XML) {
            resource = myCtx.newXmlParser().parseResource(def.getImplementingClass(), resourceText);
          } else {
            resource = myCtx.newJsonParser().parseResource(def.getImplementingClass(), resourceText);
          }
          returnsResource = false;

          client.validate(resource);

        } else if ("update".equals(method)) {
          RuntimeResourceDefinition def = getResourceType(theReq);
          String resourceText = StringUtils.defaultString(theReq.getParameter("resource"));
          if (StringUtils.isBlank(resourceText)) {
            theResp.sendError(Constants.STATUS_HTTP_400_BAD_REQUEST, "No resource content specified");
          }

          String id = StringUtils.defaultString(theReq.getParameter("id"));
          if (StringUtils.isBlank(id)) {
            theResp.sendError(Constants.STATUS_HTTP_400_BAD_REQUEST, "No ID specified");
          }

          IResource resource;
          if (client.getEncoding() == null || client.getEncoding() == EncodingEnum.XML) {
            resource = myCtx.newXmlParser().parseResource(def.getImplementingClass(), resourceText);
          } else {
            resource = myCtx.newJsonParser().parseResource(def.getImplementingClass(), resourceText);
          }
View Full Code Here

    }
  }

  private String parseNarrative(EncodingEnum theCtEnum, String theResultBody) {
    try {
      IResource resource = theCtEnum.newParser(myCtx).parseResource(theResultBody);
      String retVal = resource.getText().getDiv().getValueAsString();
      return StringUtils.defaultString(retVal);
    } catch (Exception e) {
      ourLog.error("Failed to parse resource", e);
      return "";
    }
View Full Code Here

   
  }

  @Override
  public Object translateQueryParametersIntoServerArgument(Request theRequest, Object theRequestContents) throws InternalErrorException, InvalidRequestException {
    IResource resource = (IResource) theRequestContents;
    return resource;
  }
View Full Code Here

      for (ResourceReferenceDt nextRef : myResourceReferences) {
        String ref = nextRef.getReference().getValue();
        if (isNotBlank(ref)) {
          if (ref.startsWith("#")) {
            IResource target = myContainedResources.get(ref.substring(1));
            if (target != null) {
              nextRef.setResource(target);
            } else {
              ourLog.warn("Resource contains unknown local ref: " + ref);
            }
View Full Code Here

    List<ResourceReferenceDt> allElements = theResource.getAllPopulatedChildElementsOfType(ResourceReferenceDt.class);

    Set<String> allIds = new HashSet<String>();

    for (ResourceReferenceDt next : allElements) {
      IResource resource = next.getResource();
      if (resource != null) {
        if (resource.getId().isEmpty()) {
          resource.setId(new IdDt(UUID.randomUUID().toString()));
        }

        if (!allIds.contains(resource.getId().getValue())) {
          theResource.getContained().getContainedResources().add(resource);
          allIds.add(resource.getId().getValue());
        }

        next.setReference("#" + resource.getId().getValue());
      }
    }

  }
View Full Code Here

    return myResourceName;
  }

  @Override
  public BaseClientInvocation invokeClient(Object[] theArgs) throws InternalErrorException {
    IResource resource = (IResource) theArgs[myResourceParameterIndex];
    if (resource == null) {
      throw new NullPointerException("Resource can not be null");
    }

    BaseClientInvocation retVal = createClientInvocation(theArgs, resource);
   
    TagList list = (TagList) resource.getResourceMetadata().get(ResourceMetadataKeyEnum.TAG_LIST);
    if (list != null) {
      for (Tag tag : list) {
        if (StringUtils.isNotBlank(tag.getTerm())) {
          retVal.addHeader(Constants.HEADER_CATEGORY, tag.toHeaderValue());
        }
View Full Code Here

        }

        eventWriter.writeStartElement("content");
        eventWriter.writeAttribute("type", "text/xml");

        IResource resource = nextEntry.getResource();
        if (resource != null) {
          encodeResourceToXmlStreamWriter(resource, eventWriter, false);
        } else {
          ourLog.warn("Bundle entry contains null resource");
        }
View Full Code Here

TOP

Related Classes of ca.uhn.fhir.model.api.IResource

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.