Interface IResourceLinkResolver


public interface IResourceLinkResolver
  • Method Summary

    Modifier and Type
    Method
    Description
    findTargetResource(ca.uhn.fhir.interceptor.model.RequestPartitionId theRequestPartitionId, String theSourceResourceName, PathAndRef thePathAndRef, ca.uhn.fhir.rest.api.server.RequestDetails theRequest, ca.uhn.fhir.rest.api.server.storage.TransactionDetails theTransactionDetails)
    This method resolves the target of a reference found within a resource that is being created/updated.
    org.hl7.fhir.instance.model.api.IBaseResource
    loadTargetResource(ca.uhn.fhir.interceptor.model.RequestPartitionId theRequestPartitionId, String theSourceResourceName, PathAndRef thePathAndRef, ca.uhn.fhir.rest.api.server.RequestDetails theRequest, ca.uhn.fhir.rest.api.server.storage.TransactionDetails theTransactionDetails)
    This method resolves the target of a reference found within a resource that is being created/updated.
    void
    validateTypeOrThrowException(Class<? extends org.hl7.fhir.instance.model.api.IBaseResource> theType)
     
  • Method Details

    • findTargetResource

      IResourceLookup findTargetResource(@Nonnull ca.uhn.fhir.interceptor.model.RequestPartitionId theRequestPartitionId, String theSourceResourceName, PathAndRef thePathAndRef, ca.uhn.fhir.rest.api.server.RequestDetails theRequest, ca.uhn.fhir.rest.api.server.storage.TransactionDetails theTransactionDetails)
      This method resolves the target of a reference found within a resource that is being created/updated. We do this so that we can create indexed links between resources, and so that we can validate that the target actually exists in cases where we need to check that.

      This method returns an IResourceLookup to avoid needing to resolve the entire resource.

      Parameters:
      theRequestPartitionId - The partition ID of the target resource
      theSourceResourceName - The resource type for the resource containing the reference
      thePathAndRef - The path and reference
      theRequest - The incoming request, if any
      theTransactionDetails - The current TransactionDetails object
    • loadTargetResource

      @Nullable org.hl7.fhir.instance.model.api.IBaseResource loadTargetResource(@Nonnull ca.uhn.fhir.interceptor.model.RequestPartitionId theRequestPartitionId, String theSourceResourceName, PathAndRef thePathAndRef, ca.uhn.fhir.rest.api.server.RequestDetails theRequest, ca.uhn.fhir.rest.api.server.storage.TransactionDetails theTransactionDetails)
      This method resolves the target of a reference found within a resource that is being created/updated. We do this so that we can create indexed links between resources, and so that we can validate that the target actually exists in cases where we need to check that.

      This method returns an IResourceLookup to avoid needing to resolve the entire resource.

      Parameters:
      theRequestPartitionId - The partition ID of the target resource
      theSourceResourceName - The resource type for the resource containing the reference
      thePathAndRef - The path and reference
      theRequest - The incoming request, if any
      theTransactionDetails - The current TransactionDetails object
    • validateTypeOrThrowException

      void validateTypeOrThrowException(Class<? extends org.hl7.fhir.instance.model.api.IBaseResource> theType)