Interface CompositionService

All Superinterfaces:
BaseService, VersionedObjectService<com.nedap.archie.rm.composition.Composition,UUID>

public interface CompositionService extends BaseService, VersionedObjectService<com.nedap.archie.rm.composition.Composition,UUID>
  • Method Details

    • retrieve

      Optional<com.nedap.archie.rm.composition.Composition> retrieve(UUID ehrId, UUID compositionId, Integer version)
      Parameters:
      compositionId - The UUID of the composition to be returned.
      ehrId - The UUID of the ehr wich contains the composition
      version - The version to returned. If null return the latest
      Returns:
      Throws:
      InternalServerException
    • from

      static org.ehrbase.response.ehrscape.CompositionDto from(UUID ehrId, com.nedap.archie.rm.composition.Composition composition)
    • serialize

      org.ehrbase.response.ehrscape.StructuredString serialize(org.ehrbase.response.ehrscape.CompositionDto composition, org.ehrbase.response.ehrscape.CompositionFormat format)
      Public serializer entry point which will be called with composition dto fetched from database and the desired target serialized string format. Will parse the composition dto into target format either with a custom lambda expression for desired target format
      Parameters:
      composition - Composition dto from database
      format - Target format
      Returns:
      Structured string with string of data and content format
    • getLastVersionNumber

      Integer getLastVersionNumber(UUID compositionId)
    • getTemplateIdFromInputComposition

      String getTemplateIdFromInputComposition(String content, org.ehrbase.response.ehrscape.CompositionFormat format)
      Helper function to read the template ID from given composition input in stated format.
      Parameters:
      content - Composition input
      format - Composition format
      Returns:
      The UUID or null when not available.
    • retrieveTemplateId

      String retrieveTemplateId(UUID compositionId)
      Retrieves the template ID associated with a given composition ID.
      Parameters:
      compositionId - The UUID of the composition for which to retrieve the template ID
      Returns:
      The template ID associated with the given composition ID
    • getVersionByTimestamp

      Integer getVersionByTimestamp(UUID compositionId, LocalDateTime timestamp)
      Gets the version of a composition that is closest in time before timestamp
      Parameters:
      compositionId - UUID (versioned_object_id) of composition
      timestamp - Given time
      Returns:
      Version closest in time before given timestamp, or `null` in case of error.
    • exists

      boolean exists(UUID versionedObjectId)
      Checks if given ID is a valid composition ID.
      Parameters:
      versionedObjectId - ID to check
      Returns:
      True if ID exists
      Throws:
      ObjectNotFoundException - if ID does not exist
    • isDeleted

      boolean isDeleted(UUID versionedObjectId)
      Checks if given composition ID is ID of a logically deleted composition.
      Parameters:
      versionedObjectId - ID to check
      Returns:
      True if deleted, false if not
    • adminDelete

      void adminDelete(UUID compositionId)
      Admin method to delete a Composition from the DB. See EHRbase Admin API specification for details.
      Parameters:
      compositionId - Composition to delete
    • getVersionedComposition

      com.nedap.archie.rm.ehr.VersionedComposition getVersionedComposition(UUID ehrUid, UUID composition)
      Gets version container Composition associated with given EHR and Composition ID.
      Parameters:
      ehrUid - Given EHR ID
      composition - Given Composition ID
      Returns:
      Version container object
    • getRevisionHistoryOfVersionedComposition

      com.nedap.archie.rm.generic.RevisionHistory getRevisionHistoryOfVersionedComposition(UUID ehrUid, UUID composition)
      Gets revision history of given composition.
      Parameters:
      composition - Given composition.
      Returns:
      Revision history
    • getOriginalVersionComposition

      Optional<com.nedap.archie.rm.changecontrol.OriginalVersion<com.nedap.archie.rm.composition.Composition>> getOriginalVersionComposition(UUID ehrUid, UUID versionedObjectUid, int version)
      Gets Original Version container class representation of the given composition at given version.
      Parameters:
      versionedObjectUid - Given composition Uid.
      version - Given version number.
      Returns:
      Original Version container class representation.
    • buildComposition

      com.nedap.archie.rm.composition.Composition buildComposition(String content, org.ehrbase.response.ehrscape.CompositionFormat format, String templateId)
    • getEhrId

      UUID getEhrId(UUID compositionId)