Interface CompositionService

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

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

    Modifier and Type
    Method
    Description
    void
    adminDelete(UUID compositionId)
    Admin method to delete a Composition from the DB.
    com.nedap.archie.rm.composition.Composition
    buildComposition(String content, org.ehrbase.openehr.sdk.response.dto.ehrscape.CompositionFormat format, String templateId)
     
    boolean
    exists(UUID versionedObjectId)
    Checks if given ID is already used.
    static org.ehrbase.openehr.sdk.response.dto.ehrscape.CompositionDto
    from(UUID ehrId, com.nedap.archie.rm.composition.Composition composition)
     
    getEhrId(UUID compositionId)
     
    int
    getLastVersionNumber(UUID compositionId)
     
    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.
    com.nedap.archie.rm.generic.RevisionHistory
    Gets revision history of given composition.
    getTemplateIdFromInputComposition(String content, org.ehrbase.openehr.sdk.response.dto.ehrscape.CompositionFormat format)
    Helper function to read the template ID from given composition input in stated format.
    int
    getVersionByTimestamp(UUID compositionId, OffsetDateTime timestamp)
    Gets the version of a composition that is closest in time before timestamp
    com.nedap.archie.rm.ehr.VersionedComposition
    getVersionedComposition(UUID ehrUid, UUID composition)
    Gets version container Composition associated with given EHR and Composition ID.
    boolean
    isDeleted(UUID ehrId, UUID versionedObjectId, Integer version)
    Checks if given composition ID is ID of a logically deleted composition.
    Optional<com.nedap.archie.rm.composition.Composition>
    retrieve(UUID ehrId, UUID compositionId, Integer version)
     
    retrieveTemplateId(UUID compositionId)
    Retrieves the template ID associated with a given composition ID.
    org.ehrbase.openehr.sdk.response.dto.ehrscape.StructuredString
    serialize(org.ehrbase.openehr.sdk.response.dto.ehrscape.CompositionDto composition, org.ehrbase.openehr.sdk.response.dto.ehrscape.CompositionFormat format)
    Public serializer entry point which will be called with composition dto fetched from database and the desired target serialized string format.

    Methods inherited from interface org.ehrbase.api.service.VersionedObjectService

    create, create, create, delete, delete, delete, update, update, update
  • Method Details

    • retrieve

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

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

      org.ehrbase.openehr.sdk.response.dto.ehrscape.StructuredString serialize(org.ehrbase.openehr.sdk.response.dto.ehrscape.CompositionDto composition, org.ehrbase.openehr.sdk.response.dto.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

      int getLastVersionNumber(UUID compositionId)
    • getTemplateIdFromInputComposition

      String getTemplateIdFromInputComposition(String content, org.ehrbase.openehr.sdk.response.dto.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

      int getVersionByTimestamp(UUID compositionId, OffsetDateTime 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 already used.
      Parameters:
      versionedObjectId - ID to check
      Returns:
      if ID already exists
    • isDeleted

      boolean isDeleted(UUID ehrId, UUID versionedObjectId, @Nullable Integer version)
      Checks if given composition ID is ID of a logically deleted composition.
      Parameters:
      ehrId -
      versionedObjectId - ID to check
      version -
      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.openehr.sdk.response.dto.ehrscape.CompositionFormat format, String templateId)
    • getEhrId

      UUID getEhrId(UUID compositionId)