Class ChEmedEprDocumentPre
java.lang.Object
org.hl7.fhir.r4.model.Base
org.hl7.fhir.r4.model.BaseResource
org.hl7.fhir.r4.model.Resource
org.hl7.fhir.r4.model.Bundle
org.projecthusky.fhir.core.ch.resource.r4.AbstractDocument
org.projecthusky.fhir.core.ch.resource.r4.ChCoreDocument
org.projecthusky.fhir.core.ch.resource.r4.ChCoreDocumentEpr
org.projecthusky.fhir.emed.ch.epr.resource.ChEmedEprDocument
org.projecthusky.fhir.emed.ch.epr.resource.pre.ChEmedEprDocumentPre
- All Implemented Interfaces:
ca.uhn.fhir.model.api.IElement,Serializable,org.hl7.fhir.instance.model.api.IAnyResource,org.hl7.fhir.instance.model.api.IBase,org.hl7.fhir.instance.model.api.IBaseBundle,org.hl7.fhir.instance.model.api.IBaseResource
The HAPI custom structure for the CH-EMED-EPR PRE Document Bundle.
- Author:
- Quentin Ligier
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.hl7.fhir.r4.model.Bundle
org.hl7.fhir.r4.model.Bundle.BundleEntryComponent, org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent, org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent, org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent, org.hl7.fhir.r4.model.Bundle.BundleLinkComponent, org.hl7.fhir.r4.model.Bundle.BundleType, org.hl7.fhir.r4.model.Bundle.BundleTypeEnumFactory, org.hl7.fhir.r4.model.Bundle.HTTPVerb, org.hl7.fhir.r4.model.Bundle.HTTPVerbEnumFactory, org.hl7.fhir.r4.model.Bundle.SearchEntryMode, org.hl7.fhir.r4.model.Bundle.SearchEntryModeEnumFactory -
Field Summary
Fields inherited from class org.hl7.fhir.r4.model.Bundle
COMPOSITION, entry, identifier, IDENTIFIER, INCLUDE_COMPOSITION, INCLUDE_MESSAGE, link, MESSAGE, signature, SP_COMPOSITION, SP_IDENTIFIER, SP_MESSAGE, SP_TIMESTAMP, SP_TYPE, timestamp, TIMESTAMP, total, type, TYPEFields inherited from class org.hl7.fhir.r4.model.Resource
id, implicitRules, language, metaFields inherited from interface org.hl7.fhir.instance.model.api.IAnyResource
RES_ID, RES_LAST_UPDATED, RES_PROFILE, RES_SECURITY, RES_TAG, SP_RES_ID, SP_RES_LAST_UPDATED, SP_RES_PROFILE, SP_RES_SECURITY, SP_RES_TAGFields inherited from interface org.hl7.fhir.instance.model.api.IBaseBundle
LINK_NEXT, LINK_PREV, LINK_SELFFields inherited from interface org.hl7.fhir.instance.model.api.IBaseResource
INCLUDE_ALL, WILDCARD_ALL_SET -
Constructor Summary
ConstructorsConstructorDescriptionEmpty constructor for the parser.ChEmedEprDocumentPre(UUID documentId, Instant timestamp) Constructor that pre-populates fields. -
Method Summary
Modifier and TypeMethodDescriptionaddMedicationRequest(ChEmedEprMedicationRequestPre medicationRequest) Adds a medication request in the document.copy()org.hl7.fhir.r4.model.Bundle.BundleEntryComponentReturns the composition entry; if missing, it creates it.booleanReturns whether the composition entry exists.Returns the composition or throws.It resolves the last medication request from the PRE.List<@NonNull ChEmedEprMedicationRequestPre> Convenience method to resolve all the medication requests listed in the composition of this prescription document.setComposition(ChEmedEprCompositionPre composition) Sets the composition.Methods inherited from class org.projecthusky.fhir.emed.ch.epr.resource.ChEmedEprDocument
resolveIdentifier, resolvePatient, resolveTimestamp, setCreationTime, setIdentifierMethods inherited from class org.projecthusky.fhir.core.ch.resource.r4.ChCoreDocumentEpr
addComposition, addCompositionMethods inherited from class org.projecthusky.fhir.core.ch.resource.r4.ChCoreDocument
addComposition, addPatientMethods inherited from class org.projecthusky.fhir.core.ch.resource.r4.AbstractDocument
getEntryByResourceType, getEntryComponentByResourceType, getEntryResourceByResourceType, hasEntryByResourceTypeAndIdMethods inherited from class org.hl7.fhir.r4.model.Bundle
addChild, addEntry, addEntry, addLink, addLink, copyValues, equalsDeep, equalsShallow, fhirType, getEntry, getEntryFirstRep, getIdentifier, getLink, getLink, getLinkFirstRep, getLinkOrCreate, getNamedProperty, getProperty, getResourceType, getSignature, getTimestamp, getTimestampElement, getTotal, getTotalElement, getType, getTypeElement, getTypesForProperty, hasEntry, hasIdentifier, hasLink, hasSignature, hasTimestamp, hasTimestampElement, hasTotal, hasTotalElement, hasType, hasTypeElement, isEmpty, listChildren, makeProperty, removeChild, setEntry, setIdentifier, setLink, setProperty, setProperty, setSignature, setTimestamp, setTimestampElement, setTotal, setTotalElement, setType, setTypeElement, typedCopyMethods inherited from class org.hl7.fhir.r4.model.Resource
copyValues, getId, getIdBase, getIdElement, getIdPart, getImplicitRules, getImplicitRulesElement, getLanguage, getLanguage, getLanguageElement, getMeta, hasId, hasIdElement, hasImplicitRules, hasImplicitRulesElement, hasLanguage, hasLanguageElement, hasMeta, setId, setIdBase, setIdElement, setImplicitRules, setImplicitRulesElement, setLanguage, setLanguageElement, setMetaMethods inherited from class org.hl7.fhir.r4.model.BaseResource
getStructureFhirVersionEnum, isResource, setIdMethods inherited from class org.hl7.fhir.r4.model.Base
castToAddress, castToAnnotation, castToAttachment, castToBase64Binary, castToBoolean, castToCanonical, castToCode, castToCodeableConcept, castToCoding, castToContactDetail, castToContactPoint, castToContributor, castToDataRequirement, castToDate, castToDateTime, castToDecimal, castToDosage, castToDuration, castToElementDefinition, castToExpression, castToExtension, castToHumanName, castToId, castToIdentifier, castToInstant, castToInteger, castToMarkdown, castToMarketingStatus, castToMeta, castToMoney, castToNarrative, castToOid, castToParameterDefinition, castToPeriod, castToPopulation, castToPositiveInt, castToProdCharacteristic, castToProductShelfLife, castToQuantity, castToRange, castToRatio, castToReference, castToRelatedArtifact, castToResource, castToSampledData, castToSignature, castToSimpleQuantity, castToString, castToSubstanceAmount, castToTime, castToTiming, castToTriggerDefinition, castToType, castToUnsignedInt, castToUri, castToUrl, castToUsageContext, castToXhtml, castToXhtmlString, children, clearUserData, compareDeep, compareDeep, compareDeep, compareDeep, compareValues, compareValues, copyValues, dateTimeValue, equals, getChildByName, getChildValueByName, getFormatCommentsPost, getFormatCommentsPre, getNamedProperty, getUserData, getUserInt, getUserString, getXhtml, hasFormatComment, hasPrimitiveValue, hasType, hasUserData, isBooleanPrimitive, isDateTime, isMetadataBased, isPrimitive, listChildrenByName, listChildrenByName, primitiveValue, setUserData, setUserDataINN, setXhtmlMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.hl7.fhir.instance.model.api.IAnyResource
getUserData, setUserDataMethods inherited from interface org.hl7.fhir.instance.model.api.IBase
getFormatCommentsPost, getFormatCommentsPre, hasFormatCommentMethods inherited from interface org.hl7.fhir.instance.model.api.IBaseResource
getMeta, getStructureFhirVersionEnum, isDeleted, setId
-
Constructor Details
-
ChEmedEprDocumentPre
public ChEmedEprDocumentPre()Empty constructor for the parser. -
ChEmedEprDocumentPre
Constructor that pre-populates fields.- Parameters:
documentId- The document ID.timestamp- The document creation date.
-
-
Method Details
-
getEmedType
- Specified by:
getEmedTypein classChEmedEprDocument
-
hasCompositionEntry
public boolean hasCompositionEntry()Returns whether the composition entry exists.- Returns:
trueif the composition entry exists,falseotherwise.
-
getCompositionEntry
public org.hl7.fhir.r4.model.Bundle.BundleEntryComponent getCompositionEntry()Returns the composition entry; if missing, it creates it.- Specified by:
getCompositionEntryin classChEmedEprDocument- Returns:
- the composition entry.
-
resolveComposition
Returns the composition or throws.- Overrides:
resolveCompositionin classChEmedEprDocument- Returns:
- the composition.
- Throws:
InvalidEmedContentException- if the composition is missing or if the medication requests are missing or any is invalid.
-
resolveMedicationRequests
@ExpectsValidResource public List<@NonNull ChEmedEprMedicationRequestPre> resolveMedicationRequests()Convenience method to resolve all the medication requests listed in the composition of this prescription document.- Returns:
- The medication requests.
- Throws:
InvalidEmedContentException- if the composition is missing.
-
addMedicationRequest
Adds a medication request in the document.- Parameters:
medicationRequest- the medication request.- Returns:
- this.
-
setComposition
Sets the composition.- Parameters:
composition- The CH EMED Medication Prescription Composition.- Returns:
- this.
-
resolveLastRequest
It resolves the last medication request from the PRE. The last request is the request with the most recent medical authorship timestamp. Should several request share the same last timestamp instant, one among them will be returned, arbitrarily, depending on the order of execution.- Returns:
- The medication request with the last medication authorship timestamp.
- Throws:
InvalidEmedContentException- if the PRE document does not have any request listed in the prescription section or if any other errors related to CH EMED EPR invalid content are found.
-
copy
- Overrides:
copyin classorg.hl7.fhir.r4.model.Bundle
-