Class ProcedureBuilder.Impl

    • Constructor Detail

      • Impl

        public Impl​(com.babylonhealth.lit.hl7.EVENT_STATUS status,
                    com.babylonhealth.lit.core.model.Reference subject)
        Required fields for Procedure
        Parameters:
        status - - A code specifying the state of the procedure. Generally, this will be the in-progress or completed state.
        subject - - The person, animal or group on which the procedure was performed.
    • Method Detail

      • withId

        public ProcedureBuilder.Impl withId​(@NonNull
                                            @NonNull java.lang.String id)
        Parameters:
        id - - The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.
      • withMeta

        public ProcedureBuilder.Impl withMeta​(@NonNull
                                              @NonNull com.babylonhealth.lit.core.model.Meta meta)
        Parameters:
        meta - - The metadata about the resource. This is content that is maintained by the infrastructure. Changes to the content might not always be associated with version changes to the resource.
      • withMeta

        public ProcedureBuilder.Impl withMeta​(@NonNull
                                              @NonNull com.babylonhealth.lit.core_java.builders.MetaBuilder meta)
      • withText

        public ProcedureBuilder.Impl withText​(@NonNull
                                              @NonNull com.babylonhealth.lit.hl7.model.Narrative text)
        Parameters:
        text - - A human-readable narrative that contains a summary of the resource and can be used to represent the content of the resource to a human. The narrative need not encode all the structured data, but is required to contain sufficient detail to make it "clinically safe" for a human to just read the narrative. Resource definitions may define what content should be represented in the narrative to ensure clinical safety.
      • withCode

        public ProcedureBuilder.Impl withCode​(@NonNull
                                              @NonNull com.babylonhealth.lit.core.model.CodeableConcept code)
        Parameters:
        code - - The specific procedure that is performed. Use text if the exact nature of the procedure cannot be coded (e.g. "Laparoscopic Appendectomy").
      • withCode

        public ProcedureBuilder.Impl withCode​(@NonNull
                                              @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder code)
      • withNote

        public ProcedureBuilder.Impl withNote​(@NonNull
                                              @NonNull com.babylonhealth.lit.core.model.Annotation... note)
        Parameters:
        note - - Any other notes and comments about the procedure.
      • withNote

        public ProcedureBuilder.Impl withNote​(@NonNull
                                              @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Annotation> note)
        Parameters:
        note - - Any other notes and comments about the procedure.
      • withNote

        public ProcedureBuilder.Impl withNote​(@NonNull
                                              @NonNull com.babylonhealth.lit.core_java.builders.AnnotationBuilder... note)
      • withPartOf

        public ProcedureBuilder.Impl withPartOf​(@NonNull
                                                @NonNull com.babylonhealth.lit.core.model.Reference... partOf)
        Parameters:
        partOf - - A larger event of which this particular procedure is a component or step.
      • withPartOf

        public ProcedureBuilder.Impl withPartOf​(@NonNull
                                                @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Reference> partOf)
        Parameters:
        partOf - - A larger event of which this particular procedure is a component or step.
      • withPartOf

        public ProcedureBuilder.Impl withPartOf​(@NonNull
                                                @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder... partOf)
      • withReport

        public ProcedureBuilder.Impl withReport​(@NonNull
                                                @NonNull com.babylonhealth.lit.core.model.Reference... report)
        Parameters:
        report - - This could be a histology result, pathology report, surgical report, etc.
      • withReport

        public ProcedureBuilder.Impl withReport​(@NonNull
                                                @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Reference> report)
        Parameters:
        report - - This could be a histology result, pathology report, surgical report, etc.
      • withReport

        public ProcedureBuilder.Impl withReport​(@NonNull
                                                @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder... report)
      • withBasedOn

        public ProcedureBuilder.Impl withBasedOn​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core.model.Reference... basedOn)
        Parameters:
        basedOn - - A reference to a resource that contains details of the request for this procedure.
      • withBasedOn

        public ProcedureBuilder.Impl withBasedOn​(@NonNull
                                                 @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Reference> basedOn)
        Parameters:
        basedOn - - A reference to a resource that contains details of the request for this procedure.
      • withBasedOn

        public ProcedureBuilder.Impl withBasedOn​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder... basedOn)
      • withOutcome

        public ProcedureBuilder.Impl withOutcome​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core.model.CodeableConcept outcome)
        Parameters:
        outcome - - The outcome of the procedure - did it resolve the reasons for the procedure being performed?
      • withOutcome

        public ProcedureBuilder.Impl withOutcome​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder outcome)
      • withLanguage

        public ProcedureBuilder.Impl withLanguage​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.LANGUAGES language)
        Parameters:
        language - - The base language in which the resource is written.
      • withCategory

        public ProcedureBuilder.Impl withCategory​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.CodeableConcept category)
        Parameters:
        category - - A code that classifies the procedure for searching, sorting and display purposes (e.g. "Surgical Procedure").
      • withCategory

        public ProcedureBuilder.Impl withCategory​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder category)
      • withRecorder

        public ProcedureBuilder.Impl withRecorder​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.Reference recorder)
        Parameters:
        recorder - - Individual who recorded the record and takes responsibility for its content.
      • withRecorder

        public ProcedureBuilder.Impl withRecorder​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder recorder)
      • withAsserter

        public ProcedureBuilder.Impl withAsserter​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.Reference asserter)
        Parameters:
        asserter - - Individual who is making the procedure statement.
      • withAsserter

        public ProcedureBuilder.Impl withAsserter​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder asserter)
      • withLocation

        public ProcedureBuilder.Impl withLocation​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.Reference location)
        Parameters:
        location - - The location where the procedure actually happened. E.g. a newborn at home, a tracheostomy at a restaurant.
      • withLocation

        public ProcedureBuilder.Impl withLocation​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder location)
      • withBodySite

        public ProcedureBuilder.Impl withBodySite​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.CodeableConcept... bodySite)
        Parameters:
        bodySite - - Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion.
      • withBodySite

        public ProcedureBuilder.Impl withBodySite​(@NonNull
                                                  @NonNull java.util.Collection<com.babylonhealth.lit.core.model.CodeableConcept> bodySite)
        Parameters:
        bodySite - - Detailed and structured anatomical location information. Multiple locations are allowed - e.g. multiple punch biopsies of a lesion.
      • withBodySite

        public ProcedureBuilder.Impl withBodySite​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder... bodySite)
      • withFollowUp

        public ProcedureBuilder.Impl withFollowUp​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.CodeableConcept... followUp)
        Parameters:
        followUp - - If the procedure required specific follow up - e.g. removal of sutures. The follow up may be represented as a simple note or could potentially be more complex, in which case the CarePlan resource can be used.
      • withFollowUp

        public ProcedureBuilder.Impl withFollowUp​(@NonNull
                                                  @NonNull java.util.Collection<com.babylonhealth.lit.core.model.CodeableConcept> followUp)
        Parameters:
        followUp - - If the procedure required specific follow up - e.g. removal of sutures. The follow up may be represented as a simple note or could potentially be more complex, in which case the CarePlan resource can be used.
      • withFollowUp

        public ProcedureBuilder.Impl withFollowUp​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder... followUp)
      • withUsedCode

        public ProcedureBuilder.Impl withUsedCode​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.CodeableConcept... usedCode)
        Parameters:
        usedCode - - Identifies coded items that were used as part of the procedure.
      • withUsedCode

        public ProcedureBuilder.Impl withUsedCode​(@NonNull
                                                  @NonNull java.util.Collection<com.babylonhealth.lit.core.model.CodeableConcept> usedCode)
        Parameters:
        usedCode - - Identifies coded items that were used as part of the procedure.
      • withUsedCode

        public ProcedureBuilder.Impl withUsedCode​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder... usedCode)
      • withContained

        public ProcedureBuilder.Impl withContained​(@NonNull
                                                   @NonNull com.babylonhealth.lit.core.model.Resource... contained)
        Parameters:
        contained - - These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
      • withContained

        public ProcedureBuilder.Impl withContained​(@NonNull
                                                   @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Resource> contained)
        Parameters:
        contained - - These resources do not have an independent existence apart from the resource that contains them - they cannot be identified independently, and nor can they have their own independent transaction scope.
      • withContained

        public ProcedureBuilder.Impl withContained​(@NonNull
                                                   @NonNull com.babylonhealth.lit.core_java.builders.ResourceBuilder... contained)
      • withExtension

        public ProcedureBuilder.Impl withExtension​(@NonNull
                                                   @NonNull com.babylonhealth.lit.core.model.Extension... extension)
        Parameters:
        extension - - May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
      • withExtension

        public ProcedureBuilder.Impl withExtension​(@NonNull
                                                   @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Extension> extension)
        Parameters:
        extension - - May be used to represent additional information that is not part of the basic definition of the resource. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
      • withExtension

        public ProcedureBuilder.Impl withExtension​(@NonNull
                                                   @NonNull com.babylonhealth.lit.core_java.builders.ExtensionBuilder... extension)
      • withEncounter

        public ProcedureBuilder.Impl withEncounter​(@NonNull
                                                   @NonNull com.babylonhealth.lit.core.model.Reference encounter)
        Parameters:
        encounter - - The Encounter during which this Procedure was created or performed or to which the creation of this record is tightly associated.
      • withEncounter

        public ProcedureBuilder.Impl withEncounter​(@NonNull
                                                   @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder encounter)
      • withIdentifier

        public ProcedureBuilder.Impl withIdentifier​(@NonNull
                                                    @NonNull com.babylonhealth.lit.core.model.Identifier... identifier)
        Parameters:
        identifier - - Business identifiers assigned to this procedure by the performer or other systems which remain constant as the resource is updated and is propagated from server to server.
      • withIdentifier

        public ProcedureBuilder.Impl withIdentifier​(@NonNull
                                                    @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Identifier> identifier)
        Parameters:
        identifier - - Business identifiers assigned to this procedure by the performer or other systems which remain constant as the resource is updated and is propagated from server to server.
      • withIdentifier

        public ProcedureBuilder.Impl withIdentifier​(@NonNull
                                                    @NonNull com.babylonhealth.lit.core_java.builders.IdentifierBuilder... identifier)
      • withReasonCode

        public ProcedureBuilder.Impl withReasonCode​(@NonNull
                                                    @NonNull com.babylonhealth.lit.core.model.CodeableConcept... reasonCode)
        Parameters:
        reasonCode - - The coded reason why the procedure was performed. This may be a coded entity of some type, or may simply be present as text.
      • withReasonCode

        public ProcedureBuilder.Impl withReasonCode​(@NonNull
                                                    @NonNull java.util.Collection<com.babylonhealth.lit.core.model.CodeableConcept> reasonCode)
        Parameters:
        reasonCode - - The coded reason why the procedure was performed. This may be a coded entity of some type, or may simply be present as text.
      • withReasonCode

        public ProcedureBuilder.Impl withReasonCode​(@NonNull
                                                    @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder... reasonCode)
      • withStatusReason

        public ProcedureBuilder.Impl withStatusReason​(@NonNull
                                                      @NonNull com.babylonhealth.lit.core.model.CodeableConcept statusReason)
        Parameters:
        statusReason - - Captures the reason for the current state of the procedure.
      • withStatusReason

        public ProcedureBuilder.Impl withStatusReason​(@NonNull
                                                      @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder statusReason)
      • withPerformed

        public ProcedureBuilder.Impl withPerformed​(@NonNull
                                                   @NonNull Unions.Choice01474038381 performed)
        Parameters:
        performed - - Estimated or actual date, date-time, period, or age when the procedure was performed. Allows a period to support complex procedures that span more than one date, and also allows for the length of the procedure to be captured. Field is a 'choice' field. Type should be one of Age, FHIRDateTime, Period, Range, String. To pass the value in, wrap with one of the ProcedureBuilder.performed static methods
      • withComplication

        public ProcedureBuilder.Impl withComplication​(@NonNull
                                                      @NonNull com.babylonhealth.lit.core.model.CodeableConcept... complication)
        Parameters:
        complication - - Any complications that occurred during the procedure, or in the immediate post-performance period. These are generally tracked separately from the notes, which will typically describe the procedure itself rather than any 'post procedure' issues.
      • withComplication

        public ProcedureBuilder.Impl withComplication​(@NonNull
                                                      @NonNull java.util.Collection<com.babylonhealth.lit.core.model.CodeableConcept> complication)
        Parameters:
        complication - - Any complications that occurred during the procedure, or in the immediate post-performance period. These are generally tracked separately from the notes, which will typically describe the procedure itself rather than any 'post procedure' issues.
      • withComplication

        public ProcedureBuilder.Impl withComplication​(@NonNull
                                                      @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder... complication)
      • withImplicitRules

        public ProcedureBuilder.Impl withImplicitRules​(@NonNull
                                                       @NonNull java.lang.String implicitRules)
        Parameters:
        implicitRules - - A reference to a set of rules that were followed when the resource was constructed, and which must be understood when processing the content. Often, this is a reference to an implementation guide that defines the special rules along with other profiles etc.
      • withUsedReference

        public ProcedureBuilder.Impl withUsedReference​(@NonNull
                                                       @NonNull com.babylonhealth.lit.core.model.Reference... usedReference)
        Parameters:
        usedReference - - Identifies medications, devices and any other substance used as part of the procedure.
      • withUsedReference

        public ProcedureBuilder.Impl withUsedReference​(@NonNull
                                                       @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Reference> usedReference)
        Parameters:
        usedReference - - Identifies medications, devices and any other substance used as part of the procedure.
      • withUsedReference

        public ProcedureBuilder.Impl withUsedReference​(@NonNull
                                                       @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder... usedReference)
      • withInstantiatesUri

        public ProcedureBuilder.Impl withInstantiatesUri​(@NonNull
                                                         @NonNull java.lang.String... instantiatesUri)
        Parameters:
        instantiatesUri - - The URL pointing to an externally maintained protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.
      • withInstantiatesUri

        public ProcedureBuilder.Impl withInstantiatesUri​(@NonNull
                                                         @NonNull java.util.Collection<java.lang.String> instantiatesUri)
        Parameters:
        instantiatesUri - - The URL pointing to an externally maintained protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.
      • withReasonReference

        public ProcedureBuilder.Impl withReasonReference​(@NonNull
                                                         @NonNull com.babylonhealth.lit.core.model.Reference... reasonReference)
        Parameters:
        reasonReference - - The justification of why the procedure was performed.
      • withReasonReference

        public ProcedureBuilder.Impl withReasonReference​(@NonNull
                                                         @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Reference> reasonReference)
        Parameters:
        reasonReference - - The justification of why the procedure was performed.
      • withReasonReference

        public ProcedureBuilder.Impl withReasonReference​(@NonNull
                                                         @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder... reasonReference)
      • withModifierExtension

        public ProcedureBuilder.Impl withModifierExtension​(@NonNull
                                                           @NonNull com.babylonhealth.lit.core.model.Extension... modifierExtension)
        Parameters:
        modifierExtension - - May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      • withModifierExtension

        public ProcedureBuilder.Impl withModifierExtension​(@NonNull
                                                           @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Extension> modifierExtension)
        Parameters:
        modifierExtension - - May be used to represent additional information that is not part of the basic definition of the resource and that modifies the understanding of the element that contains it and/or the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and manageable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer is allowed to define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

        Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

      • withModifierExtension

        public ProcedureBuilder.Impl withModifierExtension​(@NonNull
                                                           @NonNull com.babylonhealth.lit.core_java.builders.ExtensionBuilder... modifierExtension)
      • withComplicationDetail

        public ProcedureBuilder.Impl withComplicationDetail​(@NonNull
                                                            @NonNull com.babylonhealth.lit.core.model.Reference... complicationDetail)
        Parameters:
        complicationDetail - - Any complications that occurred during the procedure, or in the immediate post-performance period.
      • withComplicationDetail

        public ProcedureBuilder.Impl withComplicationDetail​(@NonNull
                                                            @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Reference> complicationDetail)
        Parameters:
        complicationDetail - - Any complications that occurred during the procedure, or in the immediate post-performance period.
      • withComplicationDetail

        public ProcedureBuilder.Impl withComplicationDetail​(@NonNull
                                                            @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder... complicationDetail)
      • withInstantiatesCanonical

        public ProcedureBuilder.Impl withInstantiatesCanonical​(@NonNull
                                                               @NonNull java.lang.String... instantiatesCanonical)
        Parameters:
        instantiatesCanonical - - The URL pointing to a FHIR-defined protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.
      • withInstantiatesCanonical

        public ProcedureBuilder.Impl withInstantiatesCanonical​(@NonNull
                                                               @NonNull java.util.Collection<java.lang.String> instantiatesCanonical)
        Parameters:
        instantiatesCanonical - - The URL pointing to a FHIR-defined protocol, guideline, order set or other definition that is adhered to in whole or in part by this Procedure.
      • withPerformer

        public ProcedureBuilder.Impl withPerformer​(@NonNull
                                                   @NonNull com.babylonhealth.lit.hl7.model.Procedure.Performer... performer)
        Parameters:
        performer - - Limited to "real" people rather than equipment.
      • withPerformer

        public ProcedureBuilder.Impl withPerformer​(@NonNull
                                                   @NonNull java.util.Collection<com.babylonhealth.lit.hl7.model.Procedure.Performer> performer)
        Parameters:
        performer - - Limited to "real" people rather than equipment.
      • withFocalDevice

        public ProcedureBuilder.Impl withFocalDevice​(@NonNull
                                                     @NonNull com.babylonhealth.lit.hl7.model.Procedure.FocalDevice... focalDevice)
        Parameters:
        focalDevice - - A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure.
      • withFocalDevice

        public ProcedureBuilder.Impl withFocalDevice​(@NonNull
                                                     @NonNull java.util.Collection<com.babylonhealth.lit.hl7.model.Procedure.FocalDevice> focalDevice)
        Parameters:
        focalDevice - - A device that is implanted, removed or otherwise manipulated (calibration, battery replacement, fitting a prosthesis, attaching a wound-vac, etc.) as a focal portion of the Procedure.
      • build

        public com.babylonhealth.lit.hl7.model.Procedure build()
        Specified by:
        build in interface DomainResourceBuilder
        Specified by:
        build in interface ProcedureBuilder
        Specified by:
        build in interface com.babylonhealth.lit.core_java.builders.ResourceBuilder