Class ConsentBuilder.Impl

    • Constructor Detail

      • Impl

        public Impl​(com.babylonhealth.lit.core.model.CodeableConcept scope,
                    com.babylonhealth.lit.hl7.CONSENT_STATE_CODES status,
                    java.util.Collection<com.babylonhealth.lit.core.model.CodeableConcept> category)
        Required fields for Consent
        Parameters:
        scope - - A selector of the type of consent being presented: ADR, Privacy, Treatment, Research. This list is now extensible.
        status - - Indicates the current state of this consent.
        category - - A classification of the type of consents found in the statement. This element supports indexing and retrieval of consent statements.
    • Method Detail

      • withId

        public ConsentBuilder.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 ConsentBuilder.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 ConsentBuilder.Impl withMeta​(@NonNull
                                            @NonNull com.babylonhealth.lit.core_java.builders.MetaBuilder meta)
      • withText

        public ConsentBuilder.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.
      • withPatient

        public ConsentBuilder.Impl withPatient​(@NonNull
                                               @NonNull com.babylonhealth.lit.core.model.Reference patient)
        Parameters:
        patient - - The patient/healthcare consumer to whom this consent applies.
      • withPatient

        public ConsentBuilder.Impl withPatient​(@NonNull
                                               @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder patient)
      • withLanguage

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

        public ConsentBuilder.Impl withDateTime​(@NonNull
                                                @NonNull com.babylonhealth.lit.core.FHIRDateTime dateTime)
        Parameters:
        dateTime - - When this Consent was issued / created / indexed.
      • withContained

        public ConsentBuilder.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 ConsentBuilder.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 ConsentBuilder.Impl withContained​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core_java.builders.ResourceBuilder... contained)
      • withExtension

        public ConsentBuilder.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 ConsentBuilder.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 ConsentBuilder.Impl withExtension​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core_java.builders.ExtensionBuilder... extension)
      • withPerformer

        public ConsentBuilder.Impl withPerformer​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core.model.Reference... performer)
        Parameters:
        performer - - Either the Grantor, which is the entity responsible for granting the rights listed in a Consent Directive or the Grantee, which is the entity responsible for complying with the Consent Directive, including any obligations or limitations on authorizations and enforcement of prohibitions.
      • withPerformer

        public ConsentBuilder.Impl withPerformer​(@NonNull
                                                 @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Reference> performer)
        Parameters:
        performer - - Either the Grantor, which is the entity responsible for granting the rights listed in a Consent Directive or the Grantee, which is the entity responsible for complying with the Consent Directive, including any obligations or limitations on authorizations and enforcement of prohibitions.
      • withPerformer

        public ConsentBuilder.Impl withPerformer​(@NonNull
                                                 @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder... performer)
      • withSource

        public ConsentBuilder.Impl withSource​(@NonNull
                                              @NonNull Unions.ChoiceAttachmentOrReference source)
        Parameters:
        source - - The source on which this consent statement is based. The source might be a scanned original paper form, or a reference to a consent that links back to such a source, a reference to a document repository (e.g. XDS) that stores the original consent document. Field is a 'choice' field. Type should be one of Attachment, Reference. To pass the value in, wrap with one of the ConsentBuilder.source static methods
      • withIdentifier

        public ConsentBuilder.Impl withIdentifier​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.Identifier... identifier)
        Parameters:
        identifier - - Unique identifier for this copy of the Consent Statement.
      • withIdentifier

        public ConsentBuilder.Impl withIdentifier​(@NonNull
                                                  @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Identifier> identifier)
        Parameters:
        identifier - - Unique identifier for this copy of the Consent Statement.
      • withIdentifier

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

        public ConsentBuilder.Impl withPolicyRule​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core.model.CodeableConcept policyRule)
        Parameters:
        policyRule - - A reference to the specific base computable regulation or policy.
      • withPolicyRule

        public ConsentBuilder.Impl withPolicyRule​(@NonNull
                                                  @NonNull com.babylonhealth.lit.core_java.builders.CodeableConceptBuilder policyRule)
      • withOrganization

        public ConsentBuilder.Impl withOrganization​(@NonNull
                                                    @NonNull com.babylonhealth.lit.core.model.Reference... organization)
        Parameters:
        organization - - The organization that manages the consent, and the framework within which it is executed.
      • withOrganization

        public ConsentBuilder.Impl withOrganization​(@NonNull
                                                    @NonNull java.util.Collection<com.babylonhealth.lit.core.model.Reference> organization)
        Parameters:
        organization - - The organization that manages the consent, and the framework within which it is executed.
      • withOrganization

        public ConsentBuilder.Impl withOrganization​(@NonNull
                                                    @NonNull com.babylonhealth.lit.core_java.builders.ReferenceBuilder... organization)
      • withImplicitRules

        public ConsentBuilder.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.
      • withModifierExtension

        public ConsentBuilder.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 ConsentBuilder.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 ConsentBuilder.Impl withModifierExtension​(@NonNull
                                                         @NonNull com.babylonhealth.lit.core_java.builders.ExtensionBuilder... modifierExtension)
      • withPolicy

        public ConsentBuilder.Impl withPolicy​(@NonNull
                                              @NonNull com.babylonhealth.lit.hl7.model.Consent.Policy... policy)
        Parameters:
        policy - - The references to the policies that are included in this consent scope. Policies may be organizational, but are often defined jurisdictionally, or in law.
      • withPolicy

        public ConsentBuilder.Impl withPolicy​(@NonNull
                                              @NonNull java.util.Collection<com.babylonhealth.lit.hl7.model.Consent.Policy> policy)
        Parameters:
        policy - - The references to the policies that are included in this consent scope. Policies may be organizational, but are often defined jurisdictionally, or in law.
      • withVerification

        public ConsentBuilder.Impl withVerification​(@NonNull
                                                    @NonNull com.babylonhealth.lit.hl7.model.Consent.Verification... verification)
        Parameters:
        verification - - Whether a treatment instruction (e.g. artificial respiration yes or no) was verified with the patient, his/her family or another authorized person.
      • withVerification

        public ConsentBuilder.Impl withVerification​(@NonNull
                                                    @NonNull java.util.Collection<com.babylonhealth.lit.hl7.model.Consent.Verification> verification)
        Parameters:
        verification - - Whether a treatment instruction (e.g. artificial respiration yes or no) was verified with the patient, his/her family or another authorized person.
      • withProvision

        public ConsentBuilder.Impl withProvision​(@NonNull
                                                 com.babylonhealth.lit.hl7.model.Consent.Provision provision)
        Parameters:
        provision - - An exception to the base policy of this consent. An exception can be an addition or removal of access permissions.
      • build

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