Class Appointment.Builder
- java.lang.Object
-
- org.linuxforhealth.fhir.model.builder.AbstractBuilder<Resource>
-
- org.linuxforhealth.fhir.model.resource.Resource.Builder
-
- org.linuxforhealth.fhir.model.resource.DomainResource.Builder
-
- org.linuxforhealth.fhir.model.resource.Appointment.Builder
-
- Enclosing class:
- Appointment
public static class Appointment.Builder extends DomainResource.Builder
-
-
Field Summary
-
Fields inherited from class org.linuxforhealth.fhir.model.resource.DomainResource.Builder
contained, extension, modifierExtension, text
-
Fields inherited from class org.linuxforhealth.fhir.model.resource.Resource.Builder
id, implicitRules, language, meta
-
Fields inherited from class org.linuxforhealth.fhir.model.builder.AbstractBuilder
validating
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Appointment.Builder
appointmentType(CodeableConcept appointmentType)
The style of appointment or patient that has been booked in the slot (not service type).Appointment.Builder
basedOn(java.util.Collection<Reference> basedOn)
The service request this appointment is allocated to assess (e.g.Appointment.Builder
basedOn(Reference... basedOn)
The service request this appointment is allocated to assess (e.g.Appointment
build()
Build theAppointment
Appointment.Builder
cancelationReason(CodeableConcept cancelationReason)
The coded reason for the appointment being cancelled.Appointment.Builder
comment(java.lang.String comment)
Convenience method for settingcomment
.Appointment.Builder
comment(String comment)
Additional comments about the appointment.Appointment.Builder
contained(java.util.Collection<Resource> 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.Appointment.Builder
contained(Resource... 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.Appointment.Builder
created(DateTime created)
The date that this appointment was initially created.Appointment.Builder
description(java.lang.String description)
Convenience method for settingdescription
.Appointment.Builder
description(String description)
The brief description of the appointment as would be shown on a subject line in a meeting request, or appointment list.Appointment.Builder
end(java.time.ZonedDateTime end)
Convenience method for settingend
.Appointment.Builder
end(Instant end)
Date/Time that the appointment is to conclude.Appointment.Builder
extension(java.util.Collection<Extension> extension)
May be used to represent additional information that is not part of the basic definition of the resource.Appointment.Builder
extension(Extension... extension)
May be used to represent additional information that is not part of the basic definition of the resource.protected Appointment.Builder
from(Appointment appointment)
Appointment.Builder
id(java.lang.String id)
The logical id of the resource, as used in the URL for the resource.Appointment.Builder
identifier(java.util.Collection<Identifier> identifier)
This records identifiers associated with this appointment concern that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g.Appointment.Builder
identifier(Identifier... identifier)
This records identifiers associated with this appointment concern that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g.Appointment.Builder
implicitRules(Uri 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.Appointment.Builder
language(Code language)
The base language in which the resource is written.Appointment.Builder
meta(Meta meta)
The metadata about the resource.Appointment.Builder
minutesDuration(PositiveInt minutesDuration)
Number of minutes that the appointment is to take.Appointment.Builder
modifierExtension(java.util.Collection<Extension> 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.Appointment.Builder
modifierExtension(Extension... 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.Appointment.Builder
participant(java.util.Collection<Appointment.Participant> participant)
List of participants involved in the appointment.Appointment.Builder
participant(Appointment.Participant... participant)
List of participants involved in the appointment.Appointment.Builder
patientInstruction(java.lang.String patientInstruction)
Convenience method for settingpatientInstruction
.Appointment.Builder
patientInstruction(String patientInstruction)
While Appointment.comment contains information for internal use, Appointment.patientInstructions is used to capture patient facing information about the Appointment (e.g.Appointment.Builder
priority(UnsignedInt priority)
The priority of the appointment.Appointment.Builder
reasonCode(java.util.Collection<CodeableConcept> reasonCode)
The coded reason that this appointment is being scheduled.Appointment.Builder
reasonCode(CodeableConcept... reasonCode)
The coded reason that this appointment is being scheduled.Appointment.Builder
reasonReference(java.util.Collection<Reference> reasonReference)
Reason the appointment has been scheduled to take place, as specified using information from another resource.Appointment.Builder
reasonReference(Reference... reasonReference)
Reason the appointment has been scheduled to take place, as specified using information from another resource.Appointment.Builder
requestedPeriod(java.util.Collection<Period> requestedPeriod)
A set of date ranges (potentially including times) that the appointment is preferred to be scheduled within.Appointment.Builder
requestedPeriod(Period... requestedPeriod)
A set of date ranges (potentially including times) that the appointment is preferred to be scheduled within.Appointment.Builder
serviceCategory(java.util.Collection<CodeableConcept> serviceCategory)
A broad categorization of the service that is to be performed during this appointment.Appointment.Builder
serviceCategory(CodeableConcept... serviceCategory)
A broad categorization of the service that is to be performed during this appointment.Appointment.Builder
serviceType(java.util.Collection<CodeableConcept> serviceType)
The specific service that is to be performed during this appointment.Appointment.Builder
serviceType(CodeableConcept... serviceType)
The specific service that is to be performed during this appointment.Appointment.Builder
slot(java.util.Collection<Reference> slot)
The slots from the participants' schedules that will be filled by the appointment.Appointment.Builder
slot(Reference... slot)
The slots from the participants' schedules that will be filled by the appointment.Appointment.Builder
specialty(java.util.Collection<CodeableConcept> specialty)
The specialty of a practitioner that would be required to perform the service requested in this appointment.Appointment.Builder
specialty(CodeableConcept... specialty)
The specialty of a practitioner that would be required to perform the service requested in this appointment.Appointment.Builder
start(java.time.ZonedDateTime start)
Convenience method for settingstart
.Appointment.Builder
start(Instant start)
Date/Time that the appointment is to take place.Appointment.Builder
status(AppointmentStatus status)
The overall status of the Appointment.Appointment.Builder
supportingInformation(java.util.Collection<Reference> supportingInformation)
Additional information to support the appointment provided when making the appointment.Appointment.Builder
supportingInformation(Reference... supportingInformation)
Additional information to support the appointment provided when making the appointment.Appointment.Builder
text(Narrative 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.protected void
validate(Appointment appointment)
-
Methods inherited from class org.linuxforhealth.fhir.model.resource.DomainResource.Builder
from, validate
-
Methods inherited from class org.linuxforhealth.fhir.model.resource.Resource.Builder
from, validate
-
Methods inherited from class org.linuxforhealth.fhir.model.builder.AbstractBuilder
isValidating, setValidating
-
-
-
-
Method Detail
-
id
public Appointment.Builder id(java.lang.String id)
The logical id of the resource, as used in the URL for the resource. Once assigned, this value never changes.- Overrides:
id
in classDomainResource.Builder
- Parameters:
id
- Logical id of this artifact- Returns:
- A reference to this Builder instance
-
meta
public Appointment.Builder meta(Meta 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.- Overrides:
meta
in classDomainResource.Builder
- Parameters:
meta
- Metadata about the resource- Returns:
- A reference to this Builder instance
-
implicitRules
public Appointment.Builder implicitRules(Uri 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.- Overrides:
implicitRules
in classDomainResource.Builder
- Parameters:
implicitRules
- A set of rules under which this content was created- Returns:
- A reference to this Builder instance
-
language
public Appointment.Builder language(Code language)
The base language in which the resource is written.- Overrides:
language
in classDomainResource.Builder
- Parameters:
language
- Language of the resource content- Returns:
- A reference to this Builder instance
-
text
public Appointment.Builder text(Narrative 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.- Overrides:
text
in classDomainResource.Builder
- Parameters:
text
- Text summary of the resource, for human interpretation- Returns:
- A reference to this Builder instance
-
contained
public Appointment.Builder contained(Resource... 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.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Overrides:
contained
in classDomainResource.Builder
- Parameters:
contained
- Contained, inline Resources- Returns:
- A reference to this Builder instance
-
contained
public Appointment.Builder contained(java.util.Collection<Resource> 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.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Overrides:
contained
in classDomainResource.Builder
- Parameters:
contained
- Contained, inline Resources- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
extension
public Appointment.Builder extension(Extension... 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.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Overrides:
extension
in classDomainResource.Builder
- Parameters:
extension
- Additional content defined by implementations- Returns:
- A reference to this Builder instance
-
extension
public Appointment.Builder extension(java.util.Collection<Extension> 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.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Overrides:
extension
in classDomainResource.Builder
- Parameters:
extension
- Additional content defined by implementations- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
modifierExtension
public Appointment.Builder modifierExtension(Extension... 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).
Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Overrides:
modifierExtension
in classDomainResource.Builder
- Parameters:
modifierExtension
- Extensions that cannot be ignored- Returns:
- A reference to this Builder instance
-
modifierExtension
public Appointment.Builder modifierExtension(java.util.Collection<Extension> 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).
Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Overrides:
modifierExtension
in classDomainResource.Builder
- Parameters:
modifierExtension
- Extensions that cannot be ignored- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
identifier
public Appointment.Builder identifier(Identifier... identifier)
This records identifiers associated with this appointment concern that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation).Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
identifier
- External Ids for this item- Returns:
- A reference to this Builder instance
-
identifier
public Appointment.Builder identifier(java.util.Collection<Identifier> identifier)
This records identifiers associated with this appointment concern that are defined by business processes and/or used to refer to it when a direct URL reference to the resource itself is not appropriate (e.g. in CDA documents, or in written / printed documentation).Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Parameters:
identifier
- External Ids for this item- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
status
public Appointment.Builder status(AppointmentStatus status)
The overall status of the Appointment. Each of the participants has their own participation status which indicates their involvement in the process, however this status indicates the shared status.This element is required.
- Parameters:
status
- proposed | pending | booked | arrived | fulfilled | cancelled | noshow | entered-in-error | checked-in | waitlist- Returns:
- A reference to this Builder instance
-
cancelationReason
public Appointment.Builder cancelationReason(CodeableConcept cancelationReason)
The coded reason for the appointment being cancelled. This is often used in reporting/billing/futher processing to determine if further actions are required, or specific fees apply.- Parameters:
cancelationReason
- The coded reason for the appointment being cancelled- Returns:
- A reference to this Builder instance
-
serviceCategory
public Appointment.Builder serviceCategory(CodeableConcept... serviceCategory)
A broad categorization of the service that is to be performed during this appointment.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
serviceCategory
- A broad categorization of the service that is to be performed during this appointment- Returns:
- A reference to this Builder instance
-
serviceCategory
public Appointment.Builder serviceCategory(java.util.Collection<CodeableConcept> serviceCategory)
A broad categorization of the service that is to be performed during this appointment.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Parameters:
serviceCategory
- A broad categorization of the service that is to be performed during this appointment- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
serviceType
public Appointment.Builder serviceType(CodeableConcept... serviceType)
The specific service that is to be performed during this appointment.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
serviceType
- The specific service that is to be performed during this appointment- Returns:
- A reference to this Builder instance
-
serviceType
public Appointment.Builder serviceType(java.util.Collection<CodeableConcept> serviceType)
The specific service that is to be performed during this appointment.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Parameters:
serviceType
- The specific service that is to be performed during this appointment- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
specialty
public Appointment.Builder specialty(CodeableConcept... specialty)
The specialty of a practitioner that would be required to perform the service requested in this appointment.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
specialty
- The specialty of a practitioner that would be required to perform the service requested in this appointment- Returns:
- A reference to this Builder instance
-
specialty
public Appointment.Builder specialty(java.util.Collection<CodeableConcept> specialty)
The specialty of a practitioner that would be required to perform the service requested in this appointment.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Parameters:
specialty
- The specialty of a practitioner that would be required to perform the service requested in this appointment- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
appointmentType
public Appointment.Builder appointmentType(CodeableConcept appointmentType)
The style of appointment or patient that has been booked in the slot (not service type).- Parameters:
appointmentType
- The style of appointment or patient that has been booked in the slot (not service type)- Returns:
- A reference to this Builder instance
-
reasonCode
public Appointment.Builder reasonCode(CodeableConcept... reasonCode)
The coded reason that this appointment is being scheduled. This is more clinical than administrative.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
reasonCode
- Coded reason this appointment is scheduled- Returns:
- A reference to this Builder instance
-
reasonCode
public Appointment.Builder reasonCode(java.util.Collection<CodeableConcept> reasonCode)
The coded reason that this appointment is being scheduled. This is more clinical than administrative.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Parameters:
reasonCode
- Coded reason this appointment is scheduled- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
reasonReference
public Appointment.Builder reasonReference(Reference... reasonReference)
Reason the appointment has been scheduled to take place, as specified using information from another resource. When the patient arrives and the encounter begins it may be used as the admission diagnosis. The indication will typically be a Condition (with other resources referenced in the evidence.detail), or a Procedure.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.Allowed resource types for the references:
- Parameters:
reasonReference
- Reason the appointment is to take place (resource)- Returns:
- A reference to this Builder instance
-
reasonReference
public Appointment.Builder reasonReference(java.util.Collection<Reference> reasonReference)
Reason the appointment has been scheduled to take place, as specified using information from another resource. When the patient arrives and the encounter begins it may be used as the admission diagnosis. The indication will typically be a Condition (with other resources referenced in the evidence.detail), or a Procedure.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.Allowed resource types for the references:
- Parameters:
reasonReference
- Reason the appointment is to take place (resource)- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
priority
public Appointment.Builder priority(UnsignedInt priority)
The priority of the appointment. Can be used to make informed decisions if needing to re-prioritize appointments. (The iCal Standard specifies 0 as undefined, 1 as highest, 9 as lowest priority).- Parameters:
priority
- Used to make informed decisions if needing to re-prioritize- Returns:
- A reference to this Builder instance
-
description
public Appointment.Builder description(java.lang.String description)
Convenience method for settingdescription
.- Parameters:
description
- Shown on a subject line in a meeting request, or appointment list- Returns:
- A reference to this Builder instance
- See Also:
description(org.linuxforhealth.fhir.model.type.String)
-
description
public Appointment.Builder description(String description)
The brief description of the appointment as would be shown on a subject line in a meeting request, or appointment list. Detailed or expanded information should be put in the comment field.- Parameters:
description
- Shown on a subject line in a meeting request, or appointment list- Returns:
- A reference to this Builder instance
-
supportingInformation
public Appointment.Builder supportingInformation(Reference... supportingInformation)
Additional information to support the appointment provided when making the appointment.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
supportingInformation
- Additional information to support the appointment- Returns:
- A reference to this Builder instance
-
supportingInformation
public Appointment.Builder supportingInformation(java.util.Collection<Reference> supportingInformation)
Additional information to support the appointment provided when making the appointment.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Parameters:
supportingInformation
- Additional information to support the appointment- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
start
public Appointment.Builder start(java.time.ZonedDateTime start)
Convenience method for settingstart
.- Parameters:
start
- When appointment is to take place- Returns:
- A reference to this Builder instance
- See Also:
start(org.linuxforhealth.fhir.model.type.Instant)
-
start
public Appointment.Builder start(Instant start)
Date/Time that the appointment is to take place.- Parameters:
start
- When appointment is to take place- Returns:
- A reference to this Builder instance
-
end
public Appointment.Builder end(java.time.ZonedDateTime end)
Convenience method for settingend
.- Parameters:
end
- When appointment is to conclude- Returns:
- A reference to this Builder instance
- See Also:
end(org.linuxforhealth.fhir.model.type.Instant)
-
end
public Appointment.Builder end(Instant end)
Date/Time that the appointment is to conclude.- Parameters:
end
- When appointment is to conclude- Returns:
- A reference to this Builder instance
-
minutesDuration
public Appointment.Builder minutesDuration(PositiveInt minutesDuration)
Number of minutes that the appointment is to take. This can be less than the duration between the start and end times. For example, where the actual time of appointment is only an estimate or if a 30 minute appointment is being requested, but any time would work. Also, if there is, for example, a planned 15 minute break in the middle of a long appointment, the duration may be 15 minutes less than the difference between the start and end.- Parameters:
minutesDuration
- Can be less than start/end (e.g. estimate)- Returns:
- A reference to this Builder instance
-
slot
public Appointment.Builder slot(Reference... slot)
The slots from the participants' schedules that will be filled by the appointment.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.Allowed resource types for the references:
- Parameters:
slot
- The slots that this appointment is filling- Returns:
- A reference to this Builder instance
-
slot
public Appointment.Builder slot(java.util.Collection<Reference> slot)
The slots from the participants' schedules that will be filled by the appointment.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.Allowed resource types for the references:
- Parameters:
slot
- The slots that this appointment is filling- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
created
public Appointment.Builder created(DateTime created)
The date that this appointment was initially created. This could be different to the meta.lastModified value on the initial entry, as this could have been before the resource was created on the FHIR server, and should remain unchanged over the lifespan of the appointment.- Parameters:
created
- The date that this appointment was initially created- Returns:
- A reference to this Builder instance
-
comment
public Appointment.Builder comment(java.lang.String comment)
Convenience method for settingcomment
.- Parameters:
comment
- Additional comments- Returns:
- A reference to this Builder instance
- See Also:
comment(org.linuxforhealth.fhir.model.type.String)
-
comment
public Appointment.Builder comment(String comment)
Additional comments about the appointment.- Parameters:
comment
- Additional comments- Returns:
- A reference to this Builder instance
-
patientInstruction
public Appointment.Builder patientInstruction(java.lang.String patientInstruction)
Convenience method for settingpatientInstruction
.- Parameters:
patientInstruction
- Detailed information and instructions for the patient- Returns:
- A reference to this Builder instance
- See Also:
patientInstruction(org.linuxforhealth.fhir.model.type.String)
-
patientInstruction
public Appointment.Builder patientInstruction(String patientInstruction)
While Appointment.comment contains information for internal use, Appointment.patientInstructions is used to capture patient facing information about the Appointment (e.g. please bring your referral or fast from 8pm night before).- Parameters:
patientInstruction
- Detailed information and instructions for the patient- Returns:
- A reference to this Builder instance
-
basedOn
public Appointment.Builder basedOn(Reference... basedOn)
The service request this appointment is allocated to assess (e.g. incoming referral or procedure request).Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.Allowed resource types for the references:
- Parameters:
basedOn
- The service request this appointment is allocated to assess- Returns:
- A reference to this Builder instance
-
basedOn
public Appointment.Builder basedOn(java.util.Collection<Reference> basedOn)
The service request this appointment is allocated to assess (e.g. incoming referral or procedure request).Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.Allowed resource types for the references:
- Parameters:
basedOn
- The service request this appointment is allocated to assess- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
participant
public Appointment.Builder participant(Appointment.Participant... participant)
List of participants involved in the appointment.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.This element is required.
- Parameters:
participant
- Participants involved in appointment- Returns:
- A reference to this Builder instance
-
participant
public Appointment.Builder participant(java.util.Collection<Appointment.Participant> participant)
List of participants involved in the appointment.Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.This element is required.
- Parameters:
participant
- Participants involved in appointment- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
requestedPeriod
public Appointment.Builder requestedPeriod(Period... requestedPeriod)
A set of date ranges (potentially including times) that the appointment is preferred to be scheduled within.The duration (usually in minutes) could also be provided to indicate the length of the appointment to fill and populate the start/end times for the actual allocated time. However, in other situations the duration may be calculated by the scheduling system.
Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
requestedPeriod
- Potential date/time interval(s) requested to allocate the appointment within- Returns:
- A reference to this Builder instance
-
requestedPeriod
public Appointment.Builder requestedPeriod(java.util.Collection<Period> requestedPeriod)
A set of date ranges (potentially including times) that the appointment is preferred to be scheduled within.The duration (usually in minutes) could also be provided to indicate the length of the appointment to fill and populate the start/end times for the actual allocated time. However, in other situations the duration may be calculated by the scheduling system.
Replaces the existing list with a new one containing elements from the Collection. If any of the elements are null, calling
build()
will fail.- Parameters:
requestedPeriod
- Potential date/time interval(s) requested to allocate the appointment within- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
build
public Appointment build()
- Specified by:
build
in interfaceBuilder<Resource>
- Specified by:
build
in classDomainResource.Builder
- Returns:
- An immutable object of type
Appointment
- Throws:
java.lang.IllegalStateException
- if the current state cannot be built into a valid Appointment per the base specification
-
validate
protected void validate(Appointment appointment)
-
from
protected Appointment.Builder from(Appointment appointment)
-
-