Class AdministrableProductDefinition.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.AdministrableProductDefinition.Builder
-
- Enclosing class:
- AdministrableProductDefinition
public static class AdministrableProductDefinition.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 AdministrableProductDefinition.Builder
administrableDoseForm(CodeableConcept administrableDoseForm)
The dose form of the final product after necessary reconstitution or processing.AdministrableProductDefinition
build()
Build theAdministrableProductDefinition
AdministrableProductDefinition.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.AdministrableProductDefinition.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.AdministrableProductDefinition.Builder
device(Reference device)
A device that is integral to the medicinal product, in effect being considered as an "ingredient" of the medicinal product.AdministrableProductDefinition.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.AdministrableProductDefinition.Builder
extension(Extension... extension)
May be used to represent additional information that is not part of the basic definition of the resource.AdministrableProductDefinition.Builder
formOf(java.util.Collection<Reference> formOf)
References a product from which one or more of the constituent parts of that product can be prepared and used as described by this administrable product.AdministrableProductDefinition.Builder
formOf(Reference... formOf)
References a product from which one or more of the constituent parts of that product can be prepared and used as described by this administrable product.protected AdministrableProductDefinition.Builder
from(AdministrableProductDefinition administrableProductDefinition)
AdministrableProductDefinition.Builder
id(java.lang.String id)
The logical id of the resource, as used in the URL for the resource.AdministrableProductDefinition.Builder
identifier(java.util.Collection<Identifier> identifier)
An identifier for the administrable product.AdministrableProductDefinition.Builder
identifier(Identifier... identifier)
An identifier for the administrable product.AdministrableProductDefinition.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.AdministrableProductDefinition.Builder
ingredient(java.util.Collection<CodeableConcept> ingredient)
The ingredients of this administrable medicinal product.AdministrableProductDefinition.Builder
ingredient(CodeableConcept... ingredient)
The ingredients of this administrable medicinal product.AdministrableProductDefinition.Builder
language(Code language)
The base language in which the resource is written.AdministrableProductDefinition.Builder
meta(Meta meta)
The metadata about the resource.AdministrableProductDefinition.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.AdministrableProductDefinition.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.AdministrableProductDefinition.Builder
producedFrom(java.util.Collection<Reference> producedFrom)
Indicates the specific manufactured items that are part of the 'formOf' product that are used in the preparation of this specific administrable form.AdministrableProductDefinition.Builder
producedFrom(Reference... producedFrom)
Indicates the specific manufactured items that are part of the 'formOf' product that are used in the preparation of this specific administrable form.AdministrableProductDefinition.Builder
property(java.util.Collection<AdministrableProductDefinition.Property> property)
Characteristics e.g.AdministrableProductDefinition.Builder
property(AdministrableProductDefinition.Property... property)
Characteristics e.g.AdministrableProductDefinition.Builder
routeOfAdministration(java.util.Collection<AdministrableProductDefinition.RouteOfAdministration> routeOfAdministration)
The path by which the product is taken into or makes contact with the body.AdministrableProductDefinition.Builder
routeOfAdministration(AdministrableProductDefinition.RouteOfAdministration... routeOfAdministration)
The path by which the product is taken into or makes contact with the body.AdministrableProductDefinition.Builder
status(PublicationStatus status)
The status of this administrable product.AdministrableProductDefinition.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.AdministrableProductDefinition.Builder
unitOfPresentation(CodeableConcept unitOfPresentation)
The presentation type in which this item is given to a patient.protected void
validate(AdministrableProductDefinition administrableProductDefinition)
-
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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.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 AdministrableProductDefinition.Builder identifier(Identifier... identifier)
An identifier for the administrable product.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
identifier
- An identifier for the administrable product- Returns:
- A reference to this Builder instance
-
identifier
public AdministrableProductDefinition.Builder identifier(java.util.Collection<Identifier> identifier)
An identifier for the administrable product.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
- An identifier for the administrable product- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
status
public AdministrableProductDefinition.Builder status(PublicationStatus status)
The status of this administrable product. Enables tracking the life-cycle of the content.This element is required.
- Parameters:
status
- draft | active | retired | unknown- Returns:
- A reference to this Builder instance
-
formOf
public AdministrableProductDefinition.Builder formOf(Reference... formOf)
References a product from which one or more of the constituent parts of that product can be prepared and used as described by this administrable product. If this administrable product describes the administration of a crushed tablet, the 'formOf' would be the product representing a distribution containing tablets and possibly also a cream. This is distinct from the 'producedFrom' which refers to the specific components of the product that are used in this preparation, rather than the product as a whole.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:
formOf
- References a product from which one or more of the constituent parts of that product can be prepared and used as described by this administrable product- Returns:
- A reference to this Builder instance
-
formOf
public AdministrableProductDefinition.Builder formOf(java.util.Collection<Reference> formOf)
References a product from which one or more of the constituent parts of that product can be prepared and used as described by this administrable product. If this administrable product describes the administration of a crushed tablet, the 'formOf' would be the product representing a distribution containing tablets and possibly also a cream. This is distinct from the 'producedFrom' which refers to the specific components of the product that are used in this preparation, rather than the product as a whole.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:
formOf
- References a product from which one or more of the constituent parts of that product can be prepared and used as described by this administrable product- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
administrableDoseForm
public AdministrableProductDefinition.Builder administrableDoseForm(CodeableConcept administrableDoseForm)
The dose form of the final product after necessary reconstitution or processing. Contrasts to the manufactured dose form (see ManufacturedItemDefinition). If the manufactured form was 'powder for solution for injection', the administrable dose form could be 'solution for injection' (once mixed with another item having manufactured form 'solvent for solution for injection').- Parameters:
administrableDoseForm
- The dose form of the final product after necessary reconstitution or processing- Returns:
- A reference to this Builder instance
-
unitOfPresentation
public AdministrableProductDefinition.Builder unitOfPresentation(CodeableConcept unitOfPresentation)
The presentation type in which this item is given to a patient. e.g. for a spray - 'puff' (as in 'contains 100 mcg per puff'), or for a liquid - 'vial' (as in 'contains 5 ml per vial').- Parameters:
unitOfPresentation
- The presentation type in which this item is given to a patient. e.g. for a spray - 'puff'- Returns:
- A reference to this Builder instance
-
producedFrom
public AdministrableProductDefinition.Builder producedFrom(Reference... producedFrom)
Indicates the specific manufactured items that are part of the 'formOf' product that are used in the preparation of this specific administrable form. In some cases, an administrable form might use all of the items from the overall product (or there might only be one item), while in other cases, an administrable form might use only a subset of the items available in the overall product. For example, an administrable form might involve combining a liquid and a powder available as part of an overall product, but not involve applying the also supplied cream.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:
producedFrom
- Indicates the specific manufactured items that are part of the 'formOf' product that are used in the preparation of this specific administrable form- Returns:
- A reference to this Builder instance
-
producedFrom
public AdministrableProductDefinition.Builder producedFrom(java.util.Collection<Reference> producedFrom)
Indicates the specific manufactured items that are part of the 'formOf' product that are used in the preparation of this specific administrable form. In some cases, an administrable form might use all of the items from the overall product (or there might only be one item), while in other cases, an administrable form might use only a subset of the items available in the overall product. For example, an administrable form might involve combining a liquid and a powder available as part of an overall product, but not involve applying the also supplied cream.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:
producedFrom
- Indicates the specific manufactured items that are part of the 'formOf' product that are used in the preparation of this specific administrable form- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
ingredient
public AdministrableProductDefinition.Builder ingredient(CodeableConcept... ingredient)
The ingredients of this administrable medicinal product. This is only needed if the ingredients are not specified either using ManufacturedItemDefiniton (via AdministrableProductDefinition.producedFrom) to state which component items are used to make this, or using by incoming references from the Ingredient resource, to state in detail which substances exist within this. This element allows a basic coded ingredient to be used.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
ingredient
- The ingredients of this administrable medicinal product. This is only needed if the ingredients are not specified either using ManufacturedItemDefiniton, or using by incoming references from the Ingredient resource- Returns:
- A reference to this Builder instance
-
ingredient
public AdministrableProductDefinition.Builder ingredient(java.util.Collection<CodeableConcept> ingredient)
The ingredients of this administrable medicinal product. This is only needed if the ingredients are not specified either using ManufacturedItemDefiniton (via AdministrableProductDefinition.producedFrom) to state which component items are used to make this, or using by incoming references from the Ingredient resource, to state in detail which substances exist within this. This element allows a basic coded ingredient to be used.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:
ingredient
- The ingredients of this administrable medicinal product. This is only needed if the ingredients are not specified either using ManufacturedItemDefiniton, or using by incoming references from the Ingredient resource- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
device
public AdministrableProductDefinition.Builder device(Reference device)
A device that is integral to the medicinal product, in effect being considered as an "ingredient" of the medicinal product. This is not intended for devices that are just co-packaged.Allowed resource types for this reference:
- Parameters:
device
- A device that is integral to the medicinal product, in effect being considered as an "ingredient" of the medicinal product- Returns:
- A reference to this Builder instance
-
property
public AdministrableProductDefinition.Builder property(AdministrableProductDefinition.Property... property)
Characteristics e.g. a product's onset of action.Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.- Parameters:
property
- Characteristics e.g. a product's onset of action- Returns:
- A reference to this Builder instance
-
property
public AdministrableProductDefinition.Builder property(java.util.Collection<AdministrableProductDefinition.Property> property)
Characteristics e.g. a product's onset of action.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:
property
- Characteristics e.g. a product's onset of action- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
routeOfAdministration
public AdministrableProductDefinition.Builder routeOfAdministration(AdministrableProductDefinition.RouteOfAdministration... routeOfAdministration)
The path by which the product is taken into or makes contact with the body. In some regions this is referred to as the licenced or approved route. RouteOfAdministration cannot be used when the 'formOf' product already uses MedicinalProductDefinition.route (and vice versa).Adds new element(s) to the existing list. If any of the elements are null, calling
build()
will fail.This element is required.
- Parameters:
routeOfAdministration
- The path by which the product is taken into or makes contact with the body- Returns:
- A reference to this Builder instance
-
routeOfAdministration
public AdministrableProductDefinition.Builder routeOfAdministration(java.util.Collection<AdministrableProductDefinition.RouteOfAdministration> routeOfAdministration)
The path by which the product is taken into or makes contact with the body. In some regions this is referred to as the licenced or approved route. RouteOfAdministration cannot be used when the 'formOf' product already uses MedicinalProductDefinition.route (and vice versa).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:
routeOfAdministration
- The path by which the product is taken into or makes contact with the body- Returns:
- A reference to this Builder instance
- Throws:
java.lang.NullPointerException
- If the passed collection is null
-
build
public AdministrableProductDefinition build()
- Specified by:
build
in interfaceBuilder<Resource>
- Specified by:
build
in classDomainResource.Builder
- Returns:
- An immutable object of type
AdministrableProductDefinition
- Throws:
java.lang.IllegalStateException
- if the current state cannot be built into a valid AdministrableProductDefinition per the base specification
-
validate
protected void validate(AdministrableProductDefinition administrableProductDefinition)
-
from
protected AdministrableProductDefinition.Builder from(AdministrableProductDefinition administrableProductDefinition)
-
-