Class CapabilityStatement.Rest.Resource.Builder
- java.lang.Object
-
- com.ibm.fhir.model.builder.AbstractBuilder<Element>
-
- com.ibm.fhir.model.type.Element.Builder
-
- com.ibm.fhir.model.type.BackboneElement.Builder
-
- com.ibm.fhir.model.resource.CapabilityStatement.Rest.Resource.Builder
-
- Enclosing class:
- CapabilityStatement.Rest.Resource
public static class CapabilityStatement.Rest.Resource.Builder extends BackboneElement.Builder
-
-
Field Summary
-
Fields inherited from class com.ibm.fhir.model.type.BackboneElement.Builder
modifierExtension
-
Fields inherited from class com.ibm.fhir.model.type.Element.Builder
extension, id
-
Fields inherited from class com.ibm.fhir.model.builder.AbstractBuilder
validating
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description CapabilityStatement.Rest.Resource
build()
Build theCapabilityStatement.Rest.Resource
CapabilityStatement.Rest.Resource.Builder
conditionalCreate(Boolean conditionalCreate)
A flag that indicates that the server supports conditional create.CapabilityStatement.Rest.Resource.Builder
conditionalDelete(ConditionalDeleteStatus conditionalDelete)
A code that indicates how the server supports conditional delete.CapabilityStatement.Rest.Resource.Builder
conditionalRead(ConditionalReadStatus conditionalRead)
A code that indicates how the server supports conditional read.CapabilityStatement.Rest.Resource.Builder
conditionalUpdate(Boolean conditionalUpdate)
A flag that indicates that the server supports conditional update.CapabilityStatement.Rest.Resource.Builder
documentation(Markdown documentation)
Additional information about the resource type used by the system.CapabilityStatement.Rest.Resource.Builder
extension(Extension... extension)
May be used to represent additional information that is not part of the basic definition of the element.CapabilityStatement.Rest.Resource.Builder
extension(Collection<Extension> extension)
May be used to represent additional information that is not part of the basic definition of the element.protected CapabilityStatement.Rest.Resource.Builder
from(CapabilityStatement.Rest.Resource resource)
CapabilityStatement.Rest.Resource.Builder
id(String id)
Unique id for the element within a resource (for internal references).CapabilityStatement.Rest.Resource.Builder
interaction(CapabilityStatement.Rest.Resource.Interaction... interaction)
Identifies a restful operation supported by the solution.CapabilityStatement.Rest.Resource.Builder
interaction(Collection<CapabilityStatement.Rest.Resource.Interaction> interaction)
Identifies a restful operation supported by the solution.CapabilityStatement.Rest.Resource.Builder
modifierExtension(Extension... modifierExtension)
May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants.CapabilityStatement.Rest.Resource.Builder
modifierExtension(Collection<Extension> modifierExtension)
May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element's descendants.CapabilityStatement.Rest.Resource.Builder
operation(CapabilityStatement.Rest.Resource.Operation... operation)
Definition of an operation or a named query together with its parameters and their meaning and type.CapabilityStatement.Rest.Resource.Builder
operation(Collection<CapabilityStatement.Rest.Resource.Operation> operation)
Definition of an operation or a named query together with its parameters and their meaning and type.CapabilityStatement.Rest.Resource.Builder
profile(Canonical profile)
A specification of the profile that describes the solution's overall support for the resource, including any constraints on cardinality, bindings, lengths or other limitations.CapabilityStatement.Rest.Resource.Builder
readHistory(Boolean readHistory)
A flag for whether the server is able to return past versions as part of the vRead operation.CapabilityStatement.Rest.Resource.Builder
referencePolicy(ReferenceHandlingPolicy... referencePolicy)
A set of flags that defines how references are supported.CapabilityStatement.Rest.Resource.Builder
referencePolicy(Collection<ReferenceHandlingPolicy> referencePolicy)
A set of flags that defines how references are supported.CapabilityStatement.Rest.Resource.Builder
searchInclude(String... searchInclude)
A list of _include values supported by the server.CapabilityStatement.Rest.Resource.Builder
searchInclude(Collection<String> searchInclude)
A list of _include values supported by the server.CapabilityStatement.Rest.Resource.Builder
searchParam(CapabilityStatement.Rest.Resource.SearchParam... searchParam)
Search parameters for implementations to support and/or make use of - either references to ones defined in the specification, or additional ones defined for/by the implementation.CapabilityStatement.Rest.Resource.Builder
searchParam(Collection<CapabilityStatement.Rest.Resource.SearchParam> searchParam)
Search parameters for implementations to support and/or make use of - either references to ones defined in the specification, or additional ones defined for/by the implementation.CapabilityStatement.Rest.Resource.Builder
searchRevInclude(String... searchRevInclude)
A list of _revinclude (reverse include) values supported by the server.CapabilityStatement.Rest.Resource.Builder
searchRevInclude(Collection<String> searchRevInclude)
A list of _revinclude (reverse include) values supported by the server.CapabilityStatement.Rest.Resource.Builder
supportedProfile(Canonical... supportedProfile)
A list of profiles that represent different use cases supported by the system.CapabilityStatement.Rest.Resource.Builder
supportedProfile(Collection<Canonical> supportedProfile)
A list of profiles that represent different use cases supported by the system.CapabilityStatement.Rest.Resource.Builder
type(ResourceType type)
A type of resource exposed via the restful interface.CapabilityStatement.Rest.Resource.Builder
updateCreate(Boolean updateCreate)
A flag to indicate that the server allows or needs to allow the client to create new identities on the server (that is, the client PUTs to a location where there is no existing resource).protected void
validate(CapabilityStatement.Rest.Resource resource)
CapabilityStatement.Rest.Resource.Builder
versioning(ResourceVersionPolicy versioning)
This field is set to no-version to specify that the system does not support (server) or use (client) versioning for this resource type.-
Methods inherited from class com.ibm.fhir.model.type.BackboneElement.Builder
from, validate
-
Methods inherited from class com.ibm.fhir.model.type.Element.Builder
from, validate
-
Methods inherited from class com.ibm.fhir.model.builder.AbstractBuilder
isValidating, setValidating
-
-
-
-
Method Detail
-
id
public CapabilityStatement.Rest.Resource.Builder id(String id)
Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.- Overrides:
id
in classBackboneElement.Builder
- Parameters:
id
- Unique id for inter-element referencing- Returns:
- A reference to this Builder instance
-
extension
public CapabilityStatement.Rest.Resource.Builder extension(Extension... extension)
May be used to represent additional information that is not part of the basic definition of the element. 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
- Overrides:
extension
in classBackboneElement.Builder
- Parameters:
extension
- Additional content defined by implementations- Returns:
- A reference to this Builder instance
-
extension
public CapabilityStatement.Rest.Resource.Builder extension(Collection<Extension> extension)
May be used to represent additional information that is not part of the basic definition of the element. 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
- Overrides:
extension
in classBackboneElement.Builder
- Parameters:
extension
- Additional content defined by implementations- Returns:
- A reference to this Builder instance
-
modifierExtension
public CapabilityStatement.Rest.Resource.Builder modifierExtension(Extension... modifierExtension)
May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained 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 can 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
- Overrides:
modifierExtension
in classBackboneElement.Builder
- Parameters:
modifierExtension
- Extensions that cannot be ignored even if unrecognized- Returns:
- A reference to this Builder instance
-
modifierExtension
public CapabilityStatement.Rest.Resource.Builder modifierExtension(Collection<Extension> modifierExtension)
May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained 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 can 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
- Overrides:
modifierExtension
in classBackboneElement.Builder
- Parameters:
modifierExtension
- Extensions that cannot be ignored even if unrecognized- Returns:
- A reference to this Builder instance
-
type
public CapabilityStatement.Rest.Resource.Builder type(ResourceType type)
A type of resource exposed via the restful interface.This element is required.
- Parameters:
type
- A resource type that is supported- Returns:
- A reference to this Builder instance
-
profile
public CapabilityStatement.Rest.Resource.Builder profile(Canonical profile)
A specification of the profile that describes the solution's overall support for the resource, including any constraints on cardinality, bindings, lengths or other limitations. See further discussion in [Using Profiles] (profiling.html#profile-uses).- Parameters:
profile
- Base System profile for all uses of resource- Returns:
- A reference to this Builder instance
-
supportedProfile
public CapabilityStatement.Rest.Resource.Builder supportedProfile(Canonical... supportedProfile)
A list of profiles that represent different use cases supported by the system. For a server, "supported by the system" means the system hosts/produces a set of resources that are conformant to a particular profile, and allows clients that use its services to search using this profile and to find appropriate data. For a client, it means the system will search by this profile and process data according to the guidance implicit in the profile. See further discussion in [Using Profiles](profiling.html#profile-uses).Adds new element(s) to the existing list
- Parameters:
supportedProfile
- Profiles for use cases supported- Returns:
- A reference to this Builder instance
-
supportedProfile
public CapabilityStatement.Rest.Resource.Builder supportedProfile(Collection<Canonical> supportedProfile)
A list of profiles that represent different use cases supported by the system. For a server, "supported by the system" means the system hosts/produces a set of resources that are conformant to a particular profile, and allows clients that use its services to search using this profile and to find appropriate data. For a client, it means the system will search by this profile and process data according to the guidance implicit in the profile. See further discussion in [Using Profiles](profiling.html#profile-uses).Replaces the existing list with a new one containing elements from the Collection
- Parameters:
supportedProfile
- Profiles for use cases supported- Returns:
- A reference to this Builder instance
-
documentation
public CapabilityStatement.Rest.Resource.Builder documentation(Markdown documentation)
Additional information about the resource type used by the system.- Parameters:
documentation
- Additional information about the use of the resource type- Returns:
- A reference to this Builder instance
-
interaction
public CapabilityStatement.Rest.Resource.Builder interaction(CapabilityStatement.Rest.Resource.Interaction... interaction)
Identifies a restful operation supported by the solution.Adds new element(s) to the existing list
- Parameters:
interaction
- What operations are supported?- Returns:
- A reference to this Builder instance
-
interaction
public CapabilityStatement.Rest.Resource.Builder interaction(Collection<CapabilityStatement.Rest.Resource.Interaction> interaction)
Identifies a restful operation supported by the solution.Replaces the existing list with a new one containing elements from the Collection
- Parameters:
interaction
- What operations are supported?- Returns:
- A reference to this Builder instance
-
versioning
public CapabilityStatement.Rest.Resource.Builder versioning(ResourceVersionPolicy versioning)
This field is set to no-version to specify that the system does not support (server) or use (client) versioning for this resource type. If this has some other value, the server must at least correctly track and populate the versionId meta-property on resources. If the value is 'versioned-update', then the server supports all the versioning features, including using e-tags for version integrity in the API.- Parameters:
versioning
- no-version | versioned | versioned-update- Returns:
- A reference to this Builder instance
-
readHistory
public CapabilityStatement.Rest.Resource.Builder readHistory(Boolean readHistory)
A flag for whether the server is able to return past versions as part of the vRead operation.- Parameters:
readHistory
- Whether vRead can return past versions- Returns:
- A reference to this Builder instance
-
updateCreate
public CapabilityStatement.Rest.Resource.Builder updateCreate(Boolean updateCreate)
A flag to indicate that the server allows or needs to allow the client to create new identities on the server (that is, the client PUTs to a location where there is no existing resource). Allowing this operation means that the server allows the client to create new identities on the server.- Parameters:
updateCreate
- If update can commit to a new identity- Returns:
- A reference to this Builder instance
-
conditionalCreate
public CapabilityStatement.Rest.Resource.Builder conditionalCreate(Boolean conditionalCreate)
A flag that indicates that the server supports conditional create.- Parameters:
conditionalCreate
- If allows/uses conditional create- Returns:
- A reference to this Builder instance
-
conditionalRead
public CapabilityStatement.Rest.Resource.Builder conditionalRead(ConditionalReadStatus conditionalRead)
A code that indicates how the server supports conditional read.- Parameters:
conditionalRead
- not-supported | modified-since | not-match | full-support- Returns:
- A reference to this Builder instance
-
conditionalUpdate
public CapabilityStatement.Rest.Resource.Builder conditionalUpdate(Boolean conditionalUpdate)
A flag that indicates that the server supports conditional update.- Parameters:
conditionalUpdate
- If allows/uses conditional update- Returns:
- A reference to this Builder instance
-
conditionalDelete
public CapabilityStatement.Rest.Resource.Builder conditionalDelete(ConditionalDeleteStatus conditionalDelete)
A code that indicates how the server supports conditional delete.- Parameters:
conditionalDelete
- not-supported | single | multiple - how conditional delete is supported- Returns:
- A reference to this Builder instance
-
referencePolicy
public CapabilityStatement.Rest.Resource.Builder referencePolicy(ReferenceHandlingPolicy... referencePolicy)
A set of flags that defines how references are supported.Adds new element(s) to the existing list
- Parameters:
referencePolicy
- literal | logical | resolves | enforced | local- Returns:
- A reference to this Builder instance
-
referencePolicy
public CapabilityStatement.Rest.Resource.Builder referencePolicy(Collection<ReferenceHandlingPolicy> referencePolicy)
A set of flags that defines how references are supported.Replaces the existing list with a new one containing elements from the Collection
- Parameters:
referencePolicy
- literal | logical | resolves | enforced | local- Returns:
- A reference to this Builder instance
-
searchInclude
public CapabilityStatement.Rest.Resource.Builder searchInclude(String... searchInclude)
A list of _include values supported by the server.Adds new element(s) to the existing list
- Parameters:
searchInclude
- _include values supported by the server- Returns:
- A reference to this Builder instance
-
searchInclude
public CapabilityStatement.Rest.Resource.Builder searchInclude(Collection<String> searchInclude)
A list of _include values supported by the server.Replaces the existing list with a new one containing elements from the Collection
- Parameters:
searchInclude
- _include values supported by the server- Returns:
- A reference to this Builder instance
-
searchRevInclude
public CapabilityStatement.Rest.Resource.Builder searchRevInclude(String... searchRevInclude)
A list of _revinclude (reverse include) values supported by the server.Adds new element(s) to the existing list
- Parameters:
searchRevInclude
- _revinclude values supported by the server- Returns:
- A reference to this Builder instance
-
searchRevInclude
public CapabilityStatement.Rest.Resource.Builder searchRevInclude(Collection<String> searchRevInclude)
A list of _revinclude (reverse include) values supported by the server.Replaces the existing list with a new one containing elements from the Collection
- Parameters:
searchRevInclude
- _revinclude values supported by the server- Returns:
- A reference to this Builder instance
-
searchParam
public CapabilityStatement.Rest.Resource.Builder searchParam(CapabilityStatement.Rest.Resource.SearchParam... searchParam)
Search parameters for implementations to support and/or make use of - either references to ones defined in the specification, or additional ones defined for/by the implementation.Adds new element(s) to the existing list
- Parameters:
searchParam
- Search parameters supported by implementation- Returns:
- A reference to this Builder instance
-
searchParam
public CapabilityStatement.Rest.Resource.Builder searchParam(Collection<CapabilityStatement.Rest.Resource.SearchParam> searchParam)
Search parameters for implementations to support and/or make use of - either references to ones defined in the specification, or additional ones defined for/by the implementation.Replaces the existing list with a new one containing elements from the Collection
- Parameters:
searchParam
- Search parameters supported by implementation- Returns:
- A reference to this Builder instance
-
operation
public CapabilityStatement.Rest.Resource.Builder operation(CapabilityStatement.Rest.Resource.Operation... operation)
Definition of an operation or a named query together with its parameters and their meaning and type. Consult the definition of the operation for details about how to invoke the operation, and the parameters.Adds new element(s) to the existing list
- Parameters:
operation
- Definition of a resource operation- Returns:
- A reference to this Builder instance
-
operation
public CapabilityStatement.Rest.Resource.Builder operation(Collection<CapabilityStatement.Rest.Resource.Operation> operation)
Definition of an operation or a named query together with its parameters and their meaning and type. Consult the definition of the operation for details about how to invoke the operation, and the parameters.Replaces the existing list with a new one containing elements from the Collection
- Parameters:
operation
- Definition of a resource operation- Returns:
- A reference to this Builder instance
-
build
public CapabilityStatement.Rest.Resource build()
- Specified by:
build
in interfaceBuilder<Element>
- Specified by:
build
in classBackboneElement.Builder
- Returns:
- An immutable object of type
CapabilityStatement.Rest.Resource
- Throws:
IllegalStateException
- if the current state cannot be built into a valid Resource per the base specification
-
validate
protected void validate(CapabilityStatement.Rest.Resource resource)
-
from
protected CapabilityStatement.Rest.Resource.Builder from(CapabilityStatement.Rest.Resource resource)
-
-