Package gov.nist.secauto.oscal.lib.model
Class ByComponent
- java.lang.Object
-
- gov.nist.secauto.oscal.lib.model.ByComponent
-
@MetaschemaAssembly(formalName="Component Control Implementation", description="Defines how the referenced component implements a set of controls.", name="by-component", metaschema=OscalSspMetaschema.class, remarks="Use of `set-parameter` in this context, sets the parameter for the control referenced in the containing `implemented-requirement` applied to the referenced component. If the `by-component` is used as a child of a `statement`, then the parameter value also applies only in the context of the referenced statement. If the same parameter is also set in the `control-implementation` or a specific `implemented-requirement`, then this `by-component/set-parameter` value will override the other value(s) in the context of the referenced component, control, and statement (if parent).") @ValueConstraints(allowedValues={@AllowedValues(level=ERROR,target="link/@rel",allowOthers=true,values=@AllowedValue(value="imported-from",description="The hyperlink identifies a URI pointing to the `component` in a `component-definition` that originally described the `component` this component was based on.")),@AllowedValues(level=ERROR,target=".//responsible-role/@role-id",allowOthers=true,values={@AllowedValue(value="asset-owner",description="Accountable for ensuring the asset is managed in accordance with organizational policies and procedures."),@AllowedValue(value="asset-administrator",description="Responsible for administering a set of assets."),@AllowedValue(value="security-operations",description="Members of the security operations center (SOC)."),@AllowedValue(value="network-operations",description="Members of the network operations center (NOC)."),@AllowedValue(value="incident-response",description="Responsible for responding to an event that could lead to loss of, or disruption to, an organization\'s operations, services or functions."),@AllowedValue(value="help-desk",description="Responsible for providing information and support to users."),@AllowedValue(value="configuration-management",description="Responsible for the configuration management processes governing changes to the asset."),@AllowedValue(value="maintainer",description="Responsible for the creation and maintenance of a component."),@AllowedValue(value="provider",description="Organization responsible for providing the component, if this is different from the \"maintainer\" (e.g., a reseller).")}),@AllowedValues(level=ERROR,target="link/@rel",allowOthers=true,values=@AllowedValue(value="provided-by",description="A reference to the UUID of a control or statement `by-component` object that is used as evidence of implementation."))},indexHasKey=@IndexHasKey(level=ERROR,target="link[@rel=\'provided-by\']",indexName="by-component-uuid",keyFields=@KeyField(target="@href",pattern="#(.*)"))) @AssemblyConstraints(isUnique=@IsUnique(id="unique-ssp-by-component-set-parameter",level=ERROR,target="set-parameter",keyFields=@KeyField(target="@param-id"),remarks="Since multiple `set-parameter` entries can be provided, each parameter must be set only once.")) public class ByComponent extends Object
Defines how the referenced component implements a set of controls.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
ByComponent.Export
Identifies content intended for external consumption, such as with leveraged organizations.static class
ByComponent.Inherited
Describes a control implementation inherited by a leveraging system.static class
ByComponent.Satisfied
Describes how this system satisfies a responsibility imposed by a leveraged system.
-
Constructor Summary
Constructors Constructor Description ByComponent()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
addInherited(ByComponent.Inherited item)
Add a newByComponent.Inherited
item to the underlying collection.boolean
addLink(Link item)
Add a newLink
item to the underlying collection.boolean
addProp(Property item)
Add a newProperty
item to the underlying collection.boolean
addResponsibleRole(ResponsibleRole item)
Add a newResponsibleRole
item to the underlying collection.boolean
addSatisfied(ByComponent.Satisfied item)
Add a newByComponent.Satisfied
item to the underlying collection.boolean
addSetParameter(SetParameter item)
Add a newSetParameter
item to the underlying collection.UUID
getComponentUuid()
gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline
getDescription()
ByComponent.Export
getExport()
ImplementationStatus
getImplementationStatus()
List<ByComponent.Inherited>
getInherited()
List<Link>
getLinks()
List<Property>
getProps()
gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline
getRemarks()
List<ResponsibleRole>
getResponsibleRoles()
List<ByComponent.Satisfied>
getSatisfied()
List<SetParameter>
getSetParameters()
UUID
getUuid()
boolean
removeInherited(ByComponent.Inherited item)
Remove the first matchingByComponent.Inherited
item from the underlying collection.boolean
removeLink(Link item)
Remove the first matchingLink
item from the underlying collection.boolean
removeProp(Property item)
Remove the first matchingProperty
item from the underlying collection.boolean
removeResponsibleRole(ResponsibleRole item)
Remove the first matchingResponsibleRole
item from the underlying collection.boolean
removeSatisfied(ByComponent.Satisfied item)
Remove the first matchingByComponent.Satisfied
item from the underlying collection.boolean
removeSetParameter(SetParameter item)
Remove the first matchingSetParameter
item from the underlying collection.void
setComponentUuid(UUID value)
void
setDescription(gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline value)
void
setExport(ByComponent.Export value)
void
setImplementationStatus(ImplementationStatus value)
void
setInherited(List<ByComponent.Inherited> value)
void
setLinks(List<Link> value)
void
setProps(List<Property> value)
void
setRemarks(gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline value)
void
setResponsibleRoles(List<ResponsibleRole> value)
void
setSatisfied(List<ByComponent.Satisfied> value)
void
setSetParameters(List<SetParameter> value)
void
setUuid(UUID value)
String
toString()
-
-
-
Constructor Detail
-
ByComponent
public ByComponent()
-
-
Method Detail
-
getComponentUuid
public UUID getComponentUuid()
-
setComponentUuid
public void setComponentUuid(UUID value)
-
getDescription
public gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline getDescription()
-
setDescription
public void setDescription(gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline value)
-
addProp
public boolean addProp(Property item)
Add a newProperty
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeProp
public boolean removeProp(Property item)
Remove the first matchingProperty
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
addLink
public boolean addLink(Link item)
Add a newLink
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeLink
public boolean removeLink(Link item)
Remove the first matchingLink
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getSetParameters
public List<SetParameter> getSetParameters()
-
setSetParameters
public void setSetParameters(List<SetParameter> value)
-
addSetParameter
public boolean addSetParameter(SetParameter item)
Add a newSetParameter
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeSetParameter
public boolean removeSetParameter(SetParameter item)
Remove the first matchingSetParameter
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getImplementationStatus
public ImplementationStatus getImplementationStatus()
-
setImplementationStatus
public void setImplementationStatus(ImplementationStatus value)
-
getExport
public ByComponent.Export getExport()
-
setExport
public void setExport(ByComponent.Export value)
-
getInherited
public List<ByComponent.Inherited> getInherited()
-
setInherited
public void setInherited(List<ByComponent.Inherited> value)
-
addInherited
public boolean addInherited(ByComponent.Inherited item)
Add a newByComponent.Inherited
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeInherited
public boolean removeInherited(ByComponent.Inherited item)
Remove the first matchingByComponent.Inherited
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getSatisfied
public List<ByComponent.Satisfied> getSatisfied()
-
setSatisfied
public void setSatisfied(List<ByComponent.Satisfied> value)
-
addSatisfied
public boolean addSatisfied(ByComponent.Satisfied item)
Add a newByComponent.Satisfied
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeSatisfied
public boolean removeSatisfied(ByComponent.Satisfied item)
Remove the first matchingByComponent.Satisfied
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getResponsibleRoles
public List<ResponsibleRole> getResponsibleRoles()
-
setResponsibleRoles
public void setResponsibleRoles(List<ResponsibleRole> value)
-
addResponsibleRole
public boolean addResponsibleRole(ResponsibleRole item)
Add a newResponsibleRole
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeResponsibleRole
public boolean removeResponsibleRole(ResponsibleRole item)
Remove the first matchingResponsibleRole
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getRemarks
public gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline getRemarks()
-
setRemarks
public void setRemarks(gov.nist.secauto.metaschema.model.common.datatype.markup.MarkupMultiline value)
-
-