Class ComponentControlImplementation

java.lang.Object
dev.metaschema.oscal.lib.model.ComponentControlImplementation
All Implemented Interfaces:
dev.metaschema.core.model.IBoundObject

@MetaschemaAssembly(formalName="Control Implementation Set", description="Defines how the component or capability supports a set of controls.", name="control-implementation", moduleClass=OscalComponentDefinitionModule.class, remarks="Use of `set-parameter` in this context, sets the parameter for all controls referenced by any `implemented-requirement` contained in this context. Any `set-parameter` defined in a child context will override this value. If not overridden by a child, this value applies in the child context.", modelConstraints=@AssemblyConstraints(unique=@IsUnique(id="oscal-unique-component-definition-control-implementation-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 ComponentControlImplementation extends Object implements dev.metaschema.core.model.IBoundObject
Defines how the component or capability supports a set of controls.
  • Constructor Details

    • ComponentControlImplementation

      Constructs a new dev.metaschema.oscal.lib.model.ComponentControlImplementation instance with no metadata.
    • ComponentControlImplementation

      public ComponentControlImplementation(dev.metaschema.core.model.IMetaschemaData data)
      Constructs a new dev.metaschema.oscal.lib.model.ComponentControlImplementation instance with the specified metadata.
      Parameters:
      data - the metaschema data, or null if none
  • Method Details

    • getMetaschemaData

      public dev.metaschema.core.model.IMetaschemaData getMetaschemaData()
      Specified by:
      getMetaschemaData in interface dev.metaschema.core.model.IBoundObject
    • getUuid

      @NonNull public UUID getUuid()
      Get the "Control Implementation Set Identifier".

      Provides a means to identify a set of control implementations that are supported by a given component or capability.

      Returns:
      the uuid value
    • setUuid

      public void setUuid(@NonNull UUID value)
      Set the "Control Implementation Set Identifier".

      Provides a means to identify a set of control implementations that are supported by a given component or capability.

      Parameters:
      value - the uuid value to set
    • getSource

      @NonNull public URI getSource()
      Get the "Source Resource Reference".

      A reference to an OSCAL catalog or profile providing the referenced control or subcontrol definition.

      Returns:
      the source value
    • setSource

      public void setSource(@NonNull URI value)
      Set the "Source Resource Reference".

      A reference to an OSCAL catalog or profile providing the referenced control or subcontrol definition.

      Parameters:
      value - the source value to set
    • getDescription

      @NonNull public dev.metaschema.core.datatype.markup.MarkupMultiline getDescription()
      Get the "Control Implementation Description".

      A description of how the specified set of controls are implemented for the containing component or capability.

      Returns:
      the description value
    • setDescription

      public void setDescription(@NonNull dev.metaschema.core.datatype.markup.MarkupMultiline value)
      Set the "Control Implementation Description".

      A description of how the specified set of controls are implemented for the containing component or capability.

      Parameters:
      value - the description value to set
    • getProps

      @NonNull public List<Property> getProps()
      Get the "Property".

      An attribute, characteristic, or quality of the containing object expressed as a namespace qualified name/value pair.

      Returns:
      the prop value
    • setProps

      public void setProps(@NonNull List<Property> value)
      Set the "Property".

      An attribute, characteristic, or quality of the containing object expressed as a namespace qualified name/value pair.

      Parameters:
      value - the prop value to set
    • addProp

      public boolean addProp(Property item)
      Add a new Property item to the underlying collection.
      Parameters:
      item - the item to add
      Returns:
      true
    • removeProp

      public boolean removeProp(Property item)
      Remove the first matching Property item from the underlying collection.
      Parameters:
      item - the item to remove
      Returns:
      true if the item was removed or false otherwise
    • getLinks

      @NonNull public List<Link> getLinks()
      Get the "Link".

      A reference to a local or remote resource, that has a specific relation to the containing object.

      Returns:
      the link value
    • setLinks

      public void setLinks(@NonNull List<Link> value)
      Set the "Link".

      A reference to a local or remote resource, that has a specific relation to the containing object.

      Parameters:
      value - the link value to set
    • addLink

      public boolean addLink(Link item)
      Add a new Link item to the underlying collection.
      Parameters:
      item - the item to add
      Returns:
      true
    • removeLink

      public boolean removeLink(Link item)
      Remove the first matching Link item from the underlying collection.
      Parameters:
      item - the item to remove
      Returns:
      true if the item was removed or false otherwise
    • getSetParameters

      @NonNull public List<SetParameter> getSetParameters()
      Get the "Set Parameter Value".

      Identifies the parameter that will be set by the enclosed value.

      Returns:
      the set-parameter value
    • setSetParameters

      public void setSetParameters(@NonNull List<SetParameter> value)
      Set the "Set Parameter Value".

      Identifies the parameter that will be set by the enclosed value.

      Parameters:
      value - the set-parameter value to set
    • addSetParameter

      public boolean addSetParameter(SetParameter item)
      Add a new SetParameter item to the underlying collection.
      Parameters:
      item - the item to add
      Returns:
      true
    • removeSetParameter

      public boolean removeSetParameter(SetParameter item)
      Remove the first matching SetParameter item from the underlying collection.
      Parameters:
      item - the item to remove
      Returns:
      true if the item was removed or false otherwise
    • getImplementedRequirements

      Get the "Control Implementation".

      Describes how the containing component or capability implements an individual control.

      Returns:
      the implemented-requirement value
    • setImplementedRequirements

      Set the "Control Implementation".

      Describes how the containing component or capability implements an individual control.

      Parameters:
      value - the implemented-requirement value to set
    • addImplementedRequirement

      Add a new ComponentImplementedRequirement item to the underlying collection.
      Parameters:
      item - the item to add
      Returns:
      true
    • removeImplementedRequirement

      Remove the first matching ComponentImplementedRequirement item from the underlying collection.
      Parameters:
      item - the item to remove
      Returns:
      true if the item was removed or false otherwise
    • toString

      public String toString()
      Overrides:
      toString in class Object