Class SystemImplementation.LeveragedAuthorization

java.lang.Object
dev.metaschema.oscal.lib.model.SystemImplementation.LeveragedAuthorization
All Implemented Interfaces:
dev.metaschema.core.model.IBoundObject
Enclosing class:
SystemImplementation

@MetaschemaAssembly(formalName="Leveraged Authorization", description="A description of another authorized system from which this system inherits capabilities that satisfy security requirements. Another term for this concept is a *common control provider*.", name="leveraged-authorization", moduleClass=OscalSspModule.class, valueConstraints=@ValueConstraints(allowedValues=@AllowedValues(id="oscal-leveraged-authorization-link-rel-values",level=ERROR,target="link/@rel",allowOthers=true,values=@AllowedValue(value="system-security-plan",description="A reference to the system security plan for the leveraged authorization.")),indexHasKey=@IndexHasKey(id="oscal-leveraged-authorization-index-back-matter-resource-ssp",level=ERROR,target="link[@rel=\'system-security-plan\' and starts-with(@href,\'#\')]",indexName="index-back-matter-resource",keyFields=@KeyField(target="@href",pattern="#(.*)")),matches={@Matches(id="oscal-leveraged-authorization-link-rel-ssp-datatype-uri-reference",level=ERROR,target="link[@rel=\'system-security-plan\']/@href[starts-with(.,\'#\')]",typeAdapter=dev.metaschema.core.datatype.adapter.UriReferenceAdapter.class),@Matches(id="oscal-leveraged-authorization-link-rel-ssp-datatype-uri",level=ERROR,target="link[@rel=\'system-security-plan\']/@href[not(starts-with(.,\'#\'))]",typeAdapter=dev.metaschema.core.datatype.adapter.UriAdapter.class)})) public static class SystemImplementation.LeveragedAuthorization extends Object implements dev.metaschema.core.model.IBoundObject
A description of another authorized system from which this system inherits capabilities that satisfy security requirements. Another term for this concept is a common control provider.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new dev.metaschema.oscal.lib.model.SystemImplementation.LeveragedAuthorization instance with no metadata.
    LeveragedAuthorization(dev.metaschema.core.model.IMetaschemaData data)
    Constructs a new dev.metaschema.oscal.lib.model.SystemImplementation.LeveragedAuthorization instance with the specified metadata.
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    addLink(Link item)
    Add a new Link item to the underlying collection.
    boolean
    Add a new Property item to the underlying collection.
    dev.metaschema.core.datatype.object.AmbiguousDate
    Get the "System Authorization Date".
    Get the "Link".
    dev.metaschema.core.model.IMetaschemaData
     
    Get the "party-uuid field".
    Get the "Property".
    dev.metaschema.core.datatype.markup.MarkupMultiline
    Get the "Remarks".
    dev.metaschema.core.datatype.markup.MarkupLine
    Get the "title field".
    Get the "Leveraged Authorization Universally Unique Identifier".
    boolean
    Remove the first matching Link item from the underlying collection.
    boolean
    Remove the first matching Property item from the underlying collection.
    void
    setDateAuthorized(dev.metaschema.core.datatype.object.AmbiguousDate value)
    Set the "System Authorization Date".
    void
    setLinks(List<Link> value)
    Set the "Link".
    void
    Set the "party-uuid field".
    void
    Set the "Property".
    void
    setRemarks(dev.metaschema.core.datatype.markup.MarkupMultiline value)
    Set the "Remarks".
    void
    setTitle(dev.metaschema.core.datatype.markup.MarkupLine value)
    Set the "title field".
    void
    setUuid(UUID value)
    Set the "Leveraged Authorization Universally Unique Identifier".
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • LeveragedAuthorization

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

      public LeveragedAuthorization(dev.metaschema.core.model.IMetaschemaData data)
      Constructs a new dev.metaschema.oscal.lib.model.SystemImplementation.LeveragedAuthorization 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 "Leveraged Authorization Universally Unique Identifier".

      A machine-oriented, globally unique identifier with cross-instance scope and can be used to reference this leveraged authorization elsewhere in this or other OSCAL instances. The locally defined UUID of the leveraged authorization can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.

      Returns:
      the uuid value
    • setUuid

      public void setUuid(@NonNull UUID value)
      Set the "Leveraged Authorization Universally Unique Identifier".

      A machine-oriented, globally unique identifier with cross-instance scope and can be used to reference this leveraged authorization elsewhere in this or other OSCAL instances. The locally defined UUID of the leveraged authorization can be used to reference the data item locally or globally (e.g., in an imported OSCAL instance). This UUID should be assigned per-subject, which means it should be consistently used to identify the same subject across revisions of the document.

      Parameters:
      value - the uuid value to set
    • getTitle

      @NonNull public dev.metaschema.core.datatype.markup.MarkupLine getTitle()
      Get the "title field".

      A human readable name for the leveraged authorization in the context of the system.

      Returns:
      the title value
    • setTitle

      public void setTitle(@NonNull dev.metaschema.core.datatype.markup.MarkupLine value)
      Set the "title field".

      A human readable name for the leveraged authorization in the context of the system.

      Parameters:
      value - the title 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
    • getPartyUuid

      @NonNull public UUID getPartyUuid()
      Get the "party-uuid field".

      A machine-oriented identifier reference to the party that manages the leveraged system.

      Returns:
      the party-uuid value
    • setPartyUuid

      public void setPartyUuid(@NonNull UUID value)
      Set the "party-uuid field".

      A machine-oriented identifier reference to the party that manages the leveraged system.

      Parameters:
      value - the party-uuid value to set
    • getDateAuthorized

      @NonNull public dev.metaschema.core.datatype.object.AmbiguousDate getDateAuthorized()
      Get the "System Authorization Date".

      The date the system received its authorization.

      Returns:
      the date-authorized value
    • setDateAuthorized

      public void setDateAuthorized(@NonNull dev.metaschema.core.datatype.object.AmbiguousDate value)
      Set the "System Authorization Date".

      The date the system received its authorization.

      Parameters:
      value - the date-authorized value to set
    • getRemarks

      @Nullable public dev.metaschema.core.datatype.markup.MarkupMultiline getRemarks()
      Get the "Remarks".

      Additional commentary about the containing object.

      Returns:
      the remarks value, or null if not set
    • setRemarks

      public void setRemarks(@Nullable dev.metaschema.core.datatype.markup.MarkupMultiline value)
      Set the "Remarks".

      Additional commentary about the containing object.

      Parameters:
      value - the remarks value to set, or null to clear
    • toString

      public String toString()
      Overrides:
      toString in class Object