Package gov.nist.secauto.oscal.lib.model
Class SystemImplementation
java.lang.Object
gov.nist.secauto.oscal.lib.model.SystemImplementation
- All Implemented Interfaces:
gov.nist.secauto.metaschema.core.model.IBoundObject
@MetaschemaAssembly(formalName="System Implementation",
description="Provides information as to how the system is implemented.",
name="system-implementation",
moduleClass=OscalSspModule.class,
valueConstraints=@ValueConstraints(allowedValues=@AllowedValues(level=ERROR,target="(component | inventory-item)/prop[has-oscal-namespace(\'http://csrc.nist.gov/ns/oscal\') and @name=\'allows-authenticated-scan\']/@value",values={@AllowedValue(value="yes",description="The component allows an authenticated scan."),@AllowedValue(value="no",description="The component does not allow an authenticated scan.")}),indexHasKey={@IndexHasKey(level=ERROR,target="component/prop[@name=\'leveraged-authorization-uuid\']",indexName="index-system-implementation-leveraged-authorization-uuid",keyFields=@KeyField(target="@value")),@IndexHasKey(level=ERROR,target="component/link[@rel=\'depends-on\']",indexName="index-system-implementation-component-uuid",keyFields=@KeyField(target="@href")),@IndexHasKey(level=ERROR,target="component/link[@rel=\'validated-by\']",indexName="index-system-implementation-component-uuid-validation",keyFields=@KeyField(target="@href")),@IndexHasKey(level=ERROR,target="component/link[@rel=\'proof-of-compliance\']",indexName="index-system-implementation-component-uuid-validation",keyFields=@KeyField(target="@href")),@IndexHasKey(level=ERROR,target="component/link[@rel=\'uses-service\']",indexName="index-system-implementation-component-uuid-service",keyFields=@KeyField(target="@href"))}),
modelConstraints=@AssemblyConstraints(index={@Index(level=ERROR,target="leveraged-authorization",name="index-system-implementation-leveraged-authorization-uuid",keyFields=@KeyField(target="@uuid")),@Index(level=ERROR,target="component",name="index-system-implementation-component-uuid",keyFields=@KeyField(target="@uuid")),@Index(level=ERROR,target="component[@type=\'validation\']",name="index-system-implementation-component-uuid-validation",keyFields=@KeyField(target="@uuid")),@Index(level=ERROR,target="component[@type=\'service\']",name="index-system-implementation-component-uuid-service",keyFields=@KeyField(target="@uuid"))},unique=@IsUnique(id="unique-ssp-system-implementation-user",level=ERROR,target="user",keyFields=@KeyField(target="@uuid"),remarks="A given `uuid` must be assigned only once to a user.")))
public class SystemImplementation
extends Object
implements gov.nist.secauto.metaschema.core.model.IBoundObject
Provides information as to how the system is implemented.
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
A description of another authorized system from which this system inherits capabilities that satisfy security requirements. -
Constructor Summary
ConstructorDescriptionSystemImplementation
(gov.nist.secauto.metaschema.core.model.IMetaschemaData data) -
Method Summary
Modifier and TypeMethodDescriptionboolean
addComponent
(SystemComponent item) Add a newSystemComponent
item to the underlying collection.boolean
Add a newInventoryItem
item to the underlying collection.boolean
Add a newSystemImplementation.LeveragedAuthorization
item to the underlying collection.boolean
Add a newLink
item to the underlying collection.boolean
Add a newProperty
item to the underlying collection.boolean
addUser
(SystemUser item) Add a newSystemUser
item to the underlying collection.getLinks()
gov.nist.secauto.metaschema.core.model.IMetaschemaData
getProps()
gov.nist.secauto.metaschema.core.datatype.markup.MarkupMultiline
getUsers()
boolean
Remove the first matchingSystemComponent
item from the underlying collection.boolean
Remove the first matchingInventoryItem
item from the underlying collection.boolean
Remove the first matchingSystemImplementation.LeveragedAuthorization
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
removeUser
(SystemUser item) Remove the first matchingSystemUser
item from the underlying collection.void
setComponents
(List<SystemComponent> value) void
setInventoryItems
(List<InventoryItem> value) void
void
void
void
setRemarks
(gov.nist.secauto.metaschema.core.datatype.markup.MarkupMultiline value) void
setUsers
(List<SystemUser> value) toString()
-
Constructor Details
-
SystemImplementation
public SystemImplementation() -
SystemImplementation
-
-
Method Details
-
getMetaschemaData
- Specified by:
getMetaschemaData
in interfacegov.nist.secauto.metaschema.core.model.IBoundObject
-
getProps
-
setProps
-
addProp
Add a newProperty
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeProp
Remove the first matchingProperty
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getLinks
-
setLinks
-
addLink
Add a newLink
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeLink
Remove the first matchingLink
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getLeveragedAuthorizations
-
setLeveragedAuthorizations
-
addLeveragedAuthorization
Add a newSystemImplementation.LeveragedAuthorization
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeLeveragedAuthorization
Remove the first matchingSystemImplementation.LeveragedAuthorization
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getUsers
-
setUsers
-
addUser
Add a newSystemUser
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeUser
Remove the first matchingSystemUser
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getComponents
-
setComponents
-
addComponent
Add a newSystemComponent
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeComponent
Remove the first matchingSystemComponent
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getInventoryItems
-
setInventoryItems
-
addInventoryItem
Add a newInventoryItem
item to the underlying collection.- Parameters:
item
- the item to add- Returns:
true
-
removeInventoryItem
Remove the first matchingInventoryItem
item from the underlying collection.- Parameters:
item
- the item to remove- Returns:
true
if the item was removed orfalse
otherwise
-
getRemarks
-
setRemarks
-
toString
-