Package org.ivoa.dm.tool
Class SecurityMetadata
java.lang.Object
org.ivoa.dm.tool.SecurityMetadata
- All Implemented Interfaces:
org.ivoa.vodml.jpa.JPAManipulations,org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
@Entity
@VoDml(id="tool:SecurityMetadata",
role=objectType)
public class SecurityMetadata
extends Object
implements org.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
Security metadata for a tool image.
objectType: SecurityMetadata
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classA builder class for SecurityMetadata, mainly for use in the functional builder pattern. -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Longinserted database keyprotected List<Compliance>Compliance information for the image.protected Stringa digest style signature.protected List<Vulnerability>Known vulnerabilities in the image. -
Constructor Summary
ConstructorsConstructorDescriptionCreates a new SecurityMetadataSecurityMetadata(String signature, List<Vulnerability> vulnerabilities, List<Compliance> compliance) full parameter constructor.SecurityMetadata(SecurityMetadata other) Copy Constructor. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdd a org.ivoa.dm.tool.Compliance to the composition.voidAdd a org.ivoa.dm.tool.Vulnerability to the composition.static SecurityMetadatacreate a SecurityMetadata in functional builder style.voiddelete(jakarta.persistence.EntityManager em) voidReturns compliance composition as an immutable list.getId()Returns signature Attribute.Returns vulnerabilities composition as an immutable list.voidRemove a org.ivoa.dm.tool.Compliance from the composition.voidRemove a org.ivoa.dm.tool.Vulnerability from the composition.voidupdate a org.ivoa.dm.tool.Compliance in the composition.voidupdate a org.ivoa.dm.tool.Vulnerability in the composition.voidsetCompliance(List<Compliance> pCompliance) Defines whole compliance composition.voidsetSignature(String pSignature) Set signature Attribute.voidsetVulnerabilities(List<Vulnerability> pVulnerabilities) Defines whole vulnerabilities composition.voidupdateUsing(SecurityMetadata other) Update this object with the content of the given object.withSignature(String pSignature) fluent setter for signature Attribute.
-
Field Details
-
_id
inserted database key -
signature
@VoDml(id="tool:SecurityMetadata.signature", role=attribute, type="ivoa:string", typeRole=primitiveType) protected String signaturea digest style signature. : Attribute signature type ivoa:string : multiplicity 1 -
vulnerabilities
@VoDml(id="tool:SecurityMetadata.vulnerabilities", role=composition, type="tool:Vulnerability", typeRole=objectType) protected List<Vulnerability> vulnerabilitiesKnown vulnerabilities in the image. composition vulnerabilities : ( Multiplicity : 0..* ) -
compliance
@VoDml(id="tool:SecurityMetadata.compliance", role=composition, type="tool:Compliance", typeRole=objectType) protected List<Compliance> complianceCompliance information for the image. composition compliance : ( Multiplicity : 0..* )
-
-
Constructor Details
-
SecurityMetadata
public SecurityMetadata()Creates a new SecurityMetadata -
SecurityMetadata
public SecurityMetadata(String signature, List<Vulnerability> vulnerabilities, List<Compliance> compliance) full parameter constructor.- Parameters:
signature- a digest style signature.vulnerabilities- Known vulnerabilities in the image.compliance- Compliance information for the image.
-
SecurityMetadata
Copy Constructor. Note that references will remain as is rather than be copied.- Parameters:
other- the object to be copied.
-
-
Method Details
-
getId
- Specified by:
getIdin interfaceorg.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>- Returns:
- the id
-
updateUsing
Update this object with the content of the given object. Note that references will remain as is rather than be copied.- Parameters:
other- the object to be copied.
-
getSignature
Returns signature Attribute.- Returns:
- signature Attribute
-
setSignature
Set signature Attribute.- Parameters:
pSignature- value to set
-
withSignature
fluent setter for signature Attribute.- Parameters:
pSignature- value to set- Returns:
- SecurityMetadata
-
getVulnerabilities
Returns vulnerabilities composition as an immutable list.- Returns:
- vulnerabilities composition.
-
setVulnerabilities
Defines whole vulnerabilities composition.- Parameters:
pVulnerabilities- composition to set.
-
addToVulnerabilities
Add a org.ivoa.dm.tool.Vulnerability to the composition.- Parameters:
p- org.ivoa.dm.tool.Vulnerability to add
-
removeFromVulnerabilities
Remove a org.ivoa.dm.tool.Vulnerability from the composition.- Parameters:
p- org.ivoa.dm.tool.Vulnerability to remove
-
replaceInVulnerabilities
update a org.ivoa.dm.tool.Vulnerability in the composition.- Parameters:
_p- org.ivoa.dm.tool.Vulnerability to update the match is done via the database key
-
getCompliance
Returns compliance composition as an immutable list.- Returns:
- compliance composition.
-
setCompliance
Defines whole compliance composition.- Parameters:
pCompliance- composition to set.
-
addToCompliance
Add a org.ivoa.dm.tool.Compliance to the composition.- Parameters:
p- org.ivoa.dm.tool.Compliance to add
-
removeFromCompliance
Remove a org.ivoa.dm.tool.Compliance from the composition.- Parameters:
p- org.ivoa.dm.tool.Compliance to remove
-
replaceInCompliance
update a org.ivoa.dm.tool.Compliance in the composition.- Parameters:
_p- org.ivoa.dm.tool.Compliance to update the match is done via the database key
-
createSecurityMetadata
public static SecurityMetadata createSecurityMetadata(Consumer<SecurityMetadata.SecurityMetadataBuilder> f) create a SecurityMetadata in functional builder style.- Parameters:
f- the functional builder.- Returns:
- an object initialized from the builder.
-
forceLoad
public void forceLoad()- Specified by:
forceLoadin interfaceorg.ivoa.vodml.jpa.JPAManipulations
-
delete
public void delete(jakarta.persistence.EntityManager em) - Specified by:
deletein interfaceorg.ivoa.vodml.jpa.JPAManipulationsForObjectType<Long>
-