Class AttackPattern.Builder
java.lang.Object
security.whisper.javastix.sdo.objects.AttackPattern.Builder
- Enclosing class:
AttackPattern
Builds instances of type
AttackPattern.
Initialize attributes and then invoke the build() method to create an
immutable instance.
Builder is not thread-safe and generally should not be stored in a field or collection,
but instead used immediately to create instances.
-
Method Summary
Modifier and TypeMethodDescriptionfinal AttackPattern.BuilderaddAllExternalReferences(Iterable<? extends ExternalReferenceType> elements) Adds elements toexternalReferencesset.final AttackPattern.BuilderaddAllGranularMarkings(Iterable<? extends GranularMarkingDm> elements) Adds elements togranularMarkingsset.final AttackPattern.BuilderaddAllKillChainPhases(Iterable<? extends KillChainPhaseType> elements) Adds elements tokillChainPhasesset.final AttackPattern.BuilderaddAllLabels(Iterable<String> elements) Adds elements tolabelsset.final AttackPattern.BuilderaddAllObjectMarkingRefs(Iterable<? extends MarkingDefinitionDm> elements) Adds elements toobjectMarkingRefsset.final AttackPattern.BuilderaddAllRelationships(Iterable<? extends RelationshipSro> elements) Adds elements torelationshipsset.final AttackPattern.BuilderAdds one element toexternalReferencesset.final AttackPattern.BuilderaddExternalReferences(ExternalReferenceType... elements) Adds elements toexternalReferencesset.final AttackPattern.BuilderaddGranularMarking(GranularMarkingDm element) Adds one element togranularMarkingsset.final AttackPattern.BuilderaddGranularMarkings(GranularMarkingDm... elements) Adds elements togranularMarkingsset.final AttackPattern.BuilderaddKillChainPhase(KillChainPhaseType element) Adds one element tokillChainPhasesset.final AttackPattern.BuilderaddKillChainPhases(KillChainPhaseType... elements) Adds elements tokillChainPhasesset.final AttackPattern.BuilderAdds one element tolabelsset.final AttackPattern.BuilderAdds elements tolabelsset.final AttackPattern.BuilderaddObjectMarkingRef(MarkingDefinitionDm element) Adds one element toobjectMarkingRefsset.final AttackPattern.BuilderaddObjectMarkingRefs(MarkingDefinitionDm... elements) Adds elements toobjectMarkingRefsset.final AttackPattern.BuilderaddRelationship(RelationshipSro element) Adds one element torelationshipsset.final AttackPattern.BuilderaddRelationships(RelationshipSro... elements) Adds elements torelationshipsset.build()Builds a newAttackPattern.final AttackPattern.Buildercreated(StixInstant created) Initializes the value for thecreatedattribute.final AttackPattern.BuildercreatedByRef(Optional<? extends IdentitySdo> createdByRef) Initializes the optional valuecreatedByRefto createdByRef.final AttackPattern.BuildercreatedByRef(IdentitySdo createdByRef) Initializes the optional valuecreatedByRefto createdByRef.final AttackPattern.BuildercustomProperties(Map<String, ? extends Object> entries) Sets or replaces all mappings from the specified map as entries for thecustomPropertiesmap.final AttackPattern.Builderdescription(String description) Initializes the optional valuedescriptionto description.final AttackPattern.Builderdescription(Optional<String> description) Initializes the optional valuedescriptionto description.final AttackPattern.BuilderexternalReferences(Iterable<? extends ExternalReferenceType> elements) Sets or replaces all elements forexternalReferencesset.final AttackPattern.Builderfrom(BundleableObject instance) Fill a builder with attribute values from the providedsecurity.whisper.javastix.bundle.BundleableObjectinstance.final AttackPattern.Builderfrom(StixCommonProperties instance) Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixCommonPropertiesinstance.final AttackPattern.Builderfrom(StixCustomProperties instance) Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixCustomPropertiesinstance.final AttackPattern.Builderfrom(StixLabels instance) Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixLabelsinstance.final AttackPattern.Builderfrom(StixModified instance) Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixModifiedinstance.final AttackPattern.Builderfrom(StixRevoked instance) Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixRevokedinstance.final AttackPattern.Builderfrom(DomainObject instance) Fill a builder with attribute values from the providedsecurity.whisper.javastix.sdo.DomainObjectinstance.final AttackPattern.Builderfrom(AttackPatternSdo instance) Fill a builder with attribute values from the providedsecurity.whisper.javastix.sdo.objects.AttackPatternSdoinstance.final AttackPattern.BuildergranularMarkings(Iterable<? extends GranularMarkingDm> elements) Sets or replaces all elements forgranularMarkingsset.final AttackPattern.Builderhydrated(boolean hydrated) Initializes the value for thehydratedattribute.final AttackPattern.BuilderInitializes the value for theidattribute.final AttackPattern.BuilderkillChainPhases(Iterable<? extends KillChainPhaseType> elements) Sets or replaces all elements forkillChainPhasesset.final AttackPattern.BuilderSets or replaces all elements forlabelsset.final AttackPattern.BuilderInitializes the optional valuelangto lang.final AttackPattern.BuilderInitializes the optional valuelangto lang.final AttackPattern.Buildermodified(StixInstant modified) Initializes the value for themodifiedattribute.final AttackPattern.BuilderInitializes the value for thenameattribute.final AttackPattern.BuilderobjectMarkingRefs(Iterable<? extends MarkingDefinitionDm> elements) Sets or replaces all elements forobjectMarkingRefsset.final AttackPattern.BuilderputAllCustomProperties(Map<String, ? extends Object> entries) Put all mappings from the specified map as entries tocustomPropertiesmap.final AttackPattern.BuilderputCustomProperty(String key, Object value) Put one entry to thecustomPropertiesmap.final AttackPattern.BuilderputCustomProperty(Map.Entry<String, ? extends Object> entry) Put one entry to thecustomPropertiesmap.final AttackPattern.Builderrelationships(Iterable<? extends RelationshipSro> elements) Sets or replaces all elements forrelationshipsset.final AttackPattern.Builderrevoked(StixBoolean revoked) Initializes the value for therevokedattribute.final AttackPattern.BuilderInitializes the value for thetypeattribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedsecurity.whisper.javastix.sdo.objects.AttackPatternSdoinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedsecurity.whisper.javastix.bundle.BundleableObjectinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixCommonPropertiesinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixRevokedinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixCustomPropertiesinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixLabelsinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedsecurity.whisper.javastix.common.StixModifiedinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
Fill a builder with attribute values from the providedsecurity.whisper.javastix.sdo.DomainObjectinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
name
@CanIgnoreReturnValue @JsonPropertyDescription("The name used to identify the Attack Pattern.") public final AttackPattern.Builder name(String name) Initializes the value for thenameattribute.- Parameters:
name- The value for name (can benull)- Returns:
thisbuilder for use in a chained invocation
-
description
Initializes the optional valuedescriptionto description.- Parameters:
description- The value for description- Returns:
thisbuilder for chained invocation
-
description
@CanIgnoreReturnValue @JsonPropertyDescription("A description that provides more details and context about the Attack Pattern, potentially including its purpose and its key characteristics.") public final AttackPattern.Builder description(Optional<String> description) Initializes the optional valuedescriptionto description.- Parameters:
description- The value for description- Returns:
thisbuilder for use in a chained invocation
-
addKillChainPhase
@CanIgnoreReturnValue public final AttackPattern.Builder addKillChainPhase(@Nullable KillChainPhaseType element) Adds one element tokillChainPhasesset.- Parameters:
element- A killChainPhases element- Returns:
thisbuilder for use in a chained invocation
-
addKillChainPhases
@CanIgnoreReturnValue public final AttackPattern.Builder addKillChainPhases(KillChainPhaseType... elements) Adds elements tokillChainPhasesset.- Parameters:
elements- An array of killChainPhases elements- Returns:
thisbuilder for use in a chained invocation
-
killChainPhases
@CanIgnoreReturnValue @JsonPropertyDescription("The list of kill chain phases for which this attack pattern is used.") public final AttackPattern.Builder killChainPhases(Iterable<? extends KillChainPhaseType> elements) Sets or replaces all elements forkillChainPhasesset.- Parameters:
elements- An iterable of killChainPhases elements- Returns:
thisbuilder for use in a chained invocation
-
addAllKillChainPhases
@CanIgnoreReturnValue public final AttackPattern.Builder addAllKillChainPhases(Iterable<? extends KillChainPhaseType> elements) Adds elements tokillChainPhasesset.- Parameters:
elements- An iterable of killChainPhases elements- Returns:
thisbuilder for use in a chained invocation
-
addRelationship
@CanIgnoreReturnValue public final AttackPattern.Builder addRelationship(@Nullable RelationshipSro element) Adds one element torelationshipsset.- Parameters:
element- A relationships element- Returns:
thisbuilder for use in a chained invocation
-
addRelationships
@CanIgnoreReturnValue public final AttackPattern.Builder addRelationships(RelationshipSro... elements) Adds elements torelationshipsset.- Parameters:
elements- An array of relationships elements- Returns:
thisbuilder for use in a chained invocation
-
relationships
@CanIgnoreReturnValue public final AttackPattern.Builder relationships(Iterable<? extends RelationshipSro> elements) Sets or replaces all elements forrelationshipsset.- Parameters:
elements- An iterable of relationships elements- Returns:
thisbuilder for use in a chained invocation
-
addAllRelationships
@CanIgnoreReturnValue public final AttackPattern.Builder addAllRelationships(Iterable<? extends RelationshipSro> elements) Adds elements torelationshipsset.- Parameters:
elements- An iterable of relationships elements- Returns:
thisbuilder for use in a chained invocation
-
hydrated
Initializes the value for thehydratedattribute.If not set, this attribute will have a default value as returned by the initializer of
hydrated.- Parameters:
hydrated- The value for hydrated- Returns:
thisbuilder for use in a chained invocation
-
type
@CanIgnoreReturnValue @JsonPropertyDescription("The type property identifies the type of STIX Object (SDO, Relationship Object, etc). The value of the type field MUST be one of the types defined by a STIX Object (e.g., indicator).") public final AttackPattern.Builder type(String type) Initializes the value for thetypeattribute.- Parameters:
type- The value for type (can benull)- Returns:
thisbuilder for use in a chained invocation
-
id
@CanIgnoreReturnValue @JsonPropertyDescription("Represents identifiers across the CTI specifications. The format consists of the name of the top-level object being identified, followed by two dashes (--), followed by a UUIDv4.") public final AttackPattern.Builder id(String id) Initializes the value for theidattribute.- Parameters:
id- The value for id (can benull)- Returns:
thisbuilder for use in a chained invocation
-
createdByRef
Initializes the optional valuecreatedByRefto createdByRef.- Parameters:
createdByRef- The value for createdByRef- Returns:
thisbuilder for chained invocation
-
createdByRef
@CanIgnoreReturnValue @JsonPropertyDescription("Represents identifiers across the CTI specifications. The format consists of the name of the top-level object being identified, followed by two dashes (--), followed by a UUIDv4.") public final AttackPattern.Builder createdByRef(Optional<? extends IdentitySdo> createdByRef) Initializes the optional valuecreatedByRefto createdByRef.- Parameters:
createdByRef- The value for createdByRef- Returns:
thisbuilder for use in a chained invocation
-
created
@CanIgnoreReturnValue @JsonPropertyDescription("The created property represents the time at which the first version of this object was created. The timstamp value MUST be precise to the nearest millisecond.") public final AttackPattern.Builder created(StixInstant created) Initializes the value for thecreatedattribute.If not set, this attribute will have a default value as returned by the initializer of
created.- Parameters:
created- The value for created- Returns:
thisbuilder for use in a chained invocation
-
lang
Initializes the optional valuelangto lang.- Parameters:
lang- The value for lang- Returns:
thisbuilder for chained invocation
-
lang
@CanIgnoreReturnValue @JsonPropertyDescription("Identifies the language of the text content in this object using ISO 639-2 language codes.") public final AttackPattern.Builder lang(Optional<String> lang) Initializes the optional valuelangto lang.- Parameters:
lang- The value for lang- Returns:
thisbuilder for use in a chained invocation
-
addExternalReference
@CanIgnoreReturnValue public final AttackPattern.Builder addExternalReference(@Nullable ExternalReferenceType element) Adds one element toexternalReferencesset.- Parameters:
element- A externalReferences element- Returns:
thisbuilder for use in a chained invocation
-
addExternalReferences
@CanIgnoreReturnValue public final AttackPattern.Builder addExternalReferences(ExternalReferenceType... elements) Adds elements toexternalReferencesset.- Parameters:
elements- An array of externalReferences elements- Returns:
thisbuilder for use in a chained invocation
-
externalReferences
@CanIgnoreReturnValue @JsonPropertyDescription("A list of external references which refers to non-STIX information.") public final AttackPattern.Builder externalReferences(Iterable<? extends ExternalReferenceType> elements) Sets or replaces all elements forexternalReferencesset.- Parameters:
elements- An iterable of externalReferences elements- Returns:
thisbuilder for use in a chained invocation
-
addAllExternalReferences
@CanIgnoreReturnValue public final AttackPattern.Builder addAllExternalReferences(Iterable<? extends ExternalReferenceType> elements) Adds elements toexternalReferencesset.- Parameters:
elements- An iterable of externalReferences elements- Returns:
thisbuilder for use in a chained invocation
-
addObjectMarkingRef
@CanIgnoreReturnValue public final AttackPattern.Builder addObjectMarkingRef(@Nullable MarkingDefinitionDm element) Adds one element toobjectMarkingRefsset.- Parameters:
element- A objectMarkingRefs element- Returns:
thisbuilder for use in a chained invocation
-
addObjectMarkingRefs
@CanIgnoreReturnValue public final AttackPattern.Builder addObjectMarkingRefs(MarkingDefinitionDm... elements) Adds elements toobjectMarkingRefsset.- Parameters:
elements- An array of objectMarkingRefs elements- Returns:
thisbuilder for use in a chained invocation
-
objectMarkingRefs
@CanIgnoreReturnValue @JsonPropertyDescription("The list of marking-definition objects to be applied to this object.") public final AttackPattern.Builder objectMarkingRefs(Iterable<? extends MarkingDefinitionDm> elements) Sets or replaces all elements forobjectMarkingRefsset.- Parameters:
elements- An iterable of objectMarkingRefs elements- Returns:
thisbuilder for use in a chained invocation
-
addAllObjectMarkingRefs
@CanIgnoreReturnValue public final AttackPattern.Builder addAllObjectMarkingRefs(Iterable<? extends MarkingDefinitionDm> elements) Adds elements toobjectMarkingRefsset.- Parameters:
elements- An iterable of objectMarkingRefs elements- Returns:
thisbuilder for use in a chained invocation
-
addGranularMarking
@CanIgnoreReturnValue public final AttackPattern.Builder addGranularMarking(@Nullable GranularMarkingDm element) Adds one element togranularMarkingsset.- Parameters:
element- A granularMarkings element- Returns:
thisbuilder for use in a chained invocation
-
addGranularMarkings
@CanIgnoreReturnValue public final AttackPattern.Builder addGranularMarkings(GranularMarkingDm... elements) Adds elements togranularMarkingsset.- Parameters:
elements- An array of granularMarkings elements- Returns:
thisbuilder for use in a chained invocation
-
granularMarkings
@CanIgnoreReturnValue @JsonPropertyDescription("The set of granular markings that apply to this object.") public final AttackPattern.Builder granularMarkings(Iterable<? extends GranularMarkingDm> elements) Sets or replaces all elements forgranularMarkingsset.- Parameters:
elements- An iterable of granularMarkings elements- Returns:
thisbuilder for use in a chained invocation
-
addAllGranularMarkings
@CanIgnoreReturnValue public final AttackPattern.Builder addAllGranularMarkings(Iterable<? extends GranularMarkingDm> elements) Adds elements togranularMarkingsset.- Parameters:
elements- An iterable of granularMarkings elements- Returns:
thisbuilder for use in a chained invocation
-
putCustomProperty
@CanIgnoreReturnValue public final AttackPattern.Builder putCustomProperty(String key, Object value) Put one entry to thecustomPropertiesmap.- Parameters:
key- The key in the customProperties mapvalue- The associated value in the customProperties map- Returns:
thisbuilder for use in a chained invocation
-
putCustomProperty
@CanIgnoreReturnValue public final AttackPattern.Builder putCustomProperty(Map.Entry<String, ? extends Object> entry) Put one entry to thecustomPropertiesmap. Nulls are not permitted- Parameters:
entry- The key and value entry- Returns:
thisbuilder for use in a chained invocation
-
customProperties
@CanIgnoreReturnValue public final AttackPattern.Builder customProperties(Map<String, ? extends Object> entries) Sets or replaces all mappings from the specified map as entries for thecustomPropertiesmap. Nulls are not permitted- Parameters:
entries- The entries that will be added to the customProperties map- Returns:
thisbuilder for use in a chained invocation
-
putAllCustomProperties
@CanIgnoreReturnValue public final AttackPattern.Builder putAllCustomProperties(Map<String, ? extends Object> entries) Put all mappings from the specified map as entries tocustomPropertiesmap. Nulls are not permitted- Parameters:
entries- The entries that will be added to the customProperties map- Returns:
thisbuilder for use in a chained invocation
-
addLabel
Adds one element tolabelsset.- Parameters:
element- A labels element- Returns:
thisbuilder for use in a chained invocation
-
addLabels
Adds elements tolabelsset.- Parameters:
elements- An array of labels elements- Returns:
thisbuilder for use in a chained invocation
-
labels
@CanIgnoreReturnValue @JsonPropertyDescription("The labels property specifies a set of classifications.") public final AttackPattern.Builder labels(Iterable<String> elements) Sets or replaces all elements forlabelsset.- Parameters:
elements- An iterable of labels elements- Returns:
thisbuilder for use in a chained invocation
-
addAllLabels
Adds elements tolabelsset.- Parameters:
elements- An iterable of labels elements- Returns:
thisbuilder for use in a chained invocation
-
modified
@CanIgnoreReturnValue @JsonPropertyDescription("The modified property represents the time that this particular version of the object was created. The timstamp value MUST be precise to the nearest millisecond.") public final AttackPattern.Builder modified(StixInstant modified) Initializes the value for themodifiedattribute.If not set, this attribute will have a default value as returned by the initializer of
modified.- Parameters:
modified- The value for modified- Returns:
thisbuilder for use in a chained invocation
-
revoked
@CanIgnoreReturnValue @JsonPropertyDescription("The revoked property indicates whether the object has been revoked.") public final AttackPattern.Builder revoked(StixBoolean revoked) Initializes the value for therevokedattribute.If not set, this attribute will have a default value as returned by the initializer of
revoked.- Parameters:
revoked- The value for revoked- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newAttackPattern.- Returns:
- An immutable instance of AttackPattern
- Throws:
IllegalStateException- if any required attributes are missing
-