Class Sighting.Builder

java.lang.Object
security.whisper.javastix.sro.objects.Sighting.Builder
Enclosing class:
Sighting

@NotThreadSafe public static final class Sighting.Builder extends Object
Builds instances of type Sighting. 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 Details

    • from

      @CanIgnoreReturnValue public final Sighting.Builder from(BundleableObject instance)
      Fill a builder with attribute values from the provided security.whisper.javastix.bundle.BundleableObject instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • from

      @CanIgnoreReturnValue public final Sighting.Builder from(StixCommonProperties instance)
      Fill a builder with attribute values from the provided security.whisper.javastix.common.StixCommonProperties instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • from

      @CanIgnoreReturnValue public final Sighting.Builder from(StixRevoked instance)
      Fill a builder with attribute values from the provided security.whisper.javastix.common.StixRevoked instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • from

      @CanIgnoreReturnValue public final Sighting.Builder from(StixCustomProperties instance)
      Fill a builder with attribute values from the provided security.whisper.javastix.common.StixCustomProperties instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • from

      @CanIgnoreReturnValue public final Sighting.Builder from(SightingSro instance)
      Fill a builder with attribute values from the provided security.whisper.javastix.sro.objects.SightingSro instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • from

      @CanIgnoreReturnValue public final Sighting.Builder from(StixLabels instance)
      Fill a builder with attribute values from the provided security.whisper.javastix.common.StixLabels instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • from

      @CanIgnoreReturnValue public final Sighting.Builder from(StixModified instance)
      Fill a builder with attribute values from the provided security.whisper.javastix.common.StixModified instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • firstSeen

      @CanIgnoreReturnValue public final Sighting.Builder firstSeen(StixInstant firstSeen)
      Initializes the optional value firstSeen to firstSeen.
      Parameters:
      firstSeen - The value for firstSeen
      Returns:
      this builder for chained invocation
    • firstSeen

      @CanIgnoreReturnValue @JsonPropertyDescription("The beginning of the time window during which the SDO referenced by the sighting_of_ref property was sighted.") public final Sighting.Builder firstSeen(Optional<? extends StixInstant> firstSeen)
      Initializes the optional value firstSeen to firstSeen.
      Parameters:
      firstSeen - The value for firstSeen
      Returns:
      this builder for use in a chained invocation
    • lastSeen

      @CanIgnoreReturnValue public final Sighting.Builder lastSeen(StixInstant lastSeen)
      Initializes the optional value lastSeen to lastSeen.
      Parameters:
      lastSeen - The value for lastSeen
      Returns:
      this builder for chained invocation
    • lastSeen

      @CanIgnoreReturnValue @JsonPropertyDescription("The end of the time window during which the SDO referenced by the sighting_of_ref property was sighted.") public final Sighting.Builder lastSeen(Optional<? extends StixInstant> lastSeen)
      Initializes the optional value lastSeen to lastSeen.
      Parameters:
      lastSeen - The value for lastSeen
      Returns:
      this builder for use in a chained invocation
    • count

      @CanIgnoreReturnValue public final Sighting.Builder count(int count)
      Initializes the optional value count to count.
      Parameters:
      count - The value for count
      Returns:
      this builder for chained invocation
    • count

      @CanIgnoreReturnValue @JsonPropertyDescription("This is an integer between 0 and 999,999,999 inclusive and represents the number of times the object was sighted.") public final Sighting.Builder count(Optional<Integer> count)
      Initializes the optional value count to count.
      Parameters:
      count - The value for count
      Returns:
      this builder for use in a chained invocation
    • sightingOfRef

      @CanIgnoreReturnValue @JsonPropertyDescription("An ID reference to the object that has been sighted.") public final Sighting.Builder sightingOfRef(DomainObject sightingOfRef)
      Initializes the value for the sightingOfRef attribute.
      Parameters:
      sightingOfRef - The value for sightingOfRef (can be null)
      Returns:
      this builder for use in a chained invocation
    • addObservedDataRef

      @CanIgnoreReturnValue public final Sighting.Builder addObservedDataRef(@Nullable ObservedDataSdo element)
      Adds one element to observedDataRefs set.
      Parameters:
      element - A observedDataRefs element
      Returns:
      this builder for use in a chained invocation
    • addObservedDataRefs

      @CanIgnoreReturnValue public final Sighting.Builder addObservedDataRefs(ObservedDataSdo... elements)
      Adds elements to observedDataRefs set.
      Parameters:
      elements - An array of observedDataRefs elements
      Returns:
      this builder for use in a chained invocation
    • observedDataRefs

      @CanIgnoreReturnValue @JsonPropertyDescription("A list of ID references to the Observed Data objects that contain the raw cyber data for this Sighting.") public final Sighting.Builder observedDataRefs(Iterable<? extends ObservedDataSdo> elements)
      Sets or replaces all elements for observedDataRefs set.
      Parameters:
      elements - An iterable of observedDataRefs elements
      Returns:
      this builder for use in a chained invocation
    • addAllObservedDataRefs

      @CanIgnoreReturnValue public final Sighting.Builder addAllObservedDataRefs(Iterable<? extends ObservedDataSdo> elements)
      Adds elements to observedDataRefs set.
      Parameters:
      elements - An iterable of observedDataRefs elements
      Returns:
      this builder for use in a chained invocation
    • addWhereSightedRef

      @CanIgnoreReturnValue public final Sighting.Builder addWhereSightedRef(@Nullable IdentitySdo element)
      Adds one element to whereSightedRefs set.
      Parameters:
      element - A whereSightedRefs element
      Returns:
      this builder for use in a chained invocation
    • addWhereSightedRefs

      @CanIgnoreReturnValue public final Sighting.Builder addWhereSightedRefs(IdentitySdo... elements)
      Adds elements to whereSightedRefs set.
      Parameters:
      elements - An array of whereSightedRefs elements
      Returns:
      this builder for use in a chained invocation
    • whereSightedRefs

      @CanIgnoreReturnValue @JsonPropertyDescription("The ID of the Victim Target objects of the entities that saw the sighting.") public final Sighting.Builder whereSightedRefs(Iterable<? extends IdentitySdo> elements)
      Sets or replaces all elements for whereSightedRefs set.
      Parameters:
      elements - An iterable of whereSightedRefs elements
      Returns:
      this builder for use in a chained invocation
    • addAllWhereSightedRefs

      @CanIgnoreReturnValue public final Sighting.Builder addAllWhereSightedRefs(Iterable<? extends IdentitySdo> elements)
      Adds elements to whereSightedRefs set.
      Parameters:
      elements - An iterable of whereSightedRefs elements
      Returns:
      this builder for use in a chained invocation
    • isSummary

      @CanIgnoreReturnValue @JsonPropertyDescription("The summary property indicates whether the Sighting should be considered summary data.") public final Sighting.Builder isSummary(StixBoolean isSummary)
      Initializes the value for the isSummary attribute.

      If not set, this attribute will have a default value as returned by the initializer of isSummary.

      Parameters:
      isSummary - The value for isSummary
      Returns:
      this builder for use in a chained invocation
    • hydrated

      @CanIgnoreReturnValue public final Sighting.Builder hydrated(boolean hydrated)
      Initializes the value for the hydrated attribute.

      If not set, this attribute will have a default value as returned by the initializer of hydrated.

      Parameters:
      hydrated - The value for hydrated
      Returns:
      this builder 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 Sighting.Builder type(String type)
      Initializes the value for the type attribute.
      Parameters:
      type - The value for type (can be null)
      Returns:
      this builder 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 Sighting.Builder id(String id)
      Initializes the value for the id attribute.
      Parameters:
      id - The value for id (can be null)
      Returns:
      this builder for use in a chained invocation
    • createdByRef

      @CanIgnoreReturnValue public final Sighting.Builder createdByRef(IdentitySdo createdByRef)
      Initializes the optional value createdByRef to createdByRef.
      Parameters:
      createdByRef - The value for createdByRef
      Returns:
      this builder 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 Sighting.Builder createdByRef(Optional<? extends IdentitySdo> createdByRef)
      Initializes the optional value createdByRef to createdByRef.
      Parameters:
      createdByRef - The value for createdByRef
      Returns:
      this builder 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 Sighting.Builder created(StixInstant created)
      Initializes the value for the created attribute.

      If not set, this attribute will have a default value as returned by the initializer of created.

      Parameters:
      created - The value for created
      Returns:
      this builder for use in a chained invocation
    • lang

      @CanIgnoreReturnValue public final Sighting.Builder lang(String lang)
      Initializes the optional value lang to lang.
      Parameters:
      lang - The value for lang
      Returns:
      this builder for chained invocation
    • lang

      @CanIgnoreReturnValue @JsonPropertyDescription("Identifies the language of the text content in this object using ISO 639-2 language codes.") public final Sighting.Builder lang(Optional<String> lang)
      Initializes the optional value lang to lang.
      Parameters:
      lang - The value for lang
      Returns:
      this builder for use in a chained invocation
    • addExternalReference

      @CanIgnoreReturnValue public final Sighting.Builder addExternalReference(@Nullable ExternalReferenceType element)
      Adds one element to externalReferences set.
      Parameters:
      element - A externalReferences element
      Returns:
      this builder for use in a chained invocation
    • addExternalReferences

      @CanIgnoreReturnValue public final Sighting.Builder addExternalReferences(ExternalReferenceType... elements)
      Adds elements to externalReferences set.
      Parameters:
      elements - An array of externalReferences elements
      Returns:
      this builder for use in a chained invocation
    • externalReferences

      @CanIgnoreReturnValue @JsonPropertyDescription("A list of external references which refers to non-STIX information.") public final Sighting.Builder externalReferences(Iterable<? extends ExternalReferenceType> elements)
      Sets or replaces all elements for externalReferences set.
      Parameters:
      elements - An iterable of externalReferences elements
      Returns:
      this builder for use in a chained invocation
    • addAllExternalReferences

      @CanIgnoreReturnValue public final Sighting.Builder addAllExternalReferences(Iterable<? extends ExternalReferenceType> elements)
      Adds elements to externalReferences set.
      Parameters:
      elements - An iterable of externalReferences elements
      Returns:
      this builder for use in a chained invocation
    • addObjectMarkingRef

      @CanIgnoreReturnValue public final Sighting.Builder addObjectMarkingRef(@Nullable MarkingDefinitionDm element)
      Adds one element to objectMarkingRefs set.
      Parameters:
      element - A objectMarkingRefs element
      Returns:
      this builder for use in a chained invocation
    • addObjectMarkingRefs

      @CanIgnoreReturnValue public final Sighting.Builder addObjectMarkingRefs(MarkingDefinitionDm... elements)
      Adds elements to objectMarkingRefs set.
      Parameters:
      elements - An array of objectMarkingRefs elements
      Returns:
      this builder for use in a chained invocation
    • objectMarkingRefs

      @CanIgnoreReturnValue @JsonPropertyDescription("The list of marking-definition objects to be applied to this object.") public final Sighting.Builder objectMarkingRefs(Iterable<? extends MarkingDefinitionDm> elements)
      Sets or replaces all elements for objectMarkingRefs set.
      Parameters:
      elements - An iterable of objectMarkingRefs elements
      Returns:
      this builder for use in a chained invocation
    • addAllObjectMarkingRefs

      @CanIgnoreReturnValue public final Sighting.Builder addAllObjectMarkingRefs(Iterable<? extends MarkingDefinitionDm> elements)
      Adds elements to objectMarkingRefs set.
      Parameters:
      elements - An iterable of objectMarkingRefs elements
      Returns:
      this builder for use in a chained invocation
    • addGranularMarking

      @CanIgnoreReturnValue public final Sighting.Builder addGranularMarking(@Nullable GranularMarkingDm element)
      Adds one element to granularMarkings set.
      Parameters:
      element - A granularMarkings element
      Returns:
      this builder for use in a chained invocation
    • addGranularMarkings

      @CanIgnoreReturnValue public final Sighting.Builder addGranularMarkings(GranularMarkingDm... elements)
      Adds elements to granularMarkings set.
      Parameters:
      elements - An array of granularMarkings elements
      Returns:
      this builder for use in a chained invocation
    • granularMarkings

      @CanIgnoreReturnValue @JsonPropertyDescription("The set of granular markings that apply to this object.") public final Sighting.Builder granularMarkings(Iterable<? extends GranularMarkingDm> elements)
      Sets or replaces all elements for granularMarkings set.
      Parameters:
      elements - An iterable of granularMarkings elements
      Returns:
      this builder for use in a chained invocation
    • addAllGranularMarkings

      @CanIgnoreReturnValue public final Sighting.Builder addAllGranularMarkings(Iterable<? extends GranularMarkingDm> elements)
      Adds elements to granularMarkings set.
      Parameters:
      elements - An iterable of granularMarkings elements
      Returns:
      this builder for use in a chained invocation
    • putCustomProperty

      @CanIgnoreReturnValue public final Sighting.Builder putCustomProperty(String key, Object value)
      Put one entry to the customProperties map.
      Parameters:
      key - The key in the customProperties map
      value - The associated value in the customProperties map
      Returns:
      this builder for use in a chained invocation
    • putCustomProperty

      @CanIgnoreReturnValue public final Sighting.Builder putCustomProperty(Map.Entry<String,? extends Object> entry)
      Put one entry to the customProperties map. Nulls are not permitted
      Parameters:
      entry - The key and value entry
      Returns:
      this builder for use in a chained invocation
    • customProperties

      @CanIgnoreReturnValue public final Sighting.Builder customProperties(Map<String,? extends Object> entries)
      Sets or replaces all mappings from the specified map as entries for the customProperties map. Nulls are not permitted
      Parameters:
      entries - The entries that will be added to the customProperties map
      Returns:
      this builder for use in a chained invocation
    • putAllCustomProperties

      @CanIgnoreReturnValue public final Sighting.Builder putAllCustomProperties(Map<String,? extends Object> entries)
      Put all mappings from the specified map as entries to customProperties map. Nulls are not permitted
      Parameters:
      entries - The entries that will be added to the customProperties map
      Returns:
      this builder for use in a chained invocation
    • addLabel

      @CanIgnoreReturnValue public final Sighting.Builder addLabel(@Nullable String element)
      Adds one element to labels set.
      Parameters:
      element - A labels element
      Returns:
      this builder for use in a chained invocation
    • addLabels

      @CanIgnoreReturnValue public final Sighting.Builder addLabels(String... elements)
      Adds elements to labels set.
      Parameters:
      elements - An array of labels elements
      Returns:
      this builder for use in a chained invocation
    • labels

      @CanIgnoreReturnValue @JsonPropertyDescription("The labels property specifies a set of classifications.") public final Sighting.Builder labels(Iterable<String> elements)
      Sets or replaces all elements for labels set.
      Parameters:
      elements - An iterable of labels elements
      Returns:
      this builder for use in a chained invocation
    • addAllLabels

      @CanIgnoreReturnValue public final Sighting.Builder addAllLabels(Iterable<String> elements)
      Adds elements to labels set.
      Parameters:
      elements - An iterable of labels elements
      Returns:
      this builder 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 Sighting.Builder modified(StixInstant modified)
      Initializes the value for the modified attribute.

      If not set, this attribute will have a default value as returned by the initializer of modified.

      Parameters:
      modified - The value for modified
      Returns:
      this builder for use in a chained invocation
    • revoked

      @CanIgnoreReturnValue @JsonPropertyDescription("The revoked property indicates whether the object has been revoked.") public final Sighting.Builder revoked(StixBoolean revoked)
      Initializes the value for the revoked attribute.

      If not set, this attribute will have a default value as returned by the initializer of revoked.

      Parameters:
      revoked - The value for revoked
      Returns:
      this builder for use in a chained invocation
    • build

      public Sighting build()
      Builds a new Sighting.
      Returns:
      An immutable instance of Sighting
      Throws:
      IllegalStateException - if any required attributes are missing