Class GranularMarking.Builder

java.lang.Object
security.whisper.javastix.datamarkings.GranularMarking.Builder
Enclosing class:
GranularMarking

@NotThreadSafe public static final class GranularMarking.Builder extends Object
Builds instances of type GranularMarking. 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 GranularMarking.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 GranularMarking.Builder from(GranularMarkingDm instance)
      Fill a builder with attribute values from the provided security.whisper.javastix.datamarkings.GranularMarkingDm instance.
      Parameters:
      instance - The instance from which to copy values
      Returns:
      this builder for use in a chained invocation
    • markingRef

      @CanIgnoreReturnValue public final GranularMarking.Builder markingRef(MarkingDefinitionDm markingRef)
      Initializes the value for the markingRef attribute.
      Parameters:
      markingRef - The value for markingRef (can be null)
      Returns:
      this builder for use in a chained invocation
    • putCustomProperty

      @CanIgnoreReturnValue public final GranularMarking.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 GranularMarking.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 GranularMarking.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 GranularMarking.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
    • build

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