Package cdc.issues

Class NameValueMap.Builder<M extends NameValueMap,B extends NameValueMap.Builder<M,B>>

java.lang.Object
cdc.issues.NameValueMap.Builder<M,B>
Direct Known Subclasses:
Metas.Builder, Params.Builder
Enclosing interface:
NameValueMap

public abstract static class NameValueMap.Builder<M extends NameValueMap,B extends NameValueMap.Builder<M,B>> extends Object
  • Field Details

  • Constructor Details

    • Builder

      protected Builder()
  • Method Details

    • self

      protected B self()
    • entry

      public B entry(String name, String value)
      Adds a new (name, value) pair.
      Parameters:
      name - The meta name.
      value - The meta value.
      Returns:
      This builder.
    • entryIfNotNull

      public B entryIfNotNull(String name, String value)
      Adds a new (name, value) pair if value is not null.
      Parameters:
      name - The meta name.
      value - The meta value.
      Returns:
      This builder.
    • entries

      public B entries(Collection<? extends NameValue> entries)
    • entries

      public B entries(NameValueMap other)
    • append

      public B append(String name, String value, String separator)
      Adds or modify a (name, value) pair.

      If no value is associated to name, behaves like entry(name, value). Otherwise, modify the value associated to name by appending separator and value.

      Parameters:
      name - The meta name.
      value - The meta value.
      separator - The separator.
      Returns:
      This builder.
      Throws:
      IllegalArgumentException - When name is not valid.
    • build

      public abstract M build()