Package io.dialob.api.questionnaire
Class ImmutableAnswer.Builder
- java.lang.Object
-
- io.dialob.api.questionnaire.ImmutableAnswer.Builder
-
- Enclosing class:
- ImmutableAnswer
@NotThreadSafe public static final class ImmutableAnswer.Builder extends Object
Builds instances of typeImmutableAnswer. Initialize attributes and then invoke thebuild()method to create an immutable instance.Builderis not thread-safe and generally should not be stored in a field or collection, but instead used immediately to create instances.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ImmutableAnswer.BuilderacceptedValue(Object acceptedValue)Initializes the value for theacceptedValueattribute.ImmutableAnswerbuild()Builds a newImmutableAnswer.ImmutableAnswer.Builderfrom(Answer instance)Fill a builder with attribute values from the providedAnswerinstance.ImmutableAnswer.Builderfrom(ModifiableAnswer instance)Fill a builder with attribute values from the providedModifiableAnswerinstance.ImmutableAnswer.Builderid(String id)Initializes the value for theidattribute.ImmutableAnswer.Buildertype(String type)Initializes the value for thetypeattribute.ImmutableAnswer.Builderupdated(Date updated)Initializes the value for theupdatedattribute.ImmutableAnswer.BuilderuserId(String userId)Initializes the value for theuserIdattribute.ImmutableAnswer.Buildervalue(Object value)Initializes the value for thevalueattribute.
-
-
-
Method Detail
-
from
public final ImmutableAnswer.Builder from(ModifiableAnswer instance)
Fill a builder with attribute values from the providedModifiableAnswerinstance.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
from
public final ImmutableAnswer.Builder from(Answer instance)
Fill a builder with attribute values from the providedAnswerinstance. Regular attribute values will be replaced with those from the given instance. Absent optional values will not replace present values.- Parameters:
instance- The instance from which to copy values- Returns:
thisbuilder for use in a chained invocation
-
id
public final ImmutableAnswer.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
-
value
public final ImmutableAnswer.Builder value(Object value)
Initializes the value for thevalueattribute.- Parameters:
value- The value for value (can benull)- Returns:
thisbuilder for use in a chained invocation
-
type
public final ImmutableAnswer.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
-
acceptedValue
public final ImmutableAnswer.Builder acceptedValue(Object acceptedValue)
Initializes the value for theacceptedValueattribute.- Parameters:
acceptedValue- The value for acceptedValue (can benull)- Returns:
thisbuilder for use in a chained invocation
-
updated
public final ImmutableAnswer.Builder updated(Date updated)
Initializes the value for theupdatedattribute.- Parameters:
updated- The value for updated (can benull)- Returns:
thisbuilder for use in a chained invocation
-
userId
public final ImmutableAnswer.Builder userId(String userId)
Initializes the value for theuserIdattribute.- Parameters:
userId- The value for userId (can benull)- Returns:
thisbuilder for use in a chained invocation
-
build
public ImmutableAnswer build()
Builds a newImmutableAnswer.- Returns:
- An immutable instance of Answer
- Throws:
IllegalStateException- if any required attributes are missing
-
-