Package io.github.ai4ci.abm
Class ImmutableContact.Builder
java.lang.Object
io.github.ai4ci.abm.ImmutableContact.Builder
- Enclosing class:
- ImmutableContact
Builds instances of type
ImmutableContact
.
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 TypeMethodDescriptionbuild()
Builds a newImmutableContact
.final ImmutableContact.Builder
Fill a builder with attribute values from the providedContact
instance.final ImmutableContact.Builder
setDetected
(boolean detected) Initializes the value for thedetected
attribute.final ImmutableContact.Builder
setParticipant1Id
(int participant1Id) Initializes the value for theparticipant1Id
attribute.final ImmutableContact.Builder
setParticipant2Id
(int participant2Id) Initializes the value for theparticipant2Id
attribute.
-
Method Details
-
from
Fill a builder with attribute values from the providedContact
instance. 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:
this
builder for use in a chained invocation
-
setDetected
Initializes the value for thedetected
attribute.- Parameters:
detected
- The value for detected- Returns:
this
builder for use in a chained invocation
-
setParticipant1Id
Initializes the value for theparticipant1Id
attribute.- Parameters:
participant1Id
- The value for participant1Id- Returns:
this
builder for use in a chained invocation
-
setParticipant2Id
Initializes the value for theparticipant2Id
attribute.- Parameters:
participant2Id
- The value for participant2Id- Returns:
this
builder for use in a chained invocation
-
build
Builds a newImmutableContact
.- Returns:
- An immutable instance of Contact
- Throws:
IllegalStateException
- if any required attributes are missing
-