Package io.thestencil.client.api
Class ImmutableEntityState.Builder<T extends StencilClient.EntityBody>
- java.lang.Object
-
- io.thestencil.client.api.ImmutableEntityState.Builder<T>
-
- Enclosing class:
- ImmutableEntityState<T extends StencilClient.EntityBody>
@NotThreadSafe public static final class ImmutableEntityState.Builder<T extends StencilClient.EntityBody> extends Object
Builds instances of typeImmutableEntityState. 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 ImmutableEntityState<T>build()Builds a newImmutableEntityState.ImmutableEntityState.Builder<T>entity(StencilClient.Entity<T> entity)Initializes the value for theentityattribute.ImmutableEntityState.Builder<T>from(StencilConfig.EntityState<T> instance)Fill a builder with attribute values from the providedEntityStateinstance.ImmutableEntityState.Builder<T>src(io.resys.thena.docdb.api.actions.ObjectsActions.ObjectsResult<io.resys.thena.docdb.api.actions.ObjectsActions.BlobObject> src)Initializes the value for thesrcattribute.
-
-
-
Method Detail
-
from
@CanIgnoreReturnValue public final ImmutableEntityState.Builder<T> from(StencilConfig.EntityState<T> instance)
Fill a builder with attribute values from the providedEntityStateinstance. 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
-
src
@CanIgnoreReturnValue public final ImmutableEntityState.Builder<T> src(io.resys.thena.docdb.api.actions.ObjectsActions.ObjectsResult<io.resys.thena.docdb.api.actions.ObjectsActions.BlobObject> src)
Initializes the value for thesrcattribute.- Parameters:
src- The value for src- Returns:
thisbuilder for use in a chained invocation
-
entity
@CanIgnoreReturnValue public final ImmutableEntityState.Builder<T> entity(StencilClient.Entity<T> entity)
Initializes the value for theentityattribute.- Parameters:
entity- The value for entity- Returns:
thisbuilder for use in a chained invocation
-
build
public ImmutableEntityState<T> build()
Builds a newImmutableEntityState.- Returns:
- An immutable instance of EntityState
- Throws:
IllegalStateException- if any required attributes are missing
-
-