Package io.riada.insight.model.filter
Class ImmutableInsightBeanFilter.Builder<T>
java.lang.Object
io.riada.insight.model.filter.ImmutableInsightBeanFilter.Builder<T>
- Enclosing class:
ImmutableInsightBeanFilter<T>
Builds instances of type
ImmutableInsightBeanFilter.
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 newImmutableInsightBeanFilter.from(InsightBeanFilter<T> instance) Fill a builder with attribute values from the providedInsightBeanFilterinstance.setPredicate(Predicate<T> predicate) Initializes the value for thepredicateattribute.
-
Method Details
-
from
@CanIgnoreReturnValue public final ImmutableInsightBeanFilter.Builder<T> from(InsightBeanFilter<T> instance) Fill a builder with attribute values from the providedInsightBeanFilterinstance. 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
-
setPredicate
@CanIgnoreReturnValue public final ImmutableInsightBeanFilter.Builder<T> setPredicate(Predicate<T> predicate) Initializes the value for thepredicateattribute.- Parameters:
predicate- The value for predicate- Returns:
thisbuilder for use in a chained invocation
-
build
Builds a newImmutableInsightBeanFilter.- Returns:
- An immutable instance of InsightBeanFilter
- Throws:
IllegalStateException- if any required attributes are missing
-