Interface ProjectionAccumulator<E,V,A,R>
- Type Parameters:
E- The type of extracted values to accumulate before being transformed.V- The type of values to accumulate obtained by transforming extracted values (E).A- The type of the temporary storage for accumulated values, before and after being transformed.R- The type of the final result containing values of typeV.
- All Superinterfaces:
ProjectionCollector<E,V, A, R>
@Deprecated(since="8.0")
public interface ProjectionAccumulator<E,V,A,R>
extends ProjectionCollector<E,V,A,R>
Deprecated.
A variation on
Collector suitable for projections on field values.
Compared to Collector:
- There is no concept of parallel execution.
- All operations are expected to be non-blocking,
except for
transformAll(Object, ProjectionConverter, FromDocumentValueConvertContext)andfinish(Object). - Values to accumulate are expected to be
transformedexactly once after accumulation, changing their type fromProjectionAccumulatortoProjectionAccumulator. Clients are responsible for ensuring values to accumulate have been transformed upon callingfinish(Object).
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interfaceDeprecated.Provides an accumulator for a given type of values to accumulate (T). -
Method Summary
Modifier and TypeMethodDescriptionaccumulate(A accumulated, E value) Deprecated.Folds a new value in the given accumulated container.default AaccumulateAll(A accumulated, Collection<E> values) Deprecated.Folds a collection of new values in the given accumulated container.Deprecated.Creates the initial accumulated container.Deprecated.Finishes the accumulation, converting the accumulated container into the final result.Deprecated.Retrieves the value at the given index.static <V> ProjectionAccumulator.Provider<V, List<V>> list()Deprecated.static <V> ProjectionAccumulator.Provider<V, V> single()Deprecated.intDeprecated.Deprecated.Transforms the value at the given index, replacing it with the given transformed value.default AtransformAll(A accumulated, ProjectionConverter<? super E, ? extends V> converter, FromDocumentValueConvertContext context) Deprecated.Transforms all values with the given converter and the given context.Methods inherited from interface org.hibernate.search.engine.search.projection.ProjectionCollector
empty, transformAll
-
Method Details
-
single
Deprecated. -
list
Deprecated. -
createInitial
A createInitial()Deprecated.Creates the initial accumulated container.This operation should be non-blocking.
- Specified by:
createInitialin interfaceProjectionCollector<E,V, A, R> - Returns:
- The initial accumulated container,
to pass to the first call to
accumulate(Object, Object).
-
accumulate
Deprecated.Folds a new value in the given accumulated container.This operation should be non-blocking.
- Specified by:
accumulatein interfaceProjectionCollector<E,V, A, R> - Parameters:
accumulated- The accumulated value so far. For the first call, this is a value returned bycreateInitial(). For the next calls, this is the value returned by the previous call toaccumulate(Object, Object).value- The value to accumulate.- Returns:
- The new accumulated value.
-
accumulateAll
Deprecated.Folds a collection of new values in the given accumulated container.This operation should be non-blocking.
- Specified by:
accumulateAllin interfaceProjectionCollector<E,V, A, R> - Parameters:
accumulated- The accumulated value so far. For the first call, this is a value returned bycreateInitial(). For the next calls, this is the value returned by the previous call toaccumulate(Object, Object).values- The values to accumulate.- Returns:
- The new accumulated value.
-
size
Deprecated.- Specified by:
sizein interfaceProjectionCollector<E,V, A, R> - Parameters:
accumulated- The accumulated value so far, returned by the last call toaccumulate(Object, Object).- Returns:
- The number of elements in the accumulated value.
-
get
Deprecated.Retrieves the value at the given index.This operation should be non-blocking.
- Specified by:
getin interfaceProjectionCollector<E,V, A, R> - Parameters:
accumulated- The accumulated value so far, returned by the last call toaccumulate(Object, Object).index- The index of the value to retrieve.- Returns:
- The value at the given index.
-
transform
Deprecated.Transforms the value at the given index, replacing it with the given transformed value.This operation should be non-blocking.
- Specified by:
transformin interfaceProjectionCollector<E,V, A, R> - Parameters:
accumulated- The accumulated value so far, returned by the last call toaccumulate(Object, Object).index- The index of the value being transformed.transformed- The transformed value.- Returns:
- The new accumulated value.
-
transformAll
default A transformAll(A accumulated, ProjectionConverter<? super E, ? extends V> converter, FromDocumentValueConvertContext context) Deprecated.Transforms all values with the given converter and the given context.This operation may be blocking.
- Parameters:
accumulated- The accumulated value so far, returned by the last call toaccumulate(Object, Object).converter- The projection converter (fromFtoV).context- The context to be passed to the projection converter.- Returns:
- The new accumulated value.
-
finish
Deprecated.Finishes the accumulation, converting the accumulated container into the final result.This operation may be blocking.
- Specified by:
finishin interfaceProjectionCollector<E,V, A, R> - Parameters:
accumulated- The temporary storage created bycreateInitial(), then populated by successive calls toaccumulate(Object, Object), then transformed by a single call totransformAll(Object, ProjectionConverter, FromDocumentValueConvertContext)or by successive calls totransform(Object, int, Object).- Returns:
- The final result of the accumulation.
-
ProjectionCollectorinstead.