Package io.github.pellse.assembler
Interface RuleMapper<T,TC extends Collection<T>,K,ID,R,RRC>
- Type Parameters:
TC
- Collection of correlation ids type (e.g.List<ID>
,Set<ID>
)ID
- Correlation Id typeR
- Type of the publisher elements returned fromqueryFunction
RRC
- Either R or collection of R (e.g. R vs.List<R>
)
- All Superinterfaces:
Function<RuleContext<T,
TC, K, ID, R, RRC>, Function<Iterable<T>, reactor.core.publisher.Mono<Map<K, RRC>>>>
- Functional Interface:
- This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.
@FunctionalInterface
public interface RuleMapper<T,TC extends Collection<T>,K,ID,R,RRC>
extends Function<RuleContext<T,TC,K,ID,R,RRC>,Function<Iterable<T>,reactor.core.publisher.Mono<Map<K,RRC>>>>
-
Method Summary
Static MethodsModifier and TypeMethodDescriptionstatic <T,
TC extends Collection<T>, K, ID, EID extends Comparable<EID>, R>
RuleMapper<T, TC, K, ID, R, List<R>> static <T,
TC extends Collection<T>, K, ID, EID extends Comparable<EID>, R>
RuleMapper<T, TC, K, ID, R, List<R>> oneToMany
(Function<R, EID> idResolver, RuleMapperSource<T, TC, K, ID, EID, R, List<R>, RuleMapperContext.OneToManyContext<T, TC, K, ID, EID, R, List<R>>> ruleMapperSource) static <T,
TC extends Collection<T>, K, ID, EID extends Comparable<EID>, R, RC extends Collection<R>>
RuleMapper<T, TC, K, ID, R, RC> oneToMany
(Function<R, EID> idResolver, RuleMapperSource<T, TC, K, ID, EID, R, RC, RuleMapperContext.OneToManyContext<T, TC, K, ID, EID, R, RC>> ruleMapperSource, Supplier<RC> collectionFactory) static <T,
TC extends Collection<T>, K, ID, EID extends Comparable<EID>, R>
RuleMapper<T, TC, K, ID, R, List<R>> static <T,
TC extends Collection<T>, K, ID, EID extends Comparable<EID>, R, RC extends Collection<R>>
RuleMapper<T, TC, K, ID, R, RC> oneToMany
(Function<R, EID> idResolver, Function<TC, org.reactivestreams.Publisher<R>> queryFunction, Supplier<RC> collectionFactory) static <T,
TC extends Collection<T>, K, ID, EID extends Comparable<EID>, R>
RuleMapper<T, TC, K, ID, R, Set<R>> oneToManyAsSet
(Function<R, EID> idResolver, RuleMapperSource<T, TC, K, ID, EID, R, Set<R>, RuleMapperContext.OneToManyContext<T, TC, K, ID, EID, R, Set<R>>> ruleMapperSource) static <T,
TC extends Collection<T>, K, ID, EID extends Comparable<EID>, R>
RuleMapper<T, TC, K, ID, R, Set<R>> oneToManyAsSet
(Function<R, EID> idResolver, Function<TC, org.reactivestreams.Publisher<R>> queryFunction) static <T,
TC extends Collection<T>, K, ID, R>
RuleMapper<T, TC, K, ID, R, R> oneToOne()
static <T,
TC extends Collection<T>, K, ID, R>
RuleMapper<T, TC, K, ID, R, R> oneToOne
(RuleMapperSource<T, TC, K, ID, ID, R, R, RuleMapperContext.OneToOneContext<T, TC, K, ID, R>> ruleMapperSource) static <T,
TC extends Collection<T>, K, ID, R>
RuleMapper<T, TC, K, ID, R, R> oneToOne
(RuleMapperSource<T, TC, K, ID, ID, R, R, RuleMapperContext.OneToOneContext<T, TC, K, ID, R>> ruleMapperSource, Function<ID, R> defaultResultProvider) static <T,
TC extends Collection<T>, K, ID, R>
RuleMapper<T, TC, K, ID, R, R> static <T,
TC extends Collection<T>, K, ID, R>
RuleMapper<T, TC, K, ID, R, R> oneToOne
(Function<TC, org.reactivestreams.Publisher<R>> queryFunction, Function<ID, R> defaultResultProvider)
-
Method Details
-
oneToOne
-
oneToOne
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, R> TC, oneToOneK, ID, R, R> (Function<TC, org.reactivestreams.Publisher<R>> queryFunction) -
oneToOne
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, R> TC, oneToOneK, ID, R, R> (RuleMapperSource<T, TC, K, ID, ID, R, R, RuleMapperContext.OneToOneContext<T, TC, K, ID, R>> ruleMapperSource) -
oneToOne
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, R> TC, oneToOneK, ID, R, R> (Function<TC, org.reactivestreams.Publisher<R>> queryFunction, Function<ID, R> defaultResultProvider) -
oneToOne
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, R> TC, oneToOneK, ID, R, R> (RuleMapperSource<T, TC, K, ID, ID, R, R, RuleMapperContext.OneToOneContext<T, TC, K, ID, R>> ruleMapperSource, Function<ID, R> defaultResultProvider) -
oneToMany
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, EID extends Comparable<EID>, R> TC, oneToManyK, ID, R, List<R>> (Function<R, EID> idResolver) -
oneToMany
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, EID extends Comparable<EID>, R> TC, oneToManyK, ID, R, List<R>> (Function<R, EID> idResolver, Function<TC, org.reactivestreams.Publisher<R>> queryFunction) -
oneToMany
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, EID extends Comparable<EID>, R> TC, oneToManyK, ID, R, List<R>> (Function<R, EID> idResolver, RuleMapperSource<T, TC, K, ID, EID, R, List<R>, RuleMapperContext.OneToManyContext<T, TC, K, ID, EID, R, List<R>>> ruleMapperSource) -
oneToManyAsSet
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, EID extends Comparable<EID>, R> TC, oneToManyAsSetK, ID, R, Set<R>> (Function<R, EID> idResolver, Function<TC, org.reactivestreams.Publisher<R>> queryFunction) -
oneToManyAsSet
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, EID extends Comparable<EID>, R> TC, oneToManyAsSetK, ID, R, Set<R>> (Function<R, EID> idResolver, RuleMapperSource<T, TC, K, ID, EID, R, Set<R>, RuleMapperContext.OneToManyContext<T, TC, K, ID, EID, R, Set<R>>> ruleMapperSource) -
oneToMany
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, EID extends Comparable<EID>, R, RC extends Collection<R>> TC, oneToManyK, ID, R, RC> (Function<R, EID> idResolver, Function<TC, org.reactivestreams.Publisher<R>> queryFunction, Supplier<RC> collectionFactory) -
oneToMany
static <T,TC extends Collection<T>, RuleMapper<T,K, ID, EID extends Comparable<EID>, R, RC extends Collection<R>> TC, oneToManyK, ID, R, RC> (Function<R, EID> idResolver, RuleMapperSource<T, TC, K, ID, EID, R, RC, RuleMapperContext.OneToManyContext<T, TC, K, ID, EID, R, RC>> ruleMapperSource, Supplier<RC> collectionFactory)
-