Package com.cloudimpl.outstack.runtime
Class ServiceQueryProvider<T extends RootEntity,R>
java.lang.Object
com.cloudimpl.outstack.runtime.ServiceQueryProvider<T,R>
- Type Parameters:
T-
- All Implemented Interfaces:
java.util.function.Function<java.lang.Object,org.reactivestreams.Publisher<?>>
public class ServiceQueryProvider<T extends RootEntity,R>
extends java.lang.Object
implements java.util.function.Function<java.lang.Object,org.reactivestreams.Publisher<?>>
- Author:
- nuwan
-
Constructor Summary
Constructors Constructor Description ServiceQueryProvider(java.lang.Class<T> rootType, EventRepositoy<T> eventRepository, java.util.function.Function<java.lang.Class<? extends RootEntity>,QueryOperations<?>> queryOperationSelector, java.util.function.Supplier<java.util.function.BiFunction<java.lang.String,java.lang.Object,reactor.core.publisher.Mono>> requestHandler, java.util.function.Supplier<java.util.function.Consumer> injector) -
Method Summary
Modifier and Type Method Description org.reactivestreams.Publisherapply(java.lang.Object input)protected static java.lang.Objectencode(IQuery query, java.lang.Object reply)java.util.Optional<EntityQueryHandler>getQueryHandler(java.lang.String name)voidregisterDefaultQueryHandlersForEntity(java.lang.Class<? extends Entity> entityType)voidregisterQueryHandler(java.lang.Class<? extends EntityQueryHandler> handlerType)voidvalidate(java.util.function.Predicate<java.lang.String> pred, java.lang.String name, java.lang.String error)static voidvalidateHandler(java.lang.String name, java.lang.Class<? extends RootEntity> rootType, java.lang.Class<? extends Entity> type)Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface java.util.function.Function
andThen, compose
-
Constructor Details
-
ServiceQueryProvider
public ServiceQueryProvider(java.lang.Class<T> rootType, EventRepositoy<T> eventRepository, java.util.function.Function<java.lang.Class<? extends RootEntity>,QueryOperations<?>> queryOperationSelector, java.util.function.Supplier<java.util.function.BiFunction<java.lang.String,java.lang.Object,reactor.core.publisher.Mono>> requestHandler, java.util.function.Supplier<java.util.function.Consumer> injector)
-
-
Method Details
-
registerQueryHandler
-
registerDefaultQueryHandlersForEntity
-
getQueryHandler
-
validateHandler
public static void validateHandler(java.lang.String name, java.lang.Class<? extends RootEntity> rootType, java.lang.Class<? extends Entity> type) -
apply
public org.reactivestreams.Publisher apply(java.lang.Object input)- Specified by:
applyin interfacejava.util.function.Function<T extends RootEntity,R>
-
encode
-
validate
public void validate(java.util.function.Predicate<java.lang.String> pred, java.lang.String name, java.lang.String error)
-