Package com.cloudimpl.outstack.runtime
Class UnboundedEntityContext<T extends RootEntity>
java.lang.Object
com.cloudimpl.outstack.runtime.EntityContext<T>
com.cloudimpl.outstack.runtime.UnboundedEntityContext<T>
- All Implemented Interfaces:
Context,EntityQueryContext
public class UnboundedEntityContext<T extends RootEntity> extends EntityContext<T> implements EntityQueryContext
-
Field Summary
Fields inherited from class com.cloudimpl.outstack.runtime.EntityContext
crudOperations, entityMeta, entitySupplier, entityType, eventPublisher, idGenerator, queryOperation, queryOperationSelector, tx, validator, version -
Constructor Summary
Constructors Constructor Description UnboundedEntityContext(EntityContextProvider entityContextProvider, java.lang.Class<T> entityType, java.lang.String tenantId, java.util.function.Supplier<java.lang.String> idGenerator, java.util.Optional<CRUDOperations> crudOperations, QueryOperations<?> queryOperation, java.util.Optional<java.util.function.Consumer<Event>> eventPublisher, java.util.function.Consumer<java.lang.Object> validator, java.util.function.Function<java.lang.Class<? extends RootEntity>,QueryOperations<?>> queryOperationSelector, java.lang.String version, java.util.function.BiFunction<java.lang.String,java.lang.Object,reactor.core.publisher.Mono> requestHandler) -
Method Summary
Modifier and Type Method Description <R extends RootEntity>
AsyncEntityContext<R>asAsyncEntityContext()AsyncRootEntityQueryContextasAsyncQueryContext()<R extends RootEntity, K extends ChildEntity<R>>
ChildEntityContext<R,K>asChildContext()ChildEntityQueryContextasChildQueryContext()<R extends RootEntity>
RootEntityContext<R>asRootContext()RootEntityQueryContextasRootQueryContext()UnboundedEntityContext<T>asUnboundedEntityContext()Tcreate(java.lang.String id, Event<T> event)Tdelete(java.lang.String id)java.util.Optional<T>getEntityById(java.lang.String id)ResultSet<Event>getEntityEventsById(java.lang.String id, Query.PagingRequest pageRequest)ExternalEntityQueryProvidergetEntityQueryProvider(java.lang.Class rootType)ExternalEntityQueryProvidergetEntityQueryProvider(java.lang.Class rootType, java.lang.String tenantId)Trename(java.lang.String id, java.lang.String newId)<T> reactor.core.publisher.Mono<T>sendRequest(java.lang.String domainOwner, java.lang.String domainContext, java.lang.String version, java.lang.String serviceName, java.lang.Object req)Tupdate(java.lang.String id, Event<T> event)Methods inherited from class com.cloudimpl.outstack.runtime.EntityContext
addEvent, getCrudOperations, getEntityMeta, getEntityProvider, getEventPublisher, getEvents, getQueryOperations, getTenantId, getTx, getVersion, setTxMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Constructor Details
-
UnboundedEntityContext
public UnboundedEntityContext(EntityContextProvider entityContextProvider, java.lang.Class<T> entityType, java.lang.String tenantId, java.util.function.Supplier<java.lang.String> idGenerator, java.util.Optional<CRUDOperations> crudOperations, QueryOperations<?> queryOperation, java.util.Optional<java.util.function.Consumer<Event>> eventPublisher, java.util.function.Consumer<java.lang.Object> validator, java.util.function.Function<java.lang.Class<? extends RootEntity>,QueryOperations<?>> queryOperationSelector, java.lang.String version, java.util.function.BiFunction<java.lang.String,java.lang.Object,reactor.core.publisher.Mono> requestHandler)
-
-
Method Details
-
create
- Specified by:
createin classEntityContext<T extends RootEntity>
-
update
- Specified by:
updatein classEntityContext<T extends RootEntity>
-
delete
- Specified by:
deletein classEntityContext<T extends RootEntity>
-
rename
- Specified by:
renamein classEntityContext<T extends RootEntity>
-
asUnboundedEntityContext
- Overrides:
asUnboundedEntityContextin classEntityContext<T extends RootEntity>
-
getEntityById
- Specified by:
getEntityByIdin interfaceEntityQueryContext<T extends RootEntity>
-
getEntityEventsById
- Specified by:
getEntityEventsByIdin interfaceEntityQueryContext<T extends RootEntity>
-
getEntityQueryProvider
public ExternalEntityQueryProvider getEntityQueryProvider(java.lang.Class rootType, java.lang.String tenantId)- Specified by:
getEntityQueryProviderin interfaceEntityQueryContext<T extends RootEntity>- Overrides:
getEntityQueryProviderin classEntityContext<T extends RootEntity>
-
getEntityQueryProvider
- Specified by:
getEntityQueryProviderin interfaceEntityQueryContext<T extends RootEntity>- Overrides:
getEntityQueryProviderin classEntityContext<T extends RootEntity>
-
asAsyncQueryContext
- Specified by:
asAsyncQueryContextin interfaceEntityQueryContext<T extends RootEntity>
-
asChildQueryContext
- Specified by:
asChildQueryContextin interfaceEntityQueryContext<T extends RootEntity>
-
asRootQueryContext
- Specified by:
asRootQueryContextin interfaceEntityQueryContext<T extends RootEntity>
-
asRootContext
- Specified by:
asRootContextin classEntityContext<T extends RootEntity>
-
asAsyncEntityContext
- Specified by:
asAsyncEntityContextin classEntityContext<T extends RootEntity>
-
asChildContext
- Specified by:
asChildContextin classEntityContext<T extends RootEntity>
-
sendRequest
public <T> reactor.core.publisher.Mono<T> sendRequest(java.lang.String domainOwner, java.lang.String domainContext, java.lang.String version, java.lang.String serviceName, java.lang.Object req)
-