package io.ebeanservice.docstore.api;

import io.ebean.docstore.DocQueryContext;
import io.ebean.text.json.JsonReadOptions;
import io.ebeaninternal.api.SpiQuery;
import io.ebeaninternal.api.SpiTransaction;

A Query request for the document store.
/** * A Query request for the document store. */
public interface DocQueryRequest<T> extends DocQueryContext<T> {
Return the transaction for this request (can be null for document store only queries).
/** * Return the transaction for this request (can be null for document store only queries). */
SpiTransaction getTransaction();
Set the (document store) transaction to use for this query.
/** * Set the (document store) transaction to use for this query. */
void setTransaction(SpiTransaction transaction);
Return the query for this request.
/** * Return the query for this request. */
SpiQuery<T> getQuery();
Create JsonReadOptions taking into account persistence context and lazy loading support.
/** * Create JsonReadOptions taking into account persistence context and lazy loading support. */
JsonReadOptions createJsonReadOptions();
Execute secondary queries.
/** * Execute secondary queries. */
void executeSecondaryQueries(boolean forEach); }