package io.ebeaninternal.server.query;

import io.ebean.Transaction;
import io.ebeaninternal.api.SpiEbeanServer;
import io.ebeaninternal.api.SpiQuery;

import java.util.concurrent.Callable;

Represent the findCount query as a Callable.
Type parameters:
  • <T> – the entity bean type
/** * Represent the findCount query as a Callable. * * @param <T> the entity bean type */
public class CallableQueryCount<T> extends CallableQuery<T> implements Callable<Integer> {
Note that the transaction passed in is always a new transaction solely to find the row count so it must be cleaned up by this CallableQueryRowCount.
/** * Note that the transaction passed in is always a new transaction solely to * find the row count so it must be cleaned up by this CallableQueryRowCount. */
public CallableQueryCount(SpiEbeanServer server, SpiQuery<T> query, Transaction t) { super(server, query, t); }
Execute the query returning the row count.
/** * Execute the query returning the row count. */
@Override public Integer call() { try { return server.findCountWithCopy(query, transaction); } finally { // cleanup the underlying connection transaction.end(); } } }