001package io.ebean.event; 002 003import io.ebean.EbeanServer; 004import io.ebean.Query; 005import io.ebean.Transaction; 006 007/** 008 * Holds the information available for a bean query. 009 */ 010public interface BeanQueryRequest<T> { 011 012 /** 013 * Return the server processing the request. 014 */ 015 EbeanServer getEbeanServer(); 016 017 /** 018 * Return the Transaction associated with this request. 019 */ 020 Transaction getTransaction(); 021 022 /** 023 * Returns the query. 024 */ 025 Query<T> getQuery(); 026 027 /** 028 * Return true if an Id IN expression should have the bind parameters padded. 029 */ 030 boolean isPadInExpression(); 031 032 /** 033 * Return true if multi-value binding using Array or Table Values is supported. 034 */ 035 boolean isMultiValueIdSupported(); 036 037 /** 038 * Return true if multi-value binding is supported for this value type. 039 */ 040 boolean isMultiValueSupported(Class<?> valueType); 041}