Package-level declarations

Types

Link copied to clipboard
Link copied to clipboard
abstract class BaseSort
Link copied to clipboard
object Builder
Link copied to clipboard
class Column<O, out C>(val name: String, val declaringClass: Class<*>)
Link copied to clipboard
sealed class ColumnPredicate<C>
Link copied to clipboard
sealed class CriteriaExpression<O, out T>
Link copied to clipboard
class FieldInfo

Contains information about a field from an entity class. Used as part of query criteria construction through Builder, produced by function getField. The constructor should not be invoked manually.

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
data class PageSpecification(val pageNumber: Int = -1, val pageSize: Int = DEFAULT_PAGE_SIZE)

PageSpecification allows specification of a page number (starting from DEFAULT_PAGE_NUM) and page size (defaulting to DEFAULT_PAGE_SIZE with a maximum page size of MAX_PAGE_SIZE) Note: we default the page number to DEFAULT_PAGE_SIZE to enable queries without requiring a page specification but enabling detection of large results sets that fall out of the DEFAULT_PAGE_SIZE requirement. MAX_PAGE_SIZE should be used with extreme caution as results may exceed your JVM memory footprint.

Link copied to clipboard

Indexing assumptions: QueryCriteria assumes underlying schema tables are correctly indexed for performance.

Link copied to clipboard

Represents scope for the operation when JPA Session been created, i.e. transaction started.

Link copied to clipboard
data class Sort(val columns: Collection<Sort.SortColumn>) : BaseSort

Sort allows specification of a set of entity attribute names and their associated directionality and null handling, to be applied upon processing a query specification.

Link copied to clipboard
sealed class SortAttribute

Properties

Link copied to clipboard
const val DEFAULT_PAGE_NUM: Int = 1

Pagination and Ordering

Link copied to clipboard
const val DEFAULT_PAGE_SIZE: Int = 200
Link copied to clipboard
const val MAX_PAGE_SIZE: Int

Note: use PageSpecification to correctly handle a number of bounded pages of a pre-configured page size.

Functions

Link copied to clipboard
inline fun <A> builder(block: Builder.() -> A): A
Link copied to clipboard
fun <O, C> getColumnName(column: Column<O, C>): String
Link copied to clipboard
fun getField(fieldName: String, entityClass: Class<*>): FieldInfo

Returns a FieldInfo for field with name fieldName in entityClass.

Link copied to clipboard