Search predicate which can be used to filter domain objects from the remote
server using SearchableRepository searchable repository.
Specification is defined in DSL with keyword specification
and a predicate.
Server can convert specification to SQL query on the fly or call
database function created at compile time. Other optimization techniques
can be used too.
DSL example:
module Todo {
aggregate Task {
timestamp createdOn;
specification findBetween
'it => it.createdOn >= after && it.createdOn <= before' {
date after;
date before;
}
}
Search predicate which can be used to filter domain objects from the remote server using
SearchableRepository searchable repository
.Specification is defined in DSL with keyword
specification
and a predicate. Server can convert specification to SQL query on the fly or call database function created at compile time. Other optimization techniques can be used too.DSL example: