Proxy service to remote RPC-like API.
Proxy service to remote RPC-like API.
Remote services can be called using their name.
Common base implementation for PersistableRepository persistable repository
.
Common base implementation for PersistableRepository persistable repository
.
It redirects calls to proxy services.
It shouldn't be used or resolved.
Instead domain model repositories should be resolved.
DSL example:
Java usage:module Todo { aggregate Task; }
IServiceLocator locator; PersistableRepository<Todo.Task> repository = locator.resolve(Todo.TaskRepository.class);
Common base implementation for Repository repository
.
Common base implementation for Repository repository
.
It redirects calls to proxy services.
It shouldn't be used or resolved.
Instead domain model repositories should be resolved.
DSL example:
Java usage:module Todo { aggregate Task; snowflake<Task> TaskList; }
IServiceLocator locator; Repository<Todo.TaskList> repository = locator.resolve(Todo.TaskListRepository.class);
Common base implementation for SearchableRepository searchable repository
.
Common base implementation for SearchableRepository searchable repository
.
It redirects calls to proxy services.
It shouldn't be used or resolved.
Instead domain model repositories should be resolved.
DSL example:
Scala usage:module Todo { sql TaskInfo 'SELECT name, description FROM task' { string name; string description; } }
ServiceLocator locator = ... val repository = locator.resolve[SearchableRepository[Todo.TaskInfo]]
Proxy service to remote CRUD REST-like API.
Proxy service to remote CRUD REST-like API.
Single aggregate root instance can be used.
New object instance will be returned when doing modifications.
Use StandardProxy standard proxy
if response is not required from the server.
It is preferred to use domain patterns instead of this proxy service.
Utility class for building olap cube analysis.
Proxy service to remote REST-like API for basic domain operations such as searching, counting and event sourcing.
Proxy service to remote REST-like API for basic domain operations such as searching, counting and event sourcing.
It is preferred to use domain patterns instead of this proxy service.
In case when specification is not defined on the server, client side generic search builder can be used.
In case when specification is not defined on the server, client side generic search builder can be used. It should be used for testing and in rare cases when server can't be updated. [p] It is preferable to use server side specification.
Project.ini key->value pairs Stream to project.ini file
Project.ini key->value pairs Stream to project.ini file
in case of error reading stream
Proxy service to reporting operations such as document generation, report population and history lookup.
Proxy service to reporting operations such as document generation, report population and history lookup. Report should be used to minimize calls to server.
It is preferred to use domain patterns instead of this proxy service.
DSL example:
module Todo { aggregate Task { timestamp createdAt; timestamp? finishedAt; } report LoadData { int maxUnfinished; List<Task> unfinishedTasks 'it => it.finishedAt == null' LIMIT maxUnfinished ORDER BY createdAt; List<Task> recentlyFinishedTasks 'it => it.finishedAt != null' LIMIT 10 ORDER BY finishedAt DESC; } }
Utility class for building a search over a SearchableRepository searchable repository
.
Utility class for building a search over a SearchableRepository searchable repository
.
Search can be performed using more fluent API,
by providing specification limit, offset and custom order
Constructor for SearchBuilder which requires a repository to perform
a search.
Proxy service to various domain operations such as bulk persistence, data analysis and remote service calls.
Proxy service to various domain operations such as bulk persistence, data analysis and remote service calls.
It is preferred to use domain patterns instead of this proxy service.
type of an Aggregate Root.