com.dslplatform.api

client

package client

Visibility
  1. Public
  2. All

Type Members

  1. abstract class AggregateRootCompanion[TRoot <: AggregateRoot] extends IdentifiableCompanion[TRoot]

    TRoot

    type of an Aggregate Root.

  2. trait ApplicationProxy extends AnyRef

    Proxy service to remote RPC-like API.

    Proxy service to remote RPC-like API.

    Remote services can be called using their name.

  3. class ClientDomainEventStore extends DomainEventStore

  4. class ClientPersistableRepository[T <: AggregateRoot] extends ClientRepository[T] with PersistableRepository[T]

    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:

    
    module Todo {
      aggregate Task;
    }
    
    Java usage:
    IServiceLocator locator;
    PersistableRepository<Todo.Task> repository = locator.resolve(Todo.TaskRepository.class);
    

  5. class ClientRepository[TIdentifiable <: Identifiable] extends ClientSearchableRepository[TIdentifiable] with Repository[TIdentifiable]

    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:

    module Todo {
      aggregate Task;
      snowflake<Task> TaskList;
    }
    
    Java usage:
    IServiceLocator locator;
    Repository<Todo.TaskList> repository = locator.resolve(Todo.TaskListRepository.class);
    

  6. class ClientSearchableRepository[TSearchable <: Searchable] extends SearchableRepository[TSearchable]

    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:

    module Todo {
      sql TaskInfo 'SELECT name, description FROM task' {
        string name;
        string description;
      }
    }
    
    Scala usage:
    ServiceLocator locator = ...
    val repository = locator.resolve[SearchableRepository[Todo.TaskInfo]]
    

  7. class ClientTemplaterService extends TemplaterService

  8. trait CrudProxy extends AnyRef

    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.

  9. class CubeBuilder[TCube <: Cube[TSource], TSource <: Searchable] extends AnyRef

    Utility class for building olap cube analysis.

  10. trait DomainProxy extends AnyRef

    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.

  11. abstract class EventCompanion[TEvent <: DomainEvent] extends IdentifiableCompanion[TEvent]

  12. class GenericSearchBuilder[TSearchable <: Searchable] extends AnyRef

    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.

  13. class HttpApplicationProxy extends ApplicationProxy

  14. class HttpClient extends AnyRef

  15. class HttpCrudProxy extends CrudProxy

  16. class HttpDomainProxy extends DomainProxy

  17. class HttpReportingProxy extends ReportingProxy

  18. class HttpStandardProxy extends StandardProxy

  19. abstract class IdentifiableCompanion[T <: Identifiable] extends SearchableCompanion[T]

  20. class JsonSerialization extends AnyRef

  21. class MapServiceLocator extends ServiceLocator

  22. class ProjectSettings extends AnyRef

    Project.ini key->value pairs Stream to project.ini file

    Project.ini key->value pairs Stream to project.ini file

    Exceptions thrown
    IOException

    in case of error reading stream

  23. trait ReportingProxy extends AnyRef

    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;
      }
    }
    

  24. class SearchBuilder[TSearchable <: Searchable] extends AnyRef

    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.

  25. abstract class SearchableCompanion[TSearchable <: Searchable] extends AnyRef

  26. abstract class SnowflakeCompanion[TSnowflake <: Snowflake[TAggregate], TAggregate <: AggregateRoot] extends IdentifiableCompanion[TSnowflake]

  27. trait StandardProxy extends AnyRef

    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.

Value Members

  1. object Bootstrap

    DSL client Java initialization.

    DSL client Java initialization. Initialize ServiceLocator locator with services and communication configuration, such as remote url and authentication.

  2. object Utils

Ungrouped