com.dslplatform.api.client

ClientPersistableRepository

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

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

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. ClientPersistableRepository
  2. PersistableRepository
  3. ClientRepository
  4. Repository
  5. ClientSearchableRepository
  6. SearchableRepository
  7. AnyRef
  8. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ClientPersistableRepository(locator: ServiceLocator)(implicit arg0: ClassTag[T])

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. def count(specification: Option[Specification[T]]): Future[Long]

    Returns a number of elements satisfying provided specification.

    Returns a number of elements satisfying provided specification.

    specification

    search predicate

    returns

    future to number of domain objects which satisfy specification

    Definition Classes
    ClientSearchableRepositorySearchableRepository
  9. def count(specification: Specification[T]): Future[Long]

    Helper method for counting domain objects.

    Helper method for counting domain objects. Returns a number of elements satisfying provided specification.

    specification

    search predicate

    returns

    future to number of domain objects which satisfy specification

    Definition Classes
    SearchableRepository
  10. val crudProxy: CrudProxy

    Attributes
    protected
    Definition Classes
    ClientRepository
  11. def delete(delete: T): Future[_]

    Deleting an AggregateRoot aggregate.

    Deleting an AggregateRoot aggregate.

    delete

    aggregate root to delete

    returns

    future for error checking

    Definition Classes
    ClientPersistableRepositoryPersistableRepository
  12. def delete(deletes: TraversableOnce[T]): Future[IndexedSeq[String]]

    Bulk delete.

    Bulk delete. Remote multiple AggregateRoot aggregates.

    deletes

    aggregate roots to delete

    returns

    future for error checking

    Definition Classes
    ClientPersistableRepositoryPersistableRepository
  13. val domainProxy: DomainProxy

    Attributes
    protected
    Definition Classes
    ClientSearchableRepository
  14. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  15. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  16. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  17. def find(uri: String): Future[T]

    Returns a domain object uniquely represented with its URI.

    Returns a domain object uniquely represented with its URI. If object is not found, an exception will be thrown

    uri

    domain object identity

    returns

    future to found domain object

    Definition Classes
    ClientRepositoryRepository
  18. def find(uris: TraversableOnce[String]): Future[IndexedSeq[T]]

    Returns a Seq of domain objects uniquely represented with their URIs.

    Returns a Seq of domain objects uniquely represented with their URIs. Only found objects will be returned (Seq will be empty if no objects are found).

    uris

    sequence of unique identifiers

    returns

    future to found domain objects

    Definition Classes
    ClientRepositoryRepository
  19. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  20. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  21. def insert(insert: T): Future[String]

    Insert a single AggregateRoot aggregate.

    Insert a single AggregateRoot aggregate.

    insert

    new aggregate root

    returns

    future uri of created aggregate root

    Definition Classes
    ClientPersistableRepositoryPersistableRepository
  22. def insert(inserts: TraversableOnce[T]): Future[IndexedSeq[String]]

    Bulk insert.

    Bulk insert. Create multiple new AggregateRoot aggregates.

    inserts

    new aggregate roots

    returns

    future uris of created aggregate roots

    Definition Classes
    ClientPersistableRepositoryPersistableRepository
  23. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  24. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  25. final def notify(): Unit

    Definition Classes
    AnyRef
  26. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  27. def persist(inserts: TraversableOnce[T], updates: TraversableOnce[(T, T)], deletes: TraversableOnce[T]): Future[IndexedSeq[String]]

    Apply local changes to the remote server.

    Apply local changes to the remote server.

    inserts

    new aggregate roots

    updates

    pairs for updating old aggregate to new state

    deletes

    aggregate roots which will be deleted

    returns

    future uris of newly created aggregates

    Definition Classes
    ClientPersistableRepositoryPersistableRepository
  28. def search(specification: Option[Specification[T]], limit: Option[Int], offset: Option[Int], order: Map[String, Boolean]): Future[IndexedSeq[T]]

    Returns a Seq of domain objects satisfying Specification[TSearchable] specification with up to limit results.

    Returns a Seq of domain objects satisfying Specification[TSearchable] specification with up to limit results. offset can be used to skip initial results. order should be given as a Seq of pairs of where first is a property name and second is whether it should be sorted ascending over this property.

    specification

    search predicate

    limit

    maximum number of results

    offset

    number of results to be skipped

    order

    custom ordering

    returns

    future to domain objects which satisfy search predicate

    Definition Classes
    ClientSearchableRepositorySearchableRepository
  29. def search(specification: Specification[T], limit: Int): Future[Seq[T]]

    Helper method for searching domain objects.

    Helper method for searching domain objects. Returns a Seq of domain objects satisfying Specification[TSearchable] specification with up to limit results.

    specification

    search predicate

    limit

    maximum number of results

    returns

    future to domain objects which satisfy search predicate

    Definition Classes
    SearchableRepository
  30. def search(specification: Specification[T]): Future[Seq[T]]

    Helper method for searching domain objects.

    Helper method for searching domain objects. Returns a Seq of domain objects satisfying Specification[TSearchable] specification

    specification

    search predicate

    returns

    future to domain objects which satisfy search predicate

    Definition Classes
    SearchableRepository
  31. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  32. def toString(): String

    Definition Classes
    AnyRef → Any
  33. def update(update: T): Future[T]

    Changing state of an aggregate root.

    Changing state of an aggregate root.

    update

    aggregate root to update

    returns

    future for error checking

    Definition Classes
    ClientPersistableRepositoryPersistableRepository
  34. def update(updates: TraversableOnce[T]): Future[_]

    Bulk update.

    Bulk update. Changing state of multiple AggregateRoot aggregates.

    updates

    sequence of aggregate roots to update

    returns

    future for error checking

    Definition Classes
    ClientPersistableRepositoryPersistableRepository
  35. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  37. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from PersistableRepository[T]

Inherited from ClientRepository[T]

Inherited from Repository[T]

Inherited from ClientSearchableRepository[T]

Inherited from SearchableRepository[T]

Inherited from AnyRef

Inherited from Any

Ungrouped