a unidirectional association, or "assoc", between an entity and an aggregate root.
a unidirectional association, or "assoc", between an entity and an aggregate root. the left side of the
association - that is, the holder of the Assoc
instance - is known as the associator. the right side of
the association is the associatee.
there are basically two kinds of associations that you have to understand. an unpersisted assoc is one in which the associatee has not been persisted. in this case, an attempt to persist the associator will cascade persist the associatee.
a persisted assoc is one in which the associatee has already been persisted. it may or may not have already
been loaded in to program memory, and calling retrieve
or persisted
or get
may well trigger a database
lookup.
a core domain.
a core domain. functionally equivalent to a Subdomain
a domain entity
a type class for a domain entity
a type key map of Entity to EntityType
a type key map of Entity to EntityType
emblem.TypeKeyMap
a generic subdomain.
a generic subdomain. functionally equivalent to a Subdomain
a domain entity that serves as an aggregate root
a type class for a domain entity that serves as an aggregate root
describes a relation (one-to-one mapping) between two types, Actual
and Abbreviated
.
describes a relation (one-to-one mapping) between two types, Actual
and Abbreviated
. The "actual" type is
typically a richer type, such as a case class with a single parameter, and an abbreviated value for the
type, such as a string. Provides functions for mapping between the actual and abbreviated types, as well as
an emblem.TypeKey
for both types.
the actual type
the abbreviated type
a shorthand with the abbreviated type unspecified.
a shorthand with the abbreviated type unspecified. this type is equivalent to Shorthand[Actual, _]
,
except with a single type parameter Actual
. this allows it to be used as a key or value in a
TypeBoundMap
or TypeKeyMap
.
an emblem.TypeKeyMap
of shorthands, indexed by the Actual
type
a specification of a subdomain of a project's domain.
a specification of a subdomain of a project's domain. contains a pool of all the entity types in the subdomain, as well as all the shorthands used by the entities.
a supporting subdomain.
a supporting subdomain. functionally equivalent to a Subdomain
a value object.
a value object. functionally equivalent to an Entity
a value type.
a value type. functionally equivalent to an EntityType
houses methods for constructing root type pools
provides support for constructing your subdomain