SQLRepository
classin packageklyn.data.sql
public class SQLRepository<T, TId> extends SQLRepositoryCore implements Repository<T, TId>
SQLRepository
All Implemented Interfaces: Repository

Read-only, no-tracking repository over one mapped SQL table or view.

Direct repositories open one connection per execution. Repositories owned by an EntityManager borrow its lazily opened session connection, allowing transaction continuity without changing this public repository contract. Application values are always bound parameters and never concatenated into SQL text.

Example
users = SQLRepository<User, Int>(configuration)
active = query:
    from users user
    where user.active
Properties
Modifier and Type Member Description
public readonly property mapping
mapping as SQLMapping<T, TId>
Validated entity mapping resolved once at construction.
Constructors
Modifier and Type Member Description
public SQLRepository
SQLRepository( configuration as SQLConfiguration, mapping as SQLMapping<T, TId>, session as SQLProviderSession, tracker as SQLIdentityTracker, catalog as SQLMappingCatalog )
Creates a repository borrowing one EntityManager SQL session.
public SQLRepository Creates a direct no-tracking repository with an inferred SQL mapping.
public SQLRepository
SQLRepository(configuration as SQLConfiguration, mapping as SQLMapping<T, TId>)
Creates a direct no-tracking repository with an explicit mapping.
Methods
Modifier and Type Member Description
public asQuery
asQuery() as Query<T>
Returns a lazy identity query over this SQL repository.
public count
count() as Long
Returns the exact number of mapped source entities.
public validateBeforeRead
validateBeforeRead() as Repository<T, TId>
Validates null and duplicate identities before subsequent reads.