Package st.orm


@NullMarked package st.orm
Foundation of the data model: the mapping annotations and the record interfaces.

Null-marked: type uses are non-null unless annotated @Nullable.

  • Class
    Description
    AbstractKeyMetamodel<T extends Data,E,V extends @Nullable Object>
    Extension of AbstractMetamodel that implements Metamodel.Key, indicating that the field has a uniqueness constraint.
    AbstractMetamodel<T extends Data,E,V extends @Nullable Object>
    Implementation that is used by the generated models.
    Base implementation for generated navigation-only metamodels — nodes that navigate the entity graph beyond a Ref foreign key.
    Accepts advice for the annotated entity, repository, class or method, so the advice log stops reporting it there.
    Marker interface used within an SQL template to indicate where bind variables (parameters) should be injected.
    A listener for record events within a SQL query context.
    Declares how a Converter should be applied.
    Converts between an entity value type and a database column type.
    Marker interface for record-based data classes.
    Specifies the name of the database column.
    Annotation for specifying multiple database column names, e.g., for compound keys.
    Specifies how an enum should be mapped when reading or writing to a column.
    Suppresses schema validation for the annotated entity type or record component.
    Specifies the name of the database table or view, and optionally its schema.
    Marks a Converter as eligible for automatic application when its entity type matches a type and no explicit @Convert annotation is present.
    Default implementation of the JoinType interface used to represent the default join types.
    Defines how dirty checking is performed for an entity.
    Configures discriminator behavior for sealed type hierarchies.
    The discriminator column types supported for sealed type hierarchies.
    Configures how changes are detected and how UPDATE statements are generated for a specific entity.
    Represents an element in a ST/ORM SQL query.
    Entity<ID>
    Optional marker interface for record-based entities.
    EntityCallback<E extends Entity<?>>
    Typed callback interface for entity lifecycle events.
    Declares the EntityCallback types that apply to the annotated entity.
    Defines the strategy to use when mapping enums.
    Marks a field as a foreign key.
    Indicates that a metamodel class should be generated for the annotated record or data class.
    Defines the strategy to use when generating values for primary keys.
    Thrown when a transaction block cannot open against the transaction state it finds: MANDATORY without a transaction, NEVER inside one, a joining block that states a stricter isolation level than the transaction it joins runs at, or a block that states retries but does not own its physical transaction.
    Indicates that the underlying fields of the record component are inlined in this record.
    A value that breaks a rule of its table: a duplicate under a unique key, a reference to a row that does not exist, a null in a column that refuses it, a value a check constraint rejects, or a value too large for its column.
    A value a check constraint rejects.
    A foreign key that references a row that does not exist.
    A string longer than its column.
    A null in a column that does not accept one.
    A number with more digits before the decimal point than its column holds.
    A row that other rows still reference through a foreign key, so it cannot be removed, or have its key changed.
    A value, or a combination of values, that another row already holds under a unique key or the primary key.
    Thrown when a value breaks a rule of its table: a write the database refuses for a constraint, a null in a non-nullable field at write time, or a value that validateOrThrow finds too large for its column.
    Thrown when a cursor string cannot be turned into a position: it is malformed, was issued by an earlier cursor format, was issued for another ordering or codec registry, or carries a value of the wrong type.
    Represents a join type in a SQL query.
    Marks a record component as a json object.
    Match<T extends Data>
    A text column of a search or suggest with the form a typed word matches it in.
    Match.Anywhere<T extends Data>
    A word matches anywhere in the value: LOWER(column) LIKE LOWER('%word%').
    Match.Exact<T extends Data>
    A word matches the whole value.
    Match.Prefix<T extends Data>
    A word matches at the start of the value.
    A word matches at the start of any word in the value: the value's start, or the text after a space or one of the punctuation characters that join or separate the words of a name, a hyphen, an apostrophe, an opening parenthesis, a slash, a colon, a period or a comma, so marie matches "Anne-Marie" and brien "O'Brien".
    Metamodel<T extends Data,E>
    The metamodel provides type-safe references to entity fields for use in queries.
    Metamodel.Key<T extends Data,E>
    Marker interface for metamodel fields that correspond to columns known to be unique.
    Delegating wrapper that adds the Metamodel.Key marker to an existing Metamodel instance.
    Metamodel.Outer<T extends Data,E>
    A path named in the query that encloses the subquery it is used in, see Metamodel.outer(Navigable).
    Marks an annotation type to be represented as the specified type in the Metamodel.
    Navigable<T extends Data,E>
    The navigational part of a Metamodel: everything needed to locate a field within the entity graph and use it in a query (filter, join, order, group, select), without exposing value extraction.
    Thrown when getSingleResult is executed on a query and there is more than one result from the query.
    Thrown when getSingleResult is executed on a query and there is no result to return.
    Represents a comparison operator in a SQL query.
    Thrown when an optimistic locking conflict occurs: the row changed, or was removed, after the entity was read.
    A sort order for one metamodel field.
    Page<R>
    Represents a page of query results for offset-based pagination.
    Represents a pagination request with a zero-based page number, page size, and optional sort orders.
    Allows the persistence properties of a record component to be configured.
    Thrown when a database or sql problem occurs.
    Marks a field as the primary key of an entity.
    Specifies the inheritance strategy for a sealed entity hierarchy.
    The inheritance strategies for sealed entity hierarchies.
    The row a scroll request continues from, and on which side of it.
    Marker interface for record-based projections.
    Projection records marked with this annotation type can specify a SQL query that represents the projection.
    Declares a column a query names but the entity or projection does not carry: a query column.
    Declares several query columns in one annotation.
    Thrown when a statement Storm recognises as a write, an INSERT, UPDATE or DELETE, is executed inside a read-only transaction.
    Ref<T extends Data>
    Ref records are used to represent reference to records, allowing them to be fetched from the database.
    Enumeration of the different modes for resolving an alias.
    Scrollable<T extends Data>
    A scroll request: an ordering, a window size, and the position to continue from.
    Specifies how much data a query should select for an entity or projection.
    A slice of query results: the shape a Page, a Window and a plain slice share.
    A SQL function of one argument, applied to a column wherever a query takes a column.
    SqlFunction.Call<T extends Data,E>
    The call of a function on a path.
    Thrown to indicate an error occurred while processing a SQL template.
    Immutable, untyped configuration for the Storm ORM framework.
    Represents the type of a temporal attribute.
    Handle to the transaction a transactional block runs in: exposes the rollback-only state and registration of completion callbacks.
    Thrown when a transaction completion callback fails.
    Transaction isolation levels, mapping to the JDBC isolation constants.
    Options for a transactional block.
    Defines how a transaction block relates to a transaction that is already active when the block starts.
    Thrown when a transaction does not complete within its timeout.
    Thrown when a failure stems from concurrent activity, such as a deadlock, a serialization failure or an optimistic lock conflict.
    TypedMetamodel<T extends Data,E,V extends @Nullable Object>
    A Metamodel that also carries the declared component type of the field it represents.
    Marks a field as a unique key.
    Thrown when a transaction completes with an unexpected rollback: the block finished normally, but the physical transaction was rolled back, for example because a joined inner scope marked it rollback-only.
    Thrown when a write affects a different number of rows than it expects: an insert, update or remove of an entity that affects no row, or a batch whose affected row count differs from its size.
    Controls how changes are detected and how UPDATE statements are generated for entities.
    Marks a record component as a version field to detect optimistic locking conflicts.
    Represents a window of query results from a scrolling operation with Scrollable navigation tokens.
    Dependency-aware write operations over mixed-type sets of entities.