Stormify J
Java-facing wrapper around Stormify. Exposes all CRUD, query, and transaction operations as idiomatic Java methods: takes Class<T> parameters (instead of Kotlin KClass<T>), returns Java collections, and accepts Consumer<T> / Runnable in place of Kotlin lambdas.
Construct directly from a javax.sql.DataSource:
StormifyJ stormify = new StormifyJ(hikariDataSource);
stormify.asDefault();From Kotlin code, prefer Stormify directly — this wrapper exists for Java consumers.
Constructors
Convenience constructor that accepts any javax.sql.DataSource (HikariCP, plain JDBC driver, etc.).
Types
Properties
Whether strict mapping mode is enabled. See Stormify.isStrictMode.
Current NamingPolicy. See Stormify.namingPolicy.
The auto-detected SQL dialect for this data source. See Stormify.sqlDialect.
Functions
Registers the underlying Stormify instance as the library-wide default and caches this wrapper in StormifyJ.getDefault, so Java callers can retrieve the Java-friendly wrapper (not just the raw Stormify) via a single static call. Returns this wrapper for fluent chaining.
Runs block with this wrapper as the default, restoring the previous default when the block exits. Use for scoped overrides such as per-request tenants.
DELETE's the row corresponding to deletedItem using its primary key.
Batch DELETE of items.
Executes an INSERT / UPDATE / DELETE and returns the affected row count.
Returns the detail rows of type detailsClass that reference parent. Use propertyName to disambiguate when the detail class has multiple foreign keys pointing at the same parent type.
Type-safe variant of getDetails that accepts an annotation-processor-generated reference path (e.g. Paths.AuditEntry_.createdBy()) instead of a string. The compiler guarantees the referenced property exists on the child type, so typos and renames surface at build time rather than on first query.