diff --git a/README.md b/README.md index 0490174..989058c 100644 --- a/README.md +++ b/README.md @@ -56,7 +56,7 @@ The examples of declaring that repository and the dependency on this package in io.github.sttk sabi - 0.8.0 + 1.0.0 ``` @@ -68,7 +68,7 @@ repositories { mavenCentral() } dependencies { - implementation 'io.github.sttk:sabi:0.8.0' + implementation 'io.github.sttk:sabi:1.0.0' } ``` @@ -254,9 +254,9 @@ This program is free software under MIT License.
See the file LICENSE in this distribution for more details. -[mvn-img]: https://img.shields.io/badge/maven_central-0.8.0-276bdd.svg -[mvn-url]: https://central.sonatype.com/artifact/io.github.sttk/sabi/0.8.0 -[mvnrepo-img]: https://img.shields.io/badge/mvn_repository-0.8.0-498df4.svg +[mvn-img]: https://img.shields.io/badge/maven_central-1.0.0-276bdd.svg +[mvn-url]: https://central.sonatype.com/artifact/io.github.sttk/sabi/1.0.0 +[mvnrepo-img]: https://img.shields.io/badge/mvn_repository-1.0.0-498df4.svg [mvnrepo-url]: https://mvnrepository.com/artifact/io.github.sttk/sabi [io-img]: https://img.shields.io/badge/github.io-Javadoc-4d7a97.svg [io-url]: https://sttk.github.io/sabi-java/ diff --git a/src/main/java/com/github/sttk/sabi/AsyncGroup.java b/src/main/java/com/github/sttk/sabi/AsyncGroup.java index 51ce56f..ab4c9d5 100644 --- a/src/main/java/com/github/sttk/sabi/AsyncGroup.java +++ b/src/main/java/com/github/sttk/sabi/AsyncGroup.java @@ -19,6 +19,8 @@ *

All registered {@link Runner} tasks are managed by this group and executed asynchronously. If * any registered task fails, is interrupted, or throws an unhandled runtime exception, * corresponding error records defined in this interface are produced to report the failure. + * + * @since 1.0 */ public sealed interface AsyncGroup permits AsyncGroupImpl { diff --git a/src/main/java/com/github/sttk/sabi/DataAcc.java b/src/main/java/com/github/sttk/sabi/DataAcc.java index 1e58c89..329517d 100644 --- a/src/main/java/com/github/sttk/sabi/DataAcc.java +++ b/src/main/java/com/github/sttk/sabi/DataAcc.java @@ -13,6 +13,8 @@ * specific names within a data access scope (such as a {@link DataHub}). Application business logic * uses this interface to obtain connection objects required to perform database or external service * operations. + * + * @since 1.0 */ public interface DataAcc { diff --git a/src/main/java/com/github/sttk/sabi/DataConn.java b/src/main/java/com/github/sttk/sabi/DataConn.java index d72166c..91671d1 100644 --- a/src/main/java/com/github/sttk/sabi/DataConn.java +++ b/src/main/java/com/github/sttk/sabi/DataConn.java @@ -15,6 +15,8 @@ * relational databases, NoSQL stores, or web services. During a transaction, connections progress * through pre-commit, commit, and post-commit phases, and support rollback and failure reporting * when errors occur. + * + * @since 1.0 */ public interface DataConn { diff --git a/src/main/java/com/github/sttk/sabi/DataHub.java b/src/main/java/com/github/sttk/sabi/DataHub.java index 9b22674..0cfaefe 100644 --- a/src/main/java/com/github/sttk/sabi/DataHub.java +++ b/src/main/java/com/github/sttk/sabi/DataHub.java @@ -19,6 +19,8 @@ * {@link #run(Logic)} for non-transactional operations and {@link #txn(Logic)} for transactional * operations. In a transaction, connection commits, rollbacks, and failure reporting are handled * automatically. + * + * @since 1.0 */ public class DataHub implements DataAcc, AutoCloseable { diff --git a/src/main/java/com/github/sttk/sabi/DataSrc.java b/src/main/java/com/github/sttk/sabi/DataSrc.java index 609bde4..62675ae 100644 --- a/src/main/java/com/github/sttk/sabi/DataSrc.java +++ b/src/main/java/com/github/sttk/sabi/DataSrc.java @@ -14,6 +14,8 @@ * for specific data stores or external services (such as relational databases, HTTP clients, or * caching services). Data sources can be registered globally via {@link Sabi#uses(String, DataSrc)} * or bound locally to a {@link DataHub}. + * + * @since 1.0 */ public interface DataSrc { diff --git a/src/main/java/com/github/sttk/sabi/ErrEntry.java b/src/main/java/com/github/sttk/sabi/ErrEntry.java index 3dd4d18..1456b7c 100644 --- a/src/main/java/com/github/sttk/sabi/ErrEntry.java +++ b/src/main/java/com/github/sttk/sabi/ErrEntry.java @@ -13,6 +13,8 @@ *

Instances of this class record the positional index, logical name, and cause of an error when * batch operations (such as global/local data source setup or connection pre-commit, commit, and * post-commit phases) encounter errors across multiple connections. + * + * @since 1.0 */ public class ErrEntry { diff --git a/src/main/java/com/github/sttk/sabi/Logic.java b/src/main/java/com/github/sttk/sabi/Logic.java index 0fa564b..6f6c9b1 100644 --- a/src/main/java/com/github/sttk/sabi/Logic.java +++ b/src/main/java/com/github/sttk/sabi/Logic.java @@ -15,6 +15,8 @@ * interface {@code data} gives access to data connections and resources needed during execution. * * @param the type of data access interface passed to the logic execution method + * + * @since 1.0 */ @FunctionalInterface public interface Logic { diff --git a/src/main/java/com/github/sttk/sabi/Runner.java b/src/main/java/com/github/sttk/sabi/Runner.java index eae7833..0cf119c 100644 --- a/src/main/java/com/github/sttk/sabi/Runner.java +++ b/src/main/java/com/github/sttk/sabi/Runner.java @@ -12,6 +12,8 @@ *

Tasks implementing this interface are added to an {@link AsyncGroup} (via {@link * AsyncGroup#add(Runner)}) during data source or data connection lifecycle events (such as setup, * commit, or rollback) to perform parallel background processing. + * + * @since 1.0 */ @FunctionalInterface public interface Runner { diff --git a/src/main/java/com/github/sttk/sabi/Sabi.java b/src/main/java/com/github/sttk/sabi/Sabi.java index 8e821dc..5eab49c 100644 --- a/src/main/java/com/github/sttk/sabi/Sabi.java +++ b/src/main/java/com/github/sttk/sabi/Sabi.java @@ -15,6 +15,8 @@ * startup, and then call {@link #setup()} or {@link #setup(String...)} to set them up. The returned * {@link AutoCloseable} handles shutting down and closing global data sources when the application * terminates or finishes using them. + * + * @since 1.0 */ public final class Sabi { private Sabi() {} diff --git a/src/main/java/com/github/sttk/sabi/TxnFailureCause.java b/src/main/java/com/github/sttk/sabi/TxnFailureCause.java index b17c785..88e5447 100644 --- a/src/main/java/com/github/sttk/sabi/TxnFailureCause.java +++ b/src/main/java/com/github/sttk/sabi/TxnFailureCause.java @@ -12,6 +12,8 @@ * *

This class encapsulates the phase or status in which a transaction failure occurred (via * {@link TxnFailureCauseState}) and the specific {@link Err} instance detailing the failure. + * + * @since 1.0 */ public class TxnFailureCause { diff --git a/src/main/java/com/github/sttk/sabi/TxnFailureCauseState.java b/src/main/java/com/github/sttk/sabi/TxnFailureCauseState.java index 42211cc..696eab7 100644 --- a/src/main/java/com/github/sttk/sabi/TxnFailureCauseState.java +++ b/src/main/java/com/github/sttk/sabi/TxnFailureCauseState.java @@ -4,7 +4,11 @@ */ package com.github.sttk.sabi; -/** Defines the states representing causes of transaction failures or successful states. */ +/** + * Defines the states representing causes of transaction failures or successful states. + * + * @since 1.0 + */ public enum TxnFailureCauseState { /** Indicates no failure occurred and the connection was committed successfully. */ diff --git a/src/main/java/com/github/sttk/sabi/TxnFailureRecovery.java b/src/main/java/com/github/sttk/sabi/TxnFailureRecovery.java index b8fe3db..776b4f9 100644 --- a/src/main/java/com/github/sttk/sabi/TxnFailureRecovery.java +++ b/src/main/java/com/github/sttk/sabi/TxnFailureRecovery.java @@ -4,7 +4,11 @@ */ package com.github.sttk.sabi; -/** Defines recommended recovery actions to handle transaction failures. */ +/** + * Defines recommended recovery actions to handle transaction failures. + * + * @since 1.0 + */ public enum TxnFailureRecovery { /** Indicates that no recovery action is required. */ diff --git a/src/main/java/com/github/sttk/sabi/TxnFailureReport.java b/src/main/java/com/github/sttk/sabi/TxnFailureReport.java index 4c4101a..caae70b 100644 --- a/src/main/java/com/github/sttk/sabi/TxnFailureReport.java +++ b/src/main/java/com/github/sttk/sabi/TxnFailureReport.java @@ -12,6 +12,8 @@ * and passed to {@link DataConn#onTxnFailure(AsyncGroup, java.util.List)}. It details the * connection's name, type, failure cause ({@link TxnFailureCause}), and rollback status ({@link * TxnFailureRollback}), and provides methods to determine recommended recovery strategies. + * + * @since 1.0 */ public class TxnFailureReport { diff --git a/src/main/java/com/github/sttk/sabi/TxnFailureRollback.java b/src/main/java/com/github/sttk/sabi/TxnFailureRollback.java index 64b776a..6b09222 100644 --- a/src/main/java/com/github/sttk/sabi/TxnFailureRollback.java +++ b/src/main/java/com/github/sttk/sabi/TxnFailureRollback.java @@ -11,6 +11,8 @@ * *

This class encapsulates the state of the rollback (via {@link TxnFailureRollbackState}) and * any error ({@link Err}) encountered when attempting to roll back the connection. + * + * @since 1.0 */ public class TxnFailureRollback { diff --git a/src/main/java/com/github/sttk/sabi/TxnFailureRollbackState.java b/src/main/java/com/github/sttk/sabi/TxnFailureRollbackState.java index c37ea80..652ae25 100644 --- a/src/main/java/com/github/sttk/sabi/TxnFailureRollbackState.java +++ b/src/main/java/com/github/sttk/sabi/TxnFailureRollbackState.java @@ -4,7 +4,11 @@ */ package com.github.sttk.sabi; -/** Defines the states representing outcomes of transaction rollback attempts. */ +/** + * Defines the states representing outcomes of transaction rollback attempts. + * + * @since 1.0 + */ public enum TxnFailureRollbackState { /** Indicates that the connection was successfully rolled back without error. */ diff --git a/src/main/java/com/github/sttk/sabi/package-info.java b/src/main/java/com/github/sttk/sabi/package-info.java index 50616de..e323aef 100644 --- a/src/main/java/com/github/sttk/sabi/package-info.java +++ b/src/main/java/com/github/sttk/sabi/package-info.java @@ -6,6 +6,7 @@ /** * Provides core interfaces and classes for the sabi framework. * - * @version 0.8 + * @version 1.0 + * @since 1.0 */ package com.github.sttk.sabi; diff --git a/src/main/java/module-info.java b/src/main/java/module-info.java index 3eaf209..425d0c9 100644 --- a/src/main/java/module-info.java +++ b/src/main/java/module-info.java @@ -10,7 +10,7 @@ * manage data source and connection lifecycles, and execute logic functions in transactional or * non-transactional scopes. * - * @version 0.8 + * @version 1.0 */ module com.github.sttk.sabi { exports com.github.sttk.sabi;