diff --git a/db/src/main/java/org/zhdev/varioutil/sql/ConnectionProvider.java b/db/src/main/java/org/zhdev/varioutil/sql/ConnectionProvider.java new file mode 100644 index 0000000..a3b0059 --- /dev/null +++ b/db/src/main/java/org/zhdev/varioutil/sql/ConnectionProvider.java @@ -0,0 +1,23 @@ +package org.zhdev.varioutil.sql; + +import java.sql.Connection; +import java.sql.SQLException; + +public interface ConnectionProvider { + ConnectionProvider NOT_ESTABLISHED = new NullProvider("Connection not established"); + ConnectionProvider CLOSED = new NullProvider("Connection closed"); + + Connection getConnection(); + + default boolean isClosed() { + return true; + } + + default void close() { + try { + getConnection().close(); + } catch (SQLException e) { + throw new SqlException(e); + } + } +} \ No newline at end of file