diff --git a/pom.xml b/pom.xml index 54eb9ad..21c5a82 100644 --- a/pom.xml +++ b/pom.xml @@ -76,6 +76,18 @@ slf4j-api 2.0.13 + + + + org.checkerframework + checker + 3.42.0 + + + org.checkerframework + checker-qual + 3.42.0 + diff --git a/src/main/java/com/mykola2312/mptv/Main.java b/src/main/java/com/mykola2312/mptv/Main.java index 9e11faf..6d21037 100644 --- a/src/main/java/com/mykola2312/mptv/Main.java +++ b/src/main/java/com/mykola2312/mptv/Main.java @@ -1,6 +1,7 @@ package com.mykola2312.mptv; import com.mykola2312.mptv.config.Config; +import com.mykola2312.mptv.db.DB; import com.mykola2312.mptv.ui.MainFrame; import org.apache.commons.cli.*; import org.apache.log4j.Logger; diff --git a/src/main/java/com/mykola2312/mptv/DB.java b/src/main/java/com/mykola2312/mptv/db/DB.java similarity index 94% rename from src/main/java/com/mykola2312/mptv/DB.java rename to src/main/java/com/mykola2312/mptv/db/DB.java index 8d8d45f..af8dae8 100644 --- a/src/main/java/com/mykola2312/mptv/DB.java +++ b/src/main/java/com/mykola2312/mptv/db/DB.java @@ -1,4 +1,4 @@ -package com.mykola2312.mptv; +package com.mykola2312.mptv.db; import java.sql.Connection; import java.sql.DriverManager; diff --git a/src/main/java/com/mykola2312/mptv/db/DBPool.java b/src/main/java/com/mykola2312/mptv/db/DBPool.java new file mode 100644 index 0000000..d576de7 --- /dev/null +++ b/src/main/java/com/mykola2312/mptv/db/DBPool.java @@ -0,0 +1,42 @@ +package com.mykola2312.mptv.db; + +import org.checkerframework.checker.nullness.qual.*; +import java.sql.Connection; +import java.sql.SQLException; +import java.util.LinkedList; + +import org.jooq.ConnectionProvider; +import org.jooq.exception.DataAccessException; + +// I can't believe that in 2024 I have to do it myself +public class DBPool implements ConnectionProvider { + private String url; + private String user; + private String password; + + public static final int POOL_LIMIT = 4; + private LinkedList connections; + + public DBPool(String url, String user, String password) { + this.url = url; + this.user = user; + this.password = password; + + connections = new LinkedList(); + } + + protected Connection spawnConnection() throws SQLException { + return null; + } + + @Override + public @Nullable Connection acquire() throws DataAccessException { + throw new UnsupportedOperationException("Unimplemented method 'acquire'"); + } + + @Override + public void release(Connection arg0) throws DataAccessException { + throw new UnsupportedOperationException("Unimplemented method 'release'"); + } + +}