Skip to content

Commit ff55cc0

Browse files
committed
renamed class and added Optional<Property>
1 parent c0b2cf7 commit ff55cc0

File tree

5 files changed

+31
-31
lines changed

5 files changed

+31
-31
lines changed

src/main/java/me/cobeine/sqlava/connection/auth/AuthenticatedConnection.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,5 @@
88

99
public interface AuthenticatedConnection<C> extends Connection<C> {
1010

11-
CredentialsRecord getCredentialsRecord();
11+
CredentialsHolder getCredentialsHolder();
1212
}

src/main/java/me/cobeine/sqlava/connection/auth/CredentialsRecord.java renamed to src/main/java/me/cobeine/sqlava/connection/auth/CredentialsHolder.java

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,16 @@
11
package me.cobeine.sqlava.connection.auth;
22

33

4-
import java.util.ArrayList;
5-
import java.util.HashMap;
6-
import java.util.List;
7-
import java.util.Map;
4+
import java.util.*;
85

96
/**
107
* @Author <a href="https://github.com/Cobeine">Cobeine</a>
118
*/
129

13-
public class CredentialsRecord {
10+
public class CredentialsHolder {
1411
private final Map<CredentialsKey,Object> record;
1512

16-
public CredentialsRecord() {
13+
public CredentialsHolder() {
1714
record = new HashMap<>();
1815
}
1916
public <T> T getProperty(CredentialsKey key, Class<T> dataType) {
@@ -30,6 +27,12 @@ public <T> T getProperty(CredentialsKey key, Class<T> dataType) {
3027
}
3128
return dataType.cast(record.get(key));
3229
}
30+
public <T> Optional<T> get(CredentialsKey key, Class<T> dataType) {
31+
if (!record.containsKey(key)) {
32+
return Optional.empty();
33+
}
34+
return Optional.of(dataType.cast(record.get(key)));
35+
}
3336

3437
public static CredentialsRecordBuilder builder() {
3538
return new CredentialsRecordBuilder();
@@ -41,17 +44,17 @@ public List<CredentialsKey> keySet() {
4144

4245
public static class CredentialsRecordBuilder {
4346

44-
private final CredentialsRecord recorder;
47+
private final CredentialsHolder recorder;
4548

4649
public CredentialsRecordBuilder() {
47-
this.recorder = new CredentialsRecord();
50+
this.recorder = new CredentialsHolder();
4851
}
4952

5053
public CredentialsRecordBuilder add(CredentialsKey key, Object value) {
5154
recorder.record.put(key, value);
5255
return this;
5356
}
54-
public CredentialsRecord build() {
57+
public CredentialsHolder build() {
5558
return recorder;
5659
}
5760
}

src/main/java/me/cobeine/sqlava/connection/database/MySQLConnection.java

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
import me.cobeine.sqlava.connection.auth.AuthenticatedConnection;
88
import me.cobeine.sqlava.connection.auth.BasicMySQLCredentials;
99
import me.cobeine.sqlava.connection.auth.CredentialsKey;
10-
import me.cobeine.sqlava.connection.auth.CredentialsRecord;
10+
import me.cobeine.sqlava.connection.auth.CredentialsHolder;
1111
import me.cobeine.sqlava.connection.database.query.PreparedQuery;
1212
import me.cobeine.sqlava.connection.database.query.Query;
1313
import me.cobeine.sqlava.connection.database.table.TableCommands;
@@ -26,13 +26,13 @@
2626
public class MySQLConnection implements AuthenticatedConnection<HikariDataSource>, PooledConnection<HikariDataSource, Connection>{
2727

2828
private ConnectionPool<HikariDataSource,Connection> pool;
29-
private final CredentialsRecord credentialsRecord;
29+
private final CredentialsHolder credentialsHolder;
3030
private final Logger logger;
3131
private HikariDataSource dataSource;
3232
private final TableCommands TableCommands;
3333

34-
public MySQLConnection(CredentialsRecord record) {
35-
this.credentialsRecord = record;
34+
public MySQLConnection(CredentialsHolder record) {
35+
this.credentialsHolder = record;
3636
this.TableCommands = new TableCommands(this);
3737
logger = Logger.getLogger(this.getClass().getName());
3838
}
@@ -48,24 +48,24 @@ public void connect(Callback<Integer, Exception> callback) {
4848
@Override
4949
public ConnectionResult connect() {
5050
HikariConfig config = new HikariConfig();
51-
if (credentialsRecord.getProperty(BasicMySQLCredentials.DATASOURCE_CLASS_NAME,String.class) != null) {
52-
config.setDataSourceClassName(credentialsRecord.getProperty(BasicMySQLCredentials.DATASOURCE_CLASS_NAME, String.class));
51+
if (credentialsHolder.getProperty(BasicMySQLCredentials.DATASOURCE_CLASS_NAME,String.class) != null) {
52+
config.setDataSourceClassName(credentialsHolder.getProperty(BasicMySQLCredentials.DATASOURCE_CLASS_NAME, String.class));
5353
}
54-
if (credentialsRecord.getProperty(BasicMySQLCredentials.DRIVER, String.class) != null) {
55-
config.setDriverClassName(credentialsRecord.getProperty(BasicMySQLCredentials.DRIVER, String.class));
54+
if (credentialsHolder.getProperty(BasicMySQLCredentials.DRIVER, String.class) != null) {
55+
config.setDriverClassName(credentialsHolder.getProperty(BasicMySQLCredentials.DRIVER, String.class));
5656
}
57-
if (credentialsRecord.getProperty(BasicMySQLCredentials.JDBC_URL,String.class) != null) {
58-
config.setJdbcUrl(credentialsRecord.getProperty(BasicMySQLCredentials.JDBC_URL,String.class));
57+
if (credentialsHolder.getProperty(BasicMySQLCredentials.JDBC_URL,String.class) != null) {
58+
config.setJdbcUrl(credentialsHolder.getProperty(BasicMySQLCredentials.JDBC_URL,String.class));
5959
}
60-
if (credentialsRecord.getProperty(BasicMySQLCredentials.MAX_LIFETIME,Integer.class) != null) {
61-
config.setMaxLifetime(credentialsRecord.getProperty(BasicMySQLCredentials.MAX_LIFETIME,Integer.class));
60+
if (credentialsHolder.getProperty(BasicMySQLCredentials.MAX_LIFETIME,Integer.class) != null) {
61+
config.setMaxLifetime(credentialsHolder.getProperty(BasicMySQLCredentials.MAX_LIFETIME,Integer.class));
6262
}
63-
if (credentialsRecord.getProperty(BasicMySQLCredentials.POOL_SIZE,Integer.class) != null) {
64-
config.setMaximumPoolSize(credentialsRecord.getProperty(BasicMySQLCredentials.POOL_SIZE, Integer.class));
63+
if (credentialsHolder.getProperty(BasicMySQLCredentials.POOL_SIZE,Integer.class) != null) {
64+
config.setMaximumPoolSize(credentialsHolder.getProperty(BasicMySQLCredentials.POOL_SIZE, Integer.class));
6565
}
66-
for (CredentialsKey credentialsKey : credentialsRecord.keySet()) {
66+
for (CredentialsKey credentialsKey : credentialsHolder.keySet()) {
6767
if (credentialsKey.isProperty()) {
68-
config.addDataSourceProperty(credentialsKey.getKey(), credentialsRecord.getProperty(credentialsKey,credentialsKey.getDataType()));
68+
config.addDataSourceProperty(credentialsKey.getKey(), credentialsHolder.getProperty(credentialsKey,credentialsKey.getDataType()));
6969
}
7070
}
7171

src/main/java/me/cobeine/sqlava/connection/presets/HikariDataSourcePresets.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
package me.cobeine.sqlava.connection.presets;
22

3-
import me.cobeine.sqlava.connection.auth.BasicMySQLCredentials;
4-
import me.cobeine.sqlava.connection.auth.CredentialsRecord;
5-
63
/**
74
* @Author <a href="https://github.com/Cobeine">Cobeine</a>
85
*/

src/test/java/Examples.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import me.cobeine.sqlava.connection.auth.BasicMySQLCredentials;
2-
import me.cobeine.sqlava.connection.auth.CredentialsRecord;
2+
import me.cobeine.sqlava.connection.auth.CredentialsHolder;
33
import me.cobeine.sqlava.connection.database.MySQLConnection;
44
import me.cobeine.sqlava.connection.database.query.PreparedQuery;
55
import me.cobeine.sqlava.connection.database.query.Query;
@@ -20,7 +20,7 @@ public Examples()throws Exception {
2020
.setAuto_reconnect(true)
2121
.database("database")
2222
.build();
23-
CredentialsRecord mysql_creds = CredentialsRecord.builder()
23+
CredentialsHolder mysql_creds = CredentialsHolder.builder()
2424
.add(BasicMySQLCredentials.USERNAME,"username")
2525
.add(BasicMySQLCredentials.PASSWORD,"password")
2626
.add(BasicMySQLCredentials.DATABASE,"database")

0 commit comments

Comments
 (0)