]> nmode's Git Repositories - signal-cli/blob - lib/src/main/java/org/asamk/signal/manager/storage/AccountDatabase.java
b4315940461a1e81d18e234acc337e3a0d9f2114
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / storage / AccountDatabase.java
1 package org.asamk.signal.manager.storage;
2
3 import com.zaxxer.hikari.HikariDataSource;
4
5 import org.asamk.signal.manager.storage.sendLog.MessageSendLogStore;
6 import org.slf4j.Logger;
7 import org.slf4j.LoggerFactory;
8
9 import java.io.File;
10 import java.sql.Connection;
11 import java.sql.SQLException;
12
13 public class AccountDatabase extends Database {
14
15 private final static Logger logger = LoggerFactory.getLogger(AccountDatabase.class);
16 private static final long DATABASE_VERSION = 1;
17
18 private AccountDatabase(final HikariDataSource dataSource) {
19 super(logger, DATABASE_VERSION, dataSource);
20 }
21
22 public static AccountDatabase init(File databaseFile) throws SQLException {
23 return initDatabase(databaseFile, AccountDatabase::new);
24 }
25
26 @Override
27 protected void upgradeDatabase(final Connection connection, final long oldVersion) throws SQLException {
28 if (oldVersion < 1) {
29 logger.debug("Updating database: Creating message send log tables");
30 MessageSendLogStore.createSql(connection);
31 }
32 }
33 }