Add H2ToSqlite converter

This commit is contained in:
HaHaWTH 2024-03-29 03:27:19 +08:00
parent 7507fb9ea2
commit eaa0cdd600
2 changed files with 35 additions and 0 deletions

View File

@ -7,6 +7,7 @@ import fr.xephi.authme.ConsoleLogger;
import fr.xephi.authme.command.ExecutableCommand; import fr.xephi.authme.command.ExecutableCommand;
import fr.xephi.authme.datasource.converter.Converter; import fr.xephi.authme.datasource.converter.Converter;
import fr.xephi.authme.datasource.converter.CrazyLoginConverter; import fr.xephi.authme.datasource.converter.CrazyLoginConverter;
import fr.xephi.authme.datasource.converter.H2ToSqlite;
import fr.xephi.authme.datasource.converter.LoginSecurityConverter; import fr.xephi.authme.datasource.converter.LoginSecurityConverter;
import fr.xephi.authme.datasource.converter.MySqlToSqlite; import fr.xephi.authme.datasource.converter.MySqlToSqlite;
import fr.xephi.authme.datasource.converter.RoyalAuthConverter; import fr.xephi.authme.datasource.converter.RoyalAuthConverter;
@ -87,6 +88,7 @@ public class ConverterCommand implements ExecutableCommand {
.put("sqlitetosql", SqliteToSql.class) .put("sqlitetosql", SqliteToSql.class)
.put("mysqltosqlite", MySqlToSqlite.class) .put("mysqltosqlite", MySqlToSqlite.class)
.put("sqlitetoh2", SqliteToH2.class) .put("sqlitetoh2", SqliteToH2.class)
.put("h2tosqlite", H2ToSqlite.class)
.put("loginsecurity", LoginSecurityConverter.class) .put("loginsecurity", LoginSecurityConverter.class)
.build(); .build();
} }

View File

@ -0,0 +1,33 @@
package fr.xephi.authme.datasource.converter;
import fr.xephi.authme.datasource.DataSource;
import fr.xephi.authme.datasource.DataSourceType;
import fr.xephi.authme.datasource.H2;
import fr.xephi.authme.initialization.DataFolder;
import fr.xephi.authme.settings.Settings;
import javax.inject.Inject;
import java.io.File;
import java.sql.SQLException;
/**
* Converts SQLite to H2
*
*/
public class H2ToSqlite extends AbstractDataSourceConverter<H2>{
private final Settings settings;
private final File dataFolder;
@Inject
H2ToSqlite(Settings settings, DataSource dataSource, @DataFolder File dataFolder) {
super(dataSource, DataSourceType.SQLITE);
this.settings = settings;
this.dataFolder = dataFolder;
}
@Override
protected H2 getSource() throws SQLException {
return new H2(settings, dataFolder);
}
}