рефакторинг. вынес в обобщенную часть бд, но еще не все

This commit is contained in:
2024-10-08 01:30:25 +03:00
parent d0c08a2c7e
commit 18ceb04325
91 changed files with 442 additions and 456 deletions

View File

@@ -0,0 +1,23 @@
package Common.Database;
import Common.Database.SQLITE.SQLiteDatabase;
import GlobalData.Grid.TablesVisualDatasDBTable;
import GlobalData.Splitter.SplittersDBTable;
import Visual_DVM_2021.Passes.PassCode_2021;
import java.io.File;
public class VisualiserDatabase extends SQLiteDatabase {
public TablesVisualDatasDBTable tablesVisualData;
public SplittersDBTable splitters;
public VisualiserDatabase(File file_in) {
super(file_in);
}
@Override
protected void initAllTables() throws Exception {
addTable(tablesVisualData = new TablesVisualDatasDBTable());
addTable(splitters = new SplittersDBTable());
}
@Override
public PassCode_2021 getSynchronizePassCode() {
return null;
}
}

View File

@@ -1,5 +1,7 @@
package Common.Utils;
import Common.CommonConstants;
import Common.Database.Database;
import Common.Database.VisualiserDatabase;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import org.apache.commons.io.FileUtils;
@@ -29,6 +31,9 @@ public class CommonUtils {
public static Loggable MainLog;
public static Semaphore date_semaphore = new Semaphore(1);
public static long last_ticks = CommonConstants.Nan;
//--------------------------------------------------
//главная база данных
public static VisualiserDatabase db = null;
//------------------------------------------------------------------------
public static Object requireNonNullElse(Object value, Object default_value) {
return (value != null) ? value : default_value;

View File

@@ -7,7 +7,6 @@ import Common.Database.Tables.DBTable;
import Common.Database.Tables.DataSet;
import Common.Database.Tables.FKBehaviour;
import Common_old.UI.UI;
import _VisualDVM.Global;
import Common_old.UI.Menus.TableMenu;
import Common_old.UI.Tables.ColumnInfo;
import Common_old.UI.Tables.DataTable;
@@ -65,21 +64,23 @@ public class DataSetControlForm extends ControlWithCurrentForm<DataTable> {
return getDataSource().CurrentName();
}
public void SaveColumns() {
if (Global.db != null) {
if (CommonUtils.db != null) {
try {
if ((CurrentName() != null)) {
String tableName= CurrentName().toString();
System.out.println(tableName+" savingColumns...");
Vector<String> widths = IntStream.range(0, columns.size()).mapToObj(i -> String.valueOf(control.getColumnModel().getColumn(i).getWidth())).collect(Collectors.toCollection(Vector::new));
String packed = String.join("|", widths);
TableVisualData tableVisualData;
if (Global.db.tablesVisualData.containsKey(tableName)) {
tableVisualData = Global.db.tablesVisualData.get(tableName);
if (CommonUtils.db.tablesVisualData.containsKey(tableName)) {
tableVisualData = CommonUtils.db.tablesVisualData.get(tableName);
} else {
tableVisualData = new TableVisualData(tableName);
Global.db.Insert(tableVisualData);
CommonUtils.db.Insert(tableVisualData);
}
tableVisualData.sizes = packed;
Global.db.Update(tableVisualData);
CommonUtils.db.Update(tableVisualData);
System.out.println("done");
}
} catch (Exception ex) {
ex.printStackTrace();
@@ -150,10 +151,9 @@ public class DataSetControlForm extends ControlWithCurrentForm<DataTable> {
//-----------------------------NEW-------------------------------------
@Override
public void CorrectColumnsSizes() {
if ((Global.db != null) && CurrentName() != null && Global.db.tablesVisualData.containsKey(CurrentName())) {
//Undefined может оказаться в таблице, например если енум устарел. Поэтому надо проверять.
if ((CommonUtils.db != null) && CurrentName() != null && CommonUtils.db.tablesVisualData.containsKey(CurrentName().toString())) {
if (!getColumnsProfile().equalsIgnoreCase(colNamesAndSizes)) {
TableVisualData grid = Global.db.tablesVisualData.get(CurrentName());
TableVisualData grid = CommonUtils.db.tablesVisualData.get(CurrentName().toString());
String[] data = grid.sizes.split("\\|");
for (int i = 0; i < columns.size(); ++i) {
if (i <= (data.length - 1)) {