промежуточный. частичный рефакторинг с прицелом на библиотечную часть
This commit is contained in:
37
src/Common/Database/Tables/DBTable.java
Normal file
37
src/Common/Database/Tables/DBTable.java
Normal file
@@ -0,0 +1,37 @@
|
||||
package Common.Database.Tables;
|
||||
import Common.Database.Database;
|
||||
import Common.Database.Objects.DBObject;
|
||||
|
||||
import java.lang.reflect.Field;
|
||||
public abstract class DBTable<K, D extends DBObject> extends DataSet<K, D> {
|
||||
//-
|
||||
public DBTableColumn PK = null;
|
||||
private Database db = null; //база данных - владелец таблицы.
|
||||
public DBTable(Class<K> k_in, Class<D> d_in) {
|
||||
super(k_in, d_in);
|
||||
for (Field field : d.getFields()) {
|
||||
DBTableColumn column = new DBTableColumn(field);
|
||||
if ((!column.Ignore) && !columns.containsKey(column.Name)) {
|
||||
columns.put(column.Name, column);
|
||||
if (column.PrimaryKey) PK = column;
|
||||
}
|
||||
}
|
||||
}
|
||||
public Database getDb() {
|
||||
return db;
|
||||
}
|
||||
public void setDb(Database db_in) {
|
||||
db = db_in;
|
||||
}
|
||||
@Override
|
||||
public String getPKName() {
|
||||
return PK.Name;
|
||||
}
|
||||
@Override
|
||||
public String toString() {
|
||||
StringBuilder res = new StringBuilder(Name + "\n");
|
||||
for (DBTableColumn c : columns.values())
|
||||
res.append(c).append("\n");
|
||||
return res.toString();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user