Compare commits
2 Commits
f5538bc220
...
e1627badd3
| Author | SHA1 | Date | |
|---|---|---|---|
| e1627badd3 | |||
| e265a2a3b6 |
3
.idea/workspace.xml
generated
3
.idea/workspace.xml
generated
@@ -7,10 +7,7 @@
|
|||||||
</component>
|
</component>
|
||||||
<component name="ChangeListManager">
|
<component name="ChangeListManager">
|
||||||
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
<list default="true" id="e42177c3-2328-4b27-8a01-35779b2beb99" name="Default Changelist" comment="">
|
||||||
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/Common/MainModule_.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/MainModule_.java" afterDir="false" />
|
<change beforePath="$PROJECT_DIR$/src/Common/MainModule_.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/MainModule_.java" afterDir="false" />
|
||||||
<change beforePath="$PROJECT_DIR$/src/Common/Utils/Utils_.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/Common/Utils/Utils_.java" afterDir="false" />
|
|
||||||
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/MainModule.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/MainModule.java" afterDir="false" />
|
|
||||||
</list>
|
</list>
|
||||||
<option name="SHOW_DIALOG" value="false" />
|
<option name="SHOW_DIALOG" value="false" />
|
||||||
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
<option name="HIGHLIGHT_CONFLICTS" value="true" />
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
package Common;
|
package Common;
|
||||||
|
import Common.Database.Objects.PassStats.PassStats;
|
||||||
import Common.Database.Objects.iDBObject;
|
import Common.Database.Objects.iDBObject;
|
||||||
import Common.Database.VisualiserDatabase;
|
import Common.Database.VisualiserDatabase;
|
||||||
import Common.Passes.Pass;
|
import Common.Passes.Pass;
|
||||||
import Common.Passes.PassCode_;
|
import Common.Passes.PassCode_;
|
||||||
import Common.Utils.TextLog;
|
import Common.Utils.TextLog;
|
||||||
import Common.Database.Objects.PassStats.PassStats;
|
|
||||||
import Common.Visual.Windows.PassForm;
|
import Common.Visual.Windows.PassForm;
|
||||||
import _VisualDVM.Current;
|
import _VisualDVM.Current;
|
||||||
|
|
||||||
@@ -13,47 +13,14 @@ import java.util.LinkedHashMap;
|
|||||||
import java.util.Vector;
|
import java.util.Vector;
|
||||||
//Основной объект визуализатора.
|
//Основной объект визуализатора.
|
||||||
public abstract class MainModule_<D extends VisualiserDatabase> {
|
public abstract class MainModule_<D extends VisualiserDatabase> {
|
||||||
public static MainModule_ object =null;
|
public static MainModule_ object = null; //текущий экземпляр
|
||||||
//--
|
//--
|
||||||
D db;
|
D db;
|
||||||
Class<D> db_class;
|
Class<D> db_class;
|
||||||
//--
|
|
||||||
LinkedHashMap<PassCode_, Pass> passes;
|
|
||||||
LinkedHashMap<Current_, Object> objects; //Current
|
LinkedHashMap<Current_, Object> objects; //Current
|
||||||
//--
|
//--
|
||||||
public D getDb() {
|
LinkedHashMap<PassCode_, Pass> passes;
|
||||||
return db;
|
//--
|
||||||
}
|
|
||||||
//---
|
|
||||||
private void createPasses(){
|
|
||||||
passes= new LinkedHashMap<>();
|
|
||||||
for (Object code: getPassCodesEnum().getEnumConstants()){
|
|
||||||
try {
|
|
||||||
Class<?> clazz = Class.forName(getAllPassesClassPrefix() + code.toString());
|
|
||||||
Pass pass = ((Pass) clazz.newInstance());
|
|
||||||
passes.put((PassCode_) code, pass);
|
|
||||||
} catch (Exception ex) {
|
|
||||||
ex.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public void setPassesControlsVisible(boolean flag, PassCode_... codes_in) {
|
|
||||||
for (PassCode_ code_in : codes_in)
|
|
||||||
getPass(code_in).setControlsVisible(flag);
|
|
||||||
}
|
|
||||||
public boolean HasPassForm() {
|
|
||||||
return get(Current.PassForm) != null;
|
|
||||||
}
|
|
||||||
public PassForm getPassForm() {
|
|
||||||
return (PassForm) get(Current.PassForm);
|
|
||||||
}
|
|
||||||
public Pass getPass(PassCode_ code){
|
|
||||||
return passes.get(code);
|
|
||||||
}
|
|
||||||
public String getPassDescription(String passName){
|
|
||||||
return ((PassCode_)Enum.valueOf(MainModule_.object.getPassCodesEnum(), passName)).getDescription();
|
|
||||||
}
|
|
||||||
//---
|
|
||||||
public MainModule_(Class<D> db_class_in) {
|
public MainModule_(Class<D> db_class_in) {
|
||||||
objects = new LinkedHashMap<>();
|
objects = new LinkedHashMap<>();
|
||||||
createPasses();
|
createPasses();
|
||||||
@@ -66,8 +33,10 @@ public abstract class MainModule_<D extends VisualiserDatabase> {
|
|||||||
object = this;
|
object = this;
|
||||||
System.out.println("main module created");
|
System.out.println("main module created");
|
||||||
}
|
}
|
||||||
public abstract Class getPassCodesEnum();
|
//БАЗА ДАННЫХ И ТЕКУЩИЕ ОБЪЕКТЫ
|
||||||
public abstract String getAllPassesClassPrefix();
|
public D getDb() {
|
||||||
|
return db;
|
||||||
|
}
|
||||||
public void ActivateDB() throws Exception {
|
public void ActivateDB() throws Exception {
|
||||||
db = db_class.newInstance();
|
db = db_class.newInstance();
|
||||||
db.Connect();
|
db.Connect();
|
||||||
@@ -75,13 +44,12 @@ public abstract class MainModule_<D extends VisualiserDatabase> {
|
|||||||
db.prepareTablesStatements();
|
db.prepareTablesStatements();
|
||||||
db.Synchronize();
|
db.Synchronize();
|
||||||
}
|
}
|
||||||
public void DeactivateDB() throws Exception{
|
public void DeactivateDB() throws Exception {
|
||||||
if (db != null) db.Disconnect();
|
if (db != null) db.Disconnect();
|
||||||
}
|
}
|
||||||
//--
|
|
||||||
public Object get(Current_ name) {
|
public Object get(Current_ name) {
|
||||||
if (!objects.containsKey(name))
|
if (!objects.containsKey(name))
|
||||||
objects.put(name,null);
|
objects.put(name, null);
|
||||||
return objects.get(name);
|
return objects.get(name);
|
||||||
}
|
}
|
||||||
public Object set(Current_ name, Object object) {
|
public Object set(Current_ name, Object object) {
|
||||||
@@ -96,12 +64,41 @@ public abstract class MainModule_<D extends VisualiserDatabase> {
|
|||||||
Log.Writeln_(name.getDescription() + " не выбран(а)");
|
Log.Writeln_(name.getDescription() + " не выбран(а)");
|
||||||
return Log.isEmpty();
|
return Log.isEmpty();
|
||||||
}
|
}
|
||||||
//применять только для наследников iDBObject
|
|
||||||
public boolean matchCurrentID(Current_ name, int id) {
|
public boolean matchCurrentID(Current_ name, int id) {
|
||||||
return (get(name) != null) && (((iDBObject) get(name)).id == id);
|
return (get(name) != null) && (((iDBObject) get(name)).id == id);
|
||||||
}
|
}
|
||||||
|
//ПРОХОДЫ
|
||||||
public Vector<Pass> getFirstAccessPasses(){
|
public abstract Class getPassCodesEnum();
|
||||||
|
public abstract String getAllPassesClassPrefix();
|
||||||
|
private void createPasses() {
|
||||||
|
passes = new LinkedHashMap<>();
|
||||||
|
for (Object code : getPassCodesEnum().getEnumConstants()) {
|
||||||
|
try {
|
||||||
|
Class<?> clazz = Class.forName(getAllPassesClassPrefix() + code.toString());
|
||||||
|
Pass pass = ((Pass) clazz.newInstance());
|
||||||
|
passes.put((PassCode_) code, pass);
|
||||||
|
} catch (Exception ex) {
|
||||||
|
ex.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
public void setPassesControlsVisible(boolean flag, PassCode_... codes_in) {
|
||||||
|
for (PassCode_ code_in : codes_in)
|
||||||
|
getPass(code_in).setControlsVisible(flag);
|
||||||
|
}
|
||||||
|
public boolean HasPassForm() {
|
||||||
|
return get(Current.PassForm) != null;
|
||||||
|
}
|
||||||
|
public PassForm getPassForm() {
|
||||||
|
return (PassForm) get(Current.PassForm);
|
||||||
|
}
|
||||||
|
public Pass getPass(PassCode_ code) {
|
||||||
|
return passes.get(code);
|
||||||
|
}
|
||||||
|
public String getPassDescription(String passName) {
|
||||||
|
return ((PassCode_) Enum.valueOf(MainModule_.object.getPassCodesEnum(), passName)).getDescription();
|
||||||
|
}
|
||||||
|
public Vector<Pass> getFirstAccessPasses() {
|
||||||
Vector<PassStats> sortedStats = new Vector<>(getDb().passStats.Data.values());
|
Vector<PassStats> sortedStats = new Vector<>(getDb().passStats.Data.values());
|
||||||
sortedStats.sort(new Comparator<PassStats>() {
|
sortedStats.sort(new Comparator<PassStats>() {
|
||||||
@Override
|
@Override
|
||||||
@@ -109,11 +106,12 @@ public abstract class MainModule_<D extends VisualiserDatabase> {
|
|||||||
return Integer.compare(o2.Usages, o1.Usages);
|
return Integer.compare(o2.Usages, o1.Usages);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
Vector<Pass> res= new Vector<>();
|
Vector<Pass> res = new Vector<>();
|
||||||
for (PassStats passStats: sortedStats){
|
for (PassStats passStats : sortedStats) {
|
||||||
PassCode_ passCode = (PassCode_) Enum.valueOf(getPassCodesEnum(), passStats.code);
|
PassCode_ passCode = (PassCode_) Enum.valueOf(getPassCodesEnum(), passStats.code);
|
||||||
res.add(getPass(passCode));
|
res.add(getPass(passCode));
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
//---
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user