2024-10-14 12:14:01 +03:00
|
|
|
package _VisualDVM.Passes.All;
|
2024-10-11 00:00:30 +03:00
|
|
|
import Common.Utils.Utils_;
|
2024-10-15 02:32:52 +03:00
|
|
|
import _VisualDVM.Global;
|
2024-10-14 12:14:01 +03:00
|
|
|
import _VisualDVM.Passes.Sapfor.SapforAnalysis;
|
2024-10-14 15:19:13 +03:00
|
|
|
import _VisualDVM.ProjectData.Files.DBProjectFile;
|
2025-04-16 14:45:34 +03:00
|
|
|
import _VisualDVM.ProjectData.SapforData.LineInfo.FileMetrics;
|
|
|
|
|
import _VisualDVM.ProjectData.SapforData.LineInfo.MetricsJson;
|
2023-09-17 22:13:42 +03:00
|
|
|
public class SPF_GetFileLineInfo extends SapforAnalysis {
|
|
|
|
|
@Override
|
|
|
|
|
public String phase() {
|
|
|
|
|
return "FILE_LINE_INFO";
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
public void performPreparation() throws Exception {
|
|
|
|
|
super.performPreparation(); //удаление интеррупта.
|
|
|
|
|
target.numLines = 0;
|
|
|
|
|
target.numSPF = 0;
|
|
|
|
|
target.numDVM = 0;
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void showPreparation() throws Exception {
|
2024-10-15 02:32:52 +03:00
|
|
|
Global.mainModule.getUI().getMainWindow().getProjectWindow().getAnalysisWindow().ShowNoMetrics();
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void unpack(String packed) throws Exception {
|
2025-04-16 14:45:34 +03:00
|
|
|
MetricsJson metricsJson = Utils_.gson.fromJson(packed, MetricsJson.class);
|
|
|
|
|
for (FileMetrics fileMetrics : metricsJson.allMetrics) {
|
|
|
|
|
fileMetrics.file = Utils_.toW(fileMetrics.file);
|
|
|
|
|
//--
|
|
|
|
|
DBProjectFile file = target.db.files.Data.get(fileMetrics.file);
|
|
|
|
|
file.lines_count = fileMetrics.linesCount;
|
|
|
|
|
//--
|
|
|
|
|
target.numLines+= fileMetrics.linesCount;
|
|
|
|
|
target.numSPF += fileMetrics.numSPF;
|
|
|
|
|
target.numDVM += fileMetrics.numDVM;
|
|
|
|
|
//--
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
target.UpdateDVMCount();
|
|
|
|
|
target.UpdateSPFCount();
|
|
|
|
|
target.UpdateLinesCount();
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void showDone() throws Exception {
|
2024-10-15 02:32:52 +03:00
|
|
|
Global.mainModule.getUI().getMainWindow().getProjectWindow().getAnalysisWindow().ShowMetrics();
|
2023-09-17 22:13:42 +03:00
|
|
|
super.showDone();
|
|
|
|
|
}
|
|
|
|
|
@Override
|
|
|
|
|
protected void FocusResult() {
|
|
|
|
|
super.FocusResult();
|
2024-10-15 02:32:52 +03:00
|
|
|
Global.mainModule.getUI().getMainWindow().getProjectWindow().FocusAnalysis();
|
2023-09-17 22:13:42 +03:00
|
|
|
}
|
|
|
|
|
}
|