метрика json

This commit is contained in:
2025-04-16 14:45:34 +03:00
parent da4e8b07bc
commit e8c748eb7e
4 changed files with 37 additions and 17 deletions

4
.idea/workspace.xml generated
View File

@@ -7,8 +7,10 @@
</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 afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/SapforData/LineInfo/FileMetrics.java" afterDir="false" />
<change afterPath="$PROJECT_DIR$/src/_VisualDVM/ProjectData/SapforData/LineInfo/MetricsJson.java" afterDir="false" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" beforeDir="false" afterPath="$PROJECT_DIR$/.idea/workspace.xml" afterDir="false" />
<change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SPF_InsertIncludesPass.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SPF_InsertIncludesPass.java" afterDir="false" /> <change beforePath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SPF_GetFileLineInfo.java" beforeDir="false" afterPath="$PROJECT_DIR$/src/_VisualDVM/Passes/All/SPF_GetFileLineInfo.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" />

View File

@@ -3,6 +3,8 @@ import Common.Utils.Utils_;
import _VisualDVM.Global; import _VisualDVM.Global;
import _VisualDVM.Passes.Sapfor.SapforAnalysis; import _VisualDVM.Passes.Sapfor.SapforAnalysis;
import _VisualDVM.ProjectData.Files.DBProjectFile; import _VisualDVM.ProjectData.Files.DBProjectFile;
import _VisualDVM.ProjectData.SapforData.LineInfo.FileMetrics;
import _VisualDVM.ProjectData.SapforData.LineInfo.MetricsJson;
public class SPF_GetFileLineInfo extends SapforAnalysis { public class SPF_GetFileLineInfo extends SapforAnalysis {
@Override @Override
public String phase() { public String phase() {
@@ -21,22 +23,17 @@ public class SPF_GetFileLineInfo extends SapforAnalysis {
} }
@Override @Override
protected void unpack(String packed) throws Exception { protected void unpack(String packed) throws Exception {
//---------------------------------------- MetricsJson metricsJson = Utils_.gson.fromJson(packed, MetricsJson.class);
String[] data_ = packed.split("@"); for (FileMetrics fileMetrics : metricsJson.allMetrics) {
DBProjectFile file_ = null; fileMetrics.file = Utils_.toW(fileMetrics.file);
for (int i = 0; i < data_.length; ++i) { //--
String s = data_[i]; DBProjectFile file = target.db.files.Data.get(fileMetrics.file);
if (i % 2 == 0) { file.lines_count = fileMetrics.linesCount;
file_ = target.db.files.Data.get(Utils_.toW(s)); //--
} else { target.numLines+= fileMetrics.linesCount;
String[] local = s.split("_"); target.numSPF += fileMetrics.numSPF;
int num = Integer.parseInt(local[0]); target.numDVM += fileMetrics.numDVM;
target.numSPF += Integer.parseInt(local[1]); //--
target.numDVM += Integer.parseInt(local[2]);
if (file_ != null)
file_.lines_count = num;
target.numLines += num;
}
} }
target.UpdateDVMCount(); target.UpdateDVMCount();
target.UpdateSPFCount(); target.UpdateSPFCount();

View File

@@ -0,0 +1,12 @@
package _VisualDVM.ProjectData.SapforData.LineInfo;
import com.google.gson.annotations.Expose;
public class FileMetrics {
@Expose
public String file;
@Expose
public int linesCount;
@Expose
public int numSPF;
@Expose
public int numDVM;
}

View File

@@ -0,0 +1,9 @@
package _VisualDVM.ProjectData.SapforData.LineInfo;
import com.google.gson.annotations.Expose;
import java.util.List;
import java.util.Vector;
public class MetricsJson {
@Expose
public List<FileMetrics> allMetrics = new Vector<>();
}