クラスオブジェクトを複数生成できるように,トレース内部にできるだけ影響を与えずに,クラスオブジェクトのオブジェクトIDを付け替えるようにした.
基本的に Alias と Reference が持つオブジェクトIDのみ付け替えることで対応しようとしたが,MethodExecution の
thisObjId も書き換える必要が生じ,そのため DummyMethodExecution や DummyTracePoint
オブジェクトを生成することで,トレース内部への影響を極小化しようとしたが,メソッドの呼び出し関係の整合性を保とうとすると泥沼にはまってしまった.
まだ不具合がいくつか残されている可能性がある.
1 parent c8346aa commit 770fa4bb666e7c67de5eb0ea10b9a9a3d3e8c911
Naoya Nitta authored on 12 Sep 2021
Showing 17 changed files
View
src/org/ntlab/deltaViewer/CollaborationAliasCollector.java
View
src/org/ntlab/deltaViewer/CollaborationObjectCallGraph.java
View
src/org/ntlab/deltaViewer/CollaborationViewer.java
View
src/org/ntlab/deltaViewer/DeltaAliasCollector.java
View
src/org/ntlab/deltaViewer/DummyFieldAccess.java 0 → 100644
View
src/org/ntlab/deltaViewer/DummyFieldUpdate.java 0 → 100644
View
src/org/ntlab/deltaViewer/DummyMethodExecution.java
View
src/org/ntlab/deltaViewer/DummyMethodInvocation.java
View
src/org/ntlab/deltaViewer/DummyTracePoint.java
View
src/org/ntlab/deltaViewer/MagnetRONFrame.java
View
src/org/ntlab/deltaViewer/MagnetRONViewer.java
View
src/org/ntlab/trace/MethodExecution.java
View
src/org/ntlab/trace/ThreadInstance.java
View
src/tests/CollaborationAliasCollectorTest.java
View
src/tests/CollaborationObjectCallGraphTest.java
View
src/tests/DeltaAliasCollectorTest.java
View
src/tests/MagnetRONFrameTest.java