in src/main/java/com/intellij/rt/debugger/agent/CaptureAgent.java [356:387]
public static void addCapturePoints(String capturePoints) throws UnmodifiableClassException, IOException {
if (CaptureStorage.DEBUG) {
System.out.println("Capture agent: adding points " + capturePoints);
}
Properties properties = new Properties();
properties.load(new StringReader(capturePoints));
Set<String> classNames = new HashSet<>();
for (Map.Entry<Object, Object> entry : properties.entrySet()) {
InstrumentPoint point = addPoint((String)entry.getKey(), (String)entry.getValue());
if (point != null) {
classNames.add(getClassName(point.myClassName));
}
}
List<Class<?>> classes = new ArrayList<>(classNames.size());
for (Class<?> aClass : ourInstrumentation.getAllLoadedClasses()) {
if (classNames.contains(aClass.getName())) {
classes.add(aClass);
}
}
if (!classes.isEmpty()) {
if (CaptureStorage.DEBUG) {
System.out.println("Capture agent: retransforming " + classes);
}
ourInstrumentation.retransformClasses(classes.toArray(new Class[0]));
}
}