in modules/privilizer/weaver/src/main/java/org/apache/commons/weaver/privilizer/Privilizer.java [193:208]
void blueprint(final Class<?> type, final Privilizing privilizing) {
final Object[] args = { type.getName(), privilizing };
env.debug("blueprinting class %s %s", args);
try (InputStream bytecode = env.getClassfile(type).getInputStream()) {
final ClassReader classReader = new ClassReader(bytecode);
ClassVisitor cvr;
cvr = new WriteClass(classReader, ClassWriter.COMPUTE_FRAMES | ClassWriter.COMPUTE_MAXS);
cvr = new PrivilizingVisitor(this, cvr);
cvr = new BlueprintingVisitor(this, cvr, privilizing);
classReader.accept(cvr, ClassReader.EXPAND_FRAMES);
} catch (final Exception e) {
throw new IllegalStateException(e);
}
}