update to cglib-3.2.4-nodep and drop ancient asm.jar

This commit is contained in:
Gregory.Shrago
2016-06-28 22:43:48 +03:00
parent a33d603401
commit 286d3788cf
21 changed files with 56 additions and 208 deletions
+2 -5
View File
@@ -1,12 +1,9 @@
<component name="libraryTable">
<library name="CGLIB">
<CLASSES>
<root url="jar://$PROJECT_DIR$/lib/cglib-2.2.2.jar!/" />
<root url="jar://$PROJECT_DIR$/lib/cglib-nodep-3.2.4.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/lib/src/cglib-src-2.2.2.jar!/src/proxy" />
<root url="jar://$PROJECT_DIR$/lib/src/cglib-src-2.2.2.jar!/src/test" />
</SOURCES>
<SOURCES />
</library>
</component>
-12
View File
@@ -1,12 +0,0 @@
<component name="libraryTable">
<library name="asm">
<CLASSES>
<root url="jar://$PROJECT_DIR$/lib/asm.jar!/" />
<root url="jar://$PROJECT_DIR$/lib/asm-commons.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES>
<root url="jar://$PROJECT_DIR$/lib/src/asm-src.zip!/" />
</SOURCES>
</library>
</component>
-11
View File
@@ -1,11 +0,0 @@
<component name="libraryTable">
<library name="asm-tools">
<CLASSES>
<root url="jar://$PROJECT_DIR$/android/android/lib/asm-5.0.3.jar!/" />
<root url="jar://$PROJECT_DIR$/android/android/lib/asm-analysis-5.0.3.jar!/" />
<root url="jar://$PROJECT_DIR$/android/android/lib/asm-tree-5.0.3.jar!/" />
</CLASSES>
<JAVADOC />
<SOURCES />
</library>
</component>
-1
View File
@@ -37,7 +37,6 @@
<include name="protobuf*.jar"/>
<include name="netty*.jar"/>
<include name="asm-all.jar"/>
<include name="asm-commons.jar"/>
<include name="jgoodies-forms.jar"/>
<include name="guava*.jar"/>
<include name="picocontainer.jar"/>
-2
View File
@@ -993,8 +993,6 @@ def layout_core(String home, String target) {
include(name: "guava-17.0.jar")
include(name: "picocontainer.jar")
include(name: "trove4j.jar")
include(name: "asm.jar")
include(name: "asm-commons.jar")
include(name: "cli-parser-1.1.jar")
include(name: "snappy-in-java-0.3.1.jar")
include(name: "jayatana-1.2.4.jar")
-1
View File
@@ -29,7 +29,6 @@
<orderEntry type="module" module-name="jsp-openapi" />
<orderEntry type="module" module-name="jsp-spi" />
<orderEntry type="module" module-name="execution-openapi" />
<orderEntry type="library" name="asm" level="project" />
<orderEntry type="module" module-name="dom-openapi" />
<orderEntry type="module" module-name="dom-impl" />
<orderEntry type="module" module-name="vcs-impl" />
Binary file not shown.
BIN
View File
Binary file not shown.
Binary file not shown.
Binary file not shown.
+1 -3
View File
@@ -1,8 +1,6 @@
asm-commons.jar
asm.jar
asm-all.jar
automaton.jar
cglib-2.2.2.jar
cglib-nodep-3.2.4.jar
cli-parser-1.1.jar
commons-codec-1.9.jar
commons-httpclient-3.1-patched.jar
-1
View File
@@ -23,7 +23,6 @@
<SOURCES />
</library>
</orderEntry>
<orderEntry type="library" name="asm" level="project" />
<orderEntry type="library" name="CGLIB" level="project" />
</component>
</module>
@@ -18,11 +18,11 @@ package com.intellij.util;
import com.intellij.openapi.application.PathManager;
import com.intellij.openapi.util.Condition;
import com.intellij.util.containers.ConcurrentFactoryMap;
import net.sf.cglib.asm.$ClassVisitor;
import net.sf.cglib.asm.$Label;
import net.sf.cglib.asm.$Type;
import net.sf.cglib.core.*;
import org.jetbrains.annotations.NotNull;
import org.objectweb.asm.ClassVisitor;
import org.objectweb.asm.Label;
import org.objectweb.asm.Type;
import java.lang.reflect.Modifier;
@@ -34,7 +34,7 @@ public class InstanceofCheckerGenerator {
static {
try {
ClassGenerator.class.getDeclaredMethod("generateClass", ClassVisitor.class);
ClassGenerator.class.getDeclaredMethod("generateClass", $ClassVisitor.class);
}
catch (NoSuchMethodException e) {
throw new IllegalStateException("Incorrect cglib version in the classpath, source=" + PathManager.getJarPathForClass(ClassGenerator.class));
@@ -106,24 +106,24 @@ public class InstanceofCheckerGenerator {
}
@Override
public void generateClass(ClassVisitor classVisitor) throws Exception {
public void generateClass($ClassVisitor classVisitor) throws Exception {
ClassEmitter cv = new ClassEmitter(classVisitor);
cv.visit(Constants.V1_2, Modifier.PUBLIC, "com/intellij/util/InstanceofChecker$$$$$" + myCheckedClass.getName().replace('.', '$'), null, toInternalName(Object.class), new String[]{toInternalName(Condition.class)});
cv.visitSource(Constants.SOURCE_FILE, null);
final Signature signature = new Signature("<init>", "()V");
final CodeEmitter cons = cv.begin_method(Modifier.PUBLIC, signature, new Type[0]);
final CodeEmitter cons = cv.begin_method(Modifier.PUBLIC, signature, new $Type[0]);
cons.load_this();
cons.dup();
cons.super_invoke_constructor(signature);
cons.return_value();
cons.end_method();
final CodeEmitter e = cv.begin_method(Modifier.PUBLIC, new Signature("value", "(L" + toInternalName(Object.class) + ";)Z"), new Type[0]);
final CodeEmitter e = cv.begin_method(Modifier.PUBLIC, new Signature("value", "(L" + toInternalName(Object.class) + ";)Z"), new $Type[0]);
e.load_arg(0);
e.instance_of(Type.getType(myCheckedClass));
e.instance_of($Type.getType(myCheckedClass));
Label fail = e.make_label();
$Label fail = e.make_label();
e.if_jump(CodeEmitter.EQ, fail);
e.push(true);
e.return_value();
@@ -16,7 +16,7 @@
package net.sf.cglib.core;
import com.intellij.reference.SoftReference;
import org.objectweb.asm.ClassReader;
import net.sf.cglib.asm.$ClassReader;
import java.lang.ref.Reference;
import java.lang.ref.WeakReference;
@@ -217,7 +217,7 @@ implements ClassGenerator
}
if (gen == null) {
byte[] b = strategy.generate(this);
String className = ClassNameReader.getClassName(new ClassReader(b));
String className = ClassNameReader.getClassName(new $ClassReader(b));
getClassNameCache(loader).add(className);
gen = ReflectUtils.defineClass(className, b, loader);
}
-1
View File
@@ -15,7 +15,6 @@
<orderEntry type="module" module-name="bootstrap" />
<orderEntry type="library" exported="" name="commons-codec" level="project" />
<orderEntry type="library" name="OroMatcher" level="project" />
<orderEntry type="library" name="asm" level="project" />
<orderEntry type="library" name="CGLIB" level="project" />
<orderEntry type="module" module-name="lvcs-api" exported="" />
<orderEntry type="library" name="JavaHelp" level="project" />
@@ -18,10 +18,10 @@ package net.sf.cglib.proxy;
import com.intellij.ide.plugins.PluginManagerCore;
import com.intellij.ide.plugins.cl.PluginClassLoader;
import com.intellij.util.ReflectionUtil;
import net.sf.cglib.asm.$ClassVisitor;
import net.sf.cglib.asm.$Label;
import net.sf.cglib.asm.$Type;
import net.sf.cglib.core.*;
import org.objectweb.asm.ClassVisitor;
import org.objectweb.asm.Label;
import org.objectweb.asm.Type;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
@@ -82,42 +82,42 @@ public class AdvancedEnhancer extends AbstractClassGenerator
private static final String SET_STATIC_CALLBACKS_NAME = "CGLIB$SET_STATIC_CALLBACKS";
private static final String CONSTRUCTED_FIELD = "CGLIB$CONSTRUCTED";
private static final Type FACTORY =
private static final $Type FACTORY =
TypeUtils.parseType("net.sf.cglib.proxy.Factory");
private static final Type ILLEGAL_STATE_EXCEPTION =
private static final $Type ILLEGAL_STATE_EXCEPTION =
TypeUtils.parseType("IllegalStateException");
private static final Type ILLEGAL_ARGUMENT_EXCEPTION =
private static final $Type ILLEGAL_ARGUMENT_EXCEPTION =
TypeUtils.parseType("IllegalArgumentException");
private static final Type THREAD_LOCAL =
private static final $Type THREAD_LOCAL =
TypeUtils.parseType("ThreadLocal");
private static final Type CALLBACK =
private static final $Type CALLBACK =
TypeUtils.parseType("net.sf.cglib.proxy.Callback");
private static final Type CALLBACK_ARRAY =
Type.getType(Callback[].class);
private static final $Type CALLBACK_ARRAY =
$Type.getType(Callback[].class);
private static final Signature CSTRUCT_NULL =
TypeUtils.parseConstructor("");
private static final Signature SET_THREAD_CALLBACKS =
new Signature(SET_THREAD_CALLBACKS_NAME, Type.VOID_TYPE, new Type[]{ CALLBACK_ARRAY });
new Signature(SET_THREAD_CALLBACKS_NAME, $Type.VOID_TYPE, new $Type[]{ CALLBACK_ARRAY });
private static final Signature SET_STATIC_CALLBACKS =
new Signature(SET_STATIC_CALLBACKS_NAME, Type.VOID_TYPE, new Type[]{ CALLBACK_ARRAY });
new Signature(SET_STATIC_CALLBACKS_NAME, $Type.VOID_TYPE, new $Type[]{ CALLBACK_ARRAY });
private static final Signature NEW_INSTANCE =
new Signature("newInstance", Constants.TYPE_OBJECT, new Type[]{ CALLBACK_ARRAY });
new Signature("newInstance", Constants.TYPE_OBJECT, new $Type[]{ CALLBACK_ARRAY });
private static final Signature MULTIARG_NEW_INSTANCE =
new Signature("newInstance", Constants.TYPE_OBJECT, new Type[]{
new Signature("newInstance", Constants.TYPE_OBJECT, new $Type[]{
Constants.TYPE_CLASS_ARRAY,
Constants.TYPE_OBJECT_ARRAY,
CALLBACK_ARRAY,
});
private static final Signature SINGLE_NEW_INSTANCE =
new Signature("newInstance", Constants.TYPE_OBJECT, new Type[]{ CALLBACK });
new Signature("newInstance", Constants.TYPE_OBJECT, new $Type[]{ CALLBACK });
private static final Signature SET_CALLBACK =
new Signature("setCallback", Type.VOID_TYPE, new Type[]{ Type.INT_TYPE, CALLBACK });
new Signature("setCallback", $Type.VOID_TYPE, new $Type[]{ $Type.INT_TYPE, CALLBACK });
private static final Signature GET_CALLBACK =
new Signature("getCallback", CALLBACK, new Type[]{ Type.INT_TYPE });
new Signature("getCallback", CALLBACK, new $Type[]{ $Type.INT_TYPE });
private static final Signature SET_CALLBACKS =
new Signature("setCallbacks", Type.VOID_TYPE, new Type[]{ CALLBACK_ARRAY });
new Signature("setCallbacks", $Type.VOID_TYPE, new $Type[]{ CALLBACK_ARRAY });
private static final Signature GET_CALLBACKS =
new Signature("getCallbacks", CALLBACK_ARRAY, new Type[0]);
new Signature("getCallbacks", CALLBACK_ARRAY, new $Type[0]);
private static final Signature THREAD_LOCAL_GET =
TypeUtils.parseSignature("Object get()");
private static final Signature THREAD_LOCAL_SET =
@@ -136,7 +136,7 @@ public class AdvancedEnhancer extends AbstractClassGenerator
Object newInstance(String type,
String[] interfaces,
CallbackFilter filter,
Type[] callbackTypes,
$Type[] callbackTypes,
boolean useFactory,
boolean interceptDuringConstruction,
Long serialVersionUID);
@@ -145,7 +145,7 @@ public class AdvancedEnhancer extends AbstractClassGenerator
private Class[] interfaces;
private CallbackFilter filter;
private Callback[] callbacks;
private Type[] callbackTypes;
private $Type[] callbackTypes;
private boolean classOnly;
private Class superclass;
private Class[] argumentTypes;
@@ -328,7 +328,7 @@ public class AdvancedEnhancer extends AbstractClassGenerator
if (callbacks.length != callbackTypes.length) {
throw new IllegalStateException("Lengths of callback and callback types array must be the same");
}
Type[] check = CallbackInfo.determineTypes(callbacks);
$Type[] check = CallbackInfo.determineTypes(callbacks);
for (int i = 0; i < check.length; i++) {
if (!check[i].equals(callbackTypes[i])) {
throw new IllegalStateException("Callback " + check[i] + " is not assignable to " + callbackTypes[i]);
@@ -429,7 +429,7 @@ public class AdvancedEnhancer extends AbstractClassGenerator
CollectionUtils.filter(methods, new VisibilityPredicate(superclass, true));
}
public void generateClass(ClassVisitor v) throws Exception {
public void generateClass($ClassVisitor v) throws Exception {
Class sc = (superclass == null) ? Object.class : superclass;
if (TypeUtils.isFinal(sc.getModifiers())) {
@@ -461,21 +461,21 @@ public class AdvancedEnhancer extends AbstractClassGenerator
e.begin_class(Constants.V1_2,
Constants.ACC_PUBLIC,
getClassName(),
Type.getType(sc),
$Type.getType(sc),
(useFactory ?
TypeUtils.add(TypeUtils.getTypes(interfaces), FACTORY) :
TypeUtils.getTypes(interfaces)),
Constants.SOURCE_FILE);
List constructorInfo = CollectionUtils.transform(constructors, MethodInfoTransformer.getInstance());
e.declare_field(Constants.ACC_PRIVATE, BOUND_FIELD, Type.BOOLEAN_TYPE, null);
e.declare_field(Constants.ACC_PRIVATE, BOUND_FIELD, $Type.BOOLEAN_TYPE, null);
if (!interceptDuringConstruction) {
e.declare_field(Constants.ACC_PRIVATE, CONSTRUCTED_FIELD, Type.BOOLEAN_TYPE, null);
e.declare_field(Constants.ACC_PRIVATE, CONSTRUCTED_FIELD, $Type.BOOLEAN_TYPE, null);
}
e.declare_field(Constants.PRIVATE_FINAL_STATIC, THREAD_CALLBACKS_FIELD, THREAD_LOCAL, null);
e.declare_field(Constants.PRIVATE_FINAL_STATIC, STATIC_CALLBACKS_FIELD, CALLBACK_ARRAY, null);
if (serialVersionUID != null) {
e.declare_field(Constants.PRIVATE_FINAL_STATIC, Constants.SUID_FIELD_NAME, Type.LONG_TYPE, serialVersionUID);
e.declare_field(Constants.PRIVATE_FINAL_STATIC, Constants.SUID_FIELD_NAME, $Type.LONG_TYPE, serialVersionUID);
}
for (int i = 0; i < callbackTypes.length; i++) {
@@ -670,7 +670,7 @@ public class AdvancedEnhancer extends AbstractClassGenerator
e.load_this();
e.load_arg(0);
e.process_switch(keys, new ProcessSwitchCallback() {
public void processCase(int key, Label end) {
public void processCase(int key, $Label end) {
e.getfield(getCallbackField(key));
e.goTo(end);
}
@@ -689,13 +689,13 @@ public class AdvancedEnhancer extends AbstractClassGenerator
e.load_arg(1);
e.load_arg(0);
e.process_switch(keys, new ProcessSwitchCallback() {
public void processCase(int key, Label end) {
public void processCase(int key, $Label end) {
e.checkcast(callbackTypes[key]);
e.putfield(getCallbackField(key));
e.goTo(end);
}
public void processDefault() {
final Type type = Type.getType(AssertionError.class);
final $Type type = $Type.getType(AssertionError.class);
e.new_instance(type);
e.dup();
e.invoke_constructor(type);
@@ -785,9 +785,9 @@ public class AdvancedEnhancer extends AbstractClassGenerator
e.dup();
e.load_arg(0);
EmitUtils.constructor_switch(e, constructors, new ObjectSwitchCallback() {
public void processCase(Object key, Label end) {
public void processCase(Object key, $Label end) {
MethodInfo constructor = (MethodInfo)key;
Type types[] = constructor.getSignature().getArgumentTypes();
$Type types[] = constructor.getSignature().getArgumentTypes();
for (int i = 0; i < types.length; i++) {
e.load_arg(1);
e.push(i);
@@ -871,7 +871,7 @@ public class AdvancedEnhancer extends AbstractClassGenerator
CodeEmitter e = EmitUtils.begin_method(ce, method);
if (!interceptDuringConstruction &&
!TypeUtils.isAbstract(method.getModifiers())) {
Label constructed = e.make_label();
$Label constructed = e.make_label();
e.load_this();
e.getfield(CONSTRUCTED_FIELD);
e.if_jump(e.NE, constructed);
@@ -931,7 +931,7 @@ public class AdvancedEnhancer extends AbstractClassGenerator
e.load_this();
e.getfield(getCallbackField(index));
e.dup();
Label end = e.make_label();
$Label end = e.make_label();
e.ifnonnull(end);
e.pop(); // stack height
e.load_this();
@@ -950,7 +950,7 @@ public class AdvancedEnhancer extends AbstractClassGenerator
e.checkcast_this();
e.store_local(me);
Label end = e.make_label();
$Label end = e.make_label();
e.load_local(me);
e.getfield(BOUND_FIELD);
e.if_jump(e.NE, end);
@@ -961,7 +961,7 @@ public class AdvancedEnhancer extends AbstractClassGenerator
e.getfield(THREAD_CALLBACKS_FIELD);
e.invoke_virtual(THREAD_LOCAL, THREAD_LOCAL_GET);
e.dup();
Label found_callback = e.make_label();
$Label found_callback = e.make_label();
e.ifnonnull(found_callback);
e.pop();
@@ -1,6 +1,6 @@
package org.groovy.debug.hotswap;
import org.objectweb.asm.*;
import com.tonicsystems.jarjar.asm.*;
import java.lang.String;
import java.lang.instrument.ClassFileTransformer;
+5 -6
View File
@@ -4,9 +4,10 @@
<property name="build.lib.path" value="${idea.home}/build/lib"/>
<property name="idea.lib.path" value="${idea.home}/lib"/>
<property name="output.jar.path" value="${module.home}/gragent.jar"/>
<property name="jarjar.path" value="${build.lib.path}/jarjar-1.0.jar"/>
<property environment="env"/>
<taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" classpath="${build.lib.path}/jarjar-1.0.jar"/>
<taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask" classpath="${jarjar.path}"/>
<target name="gragent">
<delete dir="anttask.classes" failonerror="false"/>
@@ -27,16 +28,14 @@
<fileset dir="${build.lib.path}">
<include name="*.jar"/>
</fileset>
<fileset dir="${idea.lib.path}">
<include name="asm*.jar"/>
</fileset>
<file name="${jarjar.path}"/>
</classpath>
</javac>
<jarjar jarfile="${output.jar.path}" manifest="${module.home}/agentSrc/META-INF/MANIFEST.MF">
<fileset dir="anttask.classes"/>
<zipfileset src="${idea.lib.path}/asm.jar"/>
<rule pattern="org.objectweb.**" result="groovyResetJarjarAsm.@1"/>
<zipfileset src="${jarjar.path}" includes="com/tonicsystems/jarjar/asm/*"/>
<rule pattern="com.tonicsystems.jarjar.asm.**" result="groovyResetJarjarAsm.@1"/>
</jarjar>
<delete dir="anttask.classes" failonerror="false"/>
Binary file not shown.
-116
View File
@@ -1,116 +0,0 @@
<project name="testng" default="dist">
<property file="build.properties"/>
<property name="src.dir" value="src"/>
<property name="test.dir" value="tests"/>
<property name="lib.dir" value="lib"/>
<property name="bin.dir" value="build"/>
<property name="dst.dir" value="dist"/>
<property name="idea.home" value="/Users/amrk/Applications/Selena.app"/>
<property name="idea.plugins.home" value="/Users/amrk/Applications/Selena.app/plugins"/>
<path id="compile.classpath">
<fileset dir="${idea.home}/lib">
<include name="openapi.jar"/>
<include name="idea.jar"/>
<include name="idea_rt.jar"/>
<include name="jdom.jar"/>
<include name="bcel.jar"/>
<include name="junit.jar"/>
<include name="log4j.jar"/>
<include name="extensions.jar"/>
<include name="picocontainer.jar"/>
<include name="trove4j.jar"/>
</fileset>
<fileset dir="${idea.home}/redist">
<include name="annotations.jar"/>
<include name="forms_rt.jar"/>
<include name="extensions.jar"/>
<include name="javac2.jar"/>
</fileset>
<fileset dir="lib">
<include name="testng-*.jar"/>
</fileset>
</path>
<path id="uidesigner.classpath">
<fileset dir="${idea.home}/lib">
<include name="jdom.jar"/>
<include name="bcel.jar"/>
<include name="asm.jar"/>
<include name="asm-commons.jar"/>
<include name="jgoodies-forms.jar"/>
</fileset>
<fileset dir="${idea.home}/redist">
<include name="annotations.jar"/>
<include name="forms_rt.jar"/>
<include name="extensions.jar"/>
<include name="javac2.jar"/>
</fileset>
</path>
<taskdef name="javac2"
classname="com.intellij.ant.Javac2"
classpathref="uidesigner.classpath"/>
<target name="init">
<mkdir dir="${bin.dir}/classes"/>
<mkdir dir="${bin.dir}/classes.test"/>
<mkdir dir="${bin.dir}/jars"/>
<mkdir dir="${dst.dir}"/>
</target>
<target name="clean">
<delete dir="${bin.dir}"/>
<delete dir="${dst.dir}"/>
</target>
<target name="compile" depends="init">
<javac2 srcdir="${src.dir}" destdir="${bin.dir}/classes" debug="true" classpathref="compile.classpath"
deprecation="true" source="1.5" target="jsr14"/>
<copy todir="${bin.dir}/classes">
<fileset dir="${src.dir}">
<include name="**/*.properties"/>
</fileset>
</copy>
</target>
<target name="build" depends="clean, compile"/>
<target name="dist" depends="build">
<jar jarfile="${bin.dir}/jars/${ant.project.name}.jar">
<zipfileset dir="${bin.dir}/classes"/>
<zipfileset dir="${src.dir}/resources" prefix="resources"/>
<zipfileset dir="src/META-INF" prefix="META-INF">
<include name="plugin.xml"/>
</zipfileset>
</jar>
<jar jarfile="${bin.dir}/jars/resources_en.jar">
<zipfileset dir="${src.dir}">
<include name="**/*.html"/>
</zipfileset>
</jar>
<zip destfile="${dst.dir}/${ant.project.name}.zip" compress="true">
<zipfileset dir="${lib.dir}" prefix="${ant.project.name}/lib">
<include name="testng-jdk15.jar"/>
</zipfileset>
<zipfileset dir="${bin.dir}/jars" prefix="${ant.project.name}/lib" includes="*.jar"/>
<zipfileset dir="${lib.dir}" prefix="${ant.project.name}/lib-jdk14">
<include name="testng-jdk14.jar"/>
</zipfileset>
<zipfileset dir="src/META-INF" prefix="${ant.project.name}/META-INF">
<include name="plugin.xml"/>
</zipfileset>
</zip>
</target>
<target name="deploy" depends="dist">
<unzip src="${dst.dir}/${ant.project.name}.zip" dest="${idea.plugins.home}"/>
</target>
</project>
-1
View File
@@ -8,7 +8,6 @@
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
<orderEntry type="module" module-name="dom-openapi" exported="" />
<orderEntry type="library" name="asm" level="project" />
<orderEntry type="library" exported="" name="CGLIB" level="project" />
<orderEntry type="module" module-name="xml" />
<orderEntry type="module" module-name="util" />