Resolve CGLIB core<->transform package cycle

See gh-28955
This commit is contained in:
Juergen Hoeller
2022-10-11 15:34:07 +02:00
parent 45939720f2
commit 4bb2e23239
14 changed files with 34 additions and 10 deletions

View File

@@ -15,8 +15,6 @@
*/
package org.springframework.cglib.core;
import org.springframework.cglib.transform.ClassTransformer;
import org.springframework.asm.ClassVisitor;
import org.springframework.asm.FieldVisitor;
import org.springframework.asm.MethodVisitor;

View File

@@ -13,9 +13,8 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.springframework.cglib.transform;
package org.springframework.cglib.core;
import org.springframework.cglib.core.Constants;
import org.springframework.asm.ClassVisitor;
public abstract class ClassTransformer extends ClassVisitor {

View File

@@ -15,7 +15,12 @@
*/
package org.springframework.cglib.transform;
import org.springframework.asm.*;
import org.springframework.asm.AnnotationVisitor;
import org.springframework.asm.Attribute;
import org.springframework.asm.ClassVisitor;
import org.springframework.asm.FieldVisitor;
import org.springframework.asm.MethodVisitor;
import org.springframework.cglib.core.ClassTransformer;
abstract public class AbstractClassFilterTransformer extends AbstractClassTransformer {
private ClassTransformer pass;

View File

@@ -15,6 +15,7 @@
*/
package org.springframework.cglib.transform;
import org.springframework.cglib.core.ClassTransformer;
import org.springframework.cglib.core.Constants;
import org.springframework.asm.ClassVisitor;

View File

@@ -16,6 +16,8 @@
package org.springframework.cglib.transform;
import org.springframework.cglib.core.ClassTransformer;
public class ClassFilterTransformer extends AbstractClassFilterTransformer {
private ClassFilter filter;

View File

@@ -15,7 +15,9 @@
*/
package org.springframework.cglib.transform;
import org.springframework.asm.*;
import org.springframework.asm.ClassVisitor;
import org.springframework.asm.MethodVisitor;
import org.springframework.cglib.core.ClassTransformer;
public class ClassTransformerChain extends AbstractClassTransformer {
private ClassTransformer[] chain;

View File

@@ -15,6 +15,8 @@
*/
package org.springframework.cglib.transform;
import org.springframework.cglib.core.ClassTransformer;
public interface ClassTransformerFactory {
ClassTransformer newInstance();
}

View File

@@ -15,6 +15,7 @@
*/
package org.springframework.cglib.transform;
import org.springframework.cglib.core.ClassTransformer;
import org.springframework.cglib.core.Constants;
import org.springframework.asm.ClassVisitor;

View File

@@ -15,8 +15,13 @@
*/
package org.springframework.cglib.transform;
import org.springframework.asm.AnnotationVisitor;
import org.springframework.asm.Attribute;
import org.springframework.asm.ClassVisitor;
import org.springframework.asm.FieldVisitor;
import org.springframework.asm.MethodVisitor;
import org.springframework.asm.TypePath;
import org.springframework.cglib.core.Constants;
import org.springframework.asm.*;
public class ClassVisitorTee extends ClassVisitor {
private ClassVisitor cv1, cv2;

View File

@@ -15,7 +15,9 @@
*/
package org.springframework.cglib.transform;
import org.springframework.asm.*;
import org.springframework.asm.ClassVisitor;
import org.springframework.asm.MethodVisitor;
import org.springframework.cglib.core.ClassTransformer;
public class MethodFilterTransformer extends AbstractClassTransformer {
private MethodFilter filter;

View File

@@ -15,8 +15,13 @@
*/
package org.springframework.cglib.transform;
import org.springframework.asm.AnnotationVisitor;
import org.springframework.asm.Attribute;
import org.springframework.asm.Handle;
import org.springframework.asm.Label;
import org.springframework.asm.MethodVisitor;
import org.springframework.asm.TypePath;
import org.springframework.cglib.core.Constants;
import org.springframework.asm.*;
@SuppressWarnings("deprecation")
public class MethodVisitorTee extends MethodVisitor {

View File

@@ -18,6 +18,7 @@ package org.springframework.cglib.transform;
import org.springframework.asm.ClassVisitor;
import org.springframework.cglib.core.ClassGenerator;
import org.springframework.cglib.core.ClassTransformer;
public class TransformingClassGenerator implements ClassGenerator {
private final ClassGenerator gen;

View File

@@ -18,6 +18,7 @@ package org.springframework.cglib.transform;
import org.springframework.asm.ClassReader;
import org.springframework.cglib.core.ClassGenerator;
import org.springframework.cglib.core.ClassTransformer;
public class TransformingClassLoader extends AbstractClassLoader {
private final ClassTransformerFactory t;

View File

@@ -19,7 +19,7 @@ import org.springframework.cglib.core.ClassGenerator;
import org.springframework.cglib.core.DefaultGeneratorStrategy;
import org.springframework.cglib.core.GeneratorStrategy;
import org.springframework.cglib.core.TypeUtils;
import org.springframework.cglib.transform.ClassTransformer;
import org.springframework.cglib.core.ClassTransformer;
import org.springframework.cglib.transform.MethodFilter;
import org.springframework.cglib.transform.MethodFilterTransformer;
import org.springframework.cglib.transform.TransformingClassGenerator;