[Proxool-cvs] proxool/src/java/org/logicalcobwebs/cglib/proxy CallbackFilter.java,1.1,1.2 CallbackGe
UNMAINTAINED!
Brought to you by:
billhorsman
Update of /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/cglib/proxy
In directory sc8-pr-cvs1:/tmp/cvs-serv14833/proxy
Modified Files:
CallbackFilter.java CallbackGenerator.java Enhancer.java
EnhancerEmitter.java MethodProxy.java NoOp.java
NoOpGenerator.java
Log Message:
Fixes to compile under JDK 1.2
Index: CallbackFilter.java
===================================================================
RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/cglib/proxy/CallbackFilter.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** CallbackFilter.java 12 Dec 2003 19:28:11 -0000 1.1
--- CallbackFilter.java 17 Dec 2003 21:10:35 -0000 1.2
***************
*** 63,78 ****
*/
public interface CallbackFilter {
! static final CallbackFilter ALL_ZERO = new CallbackFilter() {
! public int accept(Method method) {
! return 0;
! }
! public String toString() {
! return "ALL_ZERO";
! }
! public int hashCode() {
! return 999;
! }
! };
!
/**
* Map a method to a callback.
--- 63,67 ----
*/
public interface CallbackFilter {
!
/**
* Map a method to a callback.
Index: CallbackGenerator.java
===================================================================
RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/cglib/proxy/CallbackGenerator.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** CallbackGenerator.java 12 Dec 2003 19:28:11 -0000 1.1
--- CallbackGenerator.java 17 Dec 2003 21:10:35 -0000 1.2
***************
*** 54,61 ****
package org.logicalcobwebs.cglib.proxy;
- import java.lang.reflect.Method;
- import java.util.Iterator;
import org.logicalcobwebs.cglib.core.ClassEmitter;
import org.logicalcobwebs.cglib.core.CodeEmitter;
interface CallbackGenerator
--- 54,60 ----
package org.logicalcobwebs.cglib.proxy;
import org.logicalcobwebs.cglib.core.ClassEmitter;
import org.logicalcobwebs.cglib.core.CodeEmitter;
+ import org.logicalcobwebs.cglib.core.Context;
interface CallbackGenerator
***************
*** 64,74 ****
void generateStatic(CodeEmitter e, Context context) throws Exception;
- interface Context
- {
- Iterator getMethods();
- int getIndex(Method method);
- void emitCallback(CodeEmitter e, int index);
- int getModifiers(Method method);
- String getUniqueName(Method method);
- }
}
--- 63,65 ----
Index: Enhancer.java
===================================================================
RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/cglib/proxy/Enhancer.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** Enhancer.java 12 Dec 2003 19:28:11 -0000 1.1
--- Enhancer.java 17 Dec 2003 21:10:35 -0000 1.2
***************
*** 93,96 ****
--- 93,109 ----
public class Enhancer extends AbstractClassGenerator
{
+
+ static final CallbackFilter ALL_ZERO = new CallbackFilter() {
+ public int accept(Method method) {
+ return 0;
+ }
+ public String toString() {
+ return "ALL_ZERO";
+ }
+ public int hashCode() {
+ return 999;
+ }
+ };
+
private static final Source SOURCE = new Source(Enhancer.class.getName());
private static final EnhancerKey KEY_FACTORY =
***************
*** 319,323 ****
throw new IllegalStateException("Multiple callback types possible but no filter specified");
}
! filter = CallbackFilter.ALL_ZERO;
}
--- 332,336 ----
throw new IllegalStateException("Multiple callback types possible but no filter specified");
}
! filter = ALL_ZERO;
}
Index: EnhancerEmitter.java
===================================================================
RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/cglib/proxy/EnhancerEmitter.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** EnhancerEmitter.java 12 Dec 2003 19:28:11 -0000 1.1
--- EnhancerEmitter.java 17 Dec 2003 21:10:35 -0000 1.2
***************
*** 403,407 ****
seenGen.add(gen);
final List fmethods = (List)groups.get(gen);
! CallbackGenerator.Context context = new CallbackGenerator.Context() {
public Iterator getMethods() {
return fmethods.iterator();
--- 403,407 ----
seenGen.add(gen);
final List fmethods = (List)groups.get(gen);
! Context context = new Context() {
public Iterator getMethods() {
return fmethods.iterator();
Index: MethodProxy.java
===================================================================
RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/cglib/proxy/MethodProxy.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** MethodProxy.java 12 Dec 2003 19:28:11 -0000 1.1
--- MethodProxy.java 17 Dec 2003 21:10:35 -0000 1.2
***************
*** 77,119 ****
private int i2;
- /**
- * For internal use by {@link Enhancer} only; see the {@link org.logicalcobwebs.cglib.reflect.FastMethod} class
- * for similar functionality.
- */
- public static MethodProxy create(ClassLoader loader, Class c1, Class c2, String desc, String name1, String name2) {
- final Signature sig1 = new Signature(name1, desc);
- Signature sig2 = new Signature(name2, desc);
- FastClass f1 = helper(loader, c1);
- FastClass f2 = helper(loader, c2);
- int i1 = f1.getIndex(sig1);
- int i2 = f2.getIndex(sig2);
-
- MethodProxy proxy;
- if (i1 < 0) {
- proxy = new MethodProxy() {
- public Object invoke(Object obj, Object[] args) throws Throwable {
- throw new IllegalArgumentException("Protected method: " + sig1);
- }
- };
- } else {
- proxy = new MethodProxy();
- }
-
- proxy.f1 = f1;
- proxy.f2 = f2;
- proxy.i1 = i1;
- proxy.i2 = i2;
- proxy.sig = sig1;
- proxy.superName = name2;
- return proxy;
- }
-
- private static FastClass helper(ClassLoader loader, Class type) {
- FastClass.Generator g = new FastClass.Generator();
- g.setType(type);
- g.setClassLoader(loader);
- return g.create();
- }
-
private MethodProxy() {
}
--- 77,80 ----
Index: NoOp.java
===================================================================
RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/cglib/proxy/NoOp.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** NoOp.java 12 Dec 2003 19:28:11 -0000 1.1
--- NoOp.java 17 Dec 2003 21:10:35 -0000 1.2
***************
*** 60,66 ****
public interface NoOp extends Callback
{
- /**
- * A thread-safe singleton instance of the <code>NoOp</code> callback.
- */
- public static final NoOp INSTANCE = new NoOp() { };
}
--- 60,62 ----
Index: NoOpGenerator.java
===================================================================
RCS file: /cvsroot/proxool/proxool/src/java/org/logicalcobwebs/cglib/proxy/NoOpGenerator.java,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** NoOpGenerator.java 12 Dec 2003 19:28:11 -0000 1.1
--- NoOpGenerator.java 17 Dec 2003 21:10:35 -0000 1.2
***************
*** 60,63 ****
--- 60,64 ----
import org.logicalcobwebs.cglib.core.CodeEmitter;
import org.logicalcobwebs.cglib.core.ReflectUtils;
+ import org.logicalcobwebs.cglib.core.Context;
class NoOpGenerator
|