From 8f4788e0907278cec2a094af179451824651a515 Mon Sep 17 00:00:00 2001 From: chibash Date: Sat, 27 Jul 2019 14:06:22 +0900 Subject: [PATCH] fixed Issue #263 --- javassist.jar | Bin 780264 -> 773221 bytes .../javassist/util/proxy/ProxyFactory.java | 37 ++++++++++++++++++ src/test/Test.java | 8 ++-- src/test/javassist/proxyfactory/GenSig.java | 4 ++ .../proxyfactory/ProxyFactoryTest.java | 11 ++++++ 5 files changed, 57 insertions(+), 3 deletions(-) create mode 100644 src/test/javassist/proxyfactory/GenSig.java diff --git a/javassist.jar b/javassist.jar index 5508e2edfcf820fa197415ea36ca7281575fbae3..74e714ee490cedac0657f370b4ca40ed4d747433 100644 GIT binary patch delta 60470 zcmZTwcRbhM_xGOO!z_F6Ekt(qOfp-N(U1|9iXz^qR7gs^NLCryvR<-FLS?rIQIwJ` zrNr;P_L&fr$wpecr;6%k%E9zdtEC#GNhYh|%ZO4BW3dU7JI66Q)QcJ=%J(L#S0O z_Bx%fLP>(fyQCJW%7ahZ?H@yYB9ECbH9q`4+`Bk^C-R~MH>b^U-mU5MvOR;Z4xRL^ zd{6zzK#S&HqTA@1(pQtcZ{c~=@RJ)KCw`pRZd-7m?Z$;?2~nTsk`{5X6~-GD@Dj`t zb*3D=)bt3twj0@rF44x*9n)g$dgKT9FYrDxlZx4acXrQGJCvgmdU+qcv(S-CN*A8p zwu}^*Iz#GixSXGFX`0*~P@8onVAMb{_f&u4z`F;|v=GhiI7_2yKCZhiV$VK2jz6d= zvctHuD8lW**XAx`!P0>}k=zT^*9!4^=Jk(s-ic8!W)!S+Tv=f~lrew#`EG4u^7S0v z9Z8kDB3xcuO1th3)ca+~H_>r_YJYvkwzoqm7p>$rK@ZLinmBKX7<+O!yhEkRlW)2j zb7y;}&K|=!T83jtp`uNHt!U|E&5HyL_Y07{TA!qG+AfQ;DIfSUZ6z{G76W!(?`nHY zv^=&==+k+b<|vu``}e#a*^boM`Muj&d&IC^I`c+Nkz?EGpXYw+U5%LeEg1ClSCIBx;r~@uWuzwi!oK#tdyOY|rk|3Kw~~2XMPoZ`FuFj0$6k6ye^ka; zF6*X0k4AaVz3|MCVq3M57u;t*+)SL_%&c*mSlzb2@jcsR6THYL*^)!?yJbH+eHV1I z(e_eEvidZ&Tt9gI@preVXD(kR_kKQYk*%t>IC$(w(h0_gY*VdaRG*ninT;nY#~(a4 zWZ=nDso&yXA?vUHk@mXaV_mku)??+x&$TbISe;9#cM7BTX_|@CSa_`~acnNyXWNj^ zQ``2dOu!YYmfq~2OS-T3SSrvtzs_%9Zlwoxe7nI)HFEjiZ^YV`?%B#?0{ zxKagHGc0PY7Rpt7i=m^l$CoB=6hN;HJ^I{m5l2TSPG36AUWDWMo2KX!xnnQE8b8Ql z2|9@1jw)69p8GWpMLey{Nxcm)9w3yy&4=$-=tTy#*a9hIk)L--sX zMc~!V(*QINU`uycgkZS;R`~ZqhHgI4MF~_q zlUN%IUZ`*?@8yg+P#<0)0L-n7mJ5y9zOXz3vW9UU{Z^y0qr z1e6HN?yN~$Wa#MbIF)X4-7SMM*|?2PQY;X`2mF?s4jS4;z6yQ;NIii3Pc1!p3haOCbTA)JSHxr>ixjMYTg(v^y2oK6QT$WT|As{45N=; z+~rj>z8Tb9W-bVb#s+Wn#pqD}h=AlsV%=L<1w@WK6CE875aFsbl^2H2VN~h=7yyC& zl&eJ7(+&sh?`EQ9jpNw+5jqoKtxtosu0XjfT>&86`{rQ zc2gY;4Ec!&PZwd{t|thxXgNfoo&xpo3>Ka##U!p5*;Og>^#-E>abpI!xExc0R;~=Q zvkEbOEDpY0gHb~BOvX+naR8oE1o&MYW-AUQx2-J)h9CTL8UTQPQ11b%0DSlnMi5OS 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 thisClass; + private String genericSignature; + /** * per factory setting initialised from current setting for useCache but able to be reset before each create call */ @@ -389,6 +392,7 @@ public class ProxyFactory { signatureMethods = null; hasGetHandler = false; thisClass = null; + genericSignature = null; writeDirectory = null; factoryUseCache = useCache; factoryWriteReplace = useWriteReplace; @@ -435,6 +439,34 @@ public class ProxyFactory { signature = null; } + /** + * Sets the generic signature for the proxy class. + *

For example, + * + *

class NullPtr<T> {
+     *     T get() { return null; }
+     * }
+     * 
+ * + *

The following code makes a proxy for NullPtr<String>: + * + *

ProxyFactory factory = new ProxyFactory();
+     * factory.setSuperclass(NullPtr.class);
+     * factory.setGenericSignature("LNullPtr<Ljava/lang/String;>;");
+     * NullPtr<?> np = (NullPtr<?>)factory.create(null, null);
+     *java.lang.reflect.Type[] x = ((java.lang.reflect.ParameterizedType)np.getClass().getGenericSuperclass())
+     *                                                                     .getActualTypeArguments();
+     * // x[0] == String.class
+     * 
+ * + * @param sig a generic signature. + * @see javassist.CtClass#setGenericSignature(String) + * @since 3.26 + */ + public void setGenericSignature(String sig) { + genericSignature = sig; + } + /** * Generates a proxy class using the current filter. * The module or package where a proxy class is created @@ -885,6 +917,11 @@ public class ProxyFactory { finfo4.setAccessFlags(AccessFlag.PUBLIC | AccessFlag.STATIC| AccessFlag.FINAL); cf.addField(finfo4); + if (genericSignature != null) { + SignatureAttribute sa = new SignatureAttribute(pool, genericSignature); + cf.addAttribute(sa); + } + // HashMap allMethods = getMethods(superClass, interfaces); // int size = allMethods.size(); makeConstructors(classname, cf, pool, classname); diff --git a/src/test/Test.java b/src/test/Test.java index 9907406d..45f74c26 100644 --- a/src/test/Test.java +++ b/src/test/Test.java @@ -44,9 +44,11 @@ public class Test { final CtClass ctClass = classPool.get(INVALID_STACK_MAP_FRAME); final CtMethod method = ctClass.getDeclaredMethod("bytecodeVerifyError"); - method.addLocalVariable("test_localVariable", CtClass.intType); - method.insertBefore("{ test_localVariable = 1; }"); - ctClass.debugWriteFile(); + // method.addLocalVariable("test_localVariable", CtClass.intType); + method.insertBefore("{ java.math.BigDecimal d = null; d.divide(d); }"); + //ctClass.debugWriteFile(); + System.out.println("ok"); + ctClass.writeFile(); Class cc = ctClass.toClass(); System.out.println(cc.getName()); InvalidStackMapFrame obj = (InvalidStackMapFrame)cc.getDeclaredConstructor().newInstance(); diff --git a/src/test/javassist/proxyfactory/GenSig.java b/src/test/javassist/proxyfactory/GenSig.java new file mode 100644 index 00000000..018cdb39 --- /dev/null +++ b/src/test/javassist/proxyfactory/GenSig.java @@ -0,0 +1,4 @@ +package javassist.proxyfactory; + +class GenSig { +} diff --git a/src/test/javassist/proxyfactory/ProxyFactoryTest.java b/src/test/javassist/proxyfactory/ProxyFactoryTest.java index c69acc9d..0997620f 100644 --- a/src/test/javassist/proxyfactory/ProxyFactoryTest.java +++ b/src/test/javassist/proxyfactory/ProxyFactoryTest.java @@ -152,4 +152,15 @@ public class ProxyFactoryTest extends TestCase { } }); } + + // Issue #263 + public void testGenericSignature() throws Exception { + ProxyFactory factory = new ProxyFactory(); + factory.setSuperclass(GenSig.class); + factory.setGenericSignature("Ljavassist/proxyfactory/GenSig;"); + GenSig gs = (GenSig)factory.create(null, null); + java.lang.reflect.Type[] x = ((java.lang.reflect.ParameterizedType)gs.getClass().getGenericSuperclass()) + .getActualTypeArguments(); + assertEquals(Integer.class, x[0]); + } } -- 2.39.5