I finished writting tests for the ProxyCompiler, which test that it can 
generate proxy objects for various interfaces and abstract classes with 
methods.  In the process of write those tests I found another bug, which 
then took me most of today to fix.  I now know more about VM byte code 
than I had expected to ever know... give me a high level abstraction 
over a set of registers and funny names operators any day *sigh*.

I did put in some trace logging for 
org.jboss.proxy.compiler.ProxyCompiler, so if you turn on trace there 
you will see some information about the generated proxy classes.  I also 
added a org.jboss.proxy.compiler.ProxyCompiler.dumpPath system property, 
which when set will be used as the directory to dump the generated byte 
code into.  So, if you set this to say /tmp, then you will find .class 
files there for the generated proxies.  This value is only checked when 
the ProxyCompiler loads, so if you need to enabled this do it on the 
JBoss command line.

To help keep this system maintainable, I removed some of the older proxy 
classes which are unused.  Currently only ProxyAssembler is being used, 
for IIOP proxy stubs, which will hopefully change to either 
ProxyCompiler or to direct BCEL.

BCEL is really amazing, how it lets you write bytecode, but it is a 
bitch to debug with out a decent understanding for how that crap works 
or at least some good comments.  So, I tried to comment the parts I had 
trouble with, hoping that next time it won't take 3 days to fix a small 
bug like this again.

I think that this stuff should really move to common, under 
org.jboss.util.proxy... but I am not too motivated to move them right 
now... perhaps later.

=)

--jason


_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to