You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@commons.apache.org by robert burrell donkin <ro...@mac.com> on 2001/12/12 23:55:03 UTC

[BETWIXT] some changes

hi james

i'd like to start adding some enhancements to betwixt. my starting to do 
list is:

1. add property getter and setter for the XMLIntrospector used by 
BeanWriter. (allowing the introspection behaviour to be altered)
2. add a very simple logging method (probably just a log(String) method in 
the introspector with a debug property printing to standard out). this can 
be replaced by a more comprehensive system later.
3. solve the problem of infinite loops. (BeanWriter loops when you have 
cyclic references). you should be able to spot these by using a stack. at 
the very least, an exception can be thrown when a cycle is spotted rather 
than looping forever.

what do you think?

- robert


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [BETWIXT] some changes

Posted by robert burrell donkin <ro...@mac.com>.
On Thursday, December 13, 2001, at 12:32 PM, James Strachan wrote:

> Hi Robert

hi james

<snip>

> I'm still fighting off my inbox and demanding day job but will hopefully 
> get
> more free time to dive in and help you soon.

i now have karma for the sandbox. i'll try to keep posting up regular 
progress reports so that you can get the most from any time you find.

>> 2. add a very simple logging method (probably just a log(String) method 
>> in
>> the introspector with a debug property printing to standard out). this 
>> can
>> be replaced by a more comprehensive system later.
>
> Agreed. It'd probably be worth using the commons-logging package; it looks
> pretty good and simple and would work with log4j or JDK1.4.

i've had a look at the commons-logging package and i'll probably look at 
adding logging to XMLIntrospector and BeanWriter next to help me with the 
cyclic reference fix. once i've fixed that problem i'll probably come back 
to the stuff i've <snip>ped out from your last mail.

- robert


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [BETWIXT] some changes

Posted by robert burrell donkin <ro...@mac.com>.
On Thursday, December 13, 2001, at 12:32 PM, James Strachan wrote:

> Hi Robert

hi james

<snip>

all that stuff i've snipped sounds cool. i'll probably come back with some 
more questions on it later on.


>> what do you think?
>
> Sounds great!
>
> I've witnessed the excellent work you've done on digester, want to be a
> committer on betwixt then you can just commit your changes rather than
> making patches?

i don't mind making patches but if you're happy to let me loose on your 
code, then sandbox karma for rdonkin@apache.org should suffice.

- robert


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [BETWIXT] some changes

Posted by robert burrell donkin <ro...@mac.com>.
On Thursday, December 13, 2001, at 12:32 PM, James Strachan wrote:

> Hi Robert

hi james

> ----- Original Message -----
> From: "robert burrell donkin" <ro...@mac.com>

<snip>

>> 2. add a very simple logging method (probably just a log(String) method 
>> in
>> the introspector with a debug property printing to standard out). this 
>> can
>> be replaced by a more comprehensive system later.
>
> Agreed. It'd probably be worth using the commons-logging package; it looks
> pretty good and simple and would work with log4j or JDK1.4.

commons-logging looks pretty good. it's got some annoying bugs but i don't 
think that it'll take much to fix them.

i've added support for logging to commons-logging to BeanWriter and 
XMLIntrospector. the logs are named according to their fully packaged 
class name (eg org.apache.commons.betwixt.BeanWriter).  i haven't added 
lots of calls to logging - this just puts the infrastructure in place.

i'll look at that cyclic reference bug fix next.

- robert


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>


Re: [BETWIXT] some changes

Posted by James Strachan <ja...@yahoo.co.uk>.
Hi Robert

----- Original Message -----
From: "robert burrell donkin" <ro...@mac.com>
> i'd like to start adding some enhancements to betwixt. my starting to do
> list is:
>
> 1. add property getter and setter for the XMLIntrospector used by
> BeanWriter. (allowing the introspection behaviour to be altered)

Sounds good.

I've been meaning to put an extension mechanism into XMLIntrospector that
works like the extension mechanism in java.beans.Instropector. e.g. given a
FooBean class it would look on the classpath for a FooBeanXMLBeanInfo class
using the same Java beans mechanism.

That and maybe having an XML document to describe custom bean mappings. I've
found developers often want to express their beans in different XML
formats - e.g. use elements for everything, or use attributes for primitive
types, or only for 'short' fields. Then when collections, arrays and Maps
get used often all kinds of different mappings are often desired. So maybe
some XML-based document to describe a more customized 'beaninfo' might be
good.

I'm still fighting off my inbox and demanding day job but will hopefully get
more free time to dive in and help you soon.


> 2. add a very simple logging method (probably just a log(String) method in
> the introspector with a debug property printing to standard out). this can
> be replaced by a more comprehensive system later.

Agreed. It'd probably be worth using the commons-logging package; it looks
pretty good and simple and would work with log4j or JDK1.4.


> 3. solve the problem of infinite loops. (BeanWriter loops when you have
> cyclic references). you should be able to spot these by using a stack. at
> the very least, an exception can be thrown when a cycle is spotted rather
> than looping forever.
>
> what do you think?

Sounds great!

I've witnessed the excellent work you've done on digester, want to be a
committer on betwixt then you can just commit your changes rather than
making patches?

James

>
> - robert
>
>
> --
> To unsubscribe, e-mail:
<ma...@jakarta.apache.org>
> For additional commands, e-mail:
<ma...@jakarta.apache.org>


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
To unsubscribe, e-mail:   <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>