>  from:    James Strachan <[EMAIL PROTECTED]>
> From: <[EMAIL PROTECTED]>
> The aim of the attributes project is to provide a small and simple unified
> API to allow the access of runtime doclet attributes used both in current
> AOP projects like Nanning and Rickard �berg's AOP framework as well as
> hopefully to work with XDoclets XRAI project. (I'm hoping further down the
> road we can provide a unified API to both Nanning, XRAI and Rickard's
> framework).

One of the aims of [clazz] is a unified API to different metadata/attribute 
mechanisms. The mechanism is to be pluggable, so one solution is to use [attributes] 
as a pluggable implementation. But it might be better to just integrate it (otherwise 
you end up with two pluggable levels which adds to confusion).


> I still don't totally
> grok the aim or scope of clazz but at the very least it appears to be a
> broader higher level goal, more of being a component model, a new
> introspection mechanism, a meta-beans thing or something. Maybe
> commons-attributes might be useful in implementing clazz (I hope so) or
> maybe not, but these 2 projects do seem quite different.

It aims to pull together DynaBeans, MetaData/Attributes and Introspection into one 
uniform API - Class manipulation.

For attributes, [clazz] offers methods like:
 Clazz clazz = <factory...>;
 clazz.getProperty("surname").getAttribute("external");
whereas [attributes] seems to have:
 Field field = AttributesTestClass.class.getDeclaredField("surname");
 Attributes.getAttribute(field, "external");

Thus one way to think of the difference is [attributes] is static, [clazz] is instance 
based.

Stephen


--
To unsubscribe, e-mail:   <mailto:commons-dev-unsubscribe@;jakarta.apache.org>
For additional commands, e-mail: <mailto:commons-dev-help@;jakarta.apache.org>

Reply via email to