> 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>