commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From scolebou...@btopenworld.com
Subject Re: [attributes][clazz]
Date Thu, 14 Nov 2002 14:22:23 GMT
>  from:    James Strachan <james_strachan@yahoo.co.uk>
> From: <scolebourne@btopenworld.com>
> 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>


Mime
View raw message