Dmitri, your design reflects a decision I am currently having to make. So I would like to discuss the two possibilities and think about the possible suitability to [clazz].
We have some interfaces but no (abstract) default implementation. That means: for each ClazzLoader XXX we have to provide our own implementation of XXXClazz, XXXClazzProperty etc. Even if only the "building", "filling" of the Clazz is different. All XXXClazz implementations will probably have a list of (declared) Operations, a List of (declared) Fields, some methods to find all fields (as opposed to the declared ones). So I am thinking that we could factor out a common default implementation for Clazz, ClazzProperty. And let the ClazzLoaders do the work. When you look at your implementation of ReflectedProperty, there is nearly nothing reflection specific. I fear that I might be missing something. What do you think? Associated with this line of thought is the handling of "Attributes" (MetaData). MetaData could be factored out into some abstract super class MetaModelElement. Victor -- To unsubscribe, e-mail: <mailto:commons-dev-unsubscribe@;jakarta.apache.org> For additional commands, e-mail: <mailto:commons-dev-help@;jakarta.apache.org>
