Rickard Öberg schrieb: > Sorry for the late response on this one. I've been traveling for 3 weeks > straight now, and am catching up on email. > > Michael Hunger wrote: >> We further did a spike on creating instances of annotations to be >> able to add them to metaInfo at startup time. So, when we include >> that, we can do sth. like the following. (It's done by creating a >> virtual Proxy for the annotation interface - as no other way of >> instantiation works :) >> >> on(Person.class).with().name().set(annotation(Immutable.class,"ignore",true)) >> >> so we not only can do it at composition (compile-)time but configure >> it later as well. > > This could make for some very powerful features, like turning certain > thing off and on depending on environment, but it's also a slippery > slope towards flexibilitis (=overflexibility which eventually turns into > accidental complexity). We'll have to see how it works out. In principle this removes complexity as a single approach is used for configuration.
> >> We should but, make MetaInfo an interface, so that the runtime access >> only allows getting the information not changing it at runtime. >> >> Regarding Immutable.ignore -> on setting immutables you could either >> throw an RuntimeException or silently ignore it. With this boolean >> property you would change the default behaviour of throwing an >> exception. > > I would prefer to not have ignore as an option. It's probably better to > have it there always, and then let clients deal with it as they wish. What do you mean by this? Have to explicitely specify ignore or not ignore on each Annotation? Sounds quite a lot like DRY. Michael > > /Rickard > > > _______________________________________________ > qi4j-dev mailing list > [email protected] > http://lists.ops4j.org/mailman/listinfo/qi4j-dev _______________________________________________ qi4j-dev mailing list [email protected] http://lists.ops4j.org/mailman/listinfo/qi4j-dev

