Not exactly sure what you mean by "favoured" it. I'm the one who wrote it
all for sure, if that's what you mean. But I was just trying something.
The java.lang.Class model has pros and cons to it. I had just wanted to
investigate alternative models to see whether those pros/cons could be
improved.
The point is that this isn't just my call (imo). It should be a consensus.
If no one else had played with it enough to have an opinion then that is a
different deal. Here are my thoughts, and maybe we can all discuss the
generalities.
So the ubiquitous nature of java.lang.Class is both a pro/con. To that
model classes, interfaces, arrays, primitives all look the same. That's
great for some things (generalized algorithms: e.g. walk hierarchies), but
lacking for others.
I guess the conclusion I came to was that I am not sure if the split model
currently in reflite gains enough to offset the unique model. What I mean
is that if reflite followed a java.lang.Class-like paradigm for defining
the model, then there is a certain parallel familiarity when people first
come into reflite code.
On Tue, Jun 3, 2014 at 5:51 AM, Hardy Ferentschik <hardy(a)hibernate.org>
wrote:
On 2 Jan 2014, at 18:36, Steve Ebersole <steve(a)hibernate.org> wrote:
> 1) What do you think of the split in JavaTypeDescriptor into distinct
> sub-contracts? For example, the split between say ClassDescriptor and
> InterfaceDescriptor?
Didn’t we have this discussion before. If I remember correctly you were
the one who favoured the
current model. What made you change your mind.
> TBH, I am starting to rethink that one. What about
> primitive versus non-primitive descriptors? Etc…
Unfortunately, I did not actually write code against the API yet, so I
don’t have any concrete experience.
On paper it looks good to me. But it seems you encountered something which
creates an itch?
> 2) Overall what do you think about the API itself?
for what i have seen and what we discussed, it is the way to go. I can see
me using this type of model
in other Hibernate projects as well.
—Hardy