Heh sorry, pasted the wrong link :) This should be the right one: http://java.sun.com/developer/technicalArticles/javase/extensible/index.html
Anyway, the mechanism/names were standardized as part of Java 6. That's e.g. how CDI extensions are discovered: http://docs.jboss.org/weld/reference/1.1.0.Final/en-US/html/extend.html#d0e4848 It also looks like there is some support in Java6: http://download.oracle.com/javase/6/docs/api/java/util/ServiceLoader.html But as Hibernate aims Java5 we can't use that, although we can use the same file name. Adam On Mar 30, 2011, at 6:40 PM, Steve Ebersole wrote: > This is exactly what I have done. There is no standard java mechanism for > doing this. Your link simply shows how one piece of java (Sound API) does it. > On Wednesday, March 30, 2011, at 11:22 am, Adam Warski wrote: > > Did you think about using the java services mechanism? Essentialy placing a > > file in META-INF/services: > > http://download.oracle.com/javase/1.4.2/docs/guide/sound/programmer_guide/ > > chapter13.html ? > > > > I don't think it gives any functionality, but is a standard way for doing > > such things. > > > > Adam > > > > On Mar 27, 2011, at 7:27 PM, Steve Ebersole wrote: > > > HHH-5562 is done, which introduces a locator/discovery means for > > > integrating with Hibernate. Specifically it introduces the (alternate > > > name suggestions welcome, i am indifferent to this one) > > > org.hibernate.impl.Integrator interface. > > > > > > It does discovery based on a classpath lookup for a well-defined filename > > > (can discover multiple) which names an implementor of this interface. > > > The process occurs in the midst of Sessionfactory building to account > > > for the main use cases I know of including Envers, Search, Validation > > > and BV. Currently I additionally define those 4 as "built in" > > > integrators, meaning there is no need for them to define auto-discovery > > > files unless we want them to be integrated in that manner (I know for > > > example that Search is interested in this via HSEARCH-595). Anyway, we > > > should probably decide pretty early which integrations we want done > > > which way. > > > > > > Actually I take one part back. Envers is actually handed by discovery > > > due to the fact that it is in a separate project (jar). The others were > > > done this way because they already had the reflection code in place to > > > do this. So for it, we need to decide if we want to go the opposite > > > way. > > > > > > > > > --- > > > Steve Ebersole <st...@hibernate.org> > > > http://hibernate.org > > > _______________________________________________ > > > hibernate-dev mailing list > > > hibernate-dev@lists.jboss.org > > > https://lists.jboss.org/mailman/listinfo/hibernate-dev > --- > Steve Ebersole <st...@hibernate.org> > http://hibernate.org -- Adam Warski http://www.warski.org http://www.softwaremill.eu _______________________________________________ hibernate-dev mailing list hibernate-dev@lists.jboss.org https://lists.jboss.org/mailman/listinfo/hibernate-dev