On 08 Dec 2014, at 14:34, Hardy Ferentschik
<hardy(a)hibernate.org> wrote:
On Mon, Dec 08, 2014 at 12:07:45PM +0000, Sanne Grinovero wrote:
>> 2. The name. SearchFactoryImplementor is something which implements
SearchFactory. However,
>> one of the latest changes was to make SearchFactory a stand alone class of the
orm module.
>> SearchFactory is now only available in the orm module and has not inheritance
link anymore
>> to SearchFactoryImplementor or SearchIntegrator. This is awesome, since now we
are able
>> to evolve the engine code in the direction for "free form" entities
without affecting the
>> API for the users using Search in combination with Hibernate ORM. However, it
also means
>> that the engine module should now be agnostic of the orm module. Having a
SearchFactoryImplementor
>> in the engine module, but the SearchFactory defined in the orm module seems
wrong.
>
> Remember this still is "the implementor" for the SearchFactory API so
> the name is not wrong; what is wrong is the position in terms of
> modules.
How can an interface be the "implementor" of anything. It just defines an API,
it does not implement
anything. This is exactly what I am saying, it is a misnomer to start with.
It a contract of all implementors of SearchFactory, I don’t see anything wrong with the
name.