It seems that the propertyType parameter of the
ObjectProvider.provideObject(..):
/**
* Invoked by the translator to provide the value.
* @param contributingModule the module which contributed to the locator
* @param propertyType the expected type of property
* @param locator a string that should be meaningful to this provider. It
is the suffix of
* the original input value provided to the translator, after the selector
prefix
* (used to choose a provider) was stripped.
* @param location the location of the input value (from which the locator
was extracted). Used
* for error reporting, or to set the location of created objects.
*/
public Object provideObject(
Module contributingModule,
Class propertyType, <-------- here
String locator,
Location location);
always is Object.class. I thought that this parameter represents the expected
type, which is
the one given within the constructor or setter signature. I just tested it with
constructors injection!
The ServiceImplementationFactory.createCoreServiceImplementation(..) does
provide the
expected type.
UseCase:
I am writing an object provider which itself asks another registry (not
Hivemind) for a service. And
this requires its type because it creates a dynamic proxy which requires the
expected type.
Can you please verify this!
Stefan
email: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]