Hello Renat,
I'm currently building a product that will integrate with 3rd party
modules.
I want them to use only the published services to prevent them of
developing bad hacks using the
Internal Services instead, which might change from version to version.
I want to provide backwards
compatibility for the published services only and don't want to run
into conflicts because of them
using internal services.
These 3rd party modules 'depend' on the products core services, they
also contribute to the
configuration of some services (but these are also published).
Michael
On Jul 30, 2008, at 10:26 AM, Renat Zubairov wrote:
Hello Michael,
Would would be the usecases for this feature? Why would you need it?
Are you also planning to have versions for the modules?
How are dependencies between the modules are resolved?
Renat
2008/7/30 Michael Zehender <[EMAIL PROTECTED]>:
Hi,
I'm just looking for a way to configure the visibility of services
within
the IoC container. The target would be
have module internal services i.e. these internal services can be
injected
to services within the same module only.
A short example to illustrate, in the MyCoreModule I want to hide the
configuration reader and the category factory:
@SubModule( {
MySubModule.class
})
@Marker(MyCore.class)
public class MyCoreModule
{
public static void bind(ServiceBinder binder)
{
binder.bind(CategoryFactory.class,
CategoryFactoryImpl.class).private();
binder.bind(ConfigurationReader.class,
ConfigurationReaderImpl.class).private();
binder.bind(ConfigurationProvider.class,
ConfigurationProviderImpl.class);
binder.bind(ConfigurationStartup.class,
ConfigurationStartupImpl.class);
binder.bind(SystemControl.class,
SystemControlImpl.class);
}
@EagerLoad
public static Startup buildStartup(final List<StartupItem>
startupItems, Logger logger)
{
return new StartupImpl(logger, startupItems);
}
}
Now we have a second Module:
@Marker(MySub.class)
public class MySubModule
{
public static void bind(ServiceBinder binder)
{
// ...
}
public static SomeService buildSomeService(CategoryFactory
factory)
{
// shouldn't be work ! a service not found exception
would be
the nicest ...
return ...;
}
}
Is this possible? If not is there a plan to implement it?
Thanks,
Michael
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
--
Best regards,
Renat Zubairov
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]