[ 
https://issues.apache.org/jira/browse/FELIX-303?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dennis Geurts updated FELIX-303:
--------------------------------

    Attachment: proxy.patch.txt

Hi Marcel. 

This issue, to me, sounds like a great improvement. In fact, I currently need 
such functionality
to be able to register a proxy instead of  the service itself to the framework. 

However, the lifecycle callbacks and the dependency injections will have to 
take place on the service instance itself. 

Please find attached a very rudimentary implementation of the functionality 
that I require. Maybe a good starting point for your implementation ?


Example usage:

       Dummy (an interface) dummy = new DummyImpl();
        MyProxy proxy = new MyProxy(dummy);
        
        manager.add(createService()
                .setInterface(Dummy.class.getName(), null)
                .setImplementation(dummy)
                .setProxy(proxy)
            .add(createServiceDependency()
                .setService(LogService.class)
                .setRequired(false))
            );

In your comment you mention the addition of some Object[] parameters. Can you 
be a little bit more specific ?

Cheers, Dennis




> Support for compositions
> ------------------------
>
>                 Key: FELIX-303
>                 URL: https://issues.apache.org/jira/browse/FELIX-303
>             Project: Felix
>          Issue Type: New Feature
>          Components: Dependency Manager
>    Affects Versions: 0.8.0
>            Reporter: Marcel Offermans
>            Assignee: Marcel Offermans
>             Fix For: 1.0.0
>
>         Attachments: proxy.patch.txt
>
>
> When creating service implementations out of POJO's, the more complex 
> implementations will often be composed out of several POJO's, using 
> composition instead of inheritance. This means instead of one implementation, 
> you have N implementations. The consequences of this are that for both the 
> callbacks and the injected services, you want to be able to explicitly 
> specify one of more instances, instead of assuming there's only one. The API 
> needs to be extended to support this (basically adding a parameter of type 
> Object[] for some of the methods).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to