Hi, Just to clarify. iPOJO is not tight to Felix. It also works one other OSGi R4 implementations such as Equinox and KF2. Moreover, iPOJO applications can interact with services implemented with another DI framework. I have iPOJO applications using SCR or Spring-DM services. It also works in the other direction. You can have Spring-DM or SCR components/beans using services developed with iPOJO.
Clement -----Original Message----- From: Richard S. Hall [mailto:[EMAIL PROTECTED] Sent: mardi 28 octobre 2008 17:44 To: [email protected] Subject: Re: IPojo - universe of components? Kit, I would be interested in the issues that concern you. I believe it should be possible to create components in iPOJO that use basic DoI techniques that would travel well. Clearly, you can use more advanced features that won't, but no one forces you to do that. I am not really sure what "standardness" has to do with the point, since I am not really aware of a standard in this area, unless you are talking about DS or the Spring-DM work within the OSGi Alliance. If so, I would say that there is nothing special about being run through the OSGi Alliance spec process, other than getting more feedback. -> richard Kit Plummer wrote: > Brad, > > I would warn against the non-standard nature of iPojo. Not to say > that it is a bad thing, but given the landscape and "components" I > think you'll struggle with different issues moving in that direction. > Sure, you may resolve component dependencies - cleaner. But, the risk > is that your component no longer travels well. > > Kit > > > On Oct 28, 2008, at 8:04 AM, Brad Cox wrote: > >> I'm totally new to iPOJO but have been pusing components forever. But >> I'm guessing this fine- vs coarse-grained distinction is precisely >> the problem I've been struggling with org.jdom, with lots of hand-on >> help from P. Kriens. So far its defeated both of us. >> >> It seems JDOM is what you called a coarse-grained component, >> developed long before this fine-grained ipojo stuff was around. >> Deeply entangled with even lower-level dependencies, like Xerces. So >> I've started looking at iPOJO to see whether that might be a way >> forward. >> >> I'm hoping to find a way to include jdom+dependencies in one of my >> ipojos so other ipojos can resolve it from there. Seems >> straightforward on the surface, if I can avoid whatever is breaking >> bnd now. >> >> Clement Escoffier wrote: >>> Hi, >>> That’s an interesting question. I would say that it slightly depend >>> of your use case. However, in one level of abstraction, being >>> consistent sounds reasonable. To illustrate this, I’m going to >>> describe two different types of projects choosing the different >>> strategies: a universe of fine-grain components, and a universe of >>> coarse-grain components (using regular object collaborators). >>> In a project aiming to design and implement a residential gateway, >>> the granularity of components is rather fine-grain. The most part of >>> the functionalities are implemented inside components and are >>> available through services, such as devices, technical services, and >>> internal application services. For this latter case, using iPOJO >>> composite was crucial to maintain the isolation of internal services >>> that must not be accessible outside the application (by peer that >>> are not a part of the application). This granularity was chosen >>> because of the required flexibility for runtime evolution >>> (application updates, modifications of the environment…). In this >>> use case, “everything was dynamic”. >>> In the Jonas JEE server, the chosen granularity was coarse-grain >>> (Guillaume or/and Francois, correct me if I’m wrong). Each >>> technical services provided by the JEE server is implemented by >>> iPOJO components and provided as OSGi services. Two aspects >>> motivated this choice. First, the Jonas team wanted to reuse the >>> most part of their code (makes sense right?). Then, the unit of >>> evolution (update) is the technical service (coarse-grain). So, in >>> conclusion, it’s an open question ☺. There is no generic answer. >>> iPOJO does not influence one or another way, because IMHO it depends >>> of the use case. The goal of iPOJO was to provide functionalities to >>> handle both cases. >>> Regards, >>> Clement >>> -----Original Message----- >>> From: Todor Boev [mailto:[EMAIL PROTECTED] Sent: lundi 27 octobre >>> 2008 19:03 >>> To: [email protected] >>> Subject: IPojo - universe of components? >>> Hello, >>> I was wondering what is iPojo's mission in life: just to make it a >>> bit easier to code in OSGi or the grand idea to lift the Java >>> language to a higher abstraction. This philosophical question is >>> important to me because iPojo like most other DI frameworks seems >>> highly viral. >>> For example suppose I start out with a single component class that >>> creates all it's collaborators with POJN (Plain Old Java New :). At >>> this point I will have to inject all service dependencies into this >>> uber-component and have it pass them on to the constructors of it's >>> collaborators. Soon I get sick of my bad style and decide to let >>> iPojo manage the collaborators and pass around the dependencies for >>> me. And as soon as the collaborators are under iPojo's wing all >>> classes that need them will also have to be iPojo managed. And so in >>> no time almost all my classes will be components. All that will be >>> left are light-weight data objects and static utilities. The former >>> could soon acquire behavior of their own and will inevitably become >>> components because they will likely need to collaborate with other >>> components. As for the static utilities: unless they are bundles of >>> stand-alone purely functional methods they are a bad style to begin >>> with and should be re-cast as singleton components. So if I go with >>> the flow I should have a universe of components. >>> Is this the way to work with iPojo? Or should restrict iPojo to only >>> the core graph of long-lived objects that form the basis of my >>> program and manage the construction, and lifecycle of the more >>> volatile object generations by hand? >>> Cheers, >>> Todor >>> --------------------------------------------------------------------- >>> 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] >> >> >> --------------------------------------------------------------------- >> 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] > --------------------------------------------------------------------- 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]

