Hello Clement, That sounds like a great idea. I haven't had much luck getting the filters to work. Can you point me to some working examples using annotations?
Thank you, Peter. -----Original Message----- From: Clement Escoffier [mailto:[email protected]] Sent: 11 February 2010 20:01 To: [email protected] Subject: Re: How do I have a component which is not immediately valid? On 11.02.2010, at 10:07, peter lawrey wrote: > I have been setting the @Controller valid to false in my @Updated > method. However, it appears that this is too late to prevent the > Component appearing in the @Requires of other components. Right, Unfortunately, there is no way to initialize that controller before. You can simply add a property to the service (that you set to a different value) and add a filter in your requirements. Regards, Clement > > -----Original Message----- > From: Clement Escoffier [mailto:[email protected]] > Sent: 10 February 2010 18:07 > To: [email protected] > Subject: Re: How do I have a component which is not immediately valid? > > Hi, > > > On 10.02.2010, at 18:15, peter lawrey wrote: > >> I have a component which I don't want to be valid until I have > connected >> to a server (at which point the component can be used) >> >> However, the problem I have is that my iPOJO component starts valid > and >> I have to set it to invalid. Unfortunately this results in the >> component being available to other components. >> >> Can I have an iPOJO which starts invalid? > > > You can use the lifecycle controller (@Controller annotation) to impact > the instance lifecycle. > By setting this field to false, you invalid the instance. However, > setting it to true, will not necessary set it to valid, as it also > depends on the others handlers attached to the instance (an instance is > valid is all the attached handler are valid). > > Be sure to set the field value, so create an immediate instance. > > Regards, > > Clement > >> >> -----Original Message----- >> From: Hampel, Michael [mailto:[email protected]] >> Sent: 10 February 2010 15:32 >> To: [email protected] >> Subject: bindex or obr problem? >> >> Hello, >> >> we have the following problem starting a bundle with obr: >> >> In the bundle's manifest we have a header entry: >> Bundle-RequiredExecutionEnvironment: OSGi/Minimum-1.0 >> >> bindex is generating this xml entry (within the <resource> element): >> <require extend='false' filter='(|(ee=OSGi/Minimum-1.0))' >> multiple='false' name='ee' optional='false'> >> Execution Environment (|(ee=OSGi/Minimum-1.0)) >> </require> >> >> When we try to start the bundle with obr we get the following > exception: >> filter expression(missing package): (|(ee=OSGi/Minimum-1.0)) >> >> unresolved bundle: our.bundle >> >> So it looks like that the ExecutionEnvironment Header is > misinterpreted >> as a package dependency - either by bindex or by OBR? >> >> Maybe somebody else had this problem before - thanx for any help in >> advance, >> >> >> >> Michael >> >> >> >> >> >> >> >> >> >> --------------------------------------------------------------------- >> 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]

