I was vaguely aware of this RFC but that is an extension to the DS Components isn't it? That will have more capabilities I assume since you're not restricted to the features of the current spec.
This is basically a continuance of the aggregate service but with a bit smaller scope. The Aggregate Service had some basic limitations because not all components shared the same view at the same time. It is a tricky area. I read the RFC in detail. Kind regards, Peter Kriens > On 26 Jun 2019, at 14:29, BJ Hargrave <hargr...@us.ibm.com> wrote: > > This seems just like > https://github.com/osgi/design/blob/master/rfcs/rfc0242/rfc-0242-Condition-Service.pdf > > <https://github.com/osgi/design/blob/master/rfcs/rfc0242/rfc-0242-Condition-Service.pdf> > > Are you making an alternate design? Or did you not know of this RFC? > -- > > BJ Hargrave > Senior Technical Staff Member, IBM // office: +1 386 848 1781 > OSGi Fellow and CTO of the OSGi Alliance // mobile: +1 386 848 3788 > hargr...@us.ibm.com > > > ----- Original message ----- > From: Peter Kriens via osgi-dev <osgi-dev@mail.osgi.org> > Sent by: osgi-dev-boun...@mail.osgi.org > To: via bndtools-users <bndtools-us...@googlegroups.com>, > osgi-dev@mail.osgi.org > Cc: > Subject: [EXTERNAL] [osgi-dev] Conditional Target > Date: Wed, Jun 26, 2019 08:26 > > I've developed a service that you can use to block the activation of a DS > component until a set of other services are ready. This is related to the > whiteboard pattern when the sender wants to be sure a certain set of > whiteboard services are present. Normally you can only assert the properties > of 1 service but this allows you to use a filter to select the aggregated > properties of a group of services. An example is when you need a set of at > least 3 remote services where there are at least 2 unique regions. > > For example, you want to block until the average of the `foo` properties on > the registered Foo services is higher than 2: > > @Reference( target="([avg]foo>=2)" ) > ConditionalTarget<Foo> foos; > > The Conditional Target object provides a direct reference to the services and > service references being tracked as well as the aggregated properties. > > It is described in > > https://github.com/aQute-os/biz.aQute.osgi.util/tree/master/biz.aQute.osgi.conditionaltarget > > <https://github.com/aQute-os/biz.aQute.osgi.util/tree/master/biz.aQute.osgi.conditionaltarget> > > And you can find the binary artifact in: > > https://oss.sonatype.org/content/repositories/snapshots/biz/aQute/biz.aQute.osgi.conditionaltarget/ > > <https://oss.sonatype.org/content/repositories/snapshots/biz/aQute/biz.aQute.osgi.conditionaltarget/> > > Feedback appreciated on the idea and execution. If people like this, I can > submit it to Apache Felix if they're interested. > > Kind regards, > > Peter Kriens > _______________________________________________ > OSGi Developer Mail List > osgi-dev@mail.osgi.org > https://mail.osgi.org/mailman/listinfo/osgi-dev > <https://mail.osgi.org/mailman/listinfo/osgi-dev> > >
_______________________________________________ OSGi Developer Mail List osgi-dev@mail.osgi.org https://mail.osgi.org/mailman/listinfo/osgi-dev