I am having trouble figuring out how to implement the following using the whiteboard pattern.
There are several services registered with OSGi. - All services provide status. - One service (call it GET_ONE) also registers to get the status of one specific service. - Another service (call it GET_ALL) also registers to get the status of all the services. So far, I have only been about to - have both GET_ONE and GET_ALL get all the status - have GET_ONE get its desired status and GET_ALL get no status I know that I must have made a mistake in the filtering but I can't figure out where. This is what I've tried. Scenario 1 - All services are registered according to their function - GET_ALL also registered as a StatusListener with *no* service properties - GET_ONE also registered as a StatusListener with "name=foo" service property - When sending status, all the services use *no* filter in the query Results - GET_ALL gets all the status (good) - GET_ONE gets all the status (bad) Scenario 2 - All services are registered according to their function - GET_ALL also registered as a StatusListener with *no* service properties - GET_ONE also registered as a StatusListener with "name=foo" service property - When sending status, all the services use *"name=<name>"* filter in the query Results - GET_ALL gets no status (bad) - GET_ONE gets its desired status (good) Scenario 3 - All services are registered according to their function - GET_ALL also registered as a StatusListener with *"name=*"* service properties - GET_ONE also registered as a StatusListener with "name=foo" service property - When sending status, all the services use *"name=<name>"* filter in the query Results - GET_ALL gets no status (bad) - GET_ONE gets its desired status (good) Can someone point out the problem? Thanks. Tim

