I'll build it that way. Thanks!

Don

On Tue, Oct 5, 2010 at 3:04 PM, Richard S. Hall <[email protected]> wrote:
>  On 10/5/10 14:58, Donald Whytock wrote:
>>
>> I'm using the objectClass along with another property, yes.  Currently
>> the bundles generate services of a particular class and add a name
>> property; the instances look for services of that type and compare the
>> name property to a table of names they look for.  If I did it the
>> other way around, the names the instances were looking for would
>> probably be lumped together into a single property --
>> ||name1|name2|name3|| for instance -- with the bundles searching for
>> instance services where namelist=*|namex|*
>>
>> So if services are indexed on objectClass, and I do an and-filter on
>> objectClass and another property value, would the filter evaluate the
>> objectClass of a changing service before looking at the property?
>
> It isn't smart, it evaluates them in the order you write them...so you
> should make sure to write your filter with objectClass comparison first.
>
> -> richard
>
>> That would suggest I should have fewer, more-stable services and lots
>> of servicetrackers tied to them, as opposed to lots of less-stable
>> services that a handful of servicetrackers would be reacting to more
>> often.
>>
>> On Tue, Oct 5, 2010 at 2:29 PM, Richard S. Hall<[email protected]>
>>  wrote:
>>>
>>>  On 10/5/10 13:26, Donald Whytock wrote:
>>>>
>>>> Hi all...
>>>>
>>>> I have an efficiency question.  I have a bundle kicking off a small
>>>> number of instances (typically one but could be more) interacting with
>>>> a larger number of bundles.  At the moment I have the large group
>>>> kicking off services with names that the small group of instances
>>>> tracks.  I'm considering more of a whiteboard pattern with the
>>>> instances launching services specifying the names of the bundles
>>>> sought, and the bundles tracking the services.  Either way, the
>>>> instances will need to track the states of the bundles.
>>>>
>>>> So which is more efficient?  A large number of servicetrackers
>>>> tracking a small number of services?  Or a small number of
>>>> servicetrackers tracking a large number of services?
>>>
>>> Not sure. Someone has to do the filtering and delivery, you are just
>>> changing where it happens, it seems.
>>>
>>> If you were doing service queries based purely on objectClass, then it
>>> would
>>> probably be quicker to let the framework do the event filtering and
>>> delivery, since it indexes this value. However, it sounds like you are
>>> using
>>> some other "name" service property to do your filtering, so it probably
>>> doesn't matter much.
>>>
>>> The indexing mechanism the framework uses is actually generic, so
>>> technically it is possible to have it index other service properties. I
>>> had
>>> thought about making a configuration property for this purpose, but it
>>> hasn't been a priority.
>>>
>>> If this is something that sounds interesting to you, you could open up a
>>> JIRA issue for it. You could experiment with it by simply modifying the
>>> constructor of the org.apache.felix.framework.ServiceRegistry class to
>>> hard
>>> code the name of the service property you want indexed.
>>>
>>> ->  richard
>>>
>>>> Don
>>>>
>>>> ---------------------------------------------------------------------
>>>> 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]

Reply via email to