Hi,

I tried with *ServiceCacheListener* (under the hood it uses a
*PathChildrenCache*).
But it sounds like you need to create a service cache for each service you
have to receive events related to this service instances !!!!

Bests,



On Wed, Apr 22, 2015 at 10:33 AM, Arbi Akhina <[email protected]> wrote:

> @Jordan I'll try with the ServiceCacheListener (didn't see it before :(
> @Scott yeah the node is removed from ZK but no event is triggered, I
> didn't try with TreeCache
>
> On Tue, Apr 21, 2015 at 8:18 PM, Scott Blum <[email protected]> wrote:
>
>> Hi Arbi,
>>
>> Is the node actually removed in ZK that you're expecting the event for?
>> Also, if you try it with TreeCache, do you get the removal event?
>>
>> On Tue, Apr 21, 2015 at 2:15 PM, Arbi Akhina <[email protected]>
>> wrote:
>>
>>> I'm using Apache Curator for service discovery, and PathChildrenCache to
>>> listen for events when a service is added/updated/deleted.
>>>
>>> PathChildrenCache pathCache = new PathChildrenCache(client, "/directory", 
>>> true);
>>> pathCache.getListenable().addListener(new PathChildrenCacheListener() {
>>>   @Override
>>>   public void childEvent(CuratorFramework client, PathChildrenCacheEvent 
>>> event) throws Exception {
>>>     if(event.getType() == PathChildrenCacheEvent.Type.CHILD_ADDED) {
>>>       System.out.println("Added");
>>>     }else if(event.getType() == PathChildrenCacheEvent.Type.CHILD_UPDATED) {
>>>       System.out.println("Updated");
>>>     }else if(event.getType() == PathChildrenCacheEvent.Type.CHILD_REMOVED) {
>>>       System.out.println("Removed");
>>>     }
>>>   }}
>>> pathCache.start();
>>>
>>> When I register a service through
>>> org.apache.curator.x.discovery.ServiceDiscovery, I got an added event.
>>> But when I un-register a service I don't get the removed event.
>>>
>>> How I could properly listen to service events?
>>>
>>>
>>
>

Reply via email to