curator-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Techy Teck <comptechge...@gmail.com>
Subject Re: How to use Curator for Watching the nodes and trigger purpose
Date Sat, 09 Nov 2013 00:12:20 GMT
This is working for me after I added watchedGetChildren method. Is this the
right way to do it?

public void eventReceived(CuratorFramework client, CuratorEvent event)
throws Exception {
                // examine event for details

                System.out.println("Hello World");
                watchedGetChildren(client, "/foo");
            }


On Fri, Nov 8, 2013 at 4:04 PM, Techy Teck <comptechgeeky@gmail.com> wrote:

>
> On Fri, Nov 8, 2013 at 1:36 PM, Cameron McKenzie <mckenzie.cam@gmail.com>wrote:
>
>> for(;;) {
>>     try {
>>         Thread.sleep(50000);
>>     } catch(InterruptedException e) {
>>     }
>> }
>>
>
>
> Aah... I was in the impression that I need to start some sort of server
> using Curator.. Never mind.. It works fine for the first time.. But second
> time when I create a new child nodes again, it doesn't print out Hello
> World again which strikes me that you mentioned I need to rewatch the
> parent node after each event. Below is my example.. Do I need to add
> anything in eventReceived method to rewatch again?
>
>
>     public class ZKWatcher {
>
>         public static void main(String[] args) {
>
>             try {
>                 CuratorFramework client =
> CuratorClient.createSimple("localhost:2181");
>                 client.start();
>
>                 List<String> children = watchedGetChildren(client, "/foo");
>                 System.out.println(children);
>
>                 handleWatchEvents(client);
>
>                 for(;;) {
>                     try {
>                         Thread.sleep(50000);
>                     } catch(InterruptedException e) {
>                     }
>                 }
>
>
>             } catch (Exception ex) {
>                 ex.printStackTrace();
>             }
>         }
>
>         public static List<String> watchedGetChildren(CuratorFramework
> client, String path) throws Exception {
>
>             return client.getChildren().watched().forPath(path);
>         }
>
>         public static void handleWatchEvents(CuratorFramework client)
> throws Exception {
>             // this is one method of getting event/async notifications
>             CuratorListener listener = new CuratorListener() {
>                 public void eventReceived(CuratorFramework client,
> CuratorEvent event) throws Exception {
>                     // examine event for details
>
>                     System.out.println("Hello World");
>                 }
>             };
>             client.getCuratorListenable().addListener(listener);
>         }
>     }
>
>
>

Mime
View raw message