Return-Path: Delivered-To: apmail-hadoop-zookeeper-commits-archive@minotaur.apache.org Received: (qmail 78855 invoked from network); 18 Jun 2009 22:22:55 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 18 Jun 2009 22:22:55 -0000 Received: (qmail 86769 invoked by uid 500); 18 Jun 2009 22:23:06 -0000 Delivered-To: apmail-hadoop-zookeeper-commits-archive@hadoop.apache.org Received: (qmail 86750 invoked by uid 500); 18 Jun 2009 22:23:06 -0000 Mailing-List: contact zookeeper-commits-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: zookeeper-dev@ Delivered-To: mailing list zookeeper-commits@hadoop.apache.org Received: (qmail 86740 invoked by uid 99); 18 Jun 2009 22:23:06 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 18 Jun 2009 22:23:06 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 18 Jun 2009 22:23:04 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 722492388877; Thu, 18 Jun 2009 22:22:44 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r786317 - in /hadoop/zookeeper/trunk: CHANGES.txt src/java/main/org/apache/zookeeper/ZooKeeperMain.java Date: Thu, 18 Jun 2009 22:22:44 -0000 To: zookeeper-commits@hadoop.apache.org From: breed@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20090618222244.722492388877@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: breed Date: Thu Jun 18 22:22:44 2009 New Revision: 786317 URL: http://svn.apache.org/viewvc?rev=786317&view=rev Log: ZOOKEEPER-422. Java CLI should support ephemeral and sequential node creation Modified: hadoop/zookeeper/trunk/CHANGES.txt hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/ZooKeeperMain.java Modified: hadoop/zookeeper/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/zookeeper/trunk/CHANGES.txt?rev=786317&r1=786316&r2=786317&view=diff ============================================================================== --- hadoop/zookeeper/trunk/CHANGES.txt (original) +++ hadoop/zookeeper/trunk/CHANGES.txt Thu Jun 18 22:22:44 2009 @@ -223,6 +223,8 @@ ZOOKEEPER-428. logging should be makred as warn rathen than error in NIOServerCnxn. (phunt via mahadev) + ZOOKEEPER-422. Java CLI should support ephemeral and sequential node creation (henry via breed) + NEW FEATURES: ZOOKEEPER-371. jdiff documentation included in build/release (giri via phunt) Modified: hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/ZooKeeperMain.java URL: http://svn.apache.org/viewvc/hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/ZooKeeperMain.java?rev=786317&r1=786316&r2=786317&view=diff ============================================================================== --- hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/ZooKeeperMain.java (original) +++ hadoop/zookeeper/trunk/src/java/main/org/apache/zookeeper/ZooKeeperMain.java Thu Jun 18 22:22:44 2009 @@ -63,7 +63,7 @@ static void populateCommandMap() { commandMap.put("connect", "host:port"); commandMap.put("close",""); - commandMap.put("create", "path data acl"); + commandMap.put("create", "[-s] [-e] path data acl"); commandMap.put("delete","path [version]"); commandMap.put("set","path data [version]"); commandMap.put("get","path [watch]"); @@ -93,7 +93,6 @@ public void process(WatchedEvent event) { if (getPrintWatches()) { ZooKeeperMain.printMessage("WATCHER::"); - ZooKeeperMain.printMessage("WATCHER::"); ZooKeeperMain.printMessage(event.toString()); } } @@ -661,12 +660,25 @@ } if (cmd.equals("create") && args.length >= 3) { - if (args.length == 4) { - acl = parseACLs(args[3]); - } - path = args[1]; - String newPath = zk.create(path, args[2].getBytes(), acl, - CreateMode.PERSISTENT); + int first = 0; + CreateMode flags = CreateMode.PERSISTENT; + if ((args[1].equals("-e") && args[2].equals("-s")) + || (args[1]).equals("-s") && (args[2].equals("-e"))) { + first+=2; + flags = CreateMode.EPHEMERAL_SEQUENTIAL; + } else if (args[1].equals("-e")) { + first++; + flags = CreateMode.EPHEMERAL; + } else if (args[1].equals("-s")) { + first++; + flags = CreateMode.PERSISTENT_SEQUENTIAL; + } + if (args.length == first + 4) { + acl = parseACLs(args[first+3]); + } + path = args[first + 1]; + String newPath = zk.create(path, args[first+2].getBytes(), acl, + flags); System.err.println("Created " + newPath); } else if (cmd.equals("delete") && args.length >= 2) { path = args[1];