accumulo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From ctubb...@apache.org
Subject [13/54] git commit: ACCUMULO-802 added -tn option to the TablesCommand to allow listing of tables within a specific namespace
Date Fri, 01 Nov 2013 02:00:14 GMT
ACCUMULO-802 added -tn option to the TablesCommand to allow listing of tables within a specific
namespace


Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo
Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/2f693507
Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/2f693507
Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/2f693507

Branch: refs/heads/ACCUMULO-802
Commit: 2f693507bb721b59609c7ac286300b0556d0902b
Parents: f90e0fb
Author: Sean Hickey <tallirishllama@gmail.com>
Authored: Tue Jul 23 09:36:20 2013 -0400
Committer: Christopher Tubbs <ctubbsii@apache.org>
Committed: Thu Oct 31 21:24:36 2013 -0400

----------------------------------------------------------------------
 .../core/util/shell/commands/ConfigCommand.java |  2 +-
 .../core/util/shell/commands/DUCommand.java     |  2 +-
 .../util/shell/commands/TableOperation.java     |  2 +-
 .../core/util/shell/commands/TablesCommand.java | 28 ++++++++++++++++----
 4 files changed, 26 insertions(+), 8 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/accumulo/blob/2f693507/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java
b/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java
index dcfc48c..c2f93be 100644
--- a/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java
+++ b/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ConfigCommand.java
@@ -261,7 +261,7 @@ public class ConfigCommand extends Command {
     filterOpt = new Option("f", "filter", true, "show only properties that contain this string");
     disablePaginationOpt = new Option("np", "no-pagination", false, "disables pagination
of output");
     outputFileOpt = new Option("o", "output", true, "local file to write the scan output
to");
-    tableNamespaceOpt = new Option("tn", "table-namespace", true, "table namespace to display/set/delete
properties for");
+    tableNamespaceOpt = new Option(Shell.tableNamespaceOption, "table-namespace", true, "table
namespace to display/set/delete properties for");
 
     tableOpt.setArgName("table");
     deleteOpt.setArgName("property");

http://git-wip-us.apache.org/repos/asf/accumulo/blob/2f693507/core/src/main/java/org/apache/accumulo/core/util/shell/commands/DUCommand.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/accumulo/core/util/shell/commands/DUCommand.java
b/core/src/main/java/org/apache/accumulo/core/util/shell/commands/DUCommand.java
index 356cfed..817809d 100644
--- a/core/src/main/java/org/apache/accumulo/core/util/shell/commands/DUCommand.java
+++ b/core/src/main/java/org/apache/accumulo/core/util/shell/commands/DUCommand.java
@@ -96,7 +96,7 @@ public class DUCommand extends Command {
     optHumanReadble = new Option("h", "human-readable", false, "format large sizes to human
readable units");
     optHumanReadble.setArgName("human readable output");
     
-    optTableNamespace = new Option("tn", "table-namespace", true, "name of a table namespace");
+    optTableNamespace = new Option(Shell.tableNamespaceOption, "table-namespace", true, "name
of a table namespace");
     optTableNamespace.setArgName("table-namespace");
     
     o.addOption(OptUtil.tableOpt("table to examine"));

http://git-wip-us.apache.org/repos/asf/accumulo/blob/2f693507/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableOperation.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableOperation.java
b/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableOperation.java
index 4b8b304..e2ec71f 100644
--- a/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableOperation.java
+++ b/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableOperation.java
@@ -108,7 +108,7 @@ public abstract class TableOperation extends Command {
     optTableName = new Option(Shell.tableOption, "table", true, "name of a table to operate
on");
     optTableName.setArgName("tableName");
     
-    optTableNamespace = new Option("tn", "tableNamespace", true, "name of a table namespace
to operate on");
+    optTableNamespace = new Option(Shell.tableNamespaceOption, "table-namespace", true, "name
of a table namespace to operate on");
     optTableNamespace.setArgName("tableNamespace");
     
     final OptionGroup opg = new OptionGroup();

http://git-wip-us.apache.org/repos/asf/accumulo/blob/2f693507/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablesCommand.java
----------------------------------------------------------------------
diff --git a/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablesCommand.java
b/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablesCommand.java
index 19b49e9..8a5d15c 100644
--- a/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablesCommand.java
+++ b/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablesCommand.java
@@ -18,12 +18,13 @@ package org.apache.accumulo.core.util.shell.commands;
 
 import java.io.IOException;
 import java.util.Iterator;
-import java.util.Map;
 import java.util.Map.Entry;
 import java.util.TreeMap;
 
 import org.apache.accumulo.core.client.AccumuloException;
 import org.apache.accumulo.core.client.AccumuloSecurityException;
+import org.apache.accumulo.core.client.TableNamespaceNotFoundException;
+import org.apache.accumulo.core.client.impl.TableNamespaces;
 import org.apache.accumulo.core.util.shell.Shell;
 import org.apache.accumulo.core.util.shell.Shell.Command;
 import org.apache.commons.cli.CommandLine;
@@ -34,16 +35,31 @@ import org.apache.commons.collections.iterators.AbstractIteratorDecorator;
 public class TablesCommand extends Command {
   private Option tableIdOption;
   private Option disablePaginationOpt;
+  private Option tableNamespaceOpt;
   
   @SuppressWarnings("unchecked")
   @Override
-  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState)
throws AccumuloException, AccumuloSecurityException, IOException {
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState)
throws AccumuloException, AccumuloSecurityException, IOException,
+      TableNamespaceNotFoundException {
+    
+    final Iterator<String> tableNames;
+    final Iterator<String> tableIds;
+    
+    if (cl.hasOption(tableNamespaceOpt.getOpt())) {
+      String namespace = shellState.getConnector().tableNamespaceOperations().namespaceIdMap().get(cl.getOptionValue(tableNamespaceOpt.getOpt()));
+      tableNames = TableNamespaces.getTableNames(shellState.getConnector().getInstance(),
namespace).iterator();
+      tableIds = TableNamespaces.getTableIds(shellState.getConnector().getInstance(), namespace).iterator();
+    } else {
+      tableNames = shellState.getConnector().tableOperations().list().iterator();
+      tableIds = new TableIdIterator(new TreeMap<String,String>(shellState.getConnector().tableOperations().tableIdMap()).entrySet().iterator());
+    }
+    
     if (cl.hasOption(tableIdOption.getOpt())) {
-      final Map<String,String> tableIds = new TreeMap<String,String>(shellState.getConnector().tableOperations().tableIdMap());
-      shellState.printLines(new TableIdIterator(tableIds.entrySet().iterator()), !cl.hasOption(disablePaginationOpt.getOpt()));
+      shellState.printLines(tableIds, !cl.hasOption(disablePaginationOpt.getOpt()));
     } else {
-      shellState.printLines(shellState.getConnector().tableOperations().list().iterator(),
!cl.hasOption(disablePaginationOpt.getOpt()));
+      shellState.printLines(tableNames, !cl.hasOption(disablePaginationOpt.getOpt()));
     }
+    
     return 0;
   }
   
@@ -75,6 +91,8 @@ public class TablesCommand extends Command {
     o.addOption(tableIdOption);
     disablePaginationOpt = new Option("np", "no-pagination", false, "disable pagination of
output");
     o.addOption(disablePaginationOpt);
+    tableNamespaceOpt = new Option(Shell.tableNamespaceOption, "table-namespace", true, "name
of table namespace to list only its tables");
+    o.addOption(tableNamespaceOpt);
     return o;
   }
   


Mime
View raw message