accumulo-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From vi...@apache.org
Subject svn commit: r1391754 [7/11] - in /accumulo/branches/ACCUMULO-259: ./ assemble/ conf/ conf/examples/1GB/native-standalone/ conf/examples/1GB/standalone/ conf/examples/2GB/native-standalone/ conf/examples/2GB/standalone/ conf/examples/3GB/native-standalo...
Date Sat, 29 Sep 2012 05:43:13 GMT
Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/QuotedStringTokenizer.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/QuotedStringTokenizer.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/QuotedStringTokenizer.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/QuotedStringTokenizer.java Sat Sep 29 05:42:59 2012
@@ -35,7 +35,7 @@ public class QuotedStringTokenizer imple
   private ArrayList<String> tokens;
   private String input;
   
-  public QuotedStringTokenizer(String t) throws BadArgumentException {
+  public QuotedStringTokenizer(final String t) throws BadArgumentException {
     tokens = new ArrayList<String>();
     this.input = t;
     try {
@@ -55,27 +55,29 @@ public class QuotedStringTokenizer imple
     String hexChars = null;
     char inQuoteChar = '"';
     
-    byte[] token = new byte[input.length()];
+    final byte[] token = new byte[input.length()];
     int tokenLength = 0;
-    byte[] inputBytes = input.getBytes();
+    final byte[] inputBytes = input.getBytes();
     for (int i = 0; i < input.length(); ++i) {
-      char ch = input.charAt(i);
+      final char ch = input.charAt(i);
       
       // if I ended up in an escape sequence, check for valid escapable character, and add it as a literal
       if (inEscapeSequence) {
         inEscapeSequence = false;
-        if (ch == 'x')
+        if (ch == 'x') {
           hexChars = "";
-        else if (ch == ' ' || ch == '\'' || ch == '"' || ch == '\\')
+        } else if (ch == ' ' || ch == '\'' || ch == '"' || ch == '\\') {
           token[tokenLength++] = inputBytes[i];
-        else
+        } else {
           throw new BadArgumentException("can only escape single quotes, double quotes, the space character, the backslash, and hex input", input, i);
+        }
       }
       // in a hex escape sequence
       else if (hexChars != null) {
-        int digit = Character.digit(ch, 16);
-        if (digit < 0)
+        final int digit = Character.digit(ch, 16);
+        if (digit < 0) {
           throw new BadArgumentException("expected hex character", input, i);
+        }
         hexChars += ch;
         if (hexChars.length() == 2) {
           byte b;
@@ -96,10 +98,11 @@ public class QuotedStringTokenizer imple
           inQuote = false;
           tokens.add(new String(token, 0, tokenLength, Shell.CHARSET));
           tokenLength = 0;
-        } else if (ch == '\\')
+        } else if (ch == '\\') {
           inEscapeSequence = true;
-        else
+        } else {
           token[tokenLength++] = inputBytes[i];
+        }
       }
       // not in a quote, either enter a quote, end a token, start escape, or continue a token
       else {
@@ -113,18 +116,21 @@ public class QuotedStringTokenizer imple
         } else if (ch == ' ' && tokenLength > 0) {
           tokens.add(new String(token, 0, tokenLength, Shell.CHARSET));
           tokenLength = 0;
-        } else if (ch == '\\')
+        } else if (ch == '\\') {
           inEscapeSequence = true;
-        else if (ch != ' ')
+        } else if (ch != ' ') {
           token[tokenLength++] = inputBytes[i];
+        }
       }
     }
-    if (inQuote)
+    if (inQuote) {
       throw new BadArgumentException("missing terminating quote", input, input.length());
-    else if (inEscapeSequence || hexChars != null)
+    } else if (inEscapeSequence || hexChars != null) {
       throw new BadArgumentException("escape sequence not complete", input, input.length());
-    if (tokenLength > 0)
+    }
+    if (tokenLength > 0) {
       tokens.add(new String(token, 0, tokenLength, Shell.CHARSET));
+    }
   }
   
   @Override

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/RenameTableCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/RenameTableCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/RenameTableCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/RenameTableCommand.java Sat Sep 29 05:42:59 2012
@@ -30,7 +30,7 @@ import org.apache.commons.cli.CommandLin
 
 public class RenameTableCommand extends Command {
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException, TableNotFoundException,
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws AccumuloException, AccumuloSecurityException, TableNotFoundException,
       TableExistsException {
     shellState.getConnector().tableOperations().rename(cl.getArgs()[0], cl.getArgs()[1]);
     if (shellState.getTableName().equals(cl.getArgs()[0]))
@@ -48,7 +48,7 @@ public class RenameTableCommand extends 
     return "renames a table";
   }
   
-  public void registerCompletion(Token root, Map<Command.CompletionSet,Set<String>> completionSet) {
+  public void registerCompletion(final Token root, final Map<Command.CompletionSet,Set<String>> completionSet) {
     registerCompletionForTables(root, completionSet);
   }
   

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/RevokeCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/RevokeCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/RevokeCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/RevokeCommand.java Sat Sep 29 05:42:59 2012
@@ -40,7 +40,7 @@ public class RevokeCommand extends Table
   private String[] permission;
   
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws Exception {
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws Exception {
     user = cl.hasOption(userOpt.getOpt()) ? cl.getOptionValue(userOpt.getOpt()) : shellState.getConnector().whoami();
     
     permission = cl.getArgs()[0].split("\\.", 2);
@@ -60,7 +60,7 @@ public class RevokeCommand extends Table
   }
   
   @Override
-  protected void doTableOp(Shell shellState, String tableName) throws Exception {
+  protected void doTableOp(final Shell shellState, final String tableName) throws Exception {
     try {
       shellState.getConnector().securityOperations().revokeTablePermission(user, tableName, TablePermission.valueOf(permission[1]));
       Shell.log.debug("Revoked from " + user + " the " + permission[1] + " permission on table " + tableName);
@@ -80,8 +80,8 @@ public class RevokeCommand extends Table
   }
   
   @Override
-  public void registerCompletion(Token root, Map<Command.CompletionSet,Set<String>> completionSet) {
-    Token cmd = new Token(getName());
+  public void registerCompletion(final Token root, final Map<Command.CompletionSet,Set<String>> completionSet) {
+    final Token cmd = new Token(getName());
     cmd.addSubcommand(new Token(TablePermission.printableValues()));
     cmd.addSubcommand(new Token(SystemPermission.printableValues()));
     root.addSubcommand(cmd);
@@ -90,9 +90,9 @@ public class RevokeCommand extends Table
   @Override
   public Options getOptions() {
     super.getOptions();
-    Options o = new Options();
+    final Options o = new Options();
     
-    OptionGroup group = new OptionGroup();
+    final OptionGroup group = new OptionGroup();
     
     systemOpt = new Option("s", "system", false, "revoke a system permission");
     

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ScanCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ScanCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ScanCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/ScanCommand.java Sat Sep 29 05:42:59 2012
@@ -20,18 +20,22 @@ import java.io.IOException;
 import java.io.UnsupportedEncodingException;
 import java.util.List;
 import java.util.Map.Entry;
+import java.util.concurrent.TimeUnit;
 
 import org.apache.accumulo.core.client.AccumuloException;
 import org.apache.accumulo.core.client.AccumuloSecurityException;
 import org.apache.accumulo.core.client.IteratorSetting;
 import org.apache.accumulo.core.client.Scanner;
 import org.apache.accumulo.core.client.ScannerBase;
+import org.apache.accumulo.core.conf.AccumuloConfiguration;
 import org.apache.accumulo.core.data.Key;
 import org.apache.accumulo.core.data.Range;
 import org.apache.accumulo.core.data.Value;
 import org.apache.accumulo.core.security.Authorizations;
 import org.apache.accumulo.core.util.format.BinaryFormatter;
 import org.apache.accumulo.core.util.format.Formatter;
+import org.apache.accumulo.core.util.interpret.DefaultScanInterpreter;
+import org.apache.accumulo.core.util.interpret.ScanInterpreter;
 import org.apache.accumulo.core.util.shell.Shell;
 import org.apache.accumulo.core.util.shell.Shell.Command;
 import org.apache.accumulo.start.classloader.AccumuloClassLoader;
@@ -42,40 +46,40 @@ import org.apache.hadoop.io.Text;
 
 public class ScanCommand extends Command {
   
-  private Option scanOptAuths, scanOptRow, scanOptColumns, disablePaginationOpt, showFewOpt, formatterOpt;
+  private Option scanOptAuths, scanOptRow, scanOptColumns, disablePaginationOpt, showFewOpt, formatterOpt, interpreterOpt, formatterInterpeterOpt;
   protected Option timestampOpt;
   private Option optStartRowExclusive;
   private Option optEndRowExclusive;
+  private Option timeoutOption;
   
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws Exception {
-    String tableName = OptUtil.getTableOpt(cl, shellState);
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws Exception {
+    final String tableName = OptUtil.getTableOpt(cl, shellState);
     
-    Class<? extends Formatter> formatter = null;
-    
-    // Use the configured formatter unless one was provided
-    if (!cl.hasOption(formatterOpt.getOpt())) {
-      formatter = FormatterCommand.getCurrentFormatter(tableName, shellState);
-    }
+    final Class<? extends Formatter> formatter = getFormatter(cl, tableName, shellState);
+    final ScanInterpreter interpeter = getInterpreter(cl, tableName, shellState);
     
     // handle first argument, if present, the authorizations list to
     // scan with
-    Authorizations auths = getAuths(cl, shellState);
-    Scanner scanner = shellState.getConnector().createScanner(tableName, auths);
+    final Authorizations auths = getAuths(cl, shellState);
+    final Scanner scanner = shellState.getConnector().createScanner(tableName, auths);
     
     // handle session-specific scan iterators
     addScanIterators(shellState, scanner, tableName);
     
     // handle remaining optional arguments
-    scanner.setRange(getRange(cl));
+    scanner.setRange(getRange(cl, interpeter));
     
     // handle columns
-    fetchColumns(cl, scanner);
+    fetchColumns(cl, scanner, interpeter);
     
+    // set timeout
+    scanner.setTimeout(getTimeout(cl), TimeUnit.MILLISECONDS);
+
     // output the records
     if (cl.hasOption(showFewOpt.getOpt())) {
-      String showLength = cl.getOptionValue(showFewOpt.getOpt());
+      final String showLength = cl.getOptionValue(showFewOpt.getOpt());
       try {
-        int length = Integer.parseInt(showLength);
+        final int length = Integer.parseInt(showLength);
         if (length < 1) {
           throw new IllegalArgumentException();
         }
@@ -88,18 +92,22 @@ public class ScanCommand extends Command
       }
       
     } else {
-      if (null == formatter) {
-        printRecords(cl, shellState, scanner);
-      } else {
         printRecords(cl, shellState, scanner, formatter);
-      }
     }
     
     return 0;
   }
   
-  protected void addScanIterators(Shell shellState, Scanner scanner, String tableName) {
-    List<IteratorSetting> tableScanIterators = shellState.scanIteratorOptions.get(shellState.getTableName());
+  protected long getTimeout(final CommandLine cl) {
+    if (cl.hasOption(timeoutOption.getLongOpt())) {
+      return AccumuloConfiguration.getTimeInMillis(cl.getOptionValue(timeoutOption.getLongOpt()));
+    }
+    
+    return Long.MAX_VALUE;
+  }
+
+  protected void addScanIterators(final Shell shellState, final Scanner scanner, final String tableName) {
+    final List<IteratorSetting> tableScanIterators = shellState.scanIteratorOptions.get(shellState.getTableName());
     if (tableScanIterators == null) {
       Shell.log.debug("Found no scan iterators to set");
       return;
@@ -116,42 +124,67 @@ public class ScanCommand extends Command
     }
   }
   
-  protected void printRecords(CommandLine cl, Shell shellState, Iterable<Entry<Key,Value>> scanner) throws IOException {
-    if (cl.hasOption(formatterOpt.getOpt())) {
-      try {
-        String className = cl.getOptionValue(formatterOpt.getOpt());
-        Class<? extends Formatter> formatterClass = AccumuloClassLoader.loadClass(className, Formatter.class);
-        
-        printRecords(cl, shellState, scanner, formatterClass);
-      } catch (ClassNotFoundException e) {
-        shellState.getReader().printString("Formatter class could not be loaded.\n" + e.getMessage() + "\n");
-      }
-    } else {
-      shellState.printRecords(scanner, cl.hasOption(timestampOpt.getOpt()), !cl.hasOption(disablePaginationOpt.getOpt()));
-    }
-  }
-  
-  protected void printRecords(CommandLine cl, Shell shellState, Iterable<Entry<Key,Value>> scanner, Class<? extends Formatter> formatter) throws IOException {
+  protected void printRecords(final CommandLine cl, final Shell shellState, final Iterable<Entry<Key,Value>> scanner, final Class<? extends Formatter> formatter) throws IOException {
     shellState.printRecords(scanner, cl.hasOption(timestampOpt.getOpt()), !cl.hasOption(disablePaginationOpt.getOpt()), formatter);
   }
   
-  protected void printBinaryRecords(CommandLine cl, Shell shellState, Iterable<Entry<Key,Value>> scanner) throws IOException {
+  protected void printBinaryRecords(final CommandLine cl, final Shell shellState, final Iterable<Entry<Key,Value>> scanner) throws IOException {
     shellState.printBinaryRecords(scanner, cl.hasOption(timestampOpt.getOpt()), !cl.hasOption(disablePaginationOpt.getOpt()));
   }
   
-  protected void fetchColumns(CommandLine cl, ScannerBase scanner) throws UnsupportedEncodingException {
+  protected ScanInterpreter getInterpreter(final CommandLine cl, final String tableName, final Shell shellState) throws Exception {
+    
+    Class<? extends ScanInterpreter> clazz = null;
+    try {
+      if (cl.hasOption(interpreterOpt.getOpt())) {
+        clazz = AccumuloClassLoader.loadClass(cl.getOptionValue(interpreterOpt.getOpt()), ScanInterpreter.class);
+      } else if (cl.hasOption(formatterInterpeterOpt.getOpt())) {
+        clazz = AccumuloClassLoader.loadClass(cl.getOptionValue(formatterInterpeterOpt.getOpt()), ScanInterpreter.class);
+      }
+    } catch (ClassNotFoundException e) {
+      shellState.getReader().printString("Interpreter class could not be loaded.\n" + e.getMessage() + "\n");
+    }
+
+    if (clazz == null)
+      clazz = InterpreterCommand.getCurrentInterpreter(tableName, shellState);
+
+    if (clazz == null)
+      clazz = DefaultScanInterpreter.class;
+    
+    return clazz.newInstance();
+  }
+
+  protected Class<? extends Formatter> getFormatter(final CommandLine cl, final String tableName, final Shell shellState) throws IOException {
+    
+    try {
+      if (cl.hasOption(formatterOpt.getOpt())) {
+        return AccumuloClassLoader.loadClass(cl.getOptionValue(formatterOpt.getOpt()), Formatter.class);
+        
+      } else if (cl.hasOption(formatterInterpeterOpt.getOpt())) {
+        return AccumuloClassLoader.loadClass(cl.getOptionValue(formatterInterpeterOpt.getOpt()), Formatter.class);
+      }
+    } catch (ClassNotFoundException e) {
+      shellState.getReader().printString("Formatter class could not be loaded.\n" + e.getMessage() + "\n");
+    }
+    
+    return shellState.getFormatter(tableName);
+  }
+  
+  protected void fetchColumns(final CommandLine cl, final ScannerBase scanner, final ScanInterpreter formatter) throws UnsupportedEncodingException {
     if (cl.hasOption(scanOptColumns.getOpt())) {
       for (String a : cl.getOptionValue(scanOptColumns.getOpt()).split(",")) {
-        String sa[] = a.split(":", 2);
-        if (sa.length == 1)
-          scanner.fetchColumnFamily(new Text(a.getBytes(Shell.CHARSET)));
-        else
-          scanner.fetchColumn(new Text(sa[0].getBytes(Shell.CHARSET)), new Text(sa[1].getBytes(Shell.CHARSET)));
+        final String sa[] = a.split(":", 2);
+        if (sa.length == 1) {
+          scanner.fetchColumnFamily(formatter.interpretColumnFamily(new Text(a.getBytes(Shell.CHARSET))));
+        } else {
+          scanner.fetchColumn(formatter.interpretColumnFamily(new Text(sa[0].getBytes(Shell.CHARSET))),
+              formatter.interpretColumnQualifier(new Text(sa[1].getBytes(Shell.CHARSET))));
+        }
       }
     }
   }
   
-  protected Range getRange(CommandLine cl) throws UnsupportedEncodingException {
+  protected Range getRange(final CommandLine cl, final ScanInterpreter formatter) throws UnsupportedEncodingException {
     if ((cl.hasOption(OptUtil.START_ROW_OPT) || cl.hasOption(OptUtil.END_ROW_OPT)) && cl.hasOption(scanOptRow.getOpt())) {
       // did not see a way to make commons cli do this check... it has mutually exclusive options but does not support the or
       throw new IllegalArgumentException("Options -" + scanOptRow.getOpt() + " AND (-" + OptUtil.START_ROW_OPT + " OR -" + OptUtil.END_ROW_OPT
@@ -159,18 +192,22 @@ public class ScanCommand extends Command
     }
     
     if (cl.hasOption(scanOptRow.getOpt())) {
-      return new Range(new Text(cl.getOptionValue(scanOptRow.getOpt()).getBytes(Shell.CHARSET)));
+      return new Range(formatter.interpretRow(new Text(cl.getOptionValue(scanOptRow.getOpt()).getBytes(Shell.CHARSET))));
     } else {
       Text startRow = OptUtil.getStartRow(cl);
+      if (startRow != null)
+        startRow = formatter.interpretBeginRow(startRow);
       Text endRow = OptUtil.getEndRow(cl);
-      boolean startInclusive = !cl.hasOption(optStartRowExclusive.getOpt());
-      boolean endInclusive = !cl.hasOption(optEndRowExclusive.getOpt());
+      if (endRow != null)
+        endRow = formatter.interpretEndRow(endRow);
+      final boolean startInclusive = !cl.hasOption(optStartRowExclusive.getOpt());
+      final boolean endInclusive = !cl.hasOption(optEndRowExclusive.getOpt());
       return new Range(startRow, startInclusive, endRow, endInclusive);
     }
   }
   
-  protected Authorizations getAuths(CommandLine cl, Shell shellState) throws AccumuloSecurityException, AccumuloException {
-    String user = shellState.getConnector().whoami();
+  protected Authorizations getAuths(final CommandLine cl, final Shell shellState) throws AccumuloSecurityException, AccumuloException {
+    final String user = shellState.getConnector().whoami();
     Authorizations auths = shellState.getConnector().securityOperations().getUserAuthorizations(user);
     if (cl.hasOption(scanOptAuths.getOpt())) {
       auths = CreateUserCommand.parseAuthorizations(cl.getOptionValue(scanOptAuths.getOpt()));
@@ -185,7 +222,7 @@ public class ScanCommand extends Command
   
   @Override
   public Options getOptions() {
-    Options o = new Options();
+    final Options o = new Options();
     
     scanOptAuths = new Option("s", "scan-authorizations", true, "scan authorizations (all user auths are used if this argument is not specified)");
     optStartRowExclusive = new Option("be", "begin-exclusive", false, "make start row exclusive (by default it's inclusive)");
@@ -198,6 +235,10 @@ public class ScanCommand extends Command
     disablePaginationOpt = new Option("np", "no-pagination", false, "disable pagination of output");
     showFewOpt = new Option("f", "show few", true, "show only a specified number of characters");
     formatterOpt = new Option("fm", "formatter", true, "fully qualified name of the formatter class to use");
+    interpreterOpt = new Option("i", "interpreter", true, "fully qualified name of the interpreter class to use");
+    formatterInterpeterOpt = new Option("fi", "fmt-interpreter", true, "fully qualified name of a class that is a formatter and interpreter");
+    timeoutOption = new Option(null, "timeout", true,
+        "time before scan should fail if no data is returned. If no unit is given assumes seconds.  Units d,h,m,s,and ms are supported.  e.g. 30s or 100ms");
     
     scanOptAuths.setArgName("comma-separated-authorizations");
     scanOptRow.setArgName("row");
@@ -205,6 +246,7 @@ public class ScanCommand extends Command
     showFewOpt.setRequired(false);
     showFewOpt.setArgName("int");
     formatterOpt.setArgName("className");
+    timeoutOption.setArgName("timeout");
     
     o.addOption(scanOptAuths);
     o.addOption(scanOptRow);
@@ -218,6 +260,9 @@ public class ScanCommand extends Command
     o.addOption(OptUtil.tableOpt("table to be scanned"));
     o.addOption(showFewOpt);
     o.addOption(formatterOpt);
+    o.addOption(interpreterOpt);
+    o.addOption(formatterInterpeterOpt);
+    o.addOption(timeoutOption);
     
     return o;
   }

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetAuthsCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetAuthsCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetAuthsCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetAuthsCommand.java Sat Sep 29 05:42:59 2012
@@ -35,9 +35,9 @@ public class SetAuthsCommand extends Com
   private Option clearOptAuths;
   
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException {
-    String user = cl.getOptionValue(userOpt.getOpt(), shellState.getConnector().whoami());
-    String scanOpts = cl.hasOption(clearOptAuths.getOpt()) ? null : cl.getOptionValue(scanOptAuths.getOpt());
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws AccumuloException, AccumuloSecurityException {
+    final String user = cl.getOptionValue(userOpt.getOpt(), shellState.getConnector().whoami());
+    final String scanOpts = cl.hasOption(clearOptAuths.getOpt()) ? null : cl.getOptionValue(scanOptAuths.getOpt());
     shellState.getConnector().securityOperations().changeUserAuthorizations(user, CreateUserCommand.parseAuthorizations(scanOpts));
     Shell.log.debug("Changed record-level authorizations for user " + user);
     return 0;
@@ -49,14 +49,14 @@ public class SetAuthsCommand extends Com
   }
   
   @Override
-  public void registerCompletion(Token root, Map<Command.CompletionSet,Set<String>> completionSet) {
+  public void registerCompletion(final Token root, final Map<Command.CompletionSet,Set<String>> completionSet) {
     registerCompletionForUsers(root, completionSet);
   }
   
   @Override
   public Options getOptions() {
-    Options o = new Options();
-    OptionGroup setOrClear = new OptionGroup();
+    final Options o = new Options();
+    final OptionGroup setOrClear = new OptionGroup();
     scanOptAuths = new Option("s", "scan-authorizations", true, "scan authorizations to set");
     scanOptAuths.setArgName("comma-separated-authorizations");
     setOrClear.addOption(scanOptAuths);

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetGroupsCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetGroupsCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetGroupsCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetGroupsCommand.java Sat Sep 29 05:42:59 2012
@@ -33,17 +33,18 @@ public class SetGroupsCommand extends Co
   }
   
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws Exception {
-    String tableName = OptUtil.getTableOpt(cl, shellState);
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws Exception {
+    final String tableName = OptUtil.getTableOpt(cl, shellState);
     
-    HashMap<String,Set<Text>> groups = new HashMap<String,Set<Text>>();
+    final HashMap<String,Set<Text>> groups = new HashMap<String,Set<Text>>();
     
     for (String arg : cl.getArgs()) {
-      String sa[] = arg.split("=", 2);
-      if (sa.length < 2)
+      final String sa[] = arg.split("=", 2);
+      if (sa.length < 2) {
         throw new IllegalArgumentException("Missing '='");
-      String group = sa[0];
-      HashSet<Text> colFams = new HashSet<Text>();
+      }
+      final String group = sa[0];
+      final HashSet<Text> colFams = new HashSet<Text>();
       
       for (String family : sa[1].split(",")) {
         colFams.add(new Text(family.getBytes(Shell.CHARSET)));
@@ -69,7 +70,7 @@ public class SetGroupsCommand extends Co
   
   @Override
   public Options getOptions() {
-    Options opts = new Options();
+    final Options opts = new Options();
     opts.addOption(OptUtil.tableOpt("table to fetch locality groups for"));
     return opts;
   }

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetIterCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetIterCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetIterCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetIterCommand.java Sat Sep 29 05:42:59 2012
@@ -55,65 +55,70 @@ public class SetIterCommand extends Comm
   private Option mincScopeOpt, majcScopeOpt, scanScopeOpt, nameOpt, priorityOpt;
   private Option aggTypeOpt, ageoffTypeOpt, regexTypeOpt, versionTypeOpt, reqvisTypeOpt, classnameTypeOpt;
   
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException, TableNotFoundException,
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws AccumuloException, AccumuloSecurityException, TableNotFoundException,
       IOException, ShellCommandException {
-    String tableName = OptUtil.getTableOpt(cl, shellState);
+    final String tableName = OptUtil.getTableOpt(cl, shellState);
     
-    int priority = Integer.parseInt(cl.getOptionValue(priorityOpt.getOpt()));
+    final int priority = Integer.parseInt(cl.getOptionValue(priorityOpt.getOpt()));
     
-    Map<String,String> options = new HashMap<String,String>();
+    final Map<String,String> options = new HashMap<String,String>();
     String classname = cl.getOptionValue(classnameTypeOpt.getOpt());
     if (cl.hasOption(aggTypeOpt.getOpt())) {
       Shell.log.warn("aggregators are deprecated");
       classname = AggregatingIterator.class.getName();
-    } else if (cl.hasOption(regexTypeOpt.getOpt()))
+    } else if (cl.hasOption(regexTypeOpt.getOpt())) {
       classname = RegExFilter.class.getName();
-    else if (cl.hasOption(ageoffTypeOpt.getOpt()))
+    } else if (cl.hasOption(ageoffTypeOpt.getOpt())) {
       classname = AgeOffFilter.class.getName();
-    else if (cl.hasOption(versionTypeOpt.getOpt()))
+    } else if (cl.hasOption(versionTypeOpt.getOpt())) {
       classname = VersioningIterator.class.getName();
-    else if (cl.hasOption(reqvisTypeOpt.getOpt()))
+    } else if (cl.hasOption(reqvisTypeOpt.getOpt())) {
       classname = ReqVisFilter.class.getName();
+    }
     
-    if (!shellState.getConnector().instanceOperations().testClassLoad(classname, SortedKeyValueIterator.class.getName()))
+    if (!shellState.getConnector().instanceOperations().testClassLoad(classname, SortedKeyValueIterator.class.getName())) {
       throw new ShellCommandException(ErrorCode.INITIALIZATION_FAILURE, "Servers are unable to load " + classname + " as type "
           + SortedKeyValueIterator.class.getName());
+    }    
+    final String name = cl.getOptionValue(nameOpt.getOpt(), setUpOptions(shellState.getReader(), classname, options));
     
-    String name = cl.getOptionValue(nameOpt.getOpt(), setUpOptions(shellState.getReader(), classname, options));
-    
-    String aggregatorClass = options.get("aggregatorClass");
-    if (aggregatorClass != null && !shellState.getConnector().instanceOperations().testClassLoad(aggregatorClass, Aggregator.class.getName()))
+    final String aggregatorClass = options.get("aggregatorClass");
+    if (aggregatorClass != null && !shellState.getConnector().instanceOperations().testClassLoad(aggregatorClass, Aggregator.class.getName())) {
       throw new ShellCommandException(ErrorCode.INITIALIZATION_FAILURE, "Servers are unable to load " + aggregatorClass + " as type "
           + Aggregator.class.getName());
-    
+    }    
     setTableProperties(cl, shellState, tableName, priority, options, classname, name);
     
     return 0;
   }
   
-  protected void setTableProperties(CommandLine cl, Shell shellState, String tableName, int priority, Map<String,String> options, String classname, String name)
+  protected void setTableProperties(final CommandLine cl, final Shell shellState, final String tableName, final int priority, final Map<String,String> options, final String classname, final String name)
       throws AccumuloException, AccumuloSecurityException, ShellCommandException, TableNotFoundException {
     // remove empty values
     for (Iterator<Entry<String,String>> i = options.entrySet().iterator(); i.hasNext();) {
-      Entry<String,String> entry = i.next();
-      if (entry.getValue() == null || entry.getValue().isEmpty())
+      final Entry<String,String> entry = i.next();
+      if (entry.getValue() == null || entry.getValue().isEmpty()) {
         i.remove();
+      }
     }
-    EnumSet<IteratorScope> scopes = EnumSet.noneOf(IteratorScope.class);
-    if (cl.hasOption(mincScopeOpt.getOpt()))
+    final EnumSet<IteratorScope> scopes = EnumSet.noneOf(IteratorScope.class);
+    if (cl.hasOption(mincScopeOpt.getOpt())) {
       scopes.add(IteratorScope.minc);
-    if (cl.hasOption(majcScopeOpt.getOpt()))
+    }
+    if (cl.hasOption(majcScopeOpt.getOpt())) {
       scopes.add(IteratorScope.majc);
-    if (cl.hasOption(scanScopeOpt.getOpt()))
+    }
+    if (cl.hasOption(scanScopeOpt.getOpt())) {
       scopes.add(IteratorScope.scan);
-    if (scopes.isEmpty())
+    }
+    if (scopes.isEmpty()) {
       throw new IllegalArgumentException("You must select at least one scope to configure");
-    
-    IteratorSetting setting = new IteratorSetting(priority, name, classname, options);
+    }    
+    final IteratorSetting setting = new IteratorSetting(priority, name, classname, options);
     shellState.getConnector().tableOperations().attachIterator(tableName, setting, scopes);
   }
   
-  private static String setUpOptions(ConsoleReader reader, String className, Map<String,String> options) throws IOException, ShellCommandException {
+  private static String setUpOptions(final ConsoleReader reader, final String className, final Map<String,String> options) throws IOException, ShellCommandException {
     String input;
     OptionDescriber skvi;
     Class<? extends OptionDescriber> clazz;
@@ -131,19 +136,20 @@ public class SetIterCommand extends Comm
           + "; configure with 'config' instead");
     }
     
-    IteratorOptions itopts = skvi.describeOptions();
-    if (itopts.getName() == null)
+    final IteratorOptions itopts = skvi.describeOptions();
+    if (itopts.getName() == null) {
       throw new IllegalArgumentException(className + " described its default distinguishing name as null");
-    
+    }
     String shortClassName = className;
-    if (className.contains("."))
+    if (className.contains(".")) {
       shortClassName = className.substring(className.lastIndexOf('.') + 1);
-    
-    Map<String,String> localOptions = new HashMap<String,String>();
+    }
+    final Map<String,String> localOptions = new HashMap<String,String>();
     do {
       // clean up the overall options that caused things to fail
-      for (String key : localOptions.keySet())
+      for (String key : localOptions.keySet()) {
         options.remove(key);
+      }
       localOptions.clear();
       
       reader.printString(itopts.getDescription());
@@ -207,7 +213,7 @@ public class SetIterCommand extends Comm
   }
   
   public Options getOptions() {
-    Options o = new Options();
+    final Options o = new Options();
     
     priorityOpt = new Option("p", "priority", true, "the order in which the iterator is applied");
     priorityOpt.setArgName("pri");
@@ -220,7 +226,7 @@ public class SetIterCommand extends Comm
     majcScopeOpt = new Option(IteratorScope.majc.name(), "major-compaction", false, "applied at major compaction");
     scanScopeOpt = new Option(IteratorScope.scan.name(), "scan-time", false, "applied at scan time");
     
-    OptionGroup typeGroup = new OptionGroup();
+    final OptionGroup typeGroup = new OptionGroup();
     classnameTypeOpt = new Option("class", "class-name", true, "a java class that implements SortedKeyValueIterator");
     classnameTypeOpt.setArgName("name");
     aggTypeOpt = new Option("agg", "aggregator", false, "an aggregating type");

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetScanIterCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetScanIterCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetScanIterCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SetScanIterCommand.java Sat Sep 29 05:42:59 2012
@@ -41,30 +41,31 @@ import org.apache.commons.cli.Options;
 
 public class SetScanIterCommand extends SetIterCommand {
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException, TableNotFoundException,
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws AccumuloException, AccumuloSecurityException, TableNotFoundException,
       IOException, ShellCommandException {
     return super.execute(fullCommand, cl, shellState);
   }
   
   @Override
-  protected void setTableProperties(CommandLine cl, Shell shellState, String tableName, int priority, Map<String,String> options, String classname, String name)
+  protected void setTableProperties(final CommandLine cl, final Shell shellState, final String tableName, final int priority, final Map<String,String> options, final String classname, final String name)
       throws AccumuloException, AccumuloSecurityException, ShellCommandException, TableNotFoundException {
     // instead of setting table properties, just put the options in a list to use at scan time
-    if (!shellState.getConnector().instanceOperations().testClassLoad(classname, SortedKeyValueIterator.class.getName()))
+    if (!shellState.getConnector().instanceOperations().testClassLoad(classname, SortedKeyValueIterator.class.getName())) {
       throw new ShellCommandException(ErrorCode.INITIALIZATION_FAILURE, "Servers are unable to load " + classname + " as type "
           + SortedKeyValueIterator.class.getName());
+    }
     List<IteratorSetting> tableScanIterators = shellState.scanIteratorOptions.get(tableName);
     if (tableScanIterators == null) {
       tableScanIterators = new ArrayList<IteratorSetting>();
       shellState.scanIteratorOptions.put(tableName, tableScanIterators);
     }
-    IteratorSetting setting = new IteratorSetting(priority, name, classname);
+    final IteratorSetting setting = new IteratorSetting(priority, name, classname);
     setting.addOptions(options);
     
     // initialize a scanner to ensure the new setting does not conflict with existing settings
-    String user = shellState.getConnector().whoami();
-    Authorizations auths = shellState.getConnector().securityOperations().getUserAuthorizations(user);
-    Scanner scanner = shellState.getConnector().createScanner(tableName, auths);
+    final String user = shellState.getConnector().whoami();
+    final Authorizations auths = shellState.getConnector().securityOperations().getUserAuthorizations(user);
+    final Scanner scanner = shellState.getConnector().createScanner(tableName, auths);
     for (IteratorSetting s : tableScanIterators) {
       scanner.addScanIterator(s);
     }
@@ -84,9 +85,9 @@ public class SetScanIterCommand extends 
   public Options getOptions() {
     // Remove the options that specify which type of iterator this is, since
     // they are all scan iterators with this command.
-    HashSet<OptionGroup> groups = new HashSet<OptionGroup>();
-    Options parentOptions = super.getOptions();
-    Options modifiedOptions = new Options();
+    final HashSet<OptionGroup> groups = new HashSet<OptionGroup>();
+    final Options parentOptions = super.getOptions();
+    final Options modifiedOptions = new Options();
     for (Iterator<?> it = parentOptions.getOptions().iterator(); it.hasNext();) {
       Option o = (Option) it.next();
       if (!IteratorScope.majc.name().equals(o.getOpt()) && !IteratorScope.minc.name().equals(o.getOpt()) && !IteratorScope.scan.name().equals(o.getOpt())) {

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SleepCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SleepCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SleepCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SleepCommand.java Sat Sep 29 05:42:59 2012
@@ -23,8 +23,8 @@ import org.apache.commons.cli.CommandLin
 public class SleepCommand extends Command {
   
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws Exception {
-    double secs = Double.parseDouble(cl.getArgs()[0]);
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws Exception {
+    final double secs = Double.parseDouble(cl.getArgs()[0]);
     Thread.sleep((long) (secs * 1000));
     return 0;
   }

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SystemPermissionsCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SystemPermissionsCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SystemPermissionsCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/SystemPermissionsCommand.java Sat Sep 29 05:42:59 2012
@@ -25,9 +25,10 @@ import org.apache.commons.cli.CommandLin
 
 public class SystemPermissionsCommand extends Command {
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws IOException {
-    for (String p : SystemPermission.printableValues())
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws IOException {
+    for (String p : SystemPermission.printableValues()) {
       shellState.getReader().printString(p + "\n");
+    }
     return 0;
   }
   

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableCommand.java Sat Sep 29 05:42:59 2012
@@ -29,11 +29,11 @@ import org.apache.commons.cli.CommandLin
 
 public class TableCommand extends Command {
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException, TableNotFoundException {
-    String tableName = cl.getArgs()[0];
-    if (!shellState.getConnector().tableOperations().exists(tableName))
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws AccumuloException, AccumuloSecurityException, TableNotFoundException {
+    final String tableName = cl.getArgs()[0];
+    if (!shellState.getConnector().tableOperations().exists(tableName)) {
       throw new TableNotFoundException(null, tableName, null);
-    
+    }
     shellState.setTableName(tableName);
     return 0;
   }
@@ -44,7 +44,7 @@ public class TableCommand extends Comman
   }
   
   @Override
-  public void registerCompletion(Token root, Map<Command.CompletionSet,Set<String>> special) {
+  public void registerCompletion(final Token root, final Map<Command.CompletionSet,Set<String>> special) {
     registerCompletionForTables(root, special);
   }
   

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableOperation.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableOperation.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableOperation.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TableOperation.java Sat Sep 29 05:42:59 2012
@@ -36,18 +36,20 @@ public abstract class TableOperation ext
   private boolean force = true;
   private boolean useCommandLine = true;
   
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws Exception {
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws Exception {
     // populate the tableSet set with the tables you want to operate on
-    SortedSet<String> tableSet = new TreeSet<String>();
+    final SortedSet<String> tableSet = new TreeSet<String>();
     if (cl.hasOption(optTablePattern.getOpt())) {
       for (String table : shellState.getConnector().tableOperations().list())
-        if (table.matches(cl.getOptionValue(optTablePattern.getOpt())))
+        if (table.matches(cl.getOptionValue(optTablePattern.getOpt()))) {
           tableSet.add(table);
+        }
     } else if (cl.hasOption(optTableName.getOpt())) {
       tableSet.add(cl.getOptionValue(optTableName.getOpt()));
     } else if (useCommandLine && cl.getArgs().length > 0) {
-      for (String tableName : cl.getArgs())
+      for (String tableName : cl.getArgs()) {
         tableSet.add(tableName);
+      }
     } else {
       shellState.checkTableState();
       tableSet.add(shellState.getTableName());
@@ -59,10 +61,12 @@ public abstract class TableOperation ext
     boolean more = true;
     // flush the tables
     for (String tableName : tableSet) {
-      if (!more)
+      if (!more) {
         break;
-      if (!shellState.getConnector().tableOperations().exists(tableName))
+      }
+      if (!shellState.getConnector().tableOperations().exists(tableName)) {
         throw new TableNotFoundException(null, tableName, null);
+      }
       boolean operate = true;
       if (!force) {
         shellState.getReader().flushConsole();
@@ -70,8 +74,9 @@ public abstract class TableOperation ext
         more = line != null;
         operate = line != null && (line.equalsIgnoreCase("y") || line.equalsIgnoreCase("yes"));
       }
-      if (operate)
+      if (operate) {
         doTableOp(shellState, tableName);
+      }
     }
     
     return 0;
@@ -86,7 +91,7 @@ public abstract class TableOperation ext
   
   @Override
   public Options getOptions() {
-    Options o = new Options();
+    final Options o = new Options();
     
     optTablePattern = new Option("p", "pattern", true, "regex pattern of table names to operate on");
     optTablePattern.setArgName("pattern");
@@ -94,7 +99,7 @@ public abstract class TableOperation ext
     optTableName = new Option(Shell.tableOption, "table", true, "name of a table to operate on");
     optTableName.setArgName("tableName");
     
-    OptionGroup opg = new OptionGroup();
+    final OptionGroup opg = new OptionGroup();
     
     opg.addOption(optTablePattern);
     opg.addOption(optTableName);
@@ -106,10 +111,7 @@ public abstract class TableOperation ext
   
   @Override
   public int numArgs() {
-    if (useCommandLine)
-      return Shell.NO_FIXED_ARG_LENGTH_CHECK;
-    else
-      return 0;
+    return useCommandLine ? Shell.NO_FIXED_ARG_LENGTH_CHECK : 0;
   }
   
   protected void force() {
@@ -130,7 +132,7 @@ public abstract class TableOperation ext
   }
   
   @Override
-  public void registerCompletion(Token root, Map<Command.CompletionSet,Set<String>> special) {
+  public void registerCompletion(final Token root, final Map<Command.CompletionSet,Set<String>> special) {
     if (useCommandLine)
       registerCompletionForTables(root, special);
   }

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablePermissionsCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablePermissionsCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablePermissionsCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablePermissionsCommand.java Sat Sep 29 05:42:59 2012
@@ -25,9 +25,10 @@ import org.apache.commons.cli.CommandLin
 
 public class TablePermissionsCommand extends Command {
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws IOException {
-    for (String p : TablePermission.printableValues())
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws IOException {
+    for (String p : TablePermission.printableValues()) {
       shellState.getReader().printString(p + "\n");
+    }
     return 0;
   }
   

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablesCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablesCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablesCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TablesCommand.java Sat Sep 29 05:42:59 2012
@@ -31,14 +31,16 @@ public class TablesCommand extends Comma
   private Option tableIdOption;
   
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException, IOException {
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws AccumuloException, AccumuloSecurityException, IOException {
     if (cl.hasOption(tableIdOption.getOpt())) {
-      Map<String,String> tableIds = shellState.getConnector().tableOperations().tableIdMap();
-      for (String tableName : shellState.getConnector().tableOperations().list())
-        shellState.getReader().printString(String.format("%-15s => %10s\n", tableName, tableIds.get(tableName)));
+      final Map<String,String> tableIds = shellState.getConnector().tableOperations().tableIdMap();
+      for (String tableName : shellState.getConnector().tableOperations().list()) {
+        shellState.getReader().printString(String.format("%-15s => %10s%n", tableName, tableIds.get(tableName)));
+      }
     } else {
-      for (String table : shellState.getConnector().tableOperations().list())
+      for (String table : shellState.getConnector().tableOperations().list()) {
         shellState.getReader().printString(table + "\n");
+      }
     }
     return 0;
   }
@@ -50,7 +52,7 @@ public class TablesCommand extends Comma
   
   @Override
   public Options getOptions() {
-    Options o = new Options();
+    final Options o = new Options();
     tableIdOption = new Option("l", "list-ids", false, "display internal table ids along with the table name");
     o.addOption(tableIdOption);
     return o;

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TraceCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TraceCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TraceCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/TraceCommand.java Sat Sep 29 05:42:59 2012
@@ -34,26 +34,26 @@ import org.apache.hadoop.io.Text;
 
 public class TraceCommand extends DebugCommand {
   
-  public int execute(String fullCommand, CommandLine cl, final Shell shellState) throws IOException {
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws IOException {
     if (cl.getArgs().length == 1) {
       if (cl.getArgs()[0].equalsIgnoreCase("on")) {
         Trace.on("shell:" + shellState.getCredentials().user);
       } else if (cl.getArgs()[0].equalsIgnoreCase("off")) {
         if (Trace.isTracing()) {
-          long trace = Trace.currentTrace().traceId();
+          final long trace = Trace.currentTrace().traceId();
           Trace.off();
           for (int i = 0; i < 10; i++) {
             try {
-              Map<String,String> properties = shellState.getConnector().instanceOperations().getSystemConfiguration();
-              String table = properties.get(Property.TRACE_TABLE.getKey());
-              String user = shellState.getConnector().whoami();
-              Authorizations auths = shellState.getConnector().securityOperations().getUserAuthorizations(user);
-              Scanner scanner = shellState.getConnector().createScanner(table, auths);
+              final Map<String,String> properties = shellState.getConnector().instanceOperations().getSystemConfiguration();
+              final String table = properties.get(Property.TRACE_TABLE.getKey());
+              final String user = shellState.getConnector().whoami();
+              final Authorizations auths = shellState.getConnector().securityOperations().getUserAuthorizations(user);
+              final Scanner scanner = shellState.getConnector().createScanner(table, auths);
               scanner.setRange(new Range(new Text(Long.toHexString(trace))));
               final StringBuffer sb = new StringBuffer();
               if (TraceDump.printTrace(scanner, new Printer() {
                 @Override
-                public void print(String line) {
+                public void print(final String line) {
                   try {
                     sb.append(line + "\n");
                   } catch (Exception ex) {

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UserCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UserCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UserCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UserCommand.java Sat Sep 29 05:42:59 2012
@@ -30,7 +30,7 @@ import org.apache.accumulo.core.util.she
 import org.apache.commons.cli.CommandLine;
 
 public class UserCommand extends Command {
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException, IOException {
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws AccumuloException, AccumuloSecurityException, IOException {
     // save old credentials and connection in case of failure
     String user = cl.getArgs()[0];
     byte[] pass;
@@ -38,7 +38,7 @@ public class UserCommand extends Command
     // We can't let the wrapping try around the execute method deal
     // with the exceptions because we have to do something if one
     // of these methods fails
-    String p = shellState.readMaskedLine("Enter password for user " + user + ": ", '*');
+    final String p = shellState.readMaskedLine("Enter password for user " + user + ": ", '*');
     if (p == null) {
       shellState.getReader().printNewline();
       return 0;
@@ -54,7 +54,7 @@ public class UserCommand extends Command
   }
   
   @Override
-  public void registerCompletion(Token root, Map<Command.CompletionSet,Set<String>> special) {
+  public void registerCompletion(final Token root, final Map<Command.CompletionSet,Set<String>> special) {
     registerCompletionForUsers(root, special);
   }
   

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UserPermissionsCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UserPermissionsCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UserPermissionsCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UserPermissionsCommand.java Sat Sep 29 05:42:59 2012
@@ -33,13 +33,13 @@ public class UserPermissionsCommand exte
   private static int runOnce = 0;
   
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException, IOException {
-    String user = cl.getOptionValue(userOpt.getOpt(), shellState.getConnector().whoami());
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws AccumuloException, AccumuloSecurityException, IOException {
+    final String user = cl.getOptionValue(userOpt.getOpt(), shellState.getConnector().whoami());
     
     String delim = "";
     shellState.getReader().printString("System permissions: ");
     for (SystemPermission p : SystemPermission.values()) {
-      if (shellState.getConnector().securityOperations().hasSystemPermission(user, p) & p != null) {
+      if (p != null && shellState.getConnector().securityOperations().hasSystemPermission(user, p)) {
         shellState.getReader().printString(delim + "System." + p.name());
         delim = ", ";
       }

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UsersCommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UsersCommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UsersCommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/UsersCommand.java Sat Sep 29 05:42:59 2012
@@ -26,9 +26,10 @@ import org.apache.commons.cli.CommandLin
 
 public class UsersCommand extends Command {
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException, IOException {
-    for (String user : shellState.getConnector().securityOperations().listUsers())
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws AccumuloException, AccumuloSecurityException, IOException {
+    for (String user : shellState.getConnector().securityOperations().listUsers()) {
       shellState.getReader().printString(user + "\n");
+    }
     return 0;
   }
   

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/WhoAmICommand.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/WhoAmICommand.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/WhoAmICommand.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/util/shell/commands/WhoAmICommand.java Sat Sep 29 05:42:59 2012
@@ -24,7 +24,7 @@ import org.apache.commons.cli.CommandLin
 
 public class WhoAmICommand extends Command {
   @Override
-  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws IOException {
+  public int execute(final String fullCommand, final CommandLine cl, final Shell shellState) throws IOException {
     shellState.getReader().printString(shellState.getConnector().whoami() + "\n");
     return 0;
   }

Modified: accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/zookeeper/ZooUtil.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/zookeeper/ZooUtil.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/zookeeper/ZooUtil.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/java/org/apache/accumulo/core/zookeeper/ZooUtil.java Sat Sep 29 05:42:59 2012
@@ -20,11 +20,11 @@ import org.apache.accumulo.core.Constant
 import org.apache.accumulo.core.client.Instance;
 
 public class ZooUtil extends org.apache.accumulo.fate.zookeeper.ZooUtil {
-  public static String getRoot(Instance instance) {
+  public static String getRoot(final Instance instance) {
     return getRoot(instance.getInstanceID());
   }
   
-  public static String getRoot(String instanceId) {
+  public static String getRoot(final String instanceId) {
     return Constants.ZROOT + "/" + instanceId;
   }
 }

Modified: accumulo/branches/ACCUMULO-259/core/src/main/thrift/client.thrift
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/thrift/client.thrift?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/thrift/client.thrift (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/thrift/client.thrift Sat Sep 29 05:42:59 2012
@@ -34,6 +34,8 @@ enum TableOperation {
     DELETE_RANGE,
     BULK_IMPORT,
     COMPACT
+    IMPORT
+    EXPORT
 }
 
 enum TableOperationExceptionType {

Modified: accumulo/branches/ACCUMULO-259/core/src/main/thrift/master.thrift
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/thrift/master.thrift?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/thrift/master.thrift (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/thrift/master.thrift Sat Sep 29 05:42:59 2012
@@ -123,6 +123,8 @@ enum TableOperation {
   DELETE_RANGE
   BULK_IMPORT
   COMPACT
+  IMPORT
+  EXPORT
 }
 
 service MasterClientService {

Modified: accumulo/branches/ACCUMULO-259/core/src/main/thrift/thrift.sh
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/main/thrift/thrift.sh?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/main/thrift/thrift.sh (original)
+++ accumulo/branches/ACCUMULO-259/core/src/main/thrift/thrift.sh Sat Sep 29 05:42:59 2012
@@ -25,7 +25,10 @@ fail() {
 VERSION=`thrift -version 2>/dev/null | grep "0.8" |  wc -l`
 if [ "$VERSION" -ne 1 ] ; then 
    # Nope: bail
-   echo "thrift is not available"
+   echo "***********************************************"
+   echo "* thrift is not available                     *"
+   echo "*   expecting 'thrift -version' to return 0.8 *"
+   echo "***********************************************"
    exit 0
 fi
 CLOUDTRACE=../trace
@@ -42,6 +45,7 @@ do
 	thrift ${THRIFT_ARGS} --gen rb $f || fail unable to generate ruby thrift classes
 done
 find target/gen-java -name '*.java' -print | xargs sed -i.orig -e 's/public class /@SuppressWarnings("all") public class /'
+find target/gen-java -name '*.java' -print | xargs sed -i.orig -e 's/public enum /@SuppressWarnings("all") public enum /'
 find target/gen-java -name '*.orig' -print | xargs rm -f
 # copy only files that have changed
 for d in gc master tabletserver security client/impl data

Modified: accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/ClientSideIteratorTest.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/ClientSideIteratorTest.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/ClientSideIteratorTest.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/ClientSideIteratorTest.java Sat Sep 29 05:42:59 2012
@@ -53,10 +53,10 @@ public class ClientSideIteratorTest {
     resultSet3.add(new Key("part2", "", "DOC2"));
   }
   
-  public void checkResults(Iterable<Entry<Key,Value>> scanner, List<Key> results, PartialKey pk) {
+  public void checkResults(final Iterable<Entry<Key,Value>> scanner, final List<Key> results, final PartialKey pk) {
     int i = 0;
     for (Entry<Key,Value> entry : scanner) {
-      assertTrue(0 == entry.getKey().compareTo(results.get(i++), pk));
+      assertTrue(entry.getKey().equals(results.get(i++), pk));
     }
     assertEquals(i, results.size());
   }
@@ -66,7 +66,7 @@ public class ClientSideIteratorTest {
     Instance instance = new MockInstance("local");
     Connector conn = instance.getConnector("root", "".getBytes());
     conn.tableOperations().create("intersect");
-    BatchWriter bw = conn.createBatchWriter("intersect", 1000, 10l, 1);
+    BatchWriter bw = conn.createBatchWriter("intersect", new BatchWriterConfig());
     Mutation m = new Mutation("part1");
     m.put("bar", "doc1", "value");
     m.put("bar", "doc2", "value");
@@ -83,8 +83,8 @@ public class ClientSideIteratorTest {
     bw.addMutation(m);
     bw.flush();
     
-    ClientSideIteratorScanner csis = new ClientSideIteratorScanner(conn.createScanner("intersect", new Authorizations()));
-    IteratorSetting si = new IteratorSetting(10, "intersect", IntersectingIterator.class);
+    final ClientSideIteratorScanner csis = new ClientSideIteratorScanner(conn.createScanner("intersect", new Authorizations()));
+    final IteratorSetting si = new IteratorSetting(10, "intersect", IntersectingIterator.class);
     IntersectingIterator.setColumnFamilies(si, new Text[] {new Text("bar"), new Text("foo")});
     csis.addScanIterator(si);
     
@@ -93,13 +93,13 @@ public class ClientSideIteratorTest {
   
   @Test
   public void testVersioning() throws Exception {
-    Instance instance = new MockInstance("local");
-    Connector conn = instance.getConnector("root", "".getBytes());
+    final Instance instance = new MockInstance("local");
+    final Connector conn = instance.getConnector("root", "".getBytes());
     conn.tableOperations().create("table");
     conn.tableOperations().removeProperty("table", "table.iterator.scan.vers");
     conn.tableOperations().removeProperty("table", "table.iterator.majc.vers");
     conn.tableOperations().removeProperty("table", "table.iterator.minc.vers");
-    BatchWriter bw = conn.createBatchWriter("table", 1000, 10l, 1);
+    final BatchWriter bw = conn.createBatchWriter("table", new BatchWriterConfig());
     Mutation m = new Mutation("row1");
     m.put("colf", "colq", 1l, "value");
     m.put("colf", "colq", 2l, "value");
@@ -111,10 +111,10 @@ public class ClientSideIteratorTest {
     bw.addMutation(m);
     bw.flush();
     
-    Scanner scanner = conn.createScanner("table", new Authorizations());
+    final Scanner scanner = conn.createScanner("table", new Authorizations());
     
-    ClientSideIteratorScanner csis = new ClientSideIteratorScanner(scanner);
-    IteratorSetting si = new IteratorSetting(10, "localvers", VersioningIterator.class);
+    final ClientSideIteratorScanner csis = new ClientSideIteratorScanner(scanner);
+    final IteratorSetting si = new IteratorSetting(10, "localvers", VersioningIterator.class);
     si.addOption("maxVersions", "2");
     csis.addScanIterator(si);
     

Modified: accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/RowIteratorTest.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/RowIteratorTest.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/RowIteratorTest.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/RowIteratorTest.java Sat Sep 29 05:42:59 2012
@@ -35,23 +35,23 @@ import org.junit.Test;
 
 public class RowIteratorTest {
   
-  Iterator<Entry<Key,Value>> makeIterator(String... args) {
-    Map<Key,Value> result = new TreeMap<Key,Value>();
+  Iterator<Entry<Key,Value>> makeIterator(final String... args) {
+    final Map<Key,Value> result = new TreeMap<Key,Value>();
     for (String s : args) {
-      String parts[] = s.split("[ \t]");
-      Key key = new Key(parts[0], parts[1], parts[2]);
-      Value value = new Value(parts[3].getBytes());
+      final String parts[] = s.split("[ \t]");
+      final Key key = new Key(parts[0], parts[1], parts[2]);
+      final Value value = new Value(parts[3].getBytes());
       result.put(key, value);
     }
     return result.entrySet().iterator();
   }
   
-  List<List<Entry<Key,Value>>> getRows(Iterator<Entry<Key,Value>> iter) {
-    List<List<Entry<Key,Value>>> result = new ArrayList<List<Entry<Key,Value>>>();
-    RowIterator riter = new RowIterator(iter);
+  List<List<Entry<Key,Value>>> getRows(final Iterator<Entry<Key,Value>> iter) {
+    final List<List<Entry<Key,Value>>> result = new ArrayList<List<Entry<Key,Value>>>();
+    final RowIterator riter = new RowIterator(iter);
     while (riter.hasNext()) {
-      Iterator<Entry<Key,Value>> row = riter.next();
-      List<Entry<Key,Value>> rlist = new ArrayList<Entry<Key,Value>>();
+      final Iterator<Entry<Key,Value>> row = riter.next();
+      final List<Entry<Key,Value>> rlist = new ArrayList<Entry<Key,Value>>();
       while (row.hasNext())
         rlist.add(row.next());
       result.add(rlist);
@@ -100,7 +100,7 @@ public class RowIteratorTest {
   
   @Test
   public void testUnreadRow() {
-    RowIterator i = new RowIterator(makeIterator("a b c d", "a 1 2 3", "b 1 2 3"));
+    final RowIterator i = new RowIterator(makeIterator("a b c d", "a 1 2 3", "b 1 2 3"));
     assertTrue(i.hasNext());
     Iterator<Entry<Key,Value>> firstRow = i.next();
     assertEquals(0, i.getKVCount());

Modified: accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/admin/FindMaxTest.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/admin/FindMaxTest.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/admin/FindMaxTest.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/admin/FindMaxTest.java Sat Sep 29 05:42:59 2012
@@ -23,6 +23,7 @@ import junit.framework.TestCase;
 
 import org.apache.accumulo.core.Constants;
 import org.apache.accumulo.core.client.BatchWriter;
+import org.apache.accumulo.core.client.BatchWriterConfig;
 import org.apache.accumulo.core.client.Connector;
 import org.apache.accumulo.core.client.Scanner;
 import org.apache.accumulo.core.client.mock.MockInstance;
@@ -51,7 +52,7 @@ public class FindMaxTest extends TestCas
     Connector conn = mi.getConnector("root", "foo");
     conn.tableOperations().create("foo");
     
-    BatchWriter bw = conn.createBatchWriter("foo", 1000000, 60000l, 2);
+    BatchWriter bw = conn.createBatchWriter("foo", new BatchWriterConfig());
     
     bw.addMutation(nm(new byte[] {0}));
     bw.addMutation(nm(new byte[] {0, 0}));

Modified: accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/admin/TableOperationsHelperTest.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/admin/TableOperationsHelperTest.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/admin/TableOperationsHelperTest.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/admin/TableOperationsHelperTest.java Sat Sep 29 05:42:59 2012
@@ -182,6 +182,12 @@ public class TableOperationsHelperTest {
       }
       Assert.assertEquals(expected, settings.get(tablename));
     }
+    
+    @Override
+    public void importTable(String tableName, String exportDir) throws TableExistsException, AccumuloException, AccumuloSecurityException {}
+    
+    @Override
+    public void exportTable(String tableName, String exportDir) throws TableNotFoundException, AccumuloException, AccumuloSecurityException {}
   }
   
   @Test

Modified: accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloFileOutputFormatTest.java
URL: http://svn.apache.org/viewvc/accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloFileOutputFormatTest.java?rev=1391754&r1=1391753&r2=1391754&view=diff
==============================================================================
--- accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloFileOutputFormatTest.java (original)
+++ accumulo/branches/ACCUMULO-259/core/src/test/java/org/apache/accumulo/core/client/mapreduce/AccumuloFileOutputFormatTest.java Sat Sep 29 05:42:59 2012
@@ -27,6 +27,7 @@ import org.apache.accumulo.core.conf.Pro
 import org.apache.accumulo.core.data.Key;
 import org.apache.accumulo.core.data.Value;
 import org.apache.accumulo.core.util.ContextFactory;
+import org.apache.hadoop.conf.Configuration;
 import org.apache.hadoop.fs.Path;
 import org.apache.hadoop.mapreduce.JobContext;
 import org.apache.hadoop.mapreduce.RecordWriter;
@@ -59,17 +60,6 @@ public class AccumuloFileOutputFormatTes
   }
   
   @Test
-  public void testSet() throws IOException, InterruptedException {
-    AccumuloFileOutputFormat.setBlockSize(job.getConfiguration(), 300);
-    validate(300);
-  }
-  
-  @Test
-  public void testUnset() throws IOException, InterruptedException {
-    validate((int) AccumuloConfiguration.getDefaultConfiguration().getMemoryInBytes(Property.TABLE_FILE_COMPRESSED_BLOCK_SIZE));
-  }
-  
-  @Test
   public void testEmptyWrite() throws IOException, InterruptedException {
     handleWriteTests(false);
   }
@@ -97,10 +87,28 @@ public class AccumuloFileOutputFormatTes
     file.getFileSystem(tac.getConfiguration()).delete(file.getParent(), true);
   }
   
-  public void validate(int size) throws IOException, InterruptedException {
-    AccumuloFileOutputFormat.handleBlockSize(job.getConfiguration());
-    int detSize = job.getConfiguration().getInt("io.seqfile.compress.blocksize", -1);
-    assertEquals(size, detSize);
+  @Test
+  public void validateConfiguration() throws IOException, InterruptedException {
+    Configuration conf = job.getConfiguration();
+    AccumuloConfiguration acuconf = AccumuloConfiguration.getDefaultConfiguration();
+    
+    int a = 7;
+    long b = 300l;
+    long c = 50l;
+    long d = 10l;
+    String e = "type";
+    
+    AccumuloFileOutputFormat.setReplication(conf, a);
+    AccumuloFileOutputFormat.setDFSBlockSize(conf, b);
+    AccumuloFileOutputFormat.setCompressedBlockSize(conf, c);
+    AccumuloFileOutputFormat.setCompressedBlockSizeIndex(conf, d);
+    AccumuloFileOutputFormat.setCompressionType(conf, e);
+    
+    assertEquals(a, conf.getInt(Property.TABLE_FILE_REPLICATION.getKey(), acuconf.getCount(Property.TABLE_FILE_REPLICATION)));
+    assertEquals(b, conf.getLong(Property.TABLE_FILE_BLOCK_SIZE.getKey(), acuconf.getMemoryInBytes(Property.TABLE_FILE_BLOCK_SIZE)));
+    assertEquals(c, conf.getLong(Property.TABLE_FILE_COMPRESSED_BLOCK_SIZE.getKey(), acuconf.getMemoryInBytes(Property.TABLE_FILE_COMPRESSED_BLOCK_SIZE)));
+    assertEquals(d,
+        conf.getLong(Property.TABLE_FILE_COMPRESSED_BLOCK_SIZE_INDEX.getKey(), acuconf.getMemoryInBytes(Property.TABLE_FILE_COMPRESSED_BLOCK_SIZE_INDEX)));
+    assertEquals(e, conf.get(Property.TABLE_FILE_COMPRESSION_TYPE.getKey(), acuconf.get(Property.TABLE_FILE_COMPRESSION_TYPE)));
   }
-  
 }



Mime
View raw message