Package org.apache.accumulo.core.util

Examples of org.apache.accumulo.core.util.BadArgumentException


          }
        } else {
          shellState.getReader().println("Not tracing");
        }
      } else
        throw new BadArgumentException("Argument must be 'on' or 'off'", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
    } else if (cl.getArgs().length == 0) {
      shellState.getReader().println(Trace.isTracing() ? "on" : "off");
    } else {
      shellState.printException(new IllegalArgumentException("Expected 0 or 1 argument. There were " + cl.getArgs().length + "."));
      printHelp(shellState);
View Full Code Here


   
    Node parse(byte[] expression) {
      if (expression.length > 0) {
        Node node = parse_(expression);
        if (node == null) {
          throw new BadArgumentException("operator or missing parens", new String(expression), index - 1);
        }
        if (parens != 0) {
          throw new BadArgumentException("parenthesis mis-match", new String(expression), index - 1);
        }
        return node;
      }
      return null;
    }
View Full Code Here

    }
   
    Node processTerm(int start, int end, Node expr, byte[] expression) {
      if (start != end) {
        if (expr != null)
          throw new BadArgumentException("expression needs | or &", new String(expression), start);
        return new Node(start, end);
      }
      if (expr == null)
        throw new BadArgumentException("empty term", new String(expression), start);
      return expr;
    }
View Full Code Here

        switch (expression[index++]) {
          case '&': {
            expr = processTerm(termStart, index - 1, expr, expression);
            if (result != null) {
              if (!result.type.equals(NodeType.AND))
                throw new BadArgumentException("cannot mix & and |", new String(expression), index - 1);
            } else {
              result = new Node(NodeType.AND);
            }
            result.add(expr);
            expr = null;
            termStart = index;
            break;
          }
          case '|': {
            expr = processTerm(termStart, index - 1, expr, expression);
            if (result != null) {
              if (!result.type.equals(NodeType.OR))
                throw new BadArgumentException("cannot mix | and &", new String(expression), index - 1);
            } else {
              result = new Node(NodeType.OR);
            }
            result.add(expr);
            expr = null;
            termStart = index;
            break;
          }
          case '(': {
            parens++;
            if (termStart != index - 1 || expr != null)
              throw new BadArgumentException("expression needs & or |", new String(expression), index - 1);
            expr = parse_(expression);
            termStart = index;
            break;
          }
          case ')': {
            parens--;
            Node child = processTerm(termStart, index - 1, expr, expression);
            if (child == null && result == null)
              throw new BadArgumentException("empty expression not allowed", new String(expression), index);
            if (result == null)
              return child;
            if (result.type == child.type)
              for (Node c : child.children)
                result.add(c);
            else
              result.add(child);
            result.end = index - 1;
            return result;
          }
          default: {
            byte c = expression[index - 1];
            if (!Authorizations.isValidAuthChar(c))
              throw new BadArgumentException("bad character (" + c + ")", new String(expression), index - 1);
          }
        }
      }
      Node child = processTerm(termStart, index, expr, expression);
      if (result != null)
        result.add(child);
      else
        result = child;
      if (result.type != NodeType.TERM)
        if (result.children.size() < 2)
          throw new BadArgumentException("missing term", new String(expression), index);
      return result;
    }
View Full Code Here

      if (cl.getArgs()[0].equalsIgnoreCase("on"))
        Shell.setDebugging(true);
      else if (cl.getArgs()[0].equalsIgnoreCase("off"))
        Shell.setDebugging(false);
      else
        throw new BadArgumentException("Argument must be 'on' or 'off'", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
    } else if (cl.getArgs().length == 0) {
      shellState.getReader().printString(Shell.isDebuggingEnabled() ? "on\n" : "off\n");
    } else {
      Shell.printException(new IllegalArgumentException("Expected 0 or 1 argument. There were " + cl.getArgs().length + "."));
      printHelp();
View Full Code Here

    if (cl.hasOption(systemOpt.getOpt()) && permission[0].equalsIgnoreCase("System")) {
      try {
        shellState.getConnector().securityOperations().revokeSystemPermission(user, SystemPermission.valueOf(permission[1]));
        Shell.log.debug("Revoked from " + user + " the " + permission[1] + " permission");
      } catch (IllegalArgumentException e) {
        throw new BadArgumentException("No such system permission", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
      }
    } else if (cl.hasOption(tableOpt.getOpt()) && permission[0].equalsIgnoreCase("Table")) {
      String tableName = cl.getOptionValue(tableOpt.getOpt());
      try {
        shellState.getConnector().securityOperations().revokeTablePermission(user, tableName, TablePermission.valueOf(permission[1]));
        Shell.log.debug("Revoked from " + user + " the " + permission[1] + " permission on table " + tableName);
      } catch (IllegalArgumentException e) {
        throw new BadArgumentException("No such table permission", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
      }
    } else {
      throw new BadArgumentException("Unrecognized permission", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
    }
    return 0;
  }
View Full Code Here

   
    if (cl.hasOption(deleteOpt.getOpt())) {
      // delete property from table
      String property = cl.getOptionValue(deleteOpt.getOpt());
      if (property.contains("="))
        throw new BadArgumentException("Invalid '=' operator in delete operation.", fullCommand, fullCommand.indexOf('='));
      if (tableName != null) {
        if (!Property.isValidTablePropertyKey(property))
          Shell.log.warn("Invalid per-table property : " + property + ", still removing from zookeeper if its there.");

        shellState.getConnector().tableOperations().removeProperty(tableName, property);
        Shell.log.debug("Successfully deleted table configuration option.");
      } else {
        if (!Property.isValidZooPropertyKey(property))
          Shell.log.warn("Invalid per-table property : " + property + ", still removing from zookeeper if its there.");
        shellState.getConnector().instanceOperations().removeProperty(property);
        Shell.log.debug("Successfully deleted system configuration option");
      }
    } else if (cl.hasOption(setOpt.getOpt())) {
      // set property on table
      String property = cl.getOptionValue(setOpt.getOpt()), value = null;
      if (!property.contains("="))
        throw new BadArgumentException("Missing '=' operator in set operation.", fullCommand, fullCommand.indexOf(property));
     
      String pair[] = property.split("=", 2);
      property = pair[0];
      value = pair[1];
     
      if (tableName != null) {
        if (!Property.isValidTablePropertyKey(property))
          throw new BadArgumentException("Invalid per-table property.", fullCommand, fullCommand.indexOf(property));
       
        if (property.equals(Property.TABLE_DEFAULT_SCANTIME_VISIBILITY.getKey()))
          new ColumnVisibility(value); // validate that it is a valid expression

        shellState.getConnector().tableOperations().setProperty(tableName, property, value);
        Shell.log.debug("Successfully set table configuration option.");
      } else {
        if (!Property.isValidZooPropertyKey(property))
          throw new BadArgumentException("Property cannot be modified in zookeeper", fullCommand, fullCommand.indexOf(property));
       
        shellState.getConnector().instanceOperations().setProperty(property, value);
        Shell.log.debug("Successfully set system configuration option");
      }
    } else {
View Full Code Here

    if (cl.hasOption(systemOpt.getOpt()) && permission[0].equalsIgnoreCase("System")) {
      try {
        shellState.getConnector().securityOperations().grantSystemPermission(user, SystemPermission.valueOf(permission[1]));
        Shell.log.debug("Granted " + user + " the " + permission[1] + " permission");
      } catch (IllegalArgumentException e) {
        throw new BadArgumentException("No such system permission", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
      }
    } else if (permission[0].equalsIgnoreCase("Table")) {
      if (cl.hasOption(tableOpt.getOpt())) {
        String tableName = cl.getOptionValue(tableOpt.getOpt());
        try {
          shellState.getConnector().securityOperations().grantTablePermission(user, tableName, TablePermission.valueOf(permission[1]));
          Shell.log.debug("Granted " + user + " the " + permission[1] + " permission on table " + tableName);
        } catch (IllegalArgumentException e) {
          throw new BadArgumentException("No such table permission", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
        }
      } else if (cl.hasOption(tablePatternOpt.getOpt())) {
        for (String tableName : shellState.getConnector().tableOperations().list()) {
          if (tableName.matches(cl.getOptionValue(tablePatternOpt.getOpt()))) {
            try {
              shellState.getConnector().securityOperations().grantTablePermission(user, tableName, TablePermission.valueOf(permission[1]));
              Shell.log.debug("Granted " + user + " the " + permission[1] + " permission on table " + tableName);
            } catch (IllegalArgumentException e) {
              throw new BadArgumentException("No such table permission", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
            }
          }
        }
      } else {
        throw new BadArgumentException("You must provide a table name", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
      }
    } else {
      throw new BadArgumentException("Unrecognized permission", fullCommand, fullCommand.indexOf(cl.getArgs()[0]));
    }
    return 0;
  }
View Full Code Here

       
        EscapeTokenizer colToks = new EscapeTokenizer(col, ":");
        Iterator<String> tokIter = colToks.iterator();
        Text cf = null, cq = null;
        if (colToks.count() < 1 || colToks.count() > 2)
          throw new BadArgumentException("column must be in the format cf[:cq]", fullCommand, fullCommand.indexOf(col));
        cf = new Text(tokIter.next());
        if (colToks.count() == 2)
          cq = new Text(tokIter.next());
       
        aggregators.add(new PerColumnIteratorConfig(cf, cq, className));
View Full Code Here

public class DropUserCommand extends Command {
  @Override
  public int execute(String fullCommand, CommandLine cl, Shell shellState) throws AccumuloException, AccumuloSecurityException {
    String user = cl.getArgs()[0];
    if (shellState.getConnector().whoami().equals(user))
      throw new BadArgumentException("You cannot delete yourself", fullCommand, fullCommand.indexOf(user));
    shellState.getConnector().securityOperations().dropUser(user);
    Shell.log.debug("Deleted user " + user);
    return 0;
  }
View Full Code Here

TOP

Related Classes of org.apache.accumulo.core.util.BadArgumentException

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.