Example usage for org.apache.hadoop.util StringUtils split

List of usage examples for org.apache.hadoop.util StringUtils split

Introduction

In this page you can find the example usage for org.apache.hadoop.util StringUtils split.

Prototype

public static String[] split(String str, char separator) 

Source Link

Document

Split a string using the given separator, with no escaping performed.

Usage

From source file:com.aliyun.odps.volume.VolumeFSUtil.java

License:Apache License

/**
 * Whether the pathname is valid. Currently prohibits relative paths, names which contain a ":" or
 * "//", or other non-canonical paths.//  w w  w  .ja v a2  s  . c  o  m
 */
public static boolean isValidName(String src) {
    if (src == null)
        return false;

    // Path must be absolute.
    if (!src.startsWith(Path.SEPARATOR)) {
        return false;
    }

    // Check for "~" ".." "." ":" "/"
    String[] components = StringUtils.split(src, '/');
    for (int i = 0; i < components.length; i++) {
        String element = components[i];
        if (element.equals("~") || element.equals(".") || element.equals("..") || (element.indexOf(":") >= 0)
                || (element.indexOf("/") >= 0) || (element.indexOf("\\") >= 0)
                || (element.indexOf("\0") >= 0)) {
            return false;
        }
        // The string may start or end with a /, but not have
        // "//" in the middle.
        if (element.isEmpty() && i != components.length - 1 && i != 0) {
            return false;
        }
    }
    return true;
}

From source file:com.antsdb.saltedfish.nosql.HumpbackMetaMain.java

License:Open Source License

private boolean findTableByName(String value) throws Exception {
    String[] words = StringUtils.split(value, '.');
    if (words.length != 2) {
        return false;
    }/*from w ww  . j  av a2 s  .  co  m*/
    String ns = words[0].toLowerCase();
    String table = words[1].toLowerCase();
    for (SysMetaRow i : this.getHumpbackReadOnly().getTablesMeta()) {
        if (!ns.equals(i.getNamespace().toLowerCase())) {
            continue;
        }
        if (!table.equals(i.getTableName().toLowerCase())) {
            continue;
        }
        println(i);
        return true;
    }
    return false;
}

From source file:com.antsdb.saltedfish.sql.meta.ColumnMeta.java

License:Open Source License

public Map<String, Integer> getEnumValueMap() {
    String values = getEnumValues();
    if (values == null) {
        return null;
    }/*from  w  w  w. j  av  a2  s. c  om*/
    Map<String, Integer> map = new HashMap<>();
    int j = 1;
    for (String i : StringUtils.split(values, ',')) {
        i = i.substring(1, i.length() - 1);
        map.put(i, j);
        j++;
    }
    return map;
}

From source file:com.datatorrent.demos.yahoofinance.StockTickInput.java

License:Open Source License

public void setTickers(String tickers) {
    this.tickers = tickers;
    symbols = StringUtils.split(tickers, ',');
}

From source file:org.apache.phoenix.queryserver.server.QueryServer.java

License:Apache License

@Override
public int run(String[] args) throws Exception {
    logProcessInfo(getConf());/*from   ww  w.j  a va  2  s .co  m*/
    final boolean loadBalancerEnabled = getConf().getBoolean(
            QueryServices.PHOENIX_QUERY_SERVER_LOADBALANCER_ENABLED,
            QueryServicesOptions.DEFAULT_PHOENIX_QUERY_SERVER_LOADBALANCER_ENABLED);
    try {
        final boolean isKerberos = "kerberos"
                .equalsIgnoreCase(getConf().get(QueryServices.QUERY_SERVER_HBASE_SECURITY_CONF_ATTRIB));
        final boolean disableSpnego = getConf().getBoolean(
                QueryServices.QUERY_SERVER_SPNEGO_AUTH_DISABLED_ATTRIB,
                QueryServicesOptions.DEFAULT_QUERY_SERVER_SPNEGO_AUTH_DISABLED);
        String hostname;
        final boolean disableLogin = getConf().getBoolean(QueryServices.QUERY_SERVER_DISABLE_KERBEROS_LOGIN,
                QueryServicesOptions.DEFAULT_QUERY_SERVER_DISABLE_KERBEROS_LOGIN);

        // handle secure cluster credentials
        if (isKerberos && !disableSpnego && !disableLogin) {
            hostname = Strings.domainNamePointerToHostName(DNS.getDefaultHost(
                    getConf().get(QueryServices.QUERY_SERVER_DNS_INTERFACE_ATTRIB, "default"),
                    getConf().get(QueryServices.QUERY_SERVER_DNS_NAMESERVER_ATTRIB, "default")));
            if (LOG.isDebugEnabled()) {
                LOG.debug("Login to " + hostname + " using "
                        + getConf().get(QueryServices.QUERY_SERVER_KEYTAB_FILENAME_ATTRIB) + " and principal "
                        + getConf().get(QueryServices.QUERY_SERVER_KERBEROS_PRINCIPAL_ATTRIB) + ".");
            }
            SecurityUtil.login(getConf(), QueryServices.QUERY_SERVER_KEYTAB_FILENAME_ATTRIB,
                    QueryServices.QUERY_SERVER_KERBEROS_PRINCIPAL_ATTRIB, hostname);
            LOG.info("Login successful.");
        } else {
            hostname = InetAddress.getLocalHost().getHostName();
            LOG.info(" Kerberos is off and hostname is : " + hostname);
        }

        Class<? extends PhoenixMetaFactory> factoryClass = getConf().getClass(
                QueryServices.QUERY_SERVER_META_FACTORY_ATTRIB, PhoenixMetaFactoryImpl.class,
                PhoenixMetaFactory.class);
        int port = getConf().getInt(QueryServices.QUERY_SERVER_HTTP_PORT_ATTRIB,
                QueryServicesOptions.DEFAULT_QUERY_SERVER_HTTP_PORT);
        LOG.debug("Listening on port " + port);
        PhoenixMetaFactory factory = factoryClass.getDeclaredConstructor(Configuration.class)
                .newInstance(getConf());
        Meta meta = factory.create(Arrays.asList(args));
        Service service = new LocalService(meta);

        // Start building the Avatica HttpServer
        final HttpServer.Builder builder = new HttpServer.Builder().withPort(port).withHandler(service,
                getSerialization(getConf()));

        // Enable SPNEGO and Impersonation when using Kerberos
        if (isKerberos) {
            UserGroupInformation ugi = UserGroupInformation.getCurrentUser();
            LOG.debug("Current user is " + ugi);
            if (!ugi.hasKerberosCredentials()) {
                ugi = UserGroupInformation.getLoginUser();
                LOG.debug("Current user does not have Kerberos credentials, using instead " + ugi);
            }

            // Make sure the proxyuser configuration is up to date
            ProxyUsers.refreshSuperUserGroupsConfiguration(getConf());

            String keytabPath = getConf().get(QueryServices.QUERY_SERVER_KEYTAB_FILENAME_ATTRIB);
            File keytab = new File(keytabPath);

            String realmsString = getConf().get(QueryServices.QUERY_SERVER_KERBEROS_ALLOWED_REALMS, null);
            String[] additionalAllowedRealms = null;
            if (null != realmsString) {
                additionalAllowedRealms = StringUtils.split(realmsString, ',');
            }

            // Enable SPNEGO and impersonation (through standard Hadoop configuration means)
            builder.withSpnego(ugi.getUserName(), additionalAllowedRealms).withAutomaticLogin(keytab)
                    .withImpersonation(new PhoenixDoAsCallback(ugi, getConf()));

        }
        setRemoteUserExtractorIfNecessary(builder, getConf());

        // Build and start the HttpServer
        server = builder.build();
        server.start();
        if (loadBalancerEnabled) {
            registerToServiceProvider(hostname);
        }
        runningLatch.countDown();
        server.join();
        return 0;
    } catch (Throwable t) {
        LOG.fatal("Unrecoverable service error. Shutting down.", t);
        this.t = t;
        return -1;
    } finally {
        if (loadBalancerEnabled) {
            unRegister();
        }
    }
}