Example usage for org.apache.cassandra.hadoop.cql3 CqlConfigHelper setInputCql

List of usage examples for org.apache.cassandra.hadoop.cql3 CqlConfigHelper setInputCql

Introduction

In this page you can find the example usage for org.apache.cassandra.hadoop.cql3 CqlConfigHelper setInputCql.

Prototype

public static void setInputCql(Configuration conf, String cql) 

Source Link

Usage

From source file:co.cask.hydrator.plugin.batch.source.BatchCassandraSource.java

License:Apache License

@Override
public void prepareRun(BatchSourceContext context) throws Exception {
    Configuration conf = new Configuration();
    conf.clear();//from   ww w . ja  v  a 2 s  .com

    ConfigHelper.setInputColumnFamily(conf, config.keyspace, config.columnFamily);
    ConfigHelper.setInputInitialAddress(conf, config.initialAddress);
    ConfigHelper.setInputPartitioner(conf, config.partitioner);
    ConfigHelper.setInputRpcPort(conf, (config.port == null) ? "9160" : Integer.toString(config.port));
    Preconditions
            .checkArgument(!(Strings.isNullOrEmpty(config.username) ^ Strings.isNullOrEmpty(config.password)),
                    "You must either set both username and password or neither username nor password. "
                            + "Currently, they are username: " + config.username + " and password: "
                            + config.password);
    if (!Strings.isNullOrEmpty(config.username)) {
        ConfigHelper.setInputKeyspaceUserNameAndPassword(conf, config.username, config.password);
    }

    if (!Strings.isNullOrEmpty(config.properties)) {
        for (String pair : config.properties.split(",")) {
            // the key and value of properties might have spaces so remove only leading and trailing ones
            conf.set(CharMatcher.WHITESPACE.trimFrom(pair.split(":")[0]),
                    CharMatcher.WHITESPACE.trimFrom(pair.split(":")[1]));
        }
    }
    CqlConfigHelper.setInputCql(conf, config.query);
    context.setInput(Input.of(config.referenceName, new SourceInputFormatProvider(CqlInputFormat.class, conf)));
}