Example usage for org.apache.commons.configuration MapConfiguration addProperty

List of usage examples for org.apache.commons.configuration MapConfiguration addProperty

Introduction

In this page you can find the example usage for org.apache.commons.configuration MapConfiguration addProperty.

Prototype

public void addProperty(String key, Object value) 

Source Link

Usage

From source file:com.cloudera.csd.tools.MetricDescriptorGeneratorTool.java

private MapConfiguration generateAndValidateConfig(CommandLine cmdLine) throws ParseException {
    Preconditions.checkNotNull(cmdLine);
    MapConfiguration ret = new MapConfiguration(Maps.<String, Object>newHashMap());

    for (Option option : cmdLine.getOptions()) {
        ret.addProperty(option.getLongOpt(), option.getValue());
    }/*from  w  w  w  . j  av  a 2 s .  co m*/

    if (null == ret.getProperty(OPT_INPUT_MDL.getLongOpt())) {
        throw new ParseException("MetricGeneratorTool missing mdl file " + "location");
    } else {
        String fileName = ret.getString(OPT_INPUT_MDL.getLongOpt());
        File file = new File(fileName);
        if (!file.exists()) {
            throw new ParseException("MDL file '" + fileName + "' does not " + "exist");
        } else if (!file.isFile()) {
            throw new ParseException("MDL file '" + fileName + "' is not a " + "file");
        }
    }

    if (null == ret.getProperty(OPT_INPUT_FIXTURE.getLongOpt())) {
        throw new ParseException("MetricGeneratorTool missing fixture file " + "location");
    } else {
        String fileName = ret.getString(OPT_INPUT_FIXTURE.getLongOpt());
        File file = new File(fileName);
        if (!file.exists()) {
            throw new ParseException("Fixture file '" + fileName + "' does not " + "exist");
        } else if (!file.isFile()) {
            throw new ParseException("Fixture file '" + fileName + "' is not a " + "file");
        }
    }

    if (null != ret.getProperty(OPT_INPUT_CONVENTIONS.getLongOpt())) {
        String fileName = ret.getString(OPT_INPUT_CONVENTIONS.getLongOpt());
        File file = new File(fileName);
        if (!file.exists()) {
            throw new ParseException("Conventions file '" + fileName + "' does " + "not exist");
        } else if (!file.isFile()) {
            throw new ParseException("Conventions file '" + fileName + "' is " + "not a file");
        }
    }

    if (null == ret.getProperty(OPT_ADAPTER_CLASS.getLongOpt())) {
        throw new ParseException("MetricGeneratorTool missing adapter class");
    } else {
        String className = ret.getString(OPT_ADAPTER_CLASS.getLongOpt());
        try {
            Class<?> adapterClass = this.getClass().getClassLoader().loadClass(className);
            if (!MetricFixtureAdapter.class.isAssignableFrom(adapterClass)) {
                throw new ParseException("Adapter class " + className + "is of the " + "wrong type");
            }
            ret.addProperty(ADAPTER_CLASS_CONFIG, adapterClass);
        } catch (ClassNotFoundException e) {
            throw new ParseException("Unknown metric adapter " + className);
        }
    }
    return ret;
}

From source file:com.comcast.viper.flume2storm.IntegrationTest.java

/**
 * Integration test with the Dynamic Location Service and the KryoNet
 * Connection API/* w ww  .  ja v a  2 s .c om*/
 * 
 * @throws Exception
 *           If anything went wrong
 */
@Test
public void testDynamicLocationServiceWithKryoNet() throws Exception {
    //
    // Flume Configuration
    //

    // Base storm sink configuration
    BaseConfiguration sinkBaseConfig = new BaseConfiguration();
    sinkBaseConfig.addProperty(StormSinkConfiguration.LOCATION_SERVICE_FACTORY_CLASS,
            DynamicLocationServiceFactory.class.getName());
    sinkBaseConfig.addProperty(StormSinkConfiguration.SERVICE_PROVIDER_SERIALIZATION_CLASS,
            KryoNetServiceProviderSerialization.class.getName());
    sinkBaseConfig.addProperty(StormSinkConfiguration.EVENT_SENDER_FACTORY_CLASS,
            KryoNetEventSenderFactory.class.getName());
    sinkBaseConfig.addProperty(StormSinkConfiguration.CONNECTION_PARAMETERS_FACTORY_CLASS,
            KryoNetConnectionParametersFactory.class.getName());

    // Location Service configuration
    BaseConfiguration locationServiceConfig = new BaseConfiguration();
    locationServiceConfig.addProperty(DynamicLocationServiceConfiguration.CONNECTION_STRING,
            // zkServer.getConnectString());
            "127.0.0.1:" + ZK_PORT);
    locationServiceConfig.addProperty(DynamicLocationServiceConfiguration.SESSION_TIMEOUT, 2000);
    locationServiceConfig.addProperty(DynamicLocationServiceConfiguration.CONNECTION_TIMEOUT, 500);
    locationServiceConfig.addProperty(DynamicLocationServiceConfiguration.RECONNECTION_DELAY, 1000);
    locationServiceConfig.addProperty(DynamicLocationServiceConfiguration.TERMINATION_TIMEOUT, 2000);
    locationServiceConfig.addProperty(DynamicLocationServiceConfiguration.BASE_PATH, "/unitTest");
    locationServiceConfig.addProperty(DynamicLocationServiceConfiguration.SERVICE_NAME, "ut");

    // First storm sink configuration
    BaseConfiguration sink1ConnectionParameters = new BaseConfiguration();
    sink1ConnectionParameters.addProperty(KryoNetConnectionParameters.ADDRESS,
            KryoNetConnectionParameters.ADDRESS_DEFAULT);
    sink1ConnectionParameters.addProperty(KryoNetConnectionParameters.PORT, TestUtils.getAvailablePort());
    CombinedConfiguration sink1Config = new CombinedConfiguration();
    sink1Config.addConfiguration(sinkBaseConfig);
    sink1Config.addConfiguration(sink1ConnectionParameters, "connectionParams",
            KryoNetConnectionParametersFactory.CONFIG_BASE_NAME);
    sink1Config.addConfiguration(locationServiceConfig, "Location Service Configuration",
            DynamicLocationServiceFactory.CONFIG_BASE_NAME);
    config.addConfiguration(sink1Config, SINK1_CONFIG);

    // Second storm sink configuration
    BaseConfiguration sink2ConnectionParameters = new BaseConfiguration();
    sink2ConnectionParameters.addProperty(KryoNetConnectionParameters.ADDRESS,
            KryoNetConnectionParameters.ADDRESS_DEFAULT);
    sink2ConnectionParameters.addProperty(KryoNetConnectionParameters.PORT, TestUtils.getAvailablePort());
    CombinedConfiguration sink2Config = new CombinedConfiguration();
    sink2Config.addConfiguration(sinkBaseConfig);
    sink2Config.addConfiguration(sink2ConnectionParameters, "connectionParams",
            KryoNetConnectionParametersFactory.CONFIG_BASE_NAME);
    sink2Config.addConfiguration(locationServiceConfig, "Location Service Configuration",
            DynamicLocationServiceFactory.CONFIG_BASE_NAME);
    config.addConfiguration(sink2Config, SINK2_CONFIG);

    //
    // Storm Configuration
    //

    // Global KryoNet configuration
    MapConfiguration kryoConfig = new MapConfiguration(new HashMap<String, Object>());
    kryoConfig.addProperty(KryoNetParameters.CONNECTION_TIMEOUT, 500);
    kryoConfig.addProperty(KryoNetParameters.RECONNECTION_DELAY, 1000);
    kryoConfig.addProperty(KryoNetParameters.TERMINATION_TO, 2000);

    // Flume-spout base configuration
    CombinedConfiguration flumeSpoutBaseConfig = new CombinedConfiguration();
    flumeSpoutBaseConfig.addProperty(FlumeSpoutConfiguration.LOCATION_SERVICE_FACTORY_CLASS,
            DynamicLocationServiceFactory.class.getName());
    flumeSpoutBaseConfig.addProperty(FlumeSpoutConfiguration.SERVICE_PROVIDER_SERIALIZATION_CLASS,
            KryoNetServiceProviderSerialization.class.getName());
    flumeSpoutBaseConfig.addProperty(FlumeSpoutConfiguration.EVENT_RECEPTOR_FACTORY_CLASS,
            KryoNetEventReceptorFactory.class.getName());

    // Final flume-spout configuration
    CombinedConfiguration flumeSpoutConfig = new CombinedConfiguration();
    flumeSpoutConfig.addConfiguration(flumeSpoutBaseConfig);
    flumeSpoutConfig.addConfiguration(kryoConfig, "Kryo Configuration", KryoNetParameters.CONFIG_BASE_NAME);
    flumeSpoutConfig.addConfiguration(locationServiceConfig, "Location Service Configuration",
            DynamicLocationServiceFactory.CONFIG_BASE_NAME);
    config.addConfiguration(flumeSpoutConfig, SPOUT_CONFIG);
    testAll();
}

From source file:com.comcast.viper.flume2storm.IntegrationTest.java

/**
 * Integration test with the Dynamic Location Service and the KryoNet
 * Connection API// w  w  w .jav a  2s.  com
 * 
 * @throws Exception
 *           If anything went wrong
 */
@Test
public void staticLocationService_KryoNet() throws Exception {
    //
    // Flume Configuration
    //

    // Base storm sink configuration
    BaseConfiguration sinkBaseConfig = new BaseConfiguration();
    sinkBaseConfig.addProperty(StormSinkConfiguration.LOCATION_SERVICE_FACTORY_CLASS,
            StaticLocationServiceFactory.class.getName());
    sinkBaseConfig.addProperty(StormSinkConfiguration.SERVICE_PROVIDER_SERIALIZATION_CLASS,
            KryoNetServiceProviderSerialization.class.getName());
    sinkBaseConfig.addProperty(StormSinkConfiguration.EVENT_SENDER_FACTORY_CLASS,
            KryoNetEventSenderFactory.class.getName());
    sinkBaseConfig.addProperty(StormSinkConfiguration.CONNECTION_PARAMETERS_FACTORY_CLASS,
            KryoNetConnectionParametersFactory.class.getName());

    // Location Service configuration
    BaseConfiguration flumeLocationServiceConfig = new BaseConfiguration();
    flumeLocationServiceConfig.addProperty(StaticLocationServiceConfiguration.CONFIGURATION_LOADER_CLASS,
            KryoNetServiceProvidersLoader.class.getName());

    // First storm sink configuration
    int sink1Port = TestUtils.getAvailablePort();
    BaseConfiguration sink1ConnectionParameters = new BaseConfiguration();
    sink1ConnectionParameters.addProperty(KryoNetConnectionParameters.ADDRESS,
            KryoNetConnectionParameters.ADDRESS_DEFAULT);
    sink1ConnectionParameters.addProperty(KryoNetConnectionParameters.PORT, sink1Port);
    CombinedConfiguration sink1Config = new CombinedConfiguration();
    sink1Config.addConfiguration(sinkBaseConfig);
    sink1Config.addConfiguration(sink1ConnectionParameters, "connectionParams",
            KryoNetConnectionParametersFactory.CONFIG_BASE_NAME);
    sink1Config.addConfiguration(flumeLocationServiceConfig, "Location Service Configuration",
            StaticLocationServiceFactory.CONFIG_BASE_NAME);
    config.addConfiguration(sink1Config, SINK1_CONFIG);

    // Second storm sink configuration
    int sink2Port = TestUtils.getAvailablePort();
    BaseConfiguration sink2ConnectionParameters = new BaseConfiguration();
    sink2ConnectionParameters.addProperty(KryoNetConnectionParameters.ADDRESS,
            KryoNetConnectionParameters.ADDRESS_DEFAULT);
    sink2ConnectionParameters.addProperty(KryoNetConnectionParameters.PORT, sink2Port);
    CombinedConfiguration sink2Config = new CombinedConfiguration();
    sink2Config.addConfiguration(sinkBaseConfig);
    sink2Config.addConfiguration(sink2ConnectionParameters, "connectionParams",
            KryoNetConnectionParametersFactory.CONFIG_BASE_NAME);
    sink2Config.addConfiguration(flumeLocationServiceConfig, "Location Service Configuration",
            StaticLocationServiceFactory.CONFIG_BASE_NAME);
    config.addConfiguration(sink2Config, SINK2_CONFIG);

    //
    // Storm Configuration
    //

    String sp1Id = "sp1Id";
    String sp2Id = "sp2Id";
    BaseConfiguration stormLocationServiceBaseConfig = new BaseConfiguration();
    stormLocationServiceBaseConfig.addProperty(StaticLocationServiceConfiguration.CONFIGURATION_LOADER_CLASS,
            KryoNetServiceProvidersLoader.class.getName());
    stormLocationServiceBaseConfig.addProperty(StaticLocationServiceConfiguration.SERVICE_PROVIDER_LIST,
            StringUtils.join(sp1Id, StaticLocationServiceConfiguration.SERVICE_PROVIDER_LIST_SEPARATOR, sp2Id));
    BaseConfiguration stormLocationServiceSink1Config = new BaseConfiguration();
    stormLocationServiceSink1Config.addProperty(KryoNetConnectionParameters.ADDRESS,
            KryoNetConnectionParameters.ADDRESS_DEFAULT);
    stormLocationServiceSink1Config.addProperty(KryoNetConnectionParameters.PORT, sink1Port);
    BaseConfiguration stormLocationServiceSink2Config = new BaseConfiguration();
    stormLocationServiceSink2Config.addProperty(KryoNetConnectionParameters.ADDRESS,
            KryoNetConnectionParameters.ADDRESS_DEFAULT);
    stormLocationServiceSink2Config.addProperty(KryoNetConnectionParameters.PORT, sink2Port);
    CombinedConfiguration stormLocationServiceConfig = new CombinedConfiguration();
    stormLocationServiceConfig.addConfiguration(stormLocationServiceBaseConfig);
    stormLocationServiceConfig.addConfiguration(stormLocationServiceSink1Config, "sink1",
            StringUtils.join(StaticLocationServiceConfiguration.SERVICE_PROVIDER_BASE_DEFAULT, ".", sp1Id));
    stormLocationServiceConfig.addConfiguration(stormLocationServiceSink2Config, "sink2",
            StringUtils.join(StaticLocationServiceConfiguration.SERVICE_PROVIDER_BASE_DEFAULT, ".", sp2Id));

    // Global KryoNet configuration
    MapConfiguration kryoConfig = new MapConfiguration(new HashMap<String, Object>());
    kryoConfig.addProperty(KryoNetParameters.CONNECTION_TIMEOUT, 500);
    kryoConfig.addProperty(KryoNetParameters.RECONNECTION_DELAY, 1000);
    kryoConfig.addProperty(KryoNetParameters.TERMINATION_TO, 2000);

    // Flume-spout base configuration
    CombinedConfiguration flumeSpoutBaseConfig = new CombinedConfiguration();
    flumeSpoutBaseConfig.addProperty(FlumeSpoutConfiguration.LOCATION_SERVICE_FACTORY_CLASS,
            StaticLocationServiceFactory.class.getName());
    flumeSpoutBaseConfig.addProperty(FlumeSpoutConfiguration.SERVICE_PROVIDER_SERIALIZATION_CLASS,
            KryoNetServiceProviderSerialization.class.getName());
    flumeSpoutBaseConfig.addProperty(FlumeSpoutConfiguration.EVENT_RECEPTOR_FACTORY_CLASS,
            KryoNetEventReceptorFactory.class.getName());

    // Final flume-spout configuration
    CombinedConfiguration flumeSpoutConfig = new CombinedConfiguration();
    flumeSpoutConfig.addConfiguration(flumeSpoutBaseConfig);
    flumeSpoutConfig.addConfiguration(kryoConfig, "Kryo Configuration", KryoNetParameters.CONFIG_BASE_NAME);
    flumeSpoutConfig.addConfiguration(stormLocationServiceConfig, "Location Service Configuration",
            StaticLocationServiceFactory.CONFIG_BASE_NAME);
    config.addConfiguration(flumeSpoutConfig, SPOUT_CONFIG);

    testAll();
}