All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.mguenther.kafka.junit.Props Maven / Gradle / Ivy

package net.mguenther.kafka.junit;

import java.util.Properties;

/**
 * Provides a fluent interface for constructing {@link java.util.Properties}. Use this for example
 * with {@code EmbeddedConnectConfig#deployConnector} to retain the fluent interface when provisioning
 * your embedded Kafka cluster.
 */
public class Props {

    private final Properties properties = new Properties();

    public  Props with(final String propertyName, final T value) {
        properties.put(propertyName, value);
        return this;
    }

    public Props withAll(final Properties overrides) {
        properties.putAll(overrides);
        return this;
    }

    public Properties build() {
        final Properties copyOfProps = new Properties();
        copyOfProps.putAll(properties);
        return copyOfProps;
    }

    public static Props create() {
        return new Props();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy