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

io.kroxylicious.testing.kafka.junit5ext.TopicConfig Maven / Gradle / Ivy

Go to download

Provides a JUnit5 extension for providing KafkaCluster implementations to tests and running tests over multiple cluster configurations.

There is a newer version: 0.9.1
Show newest version
/*
 * Copyright Kroxylicious Authors.
 *
 * Licensed under the Apache Software License version 2.0, available at http://www.apache.org/licenses/LICENSE-2.0
 */
package io.kroxylicious.testing.kafka.junit5ext;

import java.lang.annotation.ElementType;
import java.lang.annotation.Repeatable;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * {@link TopicConfig} is used to provide topic configuration. It may be applied to the {@link Topic} type.
 */
@Retention(RetentionPolicy.RUNTIME)
@Target({ ElementType.FIELD, ElementType.PARAMETER })
@Repeatable(TopicConfig.List.class)
public @interface TopicConfig {
    /**
     * The name of the kafka topic configuration parameter.
     *
     * @return the name
     **/
    String name();

    /**
     * The value of the kafka topic configuration parameter.
     *
     * @return the value
     */
    String value();

    /**
     * The interface List.
     */
    @Retention(RetentionPolicy.RUNTIME)
    @Target({ ElementType.FIELD, ElementType.PARAMETER })
    @interface List {
        /**
         * List of kafka topic configurations.
         *
         * @return the value of the config list
         */
        TopicConfig[] value();
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy