View on GitHub

Cadabra

A/B testing library for Java/Kotlin/Android

cadabra-core / com.fo2rist.cadabra

Package com.fo2rist.cadabra

Main entry point and core concepts: Variant, Resolver and Config.

Types

Cadabra Cadabra A/B experiments.interface Cadabra
CadabraConfig Cadabra’s configuration.interface CadabraConfig
ExperimentsConfig Configuration for enabled experiments. A map Active Variant> Name.class ExperimentsConfig
ExperimentsConfigProvider Provider of ExperimentsConfig that may configure experiments asynchronously. Can be used if the experiment config not know in advance or takes a lot of time to load. Extend this class and provide instance to CadabraConfig.startExperimentsAsync. Once the config is ready call provideConfig.abstract class ExperimentsConfigProvider
Resolver Resolves the experiment by giving single Variant among available.interface Resolver<V : Variant>
Variant A single option (variant) of the particular experiment. Implement this interface by the enum so that each item represents the experiment variant, and provide experimental parameters via properties/functions of that enum.interface Variant

Extensions for External Classes

java.lang.Class  
kotlin.reflect.KClass