Package-level declarations

Types

Link copied to clipboard
data class AllowListStrategy(val allowedList: Set<String>) : FlippingStrategy

A strategy that enables a feature only for users in an allowed list.

Link copied to clipboard

A strategy that always evaluates to false.

Link copied to clipboard

A strategy that always evaluates to true.

Link copied to clipboard
data class AndStrategy(val strategies: List<FlippingStrategy>) : FlippingStrategy

A composite strategy that evaluates to true only if all child strategies evaluate to true.

Link copied to clipboard
data class ClientFilterStrategy(val grantedClients: Set<String> = emptySet()) : FlippingStrategy

A strategy that enables a feature only for requests from specific client hostnames.

Link copied to clipboard
data class DailyHoursStrategy(val startHour: Int, val endHour: Int, val timezone: ERROR CLASS: Symbol not found for TimeZone = TimeZone.UTC, clock: ERROR CLASS: Symbol not found for Clock = Clock.System) : FlippingStrategy

A strategy that enables a feature only during specific hours of the day.

Link copied to clipboard
data class DateRangeStrategy(val startDate: ERROR CLASS: Symbol not found for Instant, val endDate: ERROR CLASS: Symbol not found for Instant, clock: ERROR CLASS: Symbol not found for Clock = Clock.System) : FlippingStrategy

A strategy that enables a feature only within a specified time range.

Link copied to clipboard
data class DenyListStrategy(val denyList: Set<String>) : FlippingStrategy

A strategy that disables a feature for users in a deny list.

Link copied to clipboard
data class NotStrategy(val strategy: FlippingStrategy) : FlippingStrategy

A composite strategy that negates the result of another strategy.

Link copied to clipboard
data class OrStrategy(val strategies: List<FlippingStrategy>) : FlippingStrategy

A composite strategy that evaluates to true if any child strategy evaluates to true.

Link copied to clipboard
data class PonderationStrategy(val weight: Double = HALF) : FlippingStrategy

A strategy that randomly enables a feature based on a weight.

Link copied to clipboard
data class RegionFilterStrategy(val grantedRegions: Set<String> = emptySet()) : FlippingStrategy

A strategy that enables a feature only for specific geographic regions.

Link copied to clipboard
data class ReleaseDateStrategy(val releaseDate: ERROR CLASS: Symbol not found for Instant, clock: ERROR CLASS: Symbol not found for Clock = Clock.System) : FlippingStrategy

A strategy that enables a feature after a specified release date.

Link copied to clipboard
data class ServerFilterStrategy(val targetServers: Set<String> = emptySet()) : FlippingStrategy

A strategy that enables a feature only on specific server hostnames.

Link copied to clipboard
data class UserPonderationStrategy(val weight: Double = HALF) : FlippingStrategy

A strategy that enables a feature for a consistent percentage of users.

Link copied to clipboard
data class WeekdayStrategy(val allowedDays: Set<ERROR CLASS: Symbol not found for DayOfWeek>, val timezone: ERROR CLASS: Symbol not found for TimeZone = TimeZone.UTC, clock: ERROR CLASS: Symbol not found for Clock = Clock.System) : FlippingStrategy

A strategy that enables a feature only on specific days of the week.

Functions

Link copied to clipboard

Combines this strategy with other using logical AND.

Link copied to clipboard

Negates this strategy.

Link copied to clipboard

Combines this strategy with other using logical OR.