io.hackle.sdk.common.HacklePushSubscriptionOperations.kt Maven / Gradle / Ivy
package io.hackle.sdk.common
class HacklePushSubscriptionOperations private constructor(
/**
* PushSubscriptionType -> Status
*/
private val operations: Map,
) {
val size: Int get() = operations.size
fun asMap(): Map {
return operations
}
class Builder {
private val operations = hashMapOf()
fun global(status: HacklePushSubscriptionStatus) = apply {
operations[HacklePushSubscriptionType.GLOBAL.key] = status
}
fun build(): HacklePushSubscriptionOperations {
return HacklePushSubscriptionOperations(operations)
}
}
companion object {
@JvmStatic
fun builder(): Builder {
return Builder()
}
}
}