Eugen Martynov
12/11/2019, 2:54 PMabstract class MemoryCache<T> {
private val cachedValue = AtomicReference<T>()
fun getOrEmpty(): Maybe<T> = Maybe.fromCallable { cachedValue.get() }
fun set(value: T) {
this.cachedValue.set(value)
}
fun invalidate() {
cachedValue.set(null)
}
}
This class has concrete methodsMike
12/11/2019, 3:46 PMAbstract classes which do not define anymembers should instead be refactored into concrete classes.abstract
@Suppress("UnnecessaryAbstractClass")
to the class, and Detekt will not report that issue.Eugen Martynov
12/11/2019, 4:26 PMyousefa2
12/11/2019, 4:53 PMMike
12/11/2019, 6:02 PM