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

org.zodiac.cache.reactive.supports.UnsupportedReactiveCache Maven / Gradle / Ivy

The newest version!
package org.zodiac.cache.reactive.supports;

import org.reactivestreams.Publisher;
import org.zodiac.cache.reactive.ReactiveCache;

import reactor.cache.CacheFlux;
import reactor.cache.CacheMono;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;

import java.util.function.Supplier;

public class UnsupportedReactiveCache implements ReactiveCache {

    private UnsupportedReactiveCache() {
        super();
    }

    @Override
    public Flux getFlux(Object key) {
        return Flux.empty();
    }

    @Override
    public Mono getMono(Object key) {
        return Mono.empty();
    }

    @Override
    public Mono put(Object key, Publisher data) {
        return Mono.empty();
    }

    @Override
    public Mono evict(Object key) {
        return Mono.empty();
    }

    @Override
    public Mono evictAll(Iterable key) {
        return Mono.empty();
    }

    @Override
    public Flux getAll(Object... keys) {
        return Flux.empty();
    }

    @Override
    public Mono clear() {
        return Mono.empty();
    }

    @Override
    public CacheMono.MonoCacheBuilderMapMiss mono(Object key) {
        return Supplier::get;
    }

    @Override
    public CacheFlux.FluxCacheBuilderMapMiss flux(Object key) {
        return Supplier::get;
    }

    public static  ReactiveCache getInstance() {
        return (UnsupportedReactiveCache) UnsupportedReactiveCacheHolder.INSTANCE;
    }

    private static class UnsupportedReactiveCacheHolder {
        private static final UnsupportedReactiveCache INSTANCE = new UnsupportedReactiveCache<>();
    }

}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy