class MockRemoteCacheBuilderImpl extends MockRemoteCacheBuilder<MockRemoteCacheBuilderImpl> {
    }

    public static MockRemoteCacheBuilderImpl createMockRemoteCacheBuilder() {
        return new MockRemoteCacheBuilderImpl();
    }

    @Override
    public MockRemoteCacheConfig getConfig() {
        if (config == null) {
            config = new MockRemoteCacheConfig();
        }
        return (MockRemoteCacheConfig) config;
    }

    @Override
    public boolean supportBroadcast() {
        return true;
    }

    @Override
    public BroadcastManager createBroadcastManager(CacheManager cacheManager) {<FILL_FUNCTION_BODY>

        return new BroadcastManager(cacheManager) {
            @Override
            public CacheResult publish(CacheMessage cacheMessage) {
                lastPublishMessage = cacheMessage;
                return CacheResult.SUCCESS_WITHOUT_MSG;
            }

            @Override
            public void startSubscribe() {
                subscribeStart = true;
            }
        };
    
<methods>public non-sealed void <init>() ,public T broadcastChannel(java.lang.String) ,public com.alicp.jetcache.support.BroadcastManager createBroadcastManager(com.alicp.jetcache.CacheManager) ,public ExternalCacheConfig#RAW getConfig() ,public T keyPrefix(java.lang.String) ,public T keyPrefixSupplier(Supplier<java.lang.String>) ,public void setBroadcastChannel(java.lang.String) ,public void setKeyPrefix(java.lang.String) ,public void setKeyPrefixSupplier(Supplier<java.lang.String>) ,public void setValueDecoder(Function<byte[],java.lang.Object>) ,public void setValueEncoder(Function<java.lang.Object,byte[]>) ,public boolean supportBroadcast() ,public T valueDecoder(Function<byte[],java.lang.Object>) ,public T valueEncoder(Function<java.lang.Object,byte[]>) <variables>