package org.infinispan.configuration.cache; import static org.infinispan.configuration.cache.CustomStoreConfiguration.CUSTOM_STORE_CLASS; import org.infinispan.commons.configuration.Builder; /** * StoreConfigurationBuilder used for stores/loaders that don't have a configuration builder * * @author wburns * @since 7.0 */ public class CustomStoreConfigurationBuilder extends AbstractStoreConfigurationBuilder<CustomStoreConfiguration, CustomStoreConfigurationBuilder> { public CustomStoreConfigurationBuilder(PersistenceConfigurationBuilder builder) { super(builder, CustomStoreConfiguration.attributeDefinitionSet()); } @Override public CustomStoreConfiguration create() { return new CustomStoreConfiguration(attributes.protect(), async.create(), singletonStore.create()); } public CustomStoreConfigurationBuilder customStoreClass(Class<?> customStoreClass) { attributes.attribute(CUSTOM_STORE_CLASS).set(customStoreClass); return this; } @Override public Builder<?> read(CustomStoreConfiguration template) { super.read(template); return this; } @Override public CustomStoreConfigurationBuilder self() { return this; } }