Package org.ehcache.spi.service
Interface ServiceConfiguration<T extends Service,R>
-
- Type Parameters:
T- the service type this configuration works withR- the type of the detached representation
- All Known Subinterfaces:
CacheLoaderWriterConfiguration<R>,PersistableResourceService.PersistenceSpaceIdentifier<T>,WriteBehindConfiguration<R>
public interface ServiceConfiguration<T extends Service,R>A configuration type to be used when interacting with aService.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default ServiceConfiguration<T,?>build(R representation)Construct a new configuration from the given detached representation.default booleancompatibleWith(ServiceConfiguration<?,?> other)Returns true if this configuration can co-exist withotherin the same cache configuration.default Rderive()Derive a detached representation from this configurationjava.lang.Class<T>getServiceType()Indicates which service this configuration works with.
-
-
-
Method Detail
-
getServiceType
java.lang.Class<T> getServiceType()
Indicates which service this configuration works with.- Returns:
- the service type
-
derive
default R derive() throws java.lang.UnsupportedOperationException
Derive a detached representation from this configuration- Returns:
- a detached representation
- Throws:
java.lang.UnsupportedOperationException- if the configuration has no representation
-
build
default ServiceConfiguration<T,?> build(R representation) throws java.lang.UnsupportedOperationException
Construct a new configuration from the given detached representation.- Parameters:
representation- a detached representation- Returns:
- a new configuration
- Throws:
java.lang.UnsupportedOperationException- if the configuration has no representation
-
compatibleWith
default boolean compatibleWith(ServiceConfiguration<?,?> other)
Returns true if this configuration can co-exist withotherin the same cache configuration.The default implementation of
compatibleWith(as used by many of the implementations) considers any instance of the same type (or a sub-type) to be incompatible with this instance.- Parameters:
other- other service configuration- Returns:
trueif the two configurations are compatible
-
-