public interface ResourcePools
resource pools
that a Cache
has at its disposal
to store its mappings.
Implementations must be immutable.
Modifier and Type | Method and Description |
---|---|
<P extends ResourcePool> |
getPoolForResource(ResourceType<P> resourceType)
Gets a specific
ResourcePool based on its type. |
java.util.Set<ResourceType<?>> |
getResourceTypeSet()
Gets the set of
ResourceType s present in the ResourcePools . |
ResourcePools |
validateAndMerge(ResourcePools toBeUpdated)
Get a copy of this
ResourcePools merged with the given ResourcePools , validating that
the updates to the contained ResourcePool s are legal. |
<P extends ResourcePool> P getPoolForResource(ResourceType<P> resourceType)
ResourcePool
based on its type.P
- specific resource pool typeresourceType
- the type of resource the pool is trackingResourcePool
, or null if there is no pool of the requested type.java.util.Set<ResourceType<?>> getResourceTypeSet()
ResourceType
s present in the ResourcePools
.ResourceType
ResourcePools validateAndMerge(ResourcePools toBeUpdated) throws java.lang.IllegalArgumentException, java.lang.UnsupportedOperationException
ResourcePools
merged with the given ResourcePools
, validating that
the updates to the contained ResourcePool
s are legal.toBeUpdated
- the ResourcePools
to merge with the current one.ResourcePools
java.lang.IllegalArgumentException
- thrown when an illegal resource value is being givenjava.lang.UnsupportedOperationException
- thrown when an unsupported update is requested