public abstract class CacheableFeatureProvider<T extends Feature> extends java.lang.Object implements FeatureProvider
| Modifier and Type | Field and Description |
|---|---|
protected java.util.concurrent.ConcurrentMap<java.lang.String,T> |
features |
protected java.lang.String |
scope |
protected java.util.concurrent.ConcurrentMap<java.lang.String,FeatureProvider> |
scopes |
| Modifier | Constructor and Description |
|---|---|
protected |
CacheableFeatureProvider(java.lang.String scope) |
| Modifier and Type | Method and Description |
|---|---|
T |
getFeature(java.lang.String name)
Return the feature with given name.
|
protected abstract T |
makeFeature(java.lang.String featureName) |
protected java.lang.String |
makeName(java.lang.String name) |
protected abstract FeatureProvider |
makeProvider(java.lang.String fullScopeName) |
FeatureProvider |
scope(java.lang.String name)
Provide the feature provider under scope name.
|
protected final java.lang.String scope
protected final java.util.concurrent.ConcurrentMap<java.lang.String,FeatureProvider> scopes
protected CacheableFeatureProvider(java.lang.String scope)
protected java.lang.String makeName(java.lang.String name)
public T getFeature(java.lang.String name)
FeatureProvidergetFeature in interface FeatureProvidername - feature nameprotected abstract T makeFeature(java.lang.String featureName)
public FeatureProvider scope(java.lang.String name)
FeatureProviderscope in interface FeatureProvidername - scope name.protected abstract FeatureProvider makeProvider(java.lang.String fullScopeName)
Copyright © 2011–2024 The Apache Software Foundation. All rights reserved.