public class ReferenceConfigCache extends Object
ReferenceConfigBase.
ReferenceConfigBase is a heavy Object, it's necessary to cache these object
for the framework which create ReferenceConfigBase frequently.
You can implement and use your own ReferenceConfigBase cache if you need use complicate strategy.
| Modifier and Type | Class and Description |
|---|---|
static interface |
ReferenceConfigCache.KeyGenerator |
| Modifier and Type | Field and Description |
|---|---|
static ReferenceConfigCache.KeyGenerator |
DEFAULT_KEY_GENERATOR
Create the key with the Group, Interface and version attribute of
ReferenceConfigBase. |
static String |
DEFAULT_NAME |
public static final String DEFAULT_NAME
public static final ReferenceConfigCache.KeyGenerator DEFAULT_KEY_GENERATOR
ReferenceConfigBase.
key example: group1/org.apache.dubbo.foo.FooService:1.0.0.
public static ReferenceConfigCache getCache()
DEFAULT_KEY_GENERATOR to generate cache key.
Create cache if not existed yet.public static ReferenceConfigCache getCache(String name)
ReferenceConfigCache.KeyGenerator.
Create cache if not existed yet.public static ReferenceConfigCache getCache(String name, ReferenceConfigCache.KeyGenerator keyGenerator)
ReferenceConfigCache.KeyGenerator.
Create cache if not existed yet.public <T> T get(ReferenceConfigBase<T> referenceConfig)
public <T> T get(String key, Class<T> type)
group/interfaceClass:versionT - object typekey - cache keytype - object classReferenceConfigCache.KeyGenerator.generateKey(ReferenceConfigBase)public <T> T get(String key)
public <T> T get(Class<T> type)
public void destroy(Class<?> type)
public <T> void destroy(ReferenceConfigBase<T> referenceConfig)
ReferenceConfigBase in the cache.referenceConfig - use for create key.public void destroyAll()
ReferenceConfigBase in the cache.public ConcurrentMap<String,ReferenceConfigBase<?>> getReferredReferences()
public ConcurrentMap<Class<?>,ConcurrentMap<String,Object>> getProxies()
Copyright © 2011–2020 The Apache Software Foundation. All rights reserved.