public class KeyedExtensionCollector<T,KeyT> extends java.lang.Object implements ModificationTracker
Modifier and Type | Field and Description |
---|---|
protected java.util.concurrent.atomic.AtomicBoolean |
myEpListenerAdded |
protected java.lang.String |
myLock |
EVER_CHANGED, NEVER_CHANGED
Constructor and Description |
---|
KeyedExtensionCollector(ExtensionPointName<KeyedLazyInstance<T>> epName) |
KeyedExtensionCollector(java.lang.String epName) |
Modifier and Type | Method and Description |
---|---|
void |
addExplicitExtension(KeyT key,
T t) |
void |
addExplicitExtension(KeyT key,
T t,
Disposable parentDisposable) |
protected java.util.List<T> |
buildExtensions(java.util.Set<java.lang.String> keys) |
protected java.util.List<T> |
buildExtensions(java.lang.String stringKey,
KeyT key) |
protected java.util.List<T> |
buildExtensionsFromExplicitRegistration(java.util.List<T> result,
java.util.function.Predicate<? super java.lang.String> isMyBean) |
void |
clearCache() |
protected void |
ensureValuesLoaded() |
T |
findSingle(KeyT key) |
java.util.List<T> |
forKey(KeyT key) |
protected java.util.List<KeyedLazyInstance<T>> |
getExtensions() |
long |
getModificationCount() |
java.lang.String |
getName() |
ExtensionPoint<KeyedLazyInstance<T>> |
getPoint() |
boolean |
hasAnyExtensions() |
protected void |
invalidateCacheForExtension(java.lang.String key) |
protected java.lang.String |
keyToString(KeyT key) |
void |
removeExplicitExtension(KeyT key,
T t) |
protected final java.lang.String myLock
protected final java.util.concurrent.atomic.AtomicBoolean myEpListenerAdded
public KeyedExtensionCollector(ExtensionPointName<KeyedLazyInstance<T>> epName)
public KeyedExtensionCollector(java.lang.String epName)
public void clearCache()
protected void invalidateCacheForExtension(java.lang.String key)
public void addExplicitExtension(KeyT key, T t, Disposable parentDisposable)
protected java.lang.String keyToString(KeyT key)
public java.util.List<T> forKey(KeyT key)
findSingle(Object)
protected final java.util.List<KeyedLazyInstance<T>> getExtensions()
protected java.util.List<T> buildExtensions(java.util.Set<java.lang.String> keys)
protected java.util.List<T> buildExtensionsFromExplicitRegistration(java.util.List<T> result, java.util.function.Predicate<? super java.lang.String> isMyBean)
public ExtensionPoint<KeyedLazyInstance<T>> getPoint()
public boolean hasAnyExtensions()
public java.lang.String getName()
public long getModificationCount()
getModificationCount
in interface ModificationTracker
protected void ensureValuesLoaded()