Class CacheImpl<T extends io.fabric8.kubernetes.api.model.HasMetadata>
- java.lang.Object
-
- io.fabric8.kubernetes.client.informers.impl.cache.CacheImpl<T>
-
- Type Parameters:
T- type for cache object
public class CacheImpl<T extends io.fabric8.kubernetes.api.model.HasMetadata> extends Object implements Cache<T>
It basically saves and indexes all the entries.
Index readsbyIndex(String, String),indexKeys(String, String),index(String, HasMetadata)are not globally locked and thus may not be fully consistent with the current state
-
-
Field Summary
Fields Modifier and Type Field Description static StringNAMESPACE_INDEX
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddIndexers(Map<String,Function<T,List<String>>> indexersNew)CacheImpl<T>addIndexFunc(String indexName, Function<T,List<String>> indexFunc)Add index func.List<T>byIndex(String indexName, String indexKey)By index listTget(T obj)Get objectTgetByKey(String key)Gets get by key.Map<String,Function<T,List<String>>>getIndexers()Returns the indexers registered with the cache.StringgetKey(T obj)Get the key for the given objectObjectgetLockObject()List<T>index(String indexName, T obj)Get objectsList<String>indexKeys(String indexName, String indexKey)Index keys listbooleanisFullState()List<T>list()List all objects in the cache.List<String>listKeys()List keysstatic List<String>metaNamespaceIndexFunc(Object obj)It is a default index function that indexes based on an object's namespacestatic StringmetaNamespaceKeyFunc(Object obj)It's is a convenient default KeyFunc which know show to make keys for API objects which implement HasMetadata interface.static StringnamespaceKeyFunc(String objectNamespace, String objectName)Default index function that indexes based on an object's namespace and name.Tput(T obj)Update the object.Tremove(T obj)Delete the object.voidremoveIndexer(String name)voidsetItemStore(ItemStore<T> items)
-
-
-
Field Detail
-
NAMESPACE_INDEX
public static final String NAMESPACE_INDEX
- See Also:
- Constant Field Values
-
-
Method Detail
-
getIndexers
public Map<String,Function<T,List<String>>> getIndexers()
Returns the indexers registered with the cache.- Specified by:
getIndexersin interfaceIndexer<T extends io.fabric8.kubernetes.api.model.HasMetadata>- Returns:
- registered indexers
-
addIndexers
public void addIndexers(Map<String,Function<T,List<String>>> indexersNew)
- Specified by:
addIndexersin interfaceIndexer<T extends io.fabric8.kubernetes.api.model.HasMetadata>
-
addIndexFunc
public CacheImpl<T> addIndexFunc(String indexName, Function<T,List<String>> indexFunc)
Add index func.- Parameters:
indexName- the index nameindexFunc- the index func
-
metaNamespaceKeyFunc
public static String metaNamespaceKeyFunc(Object obj)
It's is a convenient default KeyFunc which know show to make keys for API objects which implement HasMetadata interface. The key uses the format namespace/name unless namespace is empty, then it's just name- Parameters:
obj- specific object- Returns:
- the key
-
namespaceKeyFunc
public static String namespaceKeyFunc(String objectNamespace, String objectName)
Default index function that indexes based on an object's namespace and name.- See Also:
metaNamespaceKeyFunc(java.lang.Object)
-
metaNamespaceIndexFunc
public static List<String> metaNamespaceIndexFunc(Object obj)
It is a default index function that indexes based on an object's namespace- Parameters:
obj- the specific object- Returns:
- the indexed value
-
removeIndexer
public void removeIndexer(String name)
- Specified by:
removeIndexerin interfaceIndexer<T extends io.fabric8.kubernetes.api.model.HasMetadata>
-
isFullState
public boolean isFullState()
-
getLockObject
public Object getLockObject()
-
-