Skip navigation links
A C E F G H I L O P R S T V 

A

AbstractEvent<T extends HasMetadata> - Class in org.microbean.kubernetes.controller
An abstract EventObject that represents another event that has occurred to a Kubernetes resource, usually as found in an EventCache implementation.
AbstractEvent.Type - Enum in org.microbean.kubernetes.controller
The type of an AbstractEvent.
accept(AbstractEvent<? extends T>) - Method in class org.microbean.kubernetes.controller.EventDistributor
Consumes the supplied AbstractEvent by forwarding it to the Consumer.accept(Object) method of each Consumer registered with this EventDistributor.
accept(EventQueue<? extends T>) - Method in class org.microbean.kubernetes.controller.ResourceTrackingEventQueueConsumer
Loops through all the AbstractEvents in the supplied EventQueue, keeping track of the HasMetadata it concerns along the way by synchronizing on and writing to the Map supplied at construction time.
accept(AbstractEvent<? extends T>) - Method in class org.microbean.kubernetes.controller.ResourceTrackingEventQueueConsumer
Called to process a given AbstractEvent from the EventQueue supplied to the accept(EventQueue) method, with that EventQueue's monitor held.
add(Object, AbstractEvent.Type, T) - Method in interface org.microbean.kubernetes.controller.EventCache
Adds a new Event constructed out of the parameters supplied to this method to this EventCache implementation and returns the Event that was added.
add(Object, AbstractEvent.Type, T) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Adds a new Event constructed out of the parameters supplied to this method to this EventQueueCollection and returns the Event that was added.
addConsumer(Consumer<? super AbstractEvent<? extends T>>) - Method in class org.microbean.kubernetes.controller.EventDistributor
Adds the supplied Consumer to this EventDistributor as a listener that will be notified of each AbstractEvent this EventDistributor receives.
addConsumer(Consumer<? super AbstractEvent<? extends T>>, Function<? super Throwable, Boolean>) - Method in class org.microbean.kubernetes.controller.EventDistributor
Adds the supplied Consumer to this EventDistributor as a listener that will be notified of each AbstractEvent this EventDistributor receives.
addPropertyChangeListener(String, PropertyChangeListener) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Adds the supplied PropertyChangeListener to this EventQueueCollection's collection of such listeners so that it will be notified only when the bound property bearing the supplied name changes.
addPropertyChangeListener(PropertyChangeListener) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Adds the supplied PropertyChangeListener to this EventQueueCollection's collection of such listeners so that it will be notified whenever any bound property of this EventQueueCollection changes.
await() - Method in class org.microbean.kubernetes.controller.EventQueueCollection.SynchronizationAwaitingPropertyChangeListener
Blocks until the conditions described in the documentation of the EventQueueCollection.SynchronizationAwaitingPropertyChangeListener.propertyChange(PropertyChangeEvent) method hold true.
await(long, TimeUnit) - Method in class org.microbean.kubernetes.controller.EventQueueCollection.SynchronizationAwaitingPropertyChangeListener
Blocks until the conditions described in the documentation of the EventQueueCollection.SynchronizationAwaitingPropertyChangeListener.propertyChange(PropertyChangeEvent) method hold true or the indicated time has passed.
awaitEventCacheSynchronization() - Method in class org.microbean.kubernetes.controller.Controller
Blocks until the EventQueueCollection affiliated with this Controller has synchronized.
awaitEventCacheSynchronization(long, TimeUnit) - Method in class org.microbean.kubernetes.controller.Controller
Blocks for the desired amount of time until the EventQueueCollection affiliated with this Controller has synchronized or the amount of time has elapsed.

C

close() - Method in class org.microbean.kubernetes.controller.Controller
Closes the embedded Reflector and then closes the embedded EventQueueCollection, handling exceptions appropriately.
close() - Method in class org.microbean.kubernetes.controller.EventDistributor
Releases resources held by this EventDistributor during its execution.
close() - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Semantically closes this EventQueueCollection by detaching any Consumer previously attached via the EventQueueCollection.start(Consumer) method.
close() - Method in class org.microbean.kubernetes.controller.Reflector
Notionally closes this Reflector by terminating any Threads that it has started and invoking the Reflector.onClose() method while holding this Reflector's monitor.
compress(Collection<AbstractEvent<T>>) - Method in class org.microbean.kubernetes.controller.EventQueue
Performs a compression operation on the supplied Collection of AbstractEvents and returns the result of that operation.
Controller<T extends HasMetadata> - Class in org.microbean.kubernetes.controller
A convenient combination of a Reflector, a VersionWatchable and Listable implementation, an (internal) EventQueueCollection, a Map of known Kubernetes resources and an EventQueue Consumer that mirrors Kubernetes cluster events into a collection of EventQueues and arranges for their consumption and processing.
Controller(X, Consumer<? super EventQueue<? extends T>>) - Constructor for class org.microbean.kubernetes.controller.Controller
Creates a new Controller but does not start it.
Controller(X, Map<Object, T>, Consumer<? super EventQueue<? extends T>>) - Constructor for class org.microbean.kubernetes.controller.Controller
Creates a new Controller but does not start it.
Controller(X, Duration, Consumer<? super EventQueue<? extends T>>) - Constructor for class org.microbean.kubernetes.controller.Controller
Creates a new Controller but does not start it.
Controller(X, Duration, Map<Object, T>, Consumer<? super EventQueue<? extends T>>) - Constructor for class org.microbean.kubernetes.controller.Controller
Creates a new Controller but does not start it.
Controller(X, ScheduledExecutorService, Duration, Map<Object, T>, Consumer<? super EventQueue<? extends T>>) - Constructor for class org.microbean.kubernetes.controller.Controller
Creates a new Controller but does not start it.
Controller(X, ScheduledExecutorService, Duration, Function<? super Throwable, Boolean>, Map<Object, T>, Consumer<? super EventQueue<? extends T>>) - Constructor for class org.microbean.kubernetes.controller.Controller
Creates a new Controller but does not start it.
createEvent(Object, AbstractEvent.Type, T) - Method in class org.microbean.kubernetes.controller.Controller
Creates a new Event when invoked.
createEvent(Object, AbstractEvent.Type, T) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Creates an Event using the supplied raw materials and returns it.
createEvent(AbstractEvent.Type, T, T) - Method in class org.microbean.kubernetes.controller.ResourceTrackingEventQueueConsumer
Creates and returns a new Event.
createEventQueue(Object) - Method in class org.microbean.kubernetes.controller.Controller
Creates a new EventQueue when invoked.
createEventQueue(Object) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Creates a new EventQueue suitable for holding Events matching the supplied key.
createLogger() - Method in class org.microbean.kubernetes.controller.Controller
Returns a Logger for use by this Controller.
createLogger() - Method in class org.microbean.kubernetes.controller.EventQueue
Returns a Logger for use by this EventQueue.
createLogger() - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Returns a Logger for use by this EventQueueCollection.
createLogger() - Method in class org.microbean.kubernetes.controller.Reflector
Returns a Logger that will be used for this Reflector.
createLogger() - Method in class org.microbean.kubernetes.controller.ResourceTrackingEventQueueConsumer
Returns a Logger for use with this ResourceTrackingEventQueueConsumer.
createSynchronizationEvent(Object, AbstractEvent.Type, T) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Creates a SynchronizationEvent using the supplied raw materials and returns it.
createSynchronizationEvent(AbstractEvent.Type, T, T) - Method in class org.microbean.kubernetes.controller.ResourceTrackingEventQueueConsumer
Creates and returns a new SynchronizationEvent.

E

equals(Object) - Method in class org.microbean.kubernetes.controller.AbstractEvent
Returns true if the supplied Object is also an AbstractEvent and is equal in every respect to this one.
equals(Object) - Method in class org.microbean.kubernetes.controller.Event
Returns true if the supplied Object is also an Event and is equal in every respect to this one.
equals(Object) - Method in class org.microbean.kubernetes.controller.EventQueue
Returns true if the supplied Object is also an EventQueue and is equal in all respects to this one.
equals(Object) - Method in class org.microbean.kubernetes.controller.SynchronizationEvent
Returns true if the supplied Object is also a SynchronizationEvent and is equal in every respect to this one.
Event<T extends HasMetadata> - Class in org.microbean.kubernetes.controller
An AbstractEvent that represents another event that has occurred to a Kubernetes resource, usually as found in an EventCache implementation.
Event(Object, AbstractEvent.Type, T, T) - Constructor for class org.microbean.kubernetes.controller.Event
Creates a new Event.
EventCache<T extends HasMetadata> - Interface in org.microbean.kubernetes.controller
A minimalistic interface indicating that its implementations cache Events representing Kubernetes resources.
EventDistributor<T extends HasMetadata> - Class in org.microbean.kubernetes.controller
EventDistributor(Map<Object, T>) - Constructor for class org.microbean.kubernetes.controller.EventDistributor
Creates a new EventDistributor.
EventDistributor(Map<Object, T>, Duration) - Constructor for class org.microbean.kubernetes.controller.EventDistributor
Creates a new EventDistributor.
EventQueue<T extends HasMetadata> - Class in org.microbean.kubernetes.controller
A publicly-unmodifiable AbstractCollection of AbstractEvents produced by an EventQueueCollection.
EventQueue(Object) - Constructor for class org.microbean.kubernetes.controller.EventQueue
Creates a new EventQueue.
EventQueueCollection<T extends HasMetadata> - Class in org.microbean.kubernetes.controller
An EventCache that temporarily stores Events in EventQueues, one per named Kubernetes resource, and provides a means for processing those queues.
EventQueueCollection() - Constructor for class org.microbean.kubernetes.controller.EventQueueCollection
Creates a new EventQueueCollection with an initial capacity of 16 and a load factor of 0.75 that is not interested in tracking Kubernetes resource deletions.
EventQueueCollection(Map<?, ? extends T>) - Constructor for class org.microbean.kubernetes.controller.EventQueueCollection
Creates a new EventQueueCollection with an initial capacity of 16 and a load factor of 0.75.
EventQueueCollection(Map<?, ? extends T>, int, float) - Constructor for class org.microbean.kubernetes.controller.EventQueueCollection
Creates a new EventQueueCollection.
EventQueueCollection(Map<?, ? extends T>, Function<? super Throwable, Boolean>, int, float) - Constructor for class org.microbean.kubernetes.controller.EventQueueCollection
Creates a new EventQueueCollection.
EventQueueCollection.SynchronizationAwaitingPropertyChangeListener - Class in org.microbean.kubernetes.controller
A PropertyChangeListener specifically designed for reacting to a change in the synchronization status of an EventQueueCollection as represented by the firing of its synchronized bound Java Beans property.
EventQueueCollection.TransientException - Exception in org.microbean.kubernetes.controller
A RuntimeException indicating that a Consumer started by an EventQueueCollection has encountered an error that might not happen if the consumption operation is retried.

F

firePropertyChange(String, Object, Object) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Fires a PropertyChangeEvent to registered PropertyChangeListeners if the supplied old and newValue objects are non-null and not equal to each other.
firePropertyChange(String, int, int) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Fires a PropertyChangeEvent to registered PropertyChangeListeners if the supplied old and newValue objects are non-null and not equal to each other.
firePropertyChange(String, boolean, boolean) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Fires a PropertyChangeEvent to registered PropertyChangeListeners if the supplied old and newValue objects are non-null and not equal to each other.
forEach(Consumer<? super AbstractEvent<T>>) - Method in class org.microbean.kubernetes.controller.EventQueue
Synchronizes on this EventQueue and, while holding its monitor, invokes the Consumer.accept(Object) method on the supplied Consumer for every AbstractEvent in this EventQueue.

G

get() - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Implements the Supplier.get() contract by removing and returning an EventQueue if one is available, blocking if one is not and returning null only if the current thread is interrupted or this EventQueueCollection is closing.
getKey() - Method in class org.microbean.kubernetes.controller.AbstractEvent
Returns a key that can be used to unambiguously identify this AbstractEvent's resource.
getKey(T) - Method in class org.microbean.kubernetes.controller.Controller
Returns a key that can be used to identify the supplied HasMetadata.
getKey() - Method in class org.microbean.kubernetes.controller.EventQueue
Returns the key identifying the Kubernetes resource to which all of the AbstractEvents managed by this EventQueue apply.
getKey(T) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Returns an Object which will be used as the key that will uniquely identify the supplied resource to this EventQueueCollection.
getKey(HasMetadata) - Static method in class org.microbean.kubernetes.controller.HasMetadatas
Returns a key for the supplied HasMetadata derived from its name and namespace.
getPriorResource() - Method in class org.microbean.kubernetes.controller.AbstractEvent
Returns a HasMetadata representing the prior state of the Kubernetes resource this AbstractEvent primarily concerns.
getPropertyChangeListeners(String) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Returns an array of PropertyChangeListeners that were registered to receive notifications for changes to bound properties bearing the supplied name.
getPropertyChangeListeners() - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Returns an array of PropertyChangeListeners that were registered to receive notifications for changes to all bound properties.
getResource() - Method in class org.microbean.kubernetes.controller.AbstractEvent
Returns a HasMetadata representing the Kubernetes resource this AbstractEvent concerns.
getType() - Method in class org.microbean.kubernetes.controller.AbstractEvent
Returns a AbstractEvent.Type representing the type of this AbstractEvent.

H

hashCode() - Method in class org.microbean.kubernetes.controller.AbstractEvent
Returns a hashcode for this AbstractEvent.
hashCode() - Method in class org.microbean.kubernetes.controller.EventQueue
Returns a hashcode for this EventQueue.
HasMetadatas - Class in org.microbean.kubernetes.controller
A utility class for working with HasMetadata resources.

I

isEmpty() - Method in class org.microbean.kubernetes.controller.EventQueue
Returns true if this EventQueue is empty.
isFinalStateKnown() - Method in class org.microbean.kubernetes.controller.AbstractEvent
Returns true if this AbstractEvent's resource is an accurate representation of its last known state.
isSynchronized() - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Returns true if this EventQueueCollection has been populated via a call to EventQueueCollection.add(Object, AbstractEvent.Type, HasMetadata) at some point, and if there are no EventQueues remaining to be removed.
iterator() - Method in class org.microbean.kubernetes.controller.EventQueue
Synchronizes on this EventQueue and, while holding its monitor, returns an unmodifiable Iterator over its contents.

L

logger - Variable in class org.microbean.kubernetes.controller.Controller
A Logger used by this Controller.
logger - Variable in class org.microbean.kubernetes.controller.EventQueue
A Logger for use by this EventQueue.
logger - Variable in class org.microbean.kubernetes.controller.EventQueueCollection
logger - Variable in class org.microbean.kubernetes.controller.Reflector
A Logger for use by this Reflector.
logger - Variable in class org.microbean.kubernetes.controller.ResourceTrackingEventQueueConsumer
A Logger for use by this ResourceTrackingEventQueueConsumer implementation.

O

onClose() - Method in class org.microbean.kubernetes.controller.Controller
Invoked after the embedded Reflector closes.
onClose() - Method in class org.microbean.kubernetes.controller.Reflector
Invoked when Reflector.close() is invoked.
org.microbean.kubernetes.controller - package org.microbean.kubernetes.controller
Provides classes and interfaces assisting in the writing of Kubernetes controllers.

P

propertyChange(PropertyChangeEvent) - Method in class org.microbean.kubernetes.controller.EventQueueCollection.SynchronizationAwaitingPropertyChangeListener
If the supplied PropertyChangeEvent is non-null, has a source that is an instance of EventQueueCollection, has a property name equal to synchronized and a new value equal to Boolean.TRUE, then it is guaranteed that any calls currently blocked on the EventQueueCollection.SynchronizationAwaitingPropertyChangeListener.await() or EventQueueCollection.SynchronizationAwaitingPropertyChangeListener.await(long, TimeUnit) methods will unblock, and subsequent invocations of those methods will never block again.

R

Reflector<T extends HasMetadata> - Class in org.microbean.kubernetes.controller
A pump of sorts that continuously "pulls" logical events out of Kubernetes and adds them to an EventCache so as to logically "reflect" the contents of Kubernetes into the cache.
Reflector(X, EventCache<T>) - Constructor for class org.microbean.kubernetes.controller.Reflector
Creates a new Reflector.
Reflector(X, EventCache<T>, Duration) - Constructor for class org.microbean.kubernetes.controller.Reflector
Creates a new Reflector.
Reflector(X, EventCache<T>, ScheduledExecutorService, Duration) - Constructor for class org.microbean.kubernetes.controller.Reflector
Creates a new Reflector.
Reflector(X, EventCache<T>, ScheduledExecutorService, Duration, Function<? super Throwable, Boolean>) - Constructor for class org.microbean.kubernetes.controller.Reflector
Creates a new Reflector.
removeConsumer(Consumer<? super AbstractEvent<? extends T>>) - Method in class org.microbean.kubernetes.controller.EventDistributor
Removes any Consumer equal to a Consumer previously added to this EventDistributor.
removePropertyChangeListener(String, PropertyChangeListener) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Removes the supplied PropertyChangeListener from this EventQueueCollection so that it will no longer be notified of changes to bound properties bearing the supplied name.
removePropertyChangeListener(PropertyChangeListener) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Removes the supplied PropertyChangeListener from this EventQueueCollection so that it will no longer be notified of any changes to bound properties.
replace(Collection<? extends T>, Object) - Method in interface org.microbean.kubernetes.controller.EventCache
A "full replace" operation that atomically replaces all internal state with new state derived from the supplied Collection of resources.
replace(Collection<? extends T>, Object) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
At a high level, fully replaces the internal state of this EventQueueCollection to reflect only the Kubernetes resources contained in the supplied Collection.
ResourceTrackingEventQueueConsumer<T extends HasMetadata> - Class in org.microbean.kubernetes.controller
A Consumer of EventQueues that tracks the Kubernetes resources they contain before allowing subclasses to process their individual Events.
ResourceTrackingEventQueueConsumer(Map<Object, T>) - Constructor for class org.microbean.kubernetes.controller.ResourceTrackingEventQueueConsumer

S

shouldSynchronize() - Method in class org.microbean.kubernetes.controller.Controller
Returns if the embedded Reflector should synchronize.
shouldSynchronize() - Method in class org.microbean.kubernetes.controller.EventDistributor
Returns true if this EventDistributor should synchronize with its upstream source.
shouldSynchronize() - Method in class org.microbean.kubernetes.controller.Reflector
Returns whether, at any given moment, this Reflector should cause its EventCache to synchronize.
size() - Method in class org.microbean.kubernetes.controller.EventQueue
Returns the size of this EventQueue.
start() - Method in class org.microbean.kubernetes.controller.Controller
start(Consumer<? super EventQueue<? extends T>>) - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Starts a new Thread that, until EventQueueCollection.close() is called, removes EventQueues from this EventQueueCollection and supplies them to the supplied Consumer, and returns a Future representing this task.
start() - Method in class org.microbean.kubernetes.controller.Reflector
Using the operation supplied at construction time, lists appropriate Kubernetes resources, and then, on a separate Thread, sets up a watch on them, calling EventCache.replace(Collection, Object) and EventCache.add(Object, AbstractEvent.Type, HasMetadata) methods as appropriate.
SynchronizationAwaitingPropertyChangeListener() - Constructor for class org.microbean.kubernetes.controller.EventQueueCollection.SynchronizationAwaitingPropertyChangeListener
SynchronizationEvent<T extends HasMetadata> - Class in org.microbean.kubernetes.controller
An AbstractEvent that describes an EventCache synchronization event.
SynchronizationEvent(Object, AbstractEvent.Type, T, T) - Constructor for class org.microbean.kubernetes.controller.SynchronizationEvent
Creates a new SynchronizationEvent.
synchronize() - Method in interface org.microbean.kubernetes.controller.EventCache
Synchronizes this EventCache implementation's state with its downstream consumers, if any.
synchronize() - Method in class org.microbean.kubernetes.controller.EventQueueCollection
Synchronizes on the knownObjects object supplied at construction time, if there is one, and, for every Kubernetes resource found within at the time of this call, adds a SynchronizationEvent for it with an AbstractEvent.Type of AbstractEvent.Type.MODIFICATION.

T

toString() - Method in class org.microbean.kubernetes.controller.AbstractEvent
Returns a String representation of this AbstractEvent.
toString() - Method in class org.microbean.kubernetes.controller.EventQueue
Returns a String representation of this EventQueue.
TransientException() - Constructor for exception org.microbean.kubernetes.controller.EventQueueCollection.TransientException
TransientException(String) - Constructor for exception org.microbean.kubernetes.controller.EventQueueCollection.TransientException
TransientException(Throwable) - Constructor for exception org.microbean.kubernetes.controller.EventQueueCollection.TransientException
TransientException(String, Throwable) - Constructor for exception org.microbean.kubernetes.controller.EventQueueCollection.TransientException

V

valueOf(String) - Static method in enum org.microbean.kubernetes.controller.AbstractEvent.Type
Returns the enum constant of this type with the specified name.
values() - Static method in enum org.microbean.kubernetes.controller.AbstractEvent.Type
Returns an array containing the constants of this enum type, in the order they are declared.
A C E F G H I L O P R S T V 
Skip navigation links

Copyright © 2017–2018, microBean. All rights reserved.