com.vaadin.collaborationengine.
Class ComponentConnectionContext
All Implemented Interfaces:
A connection context based on the attach state of a set of component
instances. The context is considered active whenever at least one tracked
component is attached. All attached components must belong to the same UI
instance, and this UI instance is used to dispatch actions using
UI.access(Command)
.
Since:
1.0
Author:
Vaadin Ltd
See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionCreates an empty component connection context.
ComponentConnectionContext
(Component component) Creates a new component connection context which is initially using a single component.
-
Method Summary
Modifier and TypeMethodDescriptionvoid
addComponent
(Component component) Adds a component instance to track for this context.
init
(ActivationHandler activationHandler, Executor backgroundRunner) Initializes the connection context with a
ActivationHandler
and anExecutor
.void
removeComponent
(Component component) Stops tracking a component for this context.
-
Constructor Details
-
ComponentConnectionContext
public ComponentConnectionContext()Creates an empty component connection context.
Since:
1.0
-
ComponentConnectionContext
Creates a new component connection context which is initially using a single component.
Parameters:
component
- the component to use, notnull
Since:
1.0
-
-
Method Details
-
addComponent
Adds a component instance to track for this context. Calling this method again with a component that is already tracked has no effect.
Parameters:
component
- the component to track, notnull
Since:
1.0
See Also:
-
removeComponent
Stops tracking a component for this context. Calling this method for a component that isn't tracked has no effect.
Parameters:
component
- the component to stop tracking, notnull
Since:
1.0
See Also:
-
init
Description copied from interface:
ConnectionContext
Initializes the connection context with a
ActivationHandler
and anExecutor
.The method
Consumer.accept(Object)
from the providedActivationHandler
should be called with anActionDispatcher
when this ConnectionContext is activated. When this ConnectionContext is deactivated, it should callConsumer.accept(Object)
with a null parameter.The
ActionDispatcher
should ensure synchronization within the context of this ConnectionContext.Specified by:
init
in interfaceConnectionContext
Parameters:
activationHandler
- the handler for activation changesbackgroundRunner
- executor that should be used by the handler to execute background tasks. Notnull
Returns:
the registration for any logic that needs to be cleaned up if the connection is closed permanently, or
null
if there is nothing to clean up
-