From a56f6502443ec2a2a2dc01d8998623609454c617 Mon Sep 17 00:00:00 2001 From: Dario Viva <45972949+DarioViva42@users.noreply.github.com> Date: Fri, 5 Jun 2026 20:15:18 +0200 Subject: [PATCH] shared-signals.adoc: Replace ValueSignal with SharedValueSignal This documentation describes the usage of Shared Signals. So it is really confusing and probably a mistake, that in some of the examples Local Signals are used. --- articles/flow/ui-state/shared-signals.adoc | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/articles/flow/ui-state/shared-signals.adoc b/articles/flow/ui-state/shared-signals.adoc index f02aada51c..131bf9d44c 100644 --- a/articles/flow/ui-state/shared-signals.adoc +++ b/articles/flow/ui-state/shared-signals.adoc @@ -272,17 +272,17 @@ Use `@VaadinSessionScope` to create one signal instance per user session, i.e. s @Component @VaadinSessionScope public class CurrentUserSignal { - private final ValueSignal usernameSignal; + private final SharedValueSignal usernameSignal; public CurrentUserSignal(AuthenticationContext authContext) { - this.usernameSignal = new ValueSignal<>( + this.usernameSignal = new SharedValueSignal<>( authContext.getAuthenticatedUser(UserDetails.class) .map(UserDetails::getUsername) .orElse("anonymous") ); } - public ValueSignal getUsernameSignal() { + public SharedValueSignal getUsernameSignal() { return usernameSignal; } } @@ -301,13 +301,13 @@ Use `@Component` (singleton) or static fields to create signals shared by all us ---- @Component public class SystemStatusSignal { - private final ValueSignal statusSignal; + private final SharedValueSignal statusSignal; public SystemStatusSignal() { - this.statusSignal = new ValueSignal<>("ONLINE"); + this.statusSignal = new SharedValueSignal<>("ONLINE"); } - public ValueSignal getStatusSignal() { + public SharedValueSignal getStatusSignal() { return statusSignal; } } @@ -326,7 +326,7 @@ Declare signals as private instance fields in your view or component class. ---- @Route("dashboard") public class DashboardView extends VerticalLayout { - private final ValueSignal counterSignal = new ValueSignal<>(0); + private final SharedValueSignal counterSignal = new SharedValueSignal<>(0); public DashboardView() { Button increment = new Button("Increment");