From ae567a02f3c397225c818c7387cb49545a4d5b4a Mon Sep 17 00:00:00 2001 From: Aleksi Hietanen Date: Mon, 12 Dec 2016 13:25:19 +0200 Subject: [PATCH] Add @FunctionalInterface annotation to interfaces where applicable (#7954) Closes vaadin/framework8-issues#548 --- .../com/vaadin/data/BinderValidationStatusHandler.java | 1 + .../java/com/vaadin/data/ValidationStatusHandler.java | 1 + server/src/main/java/com/vaadin/event/Action.java | 1 + .../src/main/java/com/vaadin/event/ContextClickEvent.java | 1 + server/src/main/java/com/vaadin/event/FieldEvents.java | 2 ++ server/src/main/java/com/vaadin/event/LayoutEvents.java | 1 + server/src/main/java/com/vaadin/event/MouseEvents.java | 2 ++ server/src/main/java/com/vaadin/event/SortEvent.java | 1 + server/src/main/java/com/vaadin/event/UIEvents.java | 1 + .../vaadin/event/selection/MultiSelectionListener.java | 1 + .../src/main/java/com/vaadin/navigator/ViewDisplay.java | 1 + .../src/main/java/com/vaadin/server/ClientConnector.java | 2 ++ server/src/main/java/com/vaadin/server/ErrorHandler.java | 1 + server/src/main/java/com/vaadin/server/Page.java | 3 +++ .../src/main/java/com/vaadin/server/RequestHandler.java | 1 + .../java/com/vaadin/server/ServiceDestroyListener.java | 1 + .../java/com/vaadin/server/SessionDestroyListener.java | 1 + .../main/java/com/vaadin/server/SessionInitListener.java | 1 + .../src/main/java/com/vaadin/server/StreamResource.java | 1 + .../java/com/vaadin/server/SystemMessagesProvider.java | 1 + .../java/com/vaadin/server/VaadinServiceInitListener.java | 1 + .../main/java/com/vaadin/server/ViewportGenerator.java | 1 + .../java/com/vaadin/server/data/DataProviderListener.java | 1 + .../src/main/java/com/vaadin/ui/AbstractSplitPanel.java | 2 ++ server/src/main/java/com/vaadin/ui/Button.java | 2 +- server/src/main/java/com/vaadin/ui/HasComponents.java | 2 ++ .../src/main/java/com/vaadin/ui/JavaScriptFunction.java | 1 + server/src/main/java/com/vaadin/ui/LoginForm.java | 1 + server/src/main/java/com/vaadin/ui/MenuBar.java | 1 + server/src/main/java/com/vaadin/ui/PopupView.java | 1 + server/src/main/java/com/vaadin/ui/TabSheet.java | 2 ++ server/src/main/java/com/vaadin/ui/UI.java | 1 + server/src/main/java/com/vaadin/ui/Upload.java | 8 +++++++- server/src/main/java/com/vaadin/ui/Window.java | 4 ++++ .../java/com/vaadin/ui/declarative/DesignContext.java | 1 + .../vaadin/ui/declarative/ShouldWriteDataDelegate.java | 1 + .../java/com/vaadin/ui/renderers/ClickableRenderer.java | 1 + 37 files changed, 54 insertions(+), 2 deletions(-) diff --git a/server/src/main/java/com/vaadin/data/BinderValidationStatusHandler.java b/server/src/main/java/com/vaadin/data/BinderValidationStatusHandler.java index 1f3a95688b..81a622bbd4 100644 --- a/server/src/main/java/com/vaadin/data/BinderValidationStatusHandler.java +++ b/server/src/main/java/com/vaadin/data/BinderValidationStatusHandler.java @@ -44,6 +44,7 @@ import com.vaadin.ui.AbstractComponent; * * @since 8.0 */ +@FunctionalInterface public interface BinderValidationStatusHandler extends Consumer>, Serializable { diff --git a/server/src/main/java/com/vaadin/data/ValidationStatusHandler.java b/server/src/main/java/com/vaadin/data/ValidationStatusHandler.java index 9cf20b92ea..f2170537f9 100644 --- a/server/src/main/java/com/vaadin/data/ValidationStatusHandler.java +++ b/server/src/main/java/com/vaadin/data/ValidationStatusHandler.java @@ -38,6 +38,7 @@ import com.vaadin.ui.AbstractComponent; * @since 8.0 * */ +@FunctionalInterface public interface ValidationStatusHandler extends Consumer>, Serializable { diff --git a/server/src/main/java/com/vaadin/event/Action.java b/server/src/main/java/com/vaadin/event/Action.java index 49b8033417..b26dac14c9 100644 --- a/server/src/main/java/com/vaadin/event/Action.java +++ b/server/src/main/java/com/vaadin/event/Action.java @@ -90,6 +90,7 @@ public class Action implements Serializable { * Action.Handler interface.
* */ + @FunctionalInterface public interface Listener extends Serializable { public void handleAction(Object sender, Object target); } diff --git a/server/src/main/java/com/vaadin/event/ContextClickEvent.java b/server/src/main/java/com/vaadin/event/ContextClickEvent.java index ecf53e2ba2..c1c779bd28 100644 --- a/server/src/main/java/com/vaadin/event/ContextClickEvent.java +++ b/server/src/main/java/com/vaadin/event/ContextClickEvent.java @@ -46,6 +46,7 @@ public class ContextClickEvent extends ClickEvent { /** * Listener for {@link ContextClickEvent ContextClickEvents}. */ + @FunctionalInterface public interface ContextClickListener extends Serializable { /** diff --git a/server/src/main/java/com/vaadin/event/FieldEvents.java b/server/src/main/java/com/vaadin/event/FieldEvents.java index 4673318890..b5c45732f9 100644 --- a/server/src/main/java/com/vaadin/event/FieldEvents.java +++ b/server/src/main/java/com/vaadin/event/FieldEvents.java @@ -109,6 +109,7 @@ public interface FieldEvents { * @see FocusEvent * @since 6.2 */ + @FunctionalInterface public interface FocusListener extends ConnectorEventListener { public static final Method focusMethod = ReflectTools @@ -149,6 +150,7 @@ public interface FieldEvents { * @see BlurEvent * @since 6.2 */ + @FunctionalInterface public interface BlurListener extends ConnectorEventListener { public static final Method blurMethod = ReflectTools diff --git a/server/src/main/java/com/vaadin/event/LayoutEvents.java b/server/src/main/java/com/vaadin/event/LayoutEvents.java index 627a9610ed..bc30981e51 100644 --- a/server/src/main/java/com/vaadin/event/LayoutEvents.java +++ b/server/src/main/java/com/vaadin/event/LayoutEvents.java @@ -28,6 +28,7 @@ import com.vaadin.util.ReflectTools; public interface LayoutEvents { + @FunctionalInterface public interface LayoutClickListener extends ConnectorEventListener { public static final Method clickMethod = ReflectTools.findMethod( diff --git a/server/src/main/java/com/vaadin/event/MouseEvents.java b/server/src/main/java/com/vaadin/event/MouseEvents.java index e391ade401..ad807ec21e 100644 --- a/server/src/main/java/com/vaadin/event/MouseEvents.java +++ b/server/src/main/java/com/vaadin/event/MouseEvents.java @@ -192,6 +192,7 @@ public interface MouseEvents { * @author Vaadin Ltd. * @since 6.2 */ + @FunctionalInterface public interface ClickListener extends ConnectorEventListener { public static final Method clickMethod = ReflectTools @@ -230,6 +231,7 @@ public interface MouseEvents { * @author Vaadin Ltd. * @since 6.2 */ + @FunctionalInterface public interface DoubleClickListener extends ConnectorEventListener { public static final Method doubleClickMethod = ReflectTools.findMethod( diff --git a/server/src/main/java/com/vaadin/event/SortEvent.java b/server/src/main/java/com/vaadin/event/SortEvent.java index 0bc6d4b2cf..c69daa695e 100644 --- a/server/src/main/java/com/vaadin/event/SortEvent.java +++ b/server/src/main/java/com/vaadin/event/SortEvent.java @@ -75,6 +75,7 @@ public class SortEvent extends Component.Event { /** * Listener for sort order change events. */ + @FunctionalInterface public interface SortListener extends Serializable { /** * Called when the sort order has changed. diff --git a/server/src/main/java/com/vaadin/event/UIEvents.java b/server/src/main/java/com/vaadin/event/UIEvents.java index 1f696e9d6c..5c91fe78a9 100644 --- a/server/src/main/java/com/vaadin/event/UIEvents.java +++ b/server/src/main/java/com/vaadin/event/UIEvents.java @@ -39,6 +39,7 @@ public interface UIEvents { * @since 7.2 * @author Vaadin Ltd */ + @FunctionalInterface public interface PollListener extends Serializable { public static final Method POLL_METHOD = ReflectTools .findMethod(PollListener.class, "poll", PollEvent.class); diff --git a/server/src/main/java/com/vaadin/event/selection/MultiSelectionListener.java b/server/src/main/java/com/vaadin/event/selection/MultiSelectionListener.java index b7d7ae4b8b..d8b138f184 100644 --- a/server/src/main/java/com/vaadin/event/selection/MultiSelectionListener.java +++ b/server/src/main/java/com/vaadin/event/selection/MultiSelectionListener.java @@ -28,6 +28,7 @@ import java.util.function.Consumer; * @param * the data type of the selection model */ +@FunctionalInterface public interface MultiSelectionListener extends Consumer>, Serializable { @Override diff --git a/server/src/main/java/com/vaadin/navigator/ViewDisplay.java b/server/src/main/java/com/vaadin/navigator/ViewDisplay.java index fd1c0247e1..291cc8e350 100644 --- a/server/src/main/java/com/vaadin/navigator/ViewDisplay.java +++ b/server/src/main/java/com/vaadin/navigator/ViewDisplay.java @@ -27,6 +27,7 @@ import java.io.Serializable; * @author Vaadin Ltd * @since 7.0 */ +@FunctionalInterface public interface ViewDisplay extends Serializable { /** * Remove previously shown view and show the newly selected view in its diff --git a/server/src/main/java/com/vaadin/server/ClientConnector.java b/server/src/main/java/com/vaadin/server/ClientConnector.java index b54a85029b..c2e96d9fc1 100644 --- a/server/src/main/java/com/vaadin/server/ClientConnector.java +++ b/server/src/main/java/com/vaadin/server/ClientConnector.java @@ -55,6 +55,7 @@ public interface ClientConnector extends Connector { * Interface for listening {@link AttachEvent connector attach events}. * */ + @FunctionalInterface public static interface AttachListener extends ConnectorEventListener { public static final Method attachMethod = ReflectTools .findMethod(AttachListener.class, "attach", AttachEvent.class); @@ -83,6 +84,7 @@ public interface ClientConnector extends Connector { * Interface for listening {@link DetachEvent connector detach events}. * */ + @FunctionalInterface public static interface DetachListener extends ConnectorEventListener { public static final Method detachMethod = ReflectTools .findMethod(DetachListener.class, "detach", DetachEvent.class); diff --git a/server/src/main/java/com/vaadin/server/ErrorHandler.java b/server/src/main/java/com/vaadin/server/ErrorHandler.java index c82ce4e68e..0ea59917f8 100644 --- a/server/src/main/java/com/vaadin/server/ErrorHandler.java +++ b/server/src/main/java/com/vaadin/server/ErrorHandler.java @@ -20,6 +20,7 @@ import java.io.Serializable; /** * Interface for listening to errors in the application. */ +@FunctionalInterface public interface ErrorHandler extends Serializable { /** diff --git a/server/src/main/java/com/vaadin/server/Page.java b/server/src/main/java/com/vaadin/server/Page.java index faf64e3a3d..fb4f7384dc 100644 --- a/server/src/main/java/com/vaadin/server/Page.java +++ b/server/src/main/java/com/vaadin/server/Page.java @@ -49,6 +49,7 @@ public class Page implements Serializable { * * @see UI#addListener(BrowserWindowResizeListener) */ + @FunctionalInterface public interface BrowserWindowResizeListener extends Serializable { /** * Invoked when the browser window containing a UI has been resized. @@ -251,6 +252,7 @@ public class Page implements Serializable { * * @see Page#addUriFragmentChangedListener(UriFragmentChangedListener) */ + @FunctionalInterface public interface UriFragmentChangedListener extends Serializable { /** * Event handler method invoked when the URI fragment of the page @@ -326,6 +328,7 @@ public class Page implements Serializable { } } + @FunctionalInterface private static interface InjectedStyle extends Serializable { public void paint(int id, PaintTarget target) throws PaintException; } diff --git a/server/src/main/java/com/vaadin/server/RequestHandler.java b/server/src/main/java/com/vaadin/server/RequestHandler.java index a3d53ccd67..bfcd392b0d 100644 --- a/server/src/main/java/com/vaadin/server/RequestHandler.java +++ b/server/src/main/java/com/vaadin/server/RequestHandler.java @@ -26,6 +26,7 @@ import com.vaadin.ui.UI; * added on a {@link VaadinService service} level, common for all users, or on a * {@link VaadinSession session} level for only a single user. */ +@FunctionalInterface public interface RequestHandler extends Serializable { /** diff --git a/server/src/main/java/com/vaadin/server/ServiceDestroyListener.java b/server/src/main/java/com/vaadin/server/ServiceDestroyListener.java index e34418652f..4ce74e28d0 100644 --- a/server/src/main/java/com/vaadin/server/ServiceDestroyListener.java +++ b/server/src/main/java/com/vaadin/server/ServiceDestroyListener.java @@ -28,6 +28,7 @@ import java.io.Serializable; * @since 7.2 * @author Vaadin Ltd */ +@FunctionalInterface public interface ServiceDestroyListener extends Serializable { /** * Invoked when a service is destroyed diff --git a/server/src/main/java/com/vaadin/server/SessionDestroyListener.java b/server/src/main/java/com/vaadin/server/SessionDestroyListener.java index 972216120d..43299bc510 100644 --- a/server/src/main/java/com/vaadin/server/SessionDestroyListener.java +++ b/server/src/main/java/com/vaadin/server/SessionDestroyListener.java @@ -27,6 +27,7 @@ import java.io.Serializable; * @author Vaadin Ltd * @since 7.0.0 */ +@FunctionalInterface public interface SessionDestroyListener extends Serializable { /** * Called when a Vaadin service session is no longer used. diff --git a/server/src/main/java/com/vaadin/server/SessionInitListener.java b/server/src/main/java/com/vaadin/server/SessionInitListener.java index 1a39df5c7d..c3e1910553 100644 --- a/server/src/main/java/com/vaadin/server/SessionInitListener.java +++ b/server/src/main/java/com/vaadin/server/SessionInitListener.java @@ -32,6 +32,7 @@ import java.io.Serializable; * @author Vaadin Ltd * @since 7.0.0 */ +@FunctionalInterface public interface SessionInitListener extends Serializable { /** * Invoked when a new Vaadin service session is initialized for that diff --git a/server/src/main/java/com/vaadin/server/StreamResource.java b/server/src/main/java/com/vaadin/server/StreamResource.java index 384090102d..6b8f36ba54 100644 --- a/server/src/main/java/com/vaadin/server/StreamResource.java +++ b/server/src/main/java/com/vaadin/server/StreamResource.java @@ -153,6 +153,7 @@ public class StreamResource implements ConnectorResource { * @author Vaadin Ltd. * @since 3.0 */ + @FunctionalInterface public interface StreamSource extends Serializable { /** diff --git a/server/src/main/java/com/vaadin/server/SystemMessagesProvider.java b/server/src/main/java/com/vaadin/server/SystemMessagesProvider.java index d425439ab6..8d062551f8 100644 --- a/server/src/main/java/com/vaadin/server/SystemMessagesProvider.java +++ b/server/src/main/java/com/vaadin/server/SystemMessagesProvider.java @@ -27,6 +27,7 @@ import com.vaadin.ui.UI; * @author Vaadin Ltd * @since 7.0.0 */ +@FunctionalInterface public interface SystemMessagesProvider extends Serializable { /** * Gets the system messages to use in the given context. The diff --git a/server/src/main/java/com/vaadin/server/VaadinServiceInitListener.java b/server/src/main/java/com/vaadin/server/VaadinServiceInitListener.java index 98959f0571..aa071636ed 100644 --- a/server/src/main/java/com/vaadin/server/VaadinServiceInitListener.java +++ b/server/src/main/java/com/vaadin/server/VaadinServiceInitListener.java @@ -36,6 +36,7 @@ import java.util.ServiceLoader; * @since * @author Vaadin Ltd */ +@FunctionalInterface public interface VaadinServiceInitListener extends EventListener, Serializable { /** * Run when a {@link VaadinService} instance is initialized. diff --git a/server/src/main/java/com/vaadin/server/ViewportGenerator.java b/server/src/main/java/com/vaadin/server/ViewportGenerator.java index 6c1cc5e5eb..13cf29010a 100644 --- a/server/src/main/java/com/vaadin/server/ViewportGenerator.java +++ b/server/src/main/java/com/vaadin/server/ViewportGenerator.java @@ -26,6 +26,7 @@ import java.io.Serializable; * * @author Vaadin Ltd */ +@FunctionalInterface public interface ViewportGenerator extends Serializable { /** * Generates a viewport tag based on a request. diff --git a/server/src/main/java/com/vaadin/server/data/DataProviderListener.java b/server/src/main/java/com/vaadin/server/data/DataProviderListener.java index 54ec2d1877..27bd781c4a 100644 --- a/server/src/main/java/com/vaadin/server/data/DataProviderListener.java +++ b/server/src/main/java/com/vaadin/server/data/DataProviderListener.java @@ -24,6 +24,7 @@ import java.io.Serializable; * @author Vaadin Ltd * @since 8.0 */ +@FunctionalInterface public interface DataProviderListener extends Serializable { /** diff --git a/server/src/main/java/com/vaadin/ui/AbstractSplitPanel.java b/server/src/main/java/com/vaadin/ui/AbstractSplitPanel.java index 8fe762f2a9..593f350af5 100644 --- a/server/src/main/java/com/vaadin/ui/AbstractSplitPanel.java +++ b/server/src/main/java/com/vaadin/ui/AbstractSplitPanel.java @@ -503,6 +503,7 @@ public abstract class AbstractSplitPanel extends AbstractComponentContainer { * @see SplitterClickEvent * @since 6.2 */ + @FunctionalInterface public interface SplitterClickListener extends ConnectorEventListener { public static final Method clickMethod = ReflectTools.findMethod( @@ -533,6 +534,7 @@ public abstract class AbstractSplitPanel extends AbstractComponentContainer { * * @since 7.5.0 */ + @FunctionalInterface public interface SplitPositionChangeListener extends ConnectorEventListener { diff --git a/server/src/main/java/com/vaadin/ui/Button.java b/server/src/main/java/com/vaadin/ui/Button.java index afa325ad1e..e57f8244ed 100644 --- a/server/src/main/java/com/vaadin/ui/Button.java +++ b/server/src/main/java/com/vaadin/ui/Button.java @@ -288,6 +288,7 @@ public class Button extends AbstractFocusable * @author Vaadin Ltd. * @since 3.0 */ + @FunctionalInterface public interface ClickListener extends Serializable { public static final Method BUTTON_CLICK_METHOD = ReflectTools @@ -302,7 +303,6 @@ public class Button extends AbstractFocusable * An event containing information about the click. */ public void buttonClick(ClickEvent event); - } /** diff --git a/server/src/main/java/com/vaadin/ui/HasComponents.java b/server/src/main/java/com/vaadin/ui/HasComponents.java index 847a6fada2..3cd1910d83 100644 --- a/server/src/main/java/com/vaadin/ui/HasComponents.java +++ b/server/src/main/java/com/vaadin/ui/HasComponents.java @@ -92,6 +92,7 @@ public interface HasComponents extends Component, Iterable { /** * Component attach listener interface. */ + @FunctionalInterface public interface ComponentAttachListener extends Serializable { public static final Method attachMethod = ReflectTools.findMethod( @@ -110,6 +111,7 @@ public interface HasComponents extends Component, Iterable { /** * Component detach listener interface. */ + @FunctionalInterface public interface ComponentDetachListener extends Serializable { public static final Method detachMethod = ReflectTools.findMethod( diff --git a/server/src/main/java/com/vaadin/ui/JavaScriptFunction.java b/server/src/main/java/com/vaadin/ui/JavaScriptFunction.java index cf0e033284..490dd15a7c 100644 --- a/server/src/main/java/com/vaadin/ui/JavaScriptFunction.java +++ b/server/src/main/java/com/vaadin/ui/JavaScriptFunction.java @@ -34,6 +34,7 @@ import elemental.json.JsonArray; * @author Vaadin Ltd * @since 7.0.0 */ +@FunctionalInterface public interface JavaScriptFunction extends Serializable { /** * Invoked whenever the corresponding JavaScript function is called in the diff --git a/server/src/main/java/com/vaadin/ui/LoginForm.java b/server/src/main/java/com/vaadin/ui/LoginForm.java index abef0c1276..6d477cf025 100644 --- a/server/src/main/java/com/vaadin/ui/LoginForm.java +++ b/server/src/main/java/com/vaadin/ui/LoginForm.java @@ -99,6 +99,7 @@ public class LoginForm extends AbstractSingleComponentContainer { /** * Listener triggered when a login occurs in a {@link LoginForm}. */ + @FunctionalInterface public interface LoginListener extends Serializable { /** * Event method invoked when the login button is pressed in a login diff --git a/server/src/main/java/com/vaadin/ui/MenuBar.java b/server/src/main/java/com/vaadin/ui/MenuBar.java index 5319df7e8b..b769ab42bf 100644 --- a/server/src/main/java/com/vaadin/ui/MenuBar.java +++ b/server/src/main/java/com/vaadin/ui/MenuBar.java @@ -434,6 +434,7 @@ public class MenuBar extends AbstractComponent * clicks on the containing {@link com.vaadin.ui.MenuBar.MenuItem}. The * selected item is given as an argument. */ + @FunctionalInterface public interface Command extends Serializable { public void menuSelected(MenuBar.MenuItem selectedItem); } diff --git a/server/src/main/java/com/vaadin/ui/PopupView.java b/server/src/main/java/com/vaadin/ui/PopupView.java index 30a9e52411..6d047dd723 100644 --- a/server/src/main/java/com/vaadin/ui/PopupView.java +++ b/server/src/main/java/com/vaadin/ui/PopupView.java @@ -399,6 +399,7 @@ public class PopupView extends AbstractComponent implements HasComponents { * visibility of the popup changes. * */ + @FunctionalInterface public interface PopupVisibilityListener extends Serializable { /** * Pass to {@link PopupView#PopupVisibilityEvent} to start listening for diff --git a/server/src/main/java/com/vaadin/ui/TabSheet.java b/server/src/main/java/com/vaadin/ui/TabSheet.java index 58d67edc16..a94925a263 100644 --- a/server/src/main/java/com/vaadin/ui/TabSheet.java +++ b/server/src/main/java/com/vaadin/ui/TabSheet.java @@ -809,6 +809,7 @@ public class TabSheet extends AbstractComponentContainer * * @since 3.0 */ + @FunctionalInterface public interface SelectedTabChangeListener extends Serializable { /** @@ -1288,6 +1289,7 @@ public class TabSheet extends AbstractComponentContainer * @since 6.2.0 * */ + @FunctionalInterface public interface CloseHandler extends Serializable { /** diff --git a/server/src/main/java/com/vaadin/ui/UI.java b/server/src/main/java/com/vaadin/ui/UI.java index 8926ec6bd4..ad6a60d96d 100644 --- a/server/src/main/java/com/vaadin/ui/UI.java +++ b/server/src/main/java/com/vaadin/ui/UI.java @@ -1847,6 +1847,7 @@ public abstract class UI extends AbstractSingleComponentContainer * * @see Window.WindowOrderChangeEvent */ + @FunctionalInterface public interface WindowOrderUpdateListener extends ConnectorEventListener { public static final Method windowOrderUpdateMethod = ReflectTools diff --git a/server/src/main/java/com/vaadin/ui/Upload.java b/server/src/main/java/com/vaadin/ui/Upload.java index e3105b73fc..866bc96d25 100644 --- a/server/src/main/java/com/vaadin/ui/Upload.java +++ b/server/src/main/java/com/vaadin/ui/Upload.java @@ -201,6 +201,7 @@ public class Upload extends AbstractComponent * @author Vaadin Ltd. * @since 3.0 */ + @FunctionalInterface public interface Receiver extends Serializable { /** @@ -214,7 +215,6 @@ public class Upload extends AbstractComponent * @return Stream to which the uploaded file should be written. */ public OutputStream receiveUpload(String filename, String mimeType); - } /* Upload events */ @@ -544,6 +544,7 @@ public class Upload extends AbstractComponent * @author Vaadin Ltd. * @since 5.0 */ + @FunctionalInterface public interface StartedListener extends Serializable { /** @@ -561,6 +562,7 @@ public class Upload extends AbstractComponent * @author Vaadin Ltd. * @since 3.0 */ + @FunctionalInterface public interface FinishedListener extends Serializable { /** @@ -578,6 +580,7 @@ public class Upload extends AbstractComponent * @author Vaadin Ltd. * @since 3.0 */ + @FunctionalInterface public interface FailedListener extends Serializable { /** @@ -595,6 +598,7 @@ public class Upload extends AbstractComponent * @author Vaadin Ltd. * @since 3.0 */ + @FunctionalInterface public interface SucceededListener extends Serializable { /** @@ -611,6 +615,7 @@ public class Upload extends AbstractComponent * * @since 7.2 */ + @FunctionalInterface public interface ChangeListener extends Serializable { Method FILENAME_CHANGED = ReflectTools.findMethod(ChangeListener.class, @@ -954,6 +959,7 @@ public class Upload extends AbstractComponent /** * ProgressListener receives events to track progress of upload. */ + @FunctionalInterface public interface ProgressListener extends Serializable { /** * Updates progress to listener diff --git a/server/src/main/java/com/vaadin/ui/Window.java b/server/src/main/java/com/vaadin/ui/Window.java index c3a66a6c18..f41ef41244 100644 --- a/server/src/main/java/com/vaadin/ui/Window.java +++ b/server/src/main/java/com/vaadin/ui/Window.java @@ -435,6 +435,7 @@ public class Window extends Panel * * @see UI.WindowOrderUpdateListener */ + @FunctionalInterface public interface WindowOrderChangeListener extends ConnectorEventListener { public static final Method windowOrderChangeMethod = ReflectTools @@ -495,6 +496,7 @@ public class Window extends Panel * fires the CloseListener. *

*/ + @FunctionalInterface public interface CloseListener extends Serializable { /** * Called when the user closes a window. Use @@ -596,6 +598,7 @@ public class Window extends Panel * will be called whenever the window is maximized ( * {@link WindowMode#MAXIMIZED}) or restored ({@link WindowMode#NORMAL} ). */ + @FunctionalInterface public interface WindowModeChangeListener extends Serializable { public static final Method windowModeChangeMethod = ReflectTools @@ -694,6 +697,7 @@ public class Window extends Panel * * @see com.vaadin.ui.Window.ResizeEvent */ + @FunctionalInterface public interface ResizeListener extends Serializable { public void windowResized(ResizeEvent e); } diff --git a/server/src/main/java/com/vaadin/ui/declarative/DesignContext.java b/server/src/main/java/com/vaadin/ui/declarative/DesignContext.java index 28004104cb..c52ccd4655 100644 --- a/server/src/main/java/com/vaadin/ui/declarative/DesignContext.java +++ b/server/src/main/java/com/vaadin/ui/declarative/DesignContext.java @@ -674,6 +674,7 @@ public class DesignContext implements Serializable { * * @author Vaadin Ltd */ + @FunctionalInterface public interface ComponentCreationListener extends Serializable { /** diff --git a/server/src/main/java/com/vaadin/ui/declarative/ShouldWriteDataDelegate.java b/server/src/main/java/com/vaadin/ui/declarative/ShouldWriteDataDelegate.java index ed686f0f2b..6b58b29e8a 100644 --- a/server/src/main/java/com/vaadin/ui/declarative/ShouldWriteDataDelegate.java +++ b/server/src/main/java/com/vaadin/ui/declarative/ShouldWriteDataDelegate.java @@ -28,6 +28,7 @@ import com.vaadin.ui.Component; * @since 7.5.0 * @author Vaadin Ltd */ +@FunctionalInterface public interface ShouldWriteDataDelegate extends Serializable { /** diff --git a/server/src/main/java/com/vaadin/ui/renderers/ClickableRenderer.java b/server/src/main/java/com/vaadin/ui/renderers/ClickableRenderer.java index 28a26620a8..a179f1aaa6 100644 --- a/server/src/main/java/com/vaadin/ui/renderers/ClickableRenderer.java +++ b/server/src/main/java/com/vaadin/ui/renderers/ClickableRenderer.java @@ -48,6 +48,7 @@ public abstract class ClickableRenderer extends AbstractRenderer { * * @see ButtonRenderer#addClickListener(RendererClickListener) */ + @FunctionalInterface public interface RendererClickListener extends ConnectorEventListener { static final Method CLICK_METHOD = ReflectTools.findMethod( -- 2.39.5