Repository: wicket
Updated Branches:
  refs/heads/master 94759c0ab -> 7a72a623e


WICKET-6322 remove lambda component factories


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/7a72a623
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/7a72a623
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/7a72a623

Branch: refs/heads/master
Commit: 7a72a623e420905f963445d74881362252d29993
Parents: 94759c0
Author: Sven Meier <svenme...@apache.org>
Authored: Mon Feb 20 18:15:51 2017 +0100
Committer: Sven Meier <svenme...@apache.org>
Committed: Mon Feb 20 18:15:51 2017 +0100

----------------------------------------------------------------------
 .../wicket/ajax/markup/html/AjaxLink.java       |  54 --------
 .../ajax/markup/html/form/AjaxButton.java       |  64 ---------
 .../ajax/markup/html/form/AjaxCheckBox.java     |  28 ----
 .../ajax/markup/html/form/AjaxSubmitLink.java   |  64 ---------
 .../java/org/apache/wicket/lambda/Lambdas.java  | 129 -------------------
 .../apache/wicket/markup/html/form/Button.java  |  65 +---------
 .../apache/wicket/markup/html/link/Link.java    |  29 +----
 .../wicket/examples/ajax/builtin/LinksPage.java |  28 ++--
 .../examples/ajax/builtin/WorldClockPage.java   |  14 +-
 .../wicket/examples/authorization/Index.java    |   6 +-
 .../pages/AnnotationsPanelsPage.java            |  24 ++--
 .../examples/captcha/AbstractCaptchaForm.java   |  13 +-
 .../examples/cdi/AutoConversationPage1.java     |  16 ++-
 .../wicket/examples/cdi/ConversationPage1.java  |  20 ++-
 .../wicket/examples/cdi/ConversationPage2.java  |   8 +-
 .../wicket/examples/cdi/InjectionPage.java      |   8 +-
 .../wicket/examples/compref/LinkPage.java       |  18 ++-
 .../examples/compref/NonBookmarkablePage.java   |   6 +-
 .../events/DecoupledAjaxUpdatePage.java         |  10 +-
 .../wicket/examples/forminput/FormInput.java    |  21 +--
 .../apache/wicket/examples/guice/HomePage.java  |   9 +-
 .../apache/wicket/examples/hangman/Lose.java    |  13 +-
 .../org/apache/wicket/examples/hangman/Win.java |  13 +-
 .../wicket/examples/kittenCaptcha/HomePage.java |  31 +++--
 .../apache/wicket/examples/linkomatic/Home.java |  86 +++++++++----
 .../wicket/examples/repeater/OIRPage.java       |  16 ++-
 .../examples/repeater/RefreshingPage.java       |  11 +-
 .../wicket/examples/stateless/StatefulPage.java |  17 ++-
 .../template/border/TemplateBorder.java         |  21 +--
 .../template/pageinheritance/TemplatePage.java  |  21 +--
 .../wicket/examples/tree/AdvancedTreePage.java  |  29 ++++-
 .../wicket/examples/upload/UploadPage.java      |  13 +-
 32 files changed, 336 insertions(+), 569 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java 
b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java
index 483c2b4..67c731e 100644
--- a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java
+++ b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java
@@ -24,9 +24,6 @@ import 
org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
 import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.link.AbstractLink;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.util.lang.Args;
-import org.danekja.java.util.function.serializable.SerializableBiConsumer;
-import org.danekja.java.util.function.serializable.SerializableConsumer;
 
 /**
  * A component that allows a trigger request to be triggered via html anchor 
tag
@@ -143,57 +140,6 @@ public abstract class AjaxLink<T> extends AbstractLink 
implements IAjaxLink, IGe
        @Override
        public abstract void onClick(final AjaxRequestTarget target);
 
-       /**
-        * Creates an {@link AjaxLink} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the ajax link
-        * @param onClick
-        *            the {@code SerializableConsumer} which accepts the {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxLink}
-        */
-       public static <T> AjaxLink<T> onClick(String id,
-               SerializableConsumer<AjaxRequestTarget> onClick)
-       {
-               Args.notNull(onClick, "onClick");
-
-               return new AjaxLink<T>(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onClick(AjaxRequestTarget target)
-                       {
-                               onClick.accept(target);
-                       }
-               };
-       }
-
-       /**
-        * Creates an {@link AjaxLink} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the ajax link
-        * @param onClick
-        *            the consumer of the clicked link and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxLink}
-        */
-       public static <T> AjaxLink<T> onClick(String id,
-               SerializableBiConsumer<AjaxLink<T>, AjaxRequestTarget> onClick)
-       {
-               Args.notNull(onClick, "onClick");
-
-               return new AjaxLink<T>(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onClick(AjaxRequestTarget target)
-                       {
-                               onClick.accept(this, target);
-                       }
-               };
-       }
        @Override
        protected boolean getStatelessHint()
        {

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxButton.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxButton.java
 
b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxButton.java
index 03f01a8..b0b5139 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxButton.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxButton.java
@@ -23,8 +23,6 @@ import org.apache.wicket.ajax.form.AjaxFormSubmitBehavior;
 import org.apache.wicket.markup.html.form.Button;
 import org.apache.wicket.markup.html.form.Form;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.util.lang.Args;
-import org.danekja.java.util.function.serializable.SerializableBiConsumer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -230,68 +228,6 @@ public abstract class AjaxButton extends Button
        {
        }
 
-       /**
-        * Creates an {@link AjaxButton} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the ajax button
-        * @param onSubmit
-        *            the consumer which accepts the button and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxButton}
-        */
-       public static AjaxButton onSubmit(String id,
-               SerializableBiConsumer<AjaxButton, AjaxRequestTarget> onSubmit)
-       {
-               Args.notNull(onSubmit, "onSubmit");
-
-               return new AjaxButton(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onSubmit(AjaxRequestTarget target)
-                       {
-                               onSubmit.accept(this, target);
-                       }
-               };
-       }
-
-       /**
-        * Creates an {@link AjaxButton} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the ajax button
-        * @param onSubmit
-        *            the consumer of the submitted button and an {@link 
AjaxRequestTarget}
-        * @param onError
-        *            the consumer of the button in error and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxButton}
-        */
-       public static AjaxButton onSubmit(String id,
-               SerializableBiConsumer<AjaxButton, AjaxRequestTarget> onSubmit,
-               SerializableBiConsumer<AjaxButton, AjaxRequestTarget> onError)
-       {
-               Args.notNull(onSubmit, "onSubmit");
-               Args.notNull(onError, "onError");
-
-               return new AjaxButton(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onSubmit(AjaxRequestTarget target)
-                       {
-                               onSubmit.accept(this, target);
-                       }
-
-                       @Override
-                       protected void onError(AjaxRequestTarget target)
-                       {
-                               onError.accept(this, target);
-                       }
-               };
-       }
-       
        @Override
        protected boolean getStatelessHint()
        {

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxCheckBox.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxCheckBox.java
 
b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxCheckBox.java
index 6fa1221..0e20071 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxCheckBox.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxCheckBox.java
@@ -21,8 +21,6 @@ import 
org.apache.wicket.ajax.attributes.AjaxRequestAttributes;
 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
 import org.apache.wicket.markup.html.form.CheckBox;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.util.lang.Args;
-import org.danekja.java.util.function.serializable.SerializableBiConsumer;
 
 /**
  * A CheckBox which is updated via ajax when the user changes its value
@@ -91,30 +89,4 @@ public abstract class AjaxCheckBox extends CheckBox
         * @param target
         */
        protected abstract void onUpdate(AjaxRequestTarget target);
-
-       /**
-        * Creates an {@link AjaxCheckBox} based on lambda expressions
-        * 
-        * @param id
-        *            the id of ajax check box
-        * @param onUpdate
-        *            the consumer of the updated checkbox and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxCheckBox}
-        */
-       public static AjaxCheckBox onUpdate(String id,
-               SerializableBiConsumer<AjaxCheckBox, AjaxRequestTarget> 
onUpdate)
-       {
-               Args.notNull(onUpdate, "onUpdate");
-
-               return new AjaxCheckBox(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onUpdate(AjaxRequestTarget target)
-                       {
-                               onUpdate.accept(this, target);
-                       }
-               };
-       }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java
 
b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java
index 38416d1..d666bae 100644
--- 
a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java
+++ 
b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxSubmitLink.java
@@ -23,8 +23,6 @@ import org.apache.wicket.ajax.form.AjaxFormSubmitBehavior;
 import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.form.AbstractSubmitLink;
 import org.apache.wicket.markup.html.form.Form;
-import org.apache.wicket.util.lang.Args;
-import org.danekja.java.util.function.serializable.SerializableBiConsumer;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -225,68 +223,6 @@ public abstract class AjaxSubmitLink extends 
AbstractSubmitLink
                logger.warn("unexpected invocation of #onAfterSubmit() on {}", 
this);
        }
 
-       /**
-        * Creates an {@link AjaxSubmitLink} based on lambda expressions
-        *
-        * @param id
-        *            the id of ajax submit link
-        * @param onSubmit
-        *            the consumer which accepts the link and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxSubmitLink}
-        */
-       public static AjaxSubmitLink onSubmit(String id,
-               SerializableBiConsumer<AjaxSubmitLink, AjaxRequestTarget> 
onSubmit)
-       {
-               Args.notNull(onSubmit, "onSubmit");
-
-               return new AjaxSubmitLink(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onSubmit(AjaxRequestTarget target)
-                       {
-                               onSubmit.accept(this, target);
-                       }
-               };
-       }
-
-       /**
-        * Creates an {@link AjaxSubmitLink} based on lambda expressions
-        *
-        * @param id
-        *            the id of ajax submit link
-        * @param onSubmit
-        *            the consumer of the submitted link and an {@link 
AjaxRequestTarget}
-        * @param onError
-        *            the consumer of the link in error and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxSubmitLink}
-        */
-       public static AjaxSubmitLink onSubmit(String id,
-               SerializableBiConsumer<AjaxSubmitLink, AjaxRequestTarget> 
onSubmit,
-               SerializableBiConsumer<AjaxSubmitLink, AjaxRequestTarget> 
onError)
-       {
-               Args.notNull(onSubmit, "onSubmit");
-               Args.notNull(onError, "onError");
-
-               return new AjaxSubmitLink(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onSubmit(AjaxRequestTarget target)
-                       {
-                               onSubmit.accept(this, target);
-                       }
-
-                       @Override
-                       protected void onError(AjaxRequestTarget target)
-                       {
-                               onError.accept(this, target);
-                       }
-               };
-       }
-       
        @Override
        protected boolean getStatelessHint()
        {

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-core/src/main/java/org/apache/wicket/lambda/Lambdas.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/lambda/Lambdas.java 
b/wicket-core/src/main/java/org/apache/wicket/lambda/Lambdas.java
index cf5b37f..85b0bb4 100644
--- a/wicket-core/src/main/java/org/apache/wicket/lambda/Lambdas.java
+++ b/wicket-core/src/main/java/org/apache/wicket/lambda/Lambdas.java
@@ -27,13 +27,8 @@ import 
org.apache.wicket.ajax.form.AjaxFormChoiceComponentUpdatingBehavior;
 import org.apache.wicket.ajax.form.AjaxFormComponentUpdatingBehavior;
 import org.apache.wicket.ajax.form.AjaxFormSubmitBehavior;
 import org.apache.wicket.ajax.form.OnChangeAjaxBehavior;
-import org.apache.wicket.ajax.markup.html.AjaxLink;
-import org.apache.wicket.ajax.markup.html.form.AjaxButton;
-import org.apache.wicket.ajax.markup.html.form.AjaxCheckBox;
-import org.apache.wicket.ajax.markup.html.form.AjaxSubmitLink;
 import org.apache.wicket.behavior.Behavior;
 import org.apache.wicket.markup.ComponentTag;
-import org.apache.wicket.markup.html.link.Link;
 import org.apache.wicket.protocol.http.request.WebClientInfo;
 import org.apache.wicket.util.time.Duration;
 import org.danekja.java.util.function.serializable.SerializableBiConsumer;
@@ -315,128 +310,4 @@ public class Lambdas
        {
                return Behavior.onAttribute(attributeName, onAttribute);
        }
-
-       /**
-        * Creates an {@link AjaxLink} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the ajax link
-        * @param onClick
-        *            the consumer of the clicked link and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxLink}
-        * 
-        * @see AjaxLink#onClick(String, SerializableConsumer)
-        */
-       public static <T> AjaxLink<T> ajaxLink(String id,
-               SerializableBiConsumer<AjaxLink<T>, AjaxRequestTarget> onClick)
-       {
-               return AjaxLink.onClick(id, onClick);
-       }
-
-       /**
-        * Creates an {@link AjaxButton} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the ajax button
-        * @param onSubmit
-        *            the consumer of the submitted button and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxButton}
-        * 
-        * @see AjaxButton#onSubmit(String, SerializableBiConsumer)
-        */
-       public static AjaxButton ajaxButton(String id,
-               SerializableBiConsumer<AjaxButton, AjaxRequestTarget> onSubmit)
-       {
-               return AjaxButton.onSubmit(id, onSubmit);
-       }
-
-       /**
-        * Creates an {@link AjaxButton} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the ajax button
-        * @param onSubmit
-        *            the consumer of the submitted button and an {@link 
AjaxRequestTarget}
-        * @param onError
-        *            the consumer of the button in error and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxButton}
-        * 
-        * @see AjaxButton#onSubmit(String, SerializableBiConsumer, 
SerializableBiConsumer)
-        */
-       public static AjaxButton ajaxButton(String id,
-               SerializableBiConsumer<AjaxButton, AjaxRequestTarget> onSubmit,
-               SerializableBiConsumer<AjaxButton, AjaxRequestTarget> onError)
-       {
-               return AjaxButton.onSubmit(id, onSubmit, onError);
-       }
-
-       /**
-        * Creates an {@link AjaxCheckBox} based on lambda expressions
-        * 
-        * @param id
-        *            the id of ajax check box
-        * @param onUpdate
-        *            the consumer of the updated checkbox and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxCheckBox}
-        * 
-        * @see AjaxCheckBox#onUpdate(String, SerializableBiConsumer)
-        */
-       public static AjaxCheckBox ajaxCheckBox(String id,
-               SerializableBiConsumer<AjaxCheckBox, AjaxRequestTarget> 
onUpdate)
-       {
-               return AjaxCheckBox.onUpdate(id, onUpdate);
-       }
-
-       /**
-        * Creates an {@link AjaxSubmitLink} based on lambda expressions
-        * 
-        * @param id
-        *            the id of ajax submit link
-        * @param onSubmit
-        *            the consumer of the submitted button and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxSubmitLink}
-        * 
-        * @see AjaxSubmitLink#onSubmit(String, SerializableBiConsumer)
-        */
-       public static AjaxSubmitLink ajaxSubmitLink(String id,
-               SerializableBiConsumer<AjaxSubmitLink, AjaxRequestTarget> 
onSubmit)
-       {
-               return AjaxSubmitLink.onSubmit(id, onSubmit);
-       }
-
-       /**
-        * Creates an {@link AjaxSubmitLink} based on lambda expressions
-        * 
-        * @param id
-        *            the id of ajax submit link
-        * @param onSubmit
-        *            the consumer of the submitted link and an {@link 
AjaxRequestTarget}
-        * @param onError
-        *            the consumer of the link in error and an {@link 
AjaxRequestTarget}
-        * @return the {@link AjaxSubmitLink}
-        * 
-        * @see AjaxSubmitLink#onSubmit(String, SerializableBiConsumer, 
SerializableBiConsumer)
-        */
-       public static AjaxSubmitLink ajaxSubmitLink(String id,
-               SerializableBiConsumer<AjaxSubmitLink, AjaxRequestTarget> 
onSubmit,
-               SerializableBiConsumer<AjaxSubmitLink, AjaxRequestTarget> 
onError)
-       {
-               return AjaxSubmitLink.onSubmit(id, onSubmit, onError);
-       }
-
-       /**
-        * Creates a {@link Link} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the link
-        * @param onClick
-        *            the consumer of the clicked link
-        * @return the {@link Link}
-        * 
-        * @see Link#onClick(String, SerializableConsumer)
-        */
-       public static <T> Link<T> link(String id, SerializableConsumer<Link<T>> 
onClick)
-       {
-               return Link.onClick(id, onClick);
-       }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Button.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Button.java 
b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Button.java
index 067f39a..0b4bcdf 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Button.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Button.java
@@ -16,13 +16,10 @@
  */
 package org.apache.wicket.markup.html.form;
 
-import org.apache.wicket.ajax.markup.html.form.AjaxButton;
 import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.MarkupStream;
 import org.apache.wicket.model.IModel;
-import org.apache.wicket.util.lang.Args;
 import org.apache.wicket.util.string.Strings;
-import org.danekja.java.util.function.serializable.SerializableConsumer;
 
 /**
  * A form button.
@@ -254,64 +251,4 @@ public class Button extends FormComponent<String> 
implements IFormSubmittingComp
        public void onAfterSubmit()
        {
        }
-       
-       /**
-        * Creates a {@link Button} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the button
-        * @param onSubmit
-        *            the {@code SerializableConsumer} which accepts the {@link 
Button}
-        * @return the {@link Button}
-        */
-       public static Button onSubmit(String id, SerializableConsumer<Button> 
onSubmit)
-       {
-               Args.notNull(onSubmit, "onSubmit");
-
-               return new Button(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onSubmit()
-                       {
-                               onSubmit.accept(this);
-                       }
-               };
-       }
-
-       /**
-        * Creates a {@link Button} based on lambda expressions
-        * 
-        * @param id
-        *            the id of the button
-        * @param onSubmit
-        *            the {@code SerializableConsumer} which accepts the {@link 
Button}
-        * @param onError
-        *            the {@code SerializableConsumer} which accepts the {@link 
Button}
-        * @return the {@link AjaxButton}
-        */
-       public static Button onSubmit(String id, SerializableConsumer<Button> 
onSubmit,
-               SerializableConsumer<Button> onError)
-       {
-               Args.notNull(onSubmit, "onSubmit");
-               Args.notNull(onError, "onError");
-
-               return new Button(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onSubmit()
-                       {
-                               onSubmit.accept(this);
-                       }
-
-                       @Override
-                       public void onError()
-                       {
-                               onError.accept(this);
-                       }
-               };
-       }
-}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-core/src/main/java/org/apache/wicket/markup/html/link/Link.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/markup/html/link/Link.java 
b/wicket-core/src/main/java/org/apache/wicket/markup/html/link/Link.java
index 8c7f1b1..b7b303c 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/link/Link.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/link/Link.java
@@ -24,8 +24,6 @@ import org.apache.wicket.WicketRuntimeException;
 import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.model.IModel;
 import org.apache.wicket.request.mapper.parameter.PageParameters;
-import org.apache.wicket.util.lang.Args;
-import org.danekja.java.util.function.serializable.SerializableConsumer;
 
 /**
  * Implementation of a hyperlink component. A link can be used with an anchor 
(&lt;a href...)
@@ -418,29 +416,4 @@ public abstract class Link<T> extends AbstractLink 
implements IRequestListener,
                        disableLink(tag);
                }
        }
-
-       /**
-        * Creates a {@link Link} based on lambda expressions
-        *
-        * @param id
-        *            the id of the link
-        * @param onClick
-        *            the consumer of the clicked link
-        * @return the {@link Link}
-        */
-       public static <T> Link<T> onClick(String id, 
SerializableConsumer<Link<T>> onClick)
-       {
-               Args.notNull(onClick, "onClick");
-
-               return new Link<T>(id)
-               {
-                       private static final long serialVersionUID = 1L;
-
-                       @Override
-                       public void onClick()
-                       {
-                               onClick.accept(this);
-                       }
-               };
-       }
-}
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/LinksPage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/LinksPage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/LinksPage.java
index f3513ea..d54614f 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/LinksPage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/LinksPage.java
@@ -205,16 +205,24 @@ public class LinksPage extends BasePage
                        }
                });
 
-               add(AjaxLink.onClick("set-response-page", (lin, target) -> 
setResponsePage(LinksPage.class)));
-
-               add(AjaxLink.onClick("exception", (link, target) -> {
-                       // Set the proper setting to show the error page
-                       // note: will be set until the "failure" link is 
clicked or the application is
-                       // restarted
-                       
getApplication().getExceptionSettings().setAjaxErrorHandlingStrategy(
-                               
ExceptionSettings.AjaxErrorStrategy.REDIRECT_TO_ERROR_PAGE);
+               add(new AjaxLink<Void>("set-response-page") {
+                       @Override
+                       public void onClick(AjaxRequestTarget target) {
+                               setResponsePage(LinksPage.class);
+                       }
+               });
 
-                       throw new RuntimeException("test whether the exception 
handling works");
-               }));
+               add(new AjaxLink<Void>("exception") {
+                       @Override
+                       public void onClick(AjaxRequestTarget target) {
+                               // Set the proper setting to show the error page
+                               // note: will be set until the "failure" link 
is clicked or the application is
+                               // restarted
+                               
getApplication().getExceptionSettings().setAjaxErrorHandlingStrategy(
+                                       
ExceptionSettings.AjaxErrorStrategy.REDIRECT_TO_ERROR_PAGE);
+       
+                               throw new RuntimeException("test whether the 
exception handling works");
+                       }
+               });
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/WorldClockPage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/WorldClockPage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/WorldClockPage.java
index 3ee0c8e..80f95dd 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/WorldClockPage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/ajax/builtin/WorldClockPage.java
@@ -60,8 +60,18 @@ public class WorldClockPage extends BasePage
                final AbstractAjaxTimerBehavior timer = 
onTimer(Duration.seconds(1), target -> target.add(la, ny, moscow, prague, 
london));
                add(timer);
 
-               add(AjaxLink.onClick("stop", timer::stop));
+               add(new AjaxLink<Void>("stop") {
+                       @Override
+                       public void 
onClick(org.apache.wicket.ajax.AjaxRequestTarget target) {
+                               timer.stop(target);
+                       }
+               });
 
-               add(AjaxLink.onClick("restart", timer::restart));
+               add(new AjaxLink<Void>("restart") {
+                       @Override
+                       public void 
onClick(org.apache.wicket.ajax.AjaxRequestTarget target) {
+                               timer.restart(target);
+                       }
+               });
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/Index.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/Index.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/Index.java
index 6cd6084..d39b0a6 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/Index.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/Index.java
@@ -77,7 +77,11 @@ public class Index extends BasePage
                // pages that are protected using annotations
                add(new BookmarkablePageLink<Void>("adminAnnotBookmarkableLink",
                        AdminAnnotationsBookmarkablePage.class));
-               add(Link.onClick("adminAnnotInternalLink", link -> 
setResponsePage(new AdminAnnotationsInternalPage("bar"))));
+               add(new Link<Void>("adminAnnotInternalLink") {
+                       public void onClick() {
+                               setResponsePage(new 
AdminAnnotationsInternalPage("bar"));
+                       }
+               });
 
                add(new BookmarkablePageLink<>("panelsAnnotPageLink", 
AnnotationsPanelsPage.class));
        }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/pages/AnnotationsPanelsPage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/pages/AnnotationsPanelsPage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/pages/AnnotationsPanelsPage.java
index b24dd95..1f5ed05 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/pages/AnnotationsPanelsPage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/authorization/pages/AnnotationsPanelsPage.java
@@ -159,18 +159,22 @@ public class AnnotationsPanelsPage extends BasePage
                outer.setOutputMarkupId(true);
 
                outer.add(new 
WebMarkupContainer("test").setOutputMarkupId(true));
-               add(AjaxLink.onClick("link", target -> {
-                       showDummy = !showDummy;
-                       if (showDummy)
-                       {
-                               outer.replace(new WebMarkupContainer("test"));
-                       }
-                       else
+               add(new AjaxLink<Void>("link")
+               {
+                       public void 
onClick(org.apache.wicket.ajax.AjaxRequestTarget target)
                        {
-                               outer.replace(new Test("test"));
+                               showDummy = !showDummy;
+                               if (showDummy)
+                               {
+                                       outer.replace(new 
WebMarkupContainer("test"));
+                               }
+                               else
+                               {
+                                       outer.replace(new Test("test"));
+                               }
+                               target.add(outer);
                        }
-                       target.add(outer);
-               }));
+               });
        }
 
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/AbstractCaptchaForm.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/AbstractCaptchaForm.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/AbstractCaptchaForm.java
index 3c7b14d..3aa6156 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/AbstractCaptchaForm.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/captcha/AbstractCaptchaForm.java
@@ -16,6 +16,7 @@
  */
 package org.apache.wicket.examples.captcha;
 
+import org.apache.wicket.ajax.AjaxRequestTarget;
 import org.apache.wicket.ajax.markup.html.AjaxLink;
 import org.apache.wicket.extensions.markup.html.captcha.CaptchaImageResource;
 import org.apache.wicket.feedback.ContainerFeedbackMessageFilter;
@@ -83,10 +84,14 @@ public abstract class AbstractCaptchaForm<T> extends 
GenericPanel<T>
                captchaImage.setOutputMarkupId(true);
                form.add(captchaImage);
 
-               AjaxLink<Void> changeCaptchaLink = 
AjaxLink.onClick("changeLink", target -> {
-                       captchaImageResource.invalidate();
-                       target.add(captchaImage);
-               });
+               AjaxLink<Void> changeCaptchaLink = new 
AjaxLink<Void>("changeLink") {
+                       @Override
+                       public void onClick(AjaxRequestTarget target)
+                       {
+                               captchaImageResource.invalidate();
+                               target.add(captchaImage);
+                       }
+               };
                form.add(changeCaptchaLink);
 
                form.add(new RequiredTextField<String>("text",

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/AutoConversationPage1.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/AutoConversationPage1.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/AutoConversationPage1.java
index 4686773..1522c8d 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/AutoConversationPage1.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/AutoConversationPage1.java
@@ -34,10 +34,20 @@ public class AutoConversationPage1 extends CdiExamplePage 
implements Conversatio
 
        public AutoConversationPage1()
        {
-               add(new Label("count", new PropertyModel(this, 
"counter.count")));
+               add(new Label("count", new PropertyModel<Integer>(this, 
"counter.count")));
 
-               add(Link.onClick("increment", (link) -> counter.increment()));
+               add(new Link<Void>("increment") {
+                       @Override
+                       public void onClick()
+                       {
+                               counter.increment();
+                       }
+               });
 
-               add(Link.onClick("next", (link) -> setResponsePage(new 
AutoConversationPage2())));
+               add(new Link<Void>("next") {
+                       public void onClick() {
+                               setResponsePage(new AutoConversationPage2());
+                       }
+               });
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage1.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage1.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage1.java
index 427ca34..55e0440 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage1.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage1.java
@@ -36,10 +36,20 @@ public class ConversationPage1 extends CdiExamplePage
                // make the conversation long running
                conversation.begin();
 
-               add(new Label("count", new PropertyModel(this, 
"counter.count")));
-
-               add(Link.onClick("increment", (link) -> counter.increment()));
-
-               add(Link.onClick("next", (link) -> setResponsePage(new 
ConversationPage2())));
+               add(new Label("count", new PropertyModel<Integer>(this, 
"counter.count")));
+
+               add(new Link<Void>("increment") {
+                       @Override
+                       public void onClick()
+                       {
+                               counter.increment();
+                       }
+               });
+
+               add(new Link<Void>("next") {
+                       public void onClick() {
+                               setResponsePage(new ConversationPage2());
+                       }
+               });
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage2.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage2.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage2.java
index d51e636..de34eea 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage2.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/ConversationPage2.java
@@ -30,9 +30,13 @@ public class ConversationPage2 extends CdiExamplePage
 
        public ConversationPage2()
        {
-               add(new Label("count", new PropertyModel(this, 
"counter.count")));
+               add(new Label("count", new PropertyModel<Integer>(this, 
"counter.count")));
 
-               add(Link.onClick("increment", (link) -> counter.increment()));
+               add(new Link<Void>("increment") {
+                       public void onClick() {
+                               counter.increment();
+                       }
+               });
 
                add(new BookmarkablePageLink<Void>("next", 
ConversationPage3.class));
        }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/InjectionPage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/InjectionPage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/InjectionPage.java
index 27cce07..85d85c9 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/InjectionPage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/cdi/InjectionPage.java
@@ -29,8 +29,12 @@ public class InjectionPage extends CdiExamplePage
 
        public InjectionPage()
        {
-               add(new Label("count", new PropertyModel(this, 
"counter.count")));
+               add(new Label("count", new PropertyModel<Integer>(this, 
"counter.count")));
 
-               add(Link.onClick("increment", (link) -> counter.increment()));
+               add(new Link<Void>("increment") {
+                       public void onClick() {
+                               counter.increment();
+                       }
+               });
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/compref/LinkPage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/LinkPage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/LinkPage.java
index 403838a..58e5f55 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/LinkPage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/LinkPage.java
@@ -41,7 +41,11 @@ public class LinkPage extends WicketExamplePage
 
                // add a link which, when clicked, increases our counter when a 
link is clicked, its onClick
                // method is called
-               Link link1 = Link.onClick("link1", (link) -> 
count1.increment());
+               Link<Void> link1 = new Link<Void>("link1") {
+                       public void onClick() {
+                               count1.increment();
+                       }
+               };
                add(link1);
 
                // add a counter label to the link so that we can display it in 
the body of the link
@@ -52,10 +56,14 @@ public class LinkPage extends WicketExamplePage
                // because of this, and pressing the back button and clicking 
the link again would revert to
                // the older value. The same thing could have been achieved by 
using setModelObject,
                // which implicitly registers a state change (of type 
ComponentModelChange).
-               Link linkWithStateChange = Link.onClick("linkWithStateChange", 
(link) -> {
-                       count2.increment();
-                       addStateChange();
-               });
+               Link<Void> linkWithStateChange = new 
Link<Void>("linkWithStateChange") {
+                       @Override
+                       public void onClick()
+                       {
+                               count2.increment();
+                               addStateChange();
+                       }
+               };
                add(linkWithStateChange);
                linkWithStateChange.add(new Label("label", new 
PropertyModel<>(count2, "count")));
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/compref/NonBookmarkablePage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/NonBookmarkablePage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/NonBookmarkablePage.java
index 99e7f05..51681ef 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/NonBookmarkablePage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/NonBookmarkablePage.java
@@ -45,6 +45,10 @@ public class NonBookmarkablePage extends WebPage
                // PageLink
                // constructor with the Page instance argument, because we 
already have
                // a page instance at our disposal
-               add(Link.onClick("navigateBackLink", (link) -> 
setResponsePage(referer.getPage())));
+               add(new Link<Void>("navigateBackLink") {
+                       public void onClick() {
+                               setResponsePage(referer.getPage());
+                       }
+               });
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/events/DecoupledAjaxUpdatePage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/events/DecoupledAjaxUpdatePage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/events/DecoupledAjaxUpdatePage.java
index e3485fa..744ac41 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/events/DecoupledAjaxUpdatePage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/events/DecoupledAjaxUpdatePage.java
@@ -56,9 +56,13 @@ public class DecoupledAjaxUpdatePage extends BasePage
                        Integer.class).setRequired(true));
 
                // add button that will broadcast counter update event
-               form.add(AjaxButton.onSubmit("submit", (btn, target) ->
-                       send(getPage(), Broadcast.BREADTH, new 
CounterUpdate(target))
-               ));
+               form.add(new AjaxButton("submit") {
+                       @Override
+                       protected void onSubmit(AjaxRequestTarget target)
+                       {
+                               send(getPage(), Broadcast.BREADTH, new 
CounterUpdate(target));
+                       }
+               });
        }
 
        /**

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/forminput/FormInput.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/forminput/FormInput.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/forminput/FormInput.java
index d7406b7..8e3fb4b 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/forminput/FormInput.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/forminput/FormInput.java
@@ -79,10 +79,12 @@ public class FormInput extends WicketExamplePage
                        add(new LocaleDropDownChoice("localeSelect"));
 
                        // Link to return to default locale
-                       add(Link.onClick("defaultLocaleLink", (link) -> {
-                               WebRequest request = (WebRequest)getRequest();
-                               setLocale(request.getLocale());
-                       }));
+                       add(new Link<Void>("defaultLocaleLink") {
+                               public void onClick() {
+                                       WebRequest request = 
(WebRequest)getRequest();
+                                       setLocale(request.getLocale());
+                               }
+                       });
 
                        add(new 
TextField<String>("stringProperty").setRequired(true).setLabel(
                                new Model<>("String")));
@@ -174,10 +176,13 @@ public class FormInput extends WicketExamplePage
 
                        add(new Button("saveButton"));
 
-                       add(Button.onSubmit("resetButton", (btn) -> {
-                               // just set a new instance of the page
-                               setResponsePage(FormInput.class);
-                       }).setDefaultFormProcessing(false));
+                       add(new Button("resetButton") {
+                               @Override
+                               public void onSubmit()
+                               {
+                                       setResponsePage(FormInput.class);
+                               }
+                       }.setDefaultFormProcessing(false));
                }
 
                @Override

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/guice/HomePage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/guice/HomePage.java 
b/wicket-examples/src/main/java/org/apache/wicket/examples/guice/HomePage.java
index 4dbe998..560e866 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/guice/HomePage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/guice/HomePage.java
@@ -40,7 +40,14 @@ public class HomePage extends WicketExamplePage
         */
        public HomePage()
        {
-               add(Link.onClick("link", (link) -> labelValue = 
service.getHelloWorldText()));
+               add(new Link<Void>("link")
+               {
+                       @Override
+                       public void onClick()
+                       {
+                               labelValue = service.getHelloWorldText();
+                       }
+               });
                add(new Label("message", () -> labelValue));
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Lose.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Lose.java 
b/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Lose.java
index 9df01c1..6db5557 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Lose.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Lose.java
@@ -33,9 +33,14 @@ public class Lose extends HangmanPage
        public Lose()
        {
                add(new Label("currentWord", getGame().getWord().asString()));
-               add(Link.onClick("playAgain", (link) -> {
-                       getGame().newGame();
-                       setResponsePage(Guess.class);
-               }));
+               add(new Link<Void>("playAgain")
+               {
+                       @Override
+                       public void onClick()
+                       {
+                               getGame().newGame();
+                               setResponsePage(Guess.class);
+                       }
+               });
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Win.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Win.java 
b/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Win.java
index 4e9750b..b0349ff 100644
--- a/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Win.java
+++ b/wicket-examples/src/main/java/org/apache/wicket/examples/hangman/Win.java
@@ -34,9 +34,14 @@ public class Win extends HangmanPage
        {
                add(new Label("guessesRemaining", 
Integer.toString(getGame().getGuessesRemaining())));
                add(new Label("currentWord", getGame().getWord().asString()));
-               add(Link.onClick("playAgain", (link) -> {
-                       getGame().newGame();
-                       setResponsePage(Guess.class);
-               }));
+               add(new Link<Void>("playAgain")
+               {
+                       @Override
+                       public void onClick()
+                       {
+                               getGame().newGame();
+                               setResponsePage(Guess.class);
+                       }
+               });
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/kittenCaptcha/HomePage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/kittenCaptcha/HomePage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/kittenCaptcha/HomePage.java
index 55d182a..f20e2c8 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/kittenCaptcha/HomePage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/kittenCaptcha/HomePage.java
@@ -45,26 +45,31 @@ public class HomePage extends WicketExamplePage
                add(captcha = new KittenCaptchaPanel("captcha", new 
Dimension(400, 200)));
 
                // In a real application, you'd check the kittens in a form
-               add(AjaxLink.onClick("checkKittens", (target) -> {
-                       if (!isSpamBot() && captcha.allKittensSelected())
+               add(new AjaxLink<Void>("checkKittens")
+               {
+                       @Override
+                       public void onClick(AjaxRequestTarget target)
                        {
-                               target.appendJavaScript("alert('you win! happy 
kittens!');");
-                       }
-                       else
-                       {
-                               errors++;
-                               if (isSpamBot())
+                               if (!isSpamBot() && 
captcha.allKittensSelected())
                                {
-                                       target.appendJavaScript("alert('spammer 
alert');");
+                                       target.appendJavaScript("alert('you 
win! happy kittens!');");
                                }
                                else
                                {
-                                       target.appendJavaScript("alert('please 
try again');");
+                                       errors++;
+                                       if (isSpamBot())
+                                       {
+                                               
target.appendJavaScript("alert('spammer alert');");
+                                       }
+                                       else
+                                       {
+                                               
target.appendJavaScript("alert('please try again');");
+                                       }
+                                       target.add(captcha);
                                }
-                               target.add(captcha);
+                               captcha.reset();
                        }
-                       captcha.reset();
-               }));
+               });
        }
 
        /**

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java 
b/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
index 06dbbba..95ce343 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/linkomatic/Home.java
@@ -66,17 +66,28 @@ public class Home extends WicketExamplePage
        public Home()
        {
                // Action link counts link clicks
-               final Link<Void> actionLink = Link.onClick("actionLink", (link) 
-> linkClickCount++);
-               actionLink.add(new Label("linkClickCount", new 
PropertyModel<Integer>(this,
-                       "linkClickCount")));
+               final Link<Void> actionLink = new Link<Void>("actionLink")
+               {
+                       public void onClick()
+                       {
+                               linkClickCount++;
+                       }
+               };
+               actionLink
+                       .add(new Label("linkClickCount", new 
PropertyModel<Integer>(this, "linkClickCount")));
                add(actionLink);
 
                // Action link counts link clicks on works with onclick handler
-               final Link<Void> actionOnClickLink = 
Link.onClick("actionOnClickLink", (link) -> onClickLinkClickCount++);
-
+               final Link<Void> actionOnClickLink = new 
Link<Void>("actionOnClickLink")
+               {
+                       public void onClick()
+                       {
+                               onClickLinkClickCount++;
+                       }
+               };
                add(actionOnClickLink);
-               add(new Label("onClickLinkClickCount", new 
PropertyModel<Integer>(this,
-                       "onClickLinkClickCount")));
+               add(new Label("onClickLinkClickCount",
+                       new PropertyModel<Integer>(this, 
"onClickLinkClickCount")));
 
                // Link to Page1 is a simple external page link
                add(new BookmarkablePageLink<>("page1Link", Page1.class));
@@ -84,22 +95,33 @@ public class Home extends WicketExamplePage
                // Link to Page2 is automaticLink, so no code
                // Link to Page3 is an external link which takes a parameter
                BookmarkablePageLink<Void> page3Link = new 
BookmarkablePageLink<>("page3Link", Page3.class);
-               page3Link.getPageParameters()
-                               .add("bookmarkparameter", "3++2 & 5 � >< 
space + �");
+               page3Link.getPageParameters().add("bookmarkparameter", "3++2 & 
5 � >< space + �");
                add(page3Link);
 
                // Link to BookDetails page
-               add(Link.onClick("bookDetailsLink", (link) -> 
setResponsePage(new BookDetails(new Book("The Hobbit")))));
+               add(new Link<Void>("bookDetailsLink")
+               {
+                       public void onClick()
+                       {
+                               setResponsePage(new BookDetails(new Book("The 
Hobbit")));
+                       }
+               });
 
                // Delayed link to BookDetails page
-               add(Link.onClick("bookDetailsLink2", (link) -> 
setResponsePage(new BookDetails(new Book("Inside The Matrix")))));
+               add(new Link<Void>("bookDetailsLink2")
+               {
+                       public void onClick()
+                       {
+                               setResponsePage(new BookDetails(new 
Book("Inside The Matrix")));
+                       }
+               });
 
                // Image map link example
-               Image imageForMap = new Image("imageForMap", new 
PackageResourceReference(Home.class,
-                       "ImageMap.gif"));
+               Image imageForMap = new Image("imageForMap",
+                       new PackageResourceReference(Home.class, 
"ImageMap.gif"));
                add(imageForMap);
-               add(new ClientSideImageMap("imageMap", 
imageForMap).addRectangleArea(
-                       new BookmarkablePageLink<Page1>("page1", Page1.class), 
0, 0, 100, 100)
+               add(new ClientSideImageMap("imageMap", imageForMap)
+                       .addRectangleArea(new 
BookmarkablePageLink<Page1>("page1", Page1.class), 0, 0, 100, 100)
                        .addCircleArea(new BookmarkablePageLink<Page2>("page2", 
Page2.class), 160, 50, 35)
                        .addPolygonArea(new 
BookmarkablePageLink<Page3>("page3", Page3.class), 212, 79, 241, 4,
                                279, 54, 212, 79)
@@ -111,14 +133,15 @@ public class Home extends WicketExamplePage
                add(new BookmarkablePageLink<>("popupLink", 
Popup.class).setPopupSettings(popupSettings));
 
                // Popup example
-               add(new BookmarkablePageLink<>("popupButtonLink", 
Popup.class).setPopupSettings(popupSettings));
+               add(new BookmarkablePageLink<>("popupButtonLink", Popup.class)
+                       .setPopupSettings(popupSettings));
 
                // External site link
                add(new ExternalLink("google", "http://www.google.com";, "Click 
this link to go to Google"));
 
                // And that link as a popup
-               PopupSettings googlePopupSettings = new 
PopupSettings(PopupSettings.RESIZABLE |
-                       PopupSettings.SCROLLBARS).setHeight(500).setWidth(700);
+               PopupSettings googlePopupSettings = new PopupSettings(
+                       PopupSettings.RESIZABLE | 
PopupSettings.SCROLLBARS).setHeight(500).setWidth(700);
                add(new ExternalLink("googlePopup", "http://www.google.com";,
                        "Click this link to go to Google in a 
popup").setPopupSettings(googlePopupSettings));
 
@@ -155,17 +178,36 @@ public class Home extends WicketExamplePage
                add(feedbackPanel);
                add(new RedirectForm("redirectForm"));
 
-               Link<Void> linkToAnchor = Link.onClick("linkToAnchor", (link) 
-> {});
+               Link<Void> linkToAnchor = new Link<Void>("linkToAnchor")
+               {
+                       @Override
+                       public void onClick()
+                       {
+                       }
+               };
                add(linkToAnchor);
-               Link<Void> anotherlinkToAnchor = 
Link.onClick("anotherlinkToAnchor", (link) -> {});
+               Link<Void> anotherlinkToAnchor = new 
Link<Void>("anotherlinkToAnchor")
+               {
+                       @Override
+                       public void onClick()
+                       {
+                       };
+               };
                add(anotherlinkToAnchor);
                Component anchorLabel = new Label("anchorLabel",
                        "this label is here to function as an anchor for a 
link").setOutputMarkupId(true);
                add(anchorLabel);
                linkToAnchor.setAnchor(anchorLabel);
 
-               Link<Void> linkWithLabel = Link.onClick("linkWithLabel", (link) 
-> {});
-               linkWithLabel.setBody(Model.of("A link that provides its body 
with Link.setBody(someModel)"));
+               Link<Void> linkWithLabel = new Link<Void>("linkWithLabel")
+               {
+                       @Override
+                       public void onClick()
+                       {
+                       }
+               };
+               linkWithLabel
+                       .setBody(Model.of("A link that provides its body with 
Link.setBody(someModel)"));
                add(linkWithLabel);
        }
 

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/OIRPage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/OIRPage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/OIRPage.java
index 272c22b..a1f1cef 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/OIRPage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/OIRPage.java
@@ -89,17 +89,23 @@ public class OIRPage extends BasePage
                        {
                                Contact contact = item.getModelObject();
                                item.add(new ActionPanel("actions", 
item.getModel()));
-                               item.add(Link.onClick("toggleHighlite", (link) 
-> {
-                                       HighlitableDataItem<Contact> hitem = 
(HighlitableDataItem<Contact>)item;
-                                       hitem.toggleHighlite();
-                               }));
+                               item.add(new Link<Void>("toggleHighlite")
+                               {
+                                       @Override
+                                       public void onClick()
+                                       {
+                                               HighlitableDataItem<Contact> 
hitem = (HighlitableDataItem<Contact>)item;
+                                               hitem.toggleHighlite();
+                                       }
+                               });
                                item.add(new Label("contactid", 
String.valueOf(contact.getId())));
                                item.add(new Label("firstname", 
contact.getFirstName()));
                                item.add(new Label("lastname", 
contact.getLastName()));
                                item.add(new Label("homephone", 
contact.getHomePhone()));
                                item.add(new Label("cellphone", 
contact.getCellPhone()));
 
-                               item.add(AttributeModifier.replace("class", () 
-> (item.getIndex() % 2 == 1) ? "even" : "odd"));
+                               item.add(AttributeModifier.replace("class",
+                                       () -> (item.getIndex() % 2 == 1) ? 
"even" : "odd"));
                        }
 
                        @Override

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/RefreshingPage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/RefreshingPage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/RefreshingPage.java
index 74474ae..097fb77 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/RefreshingPage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/repeater/RefreshingPage.java
@@ -80,12 +80,19 @@ public class RefreshingPage extends BasePage
                                item.add(new Label("homephone", 
contact.getHomePhone()));
                                item.add(new Label("cellphone", 
contact.getCellPhone()));
 
-                               item.add(AttributeModifier.replace("class", () 
-> (item.getIndex() % 2 == 1) ? "even" : "odd"));
+                               item.add(AttributeModifier.replace("class",
+                                       () -> (item.getIndex() % 2 == 1) ? 
"even" : "odd"));
                        }
                };
 
                add(view);
 
-               add(Link.onClick("refreshLink", (link) -> {}));
+               add(new Link<Void>("refreshLink")
+               {
+                       @Override
+                       public void onClick()
+                       {
+                       }
+               });
        }
 }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatefulPage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatefulPage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatefulPage.java
index 65ab223..e32da37 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatefulPage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/stateless/StatefulPage.java
@@ -47,10 +47,17 @@ public class StatefulPage extends WicketExamplePage
                add(new BookmarkablePageLink<>("indexLink", Index.class));
 
                // Action link counts link clicks
-               final Link actionLink = Link.onClick("actionLink", (link) -> 
linkClickCount++);
+               final Link<Void> actionLink = new Link<Void>("actionLink")
+               {
+                       @Override
+                       public void onClick()
+                       {
+                               linkClickCount++;
+                       }
+               };
                add(actionLink);
-               actionLink.add(new Label("linkClickCount", new 
PropertyModel<Integer>(this,
-                       "linkClickCount")));
+               actionLink
+                       .add(new Label("linkClickCount", new 
PropertyModel<Integer>(this, "linkClickCount")));
 
                final TextField<String> field = new TextField<>("textfield", 
new Model<String>());
 
@@ -59,8 +66,8 @@ public class StatefulPage extends WicketExamplePage
                        @Override
                        protected void onSubmit()
                        {
-                               info("Submitted text: " + 
field.getDefaultModelObject() + ", link click count: " +
-                                       linkClickCount);
+                               info("Submitted text: " + 
field.getDefaultModelObject() + ", link click count: "
+                                       + linkClickCount);
                        }
                };
                statelessForm.add(field);

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/template/border/TemplateBorder.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/template/border/TemplateBorder.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/template/border/TemplateBorder.java
index f674dc0..4cb36e7 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/template/border/TemplateBorder.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/template/border/TemplateBorder.java
@@ -42,16 +42,21 @@ public class TemplateBorder extends Border
        {
                super(id);
                addToBorder(currentBanner = new Banner1("ad"));
-               addToBorder(Link.onClick("changeAdLink", (link) -> {
-                       if (currentBanner.getClass() == Banner1.class)
+               addToBorder(new Link<Void>("changeAdLink")
+               {
+                       @Override
+                       public void onClick()
                        {
-                               
TemplateBorder.this.replaceInBorder(currentBanner = new Banner2("ad"));
+                               if (currentBanner.getClass() == Banner1.class)
+                               {
+                                       
TemplateBorder.this.replaceInBorder(currentBanner = new Banner2("ad"));
+                               }
+                               else
+                               {
+                                       
TemplateBorder.this.replaceInBorder(currentBanner = new Banner1("ad"));
+                               }
                        }
-                       else
-                       {
-                               
TemplateBorder.this.replaceInBorder(currentBanner = new Banner1("ad"));
-                       }
-               }));
+               });
                addToBorder(new BookmarkablePageLink<>("page1Link", 
Page1.class));
                addToBorder(new BookmarkablePageLink<>("page2Link", 
Page2.class));
        }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/template/pageinheritance/TemplatePage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/template/pageinheritance/TemplatePage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/template/pageinheritance/TemplatePage.java
index fc11492..83d6e61 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/template/pageinheritance/TemplatePage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/template/pageinheritance/TemplatePage.java
@@ -46,16 +46,21 @@ public abstract class TemplatePage extends WicketExamplePage
        {
                add(new Label("title", new PropertyModel<>(this, "pageTitle")));
                add(currentBanner = new Banner1("ad"));
-               add(Link.onClick("changeAdLink", (link) -> {
-                       if (currentBanner.getClass() == Banner1.class)
+               add(new Link<Void>("changeAdLink")
+               {
+                       @Override
+                       public void onClick()
                        {
-                               TemplatePage.this.replace(currentBanner = new 
Banner2("ad"));
+                               if (currentBanner.getClass() == Banner1.class)
+                               {
+                                       TemplatePage.this.replace(currentBanner 
= new Banner2("ad"));
+                               }
+                               else
+                               {
+                                       TemplatePage.this.replace(currentBanner 
= new Banner1("ad"));
+                               }
                        }
-                       else
-                       {
-                               TemplatePage.this.replace(currentBanner = new 
Banner1("ad"));
-                       }
-               }));
+               });
                add(new BookmarkablePageLink<>("page1Link", Page1.class));
                add(new BookmarkablePageLink<>("page2Link", Page2.class));
        }

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/tree/AdvancedTreePage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/tree/AdvancedTreePage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/tree/AdvancedTreePage.java
index ace2f2f..b33b075 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/tree/AdvancedTreePage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/tree/AdvancedTreePage.java
@@ -96,9 +96,8 @@ public abstract class AdvancedTreePage extends 
AbstractTreePage
                });
                form.add(tree);
 
-               form.add(new DropDownChoice<Content>("content",
-                       new PropertyModel<>(this, "content"), initContents(),
-                       new ChoiceRenderer<>("class.simpleName"))
+               form.add(new DropDownChoice<Content>("content", new 
PropertyModel<>(this, "content"),
+                       initContents(), new 
ChoiceRenderer<>("class.simpleName"))
                {
                        private static final long serialVersionUID = 1L;
 
@@ -121,11 +120,29 @@ public abstract class AdvancedTreePage extends 
AbstractTreePage
                        }
                });
 
-               form.add(Link.onClick("expandAll", (link) -> 
FooExpansion.get().expandAll()));
+               form.add(new Link<Void>("expandAll")
+               {
+                       public void onClick()
+                       {
+                               FooExpansion.get().expandAll();
+                       }
+               });
 
-               form.add(Link.onClick("collapseAll", (link) -> 
FooExpansion.get().collapseAll()));
+               form.add(new Link<Void>("collapseAll")
+               {
+                       public void onClick()
+                       {
+                               FooExpansion.get().collapseAll();
+                       }
+               });
 
-               form.add(Button.onSubmit("submit", (btn) -> {}));
+               form.add(new Button("submit")
+               {
+                       @Override
+                       public void onSubmit()
+                       {
+                       }
+               });
        }
 
        protected abstract AbstractTree<Foo> createTree(FooProvider provider, 
IModel<Set<Foo>> state);

http://git-wip-us.apache.org/repos/asf/wicket/blob/7a72a623/wicket-examples/src/main/java/org/apache/wicket/examples/upload/UploadPage.java
----------------------------------------------------------------------
diff --git 
a/wicket-examples/src/main/java/org/apache/wicket/examples/upload/UploadPage.java
 
b/wicket-examples/src/main/java/org/apache/wicket/examples/upload/UploadPage.java
index d600517..8ef9177 100644
--- 
a/wicket-examples/src/main/java/org/apache/wicket/examples/upload/UploadPage.java
+++ 
b/wicket-examples/src/main/java/org/apache/wicket/examples/upload/UploadPage.java
@@ -72,10 +72,15 @@ public class UploadPage extends WicketExamplePage
                {
                        final File file = listItem.getModelObject();
                        listItem.add(new Label("file", file.getName()));
-                       listItem.add(Link.onClick("delete", (link) -> {
-                               Files.remove(file);
-                               info("Deleted " + file);
-                       }));
+                       listItem.add(new Link<Void>("delete")
+                       {
+                               @Override
+                               public void onClick()
+                               {
+                                       Files.remove(file);
+                                       info("Deleted " + file);
+                               }
+                       });
                }
        }
 

Reply via email to