You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@wicket.apache.org by Martin Grigorov <mg...@apache.org> on 2016/07/22 07:34:58 UTC

Re: wicket git commit: WICKET-5866 added #createConverter() without generics parameter for convenience

Hi Sven,

I think the overrides of #createConverter() don't need to be 'public'.
'protected' is better.

Martin Grigorov
Wicket Training and Consulting
https://twitter.com/mtgrigorov

On Thu, Jul 21, 2016 at 10:22 PM, <sv...@apache.org> wrote:

> Repository: wicket
> Updated Branches:
>   refs/heads/wicket-7.x b13979ddf -> af3785aab
>
>
> WICKET-5866 added #createConverter() without generics parameter for
> convenience
>
>
> Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
> Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/af3785aa
> Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/af3785aa
> Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/af3785aa
>
> Branch: refs/heads/wicket-7.x
> Commit: af3785aabf1a4753fc266d20e969b75cfe5505cb
> Parents: b13979d
> Author: Sven Meier <sv...@apache.org>
> Authored: Thu Jul 21 22:08:33 2016 +0200
> Committer: Sven Meier <sv...@apache.org>
> Committed: Thu Jul 21 22:09:05 2016 +0200
>
> ----------------------------------------------------------------------
>  .../main/java/org/apache/wicket/Component.java  | 29 ++++++++++++++++----
>  .../wicket/markup/html/form/CheckBox.java       | 11 ++------
>  ...tComponentConvertEmptyStringsToNullTest.java |  5 ++--
>  .../datetime/markup/html/basic/DateLabel.java   | 13 +++------
>  .../markup/html/form/DateTextField.java         | 12 +++-----
>  .../extensions/yui/calendar/DateTimeField.java  | 10 ++-----
>  .../wicket/examples/forminput/FormInput.java    | 17 ++++--------
>  .../markup/html/form/DateTextField.java         | 10 ++-----
>  8 files changed, 48 insertions(+), 59 deletions(-)
> ----------------------------------------------------------------------
>
>
>
> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-core/src/main/java/org/apache/wicket/Component.java
> ----------------------------------------------------------------------
> diff --git a/wicket-core/src/main/java/org/apache/wicket/Component.java
> b/wicket-core/src/main/java/org/apache/wicket/Component.java
> index ff77446..0fc5252 100644
> --- a/wicket-core/src/main/java/org/apache/wicket/Component.java
> +++ b/wicket-core/src/main/java/org/apache/wicket/Component.java
> @@ -1360,20 +1360,39 @@ public abstract class Component
>         }
>
>         /**
> -        * Gets the converter that should be used by this component.
> -        *
> +        * Get the converter that should be used by this component,
> delegates to
> +        * {@link #createConverter(Class)} and then to the application's
> +        * {@link IConverterLocator}.
> +        *
>          * @param type
>          *            The type to convert to
> -        *
> +        *
>          * @return The converter that should be used by this component
>          */
> +       @SuppressWarnings("unchecked")
>         @Override
> -       public <C> IConverter<C> getConverter(Class<C> type)
> -       {
> +       public <C> IConverter<C> getConverter(Class<C> type) {
> +               IConverter<?> converter = createConverter(type);
> +               if (converter != null) {
> +                       return (IConverter<C>) converter;
> +               }
>                 return
> getApplication().getConverterLocator().getConverter(type);
>         }
>
>         /**
> +        * Factory method for converters to be used by this component,
> +        * returns {@code null} by default.
> +        *
> +        * @param type
> +        *            The type to convert to
> +        *
> +        * @return a converter to be used by this component
> +        */
> +       protected IConverter<?> createConverter(Class<?> type) {
> +               return null;
> +       }
> +
> +       /**
>          * Gets whether model strings should be escaped.
>          *
>          * @return Returns whether model strings should be escaped
>
>
> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
> ----------------------------------------------------------------------
> diff --git
> a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
> b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
> index 310ccc9..47ee143 100644
> ---
> a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
> +++
> b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
> @@ -191,18 +191,13 @@ public class CheckBox extends FormComponent<Boolean>
> implements IOnChangeListene
>          * @see org.apache.wicket.Component#getConverter(java.lang.Class)
>          */
>         @Override
> -       public final <C> IConverter<C> getConverter(Class<C> type)
> +       public IConverter<?> createConverter(Class<?> type)
>         {
>                 if (Boolean.class.equals(type))
>                 {
> -                       @SuppressWarnings("unchecked")
> -                       IConverter<C> converter =
> (IConverter<C>)CheckBoxConverter.INSTANCE;
> -                       return converter;
> -               }
> -               else
> -               {
> -                       return super.getConverter(type);
> +                       return CheckBoxConverter.INSTANCE;
>                 }
> +               return null;
>         }
>
>         /**
>
>
> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
> ----------------------------------------------------------------------
> diff --git
> a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
> b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
> index cef3a4a..0603dbc 100644
> ---
> a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
> +++
> b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
> @@ -74,10 +74,9 @@ public class
> AbstractTextComponentConvertEmptyStringsToNullTest extends WicketTe
>                                 private static final long serialVersionUID
> = 1L;
>
>                                 @Override
> -                               @SuppressWarnings("unchecked")
> -                               public <C> IConverter<C>
> getConverter(Class<C> type)
> +                               public IConverter<?>
> createConverter(Class<?> type)
>                                 {
> -                                       return (IConverter<C>)new
> StringArrayConverter();
> +                                       return new StringArrayConverter();
>                                 }
>                         }.setConvertEmptyInputStringToNull(false));
>                 }
>
>
> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
> ----------------------------------------------------------------------
> diff --git
> a/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
> b/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
> index 6f5610b..c9c50a8 100644
> ---
> a/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
> +++
> b/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
> @@ -257,18 +257,13 @@ public class DateLabel extends Label implements
> IGenericComponent<Date>
>          * Returns the specialized converter.
>          */
>         @Override
> -       public <C> IConverter<C> getConverter(Class<C> clazz)
> +       public IConverter<?> createConverter(Class<?> type)
>         {
> -               if (Date.class.isAssignableFrom(clazz))
> +               if (Date.class.isAssignableFrom(type))
>                 {
> -                       @SuppressWarnings("unchecked")
> -                       IConverter<C> result = (IConverter<C>)converter;
> -                       return result;
> -               }
> -               else
> -               {
> -                       return super.getConverter(clazz);
> +                       return converter;
>                 }
> +               return null;
>         }
>
>         /**
>
>
> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
> ----------------------------------------------------------------------
> diff --git
> a/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
> b/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
> index c2ce854..8009813 100644
> ---
> a/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
> +++
> b/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
> @@ -220,20 +220,16 @@ public class DateTextField extends TextField<Date>
> implements ITextFormatProvide
>
>         /**
>          * @return The specialized converter.
> -        * @see org.apache.wicket.Component#getConverter(java.lang.Class)
> +        * @see
> org.apache.wicket.Component#createConverter(java.lang.Class)
>          */
> -       @SuppressWarnings("unchecked")
>         @Override
> -       public <C> IConverter<C> getConverter(Class<C> clazz)
> +       public IConverter<?> createConverter(Class<?> clazz)
>         {
>                 if (Date.class.isAssignableFrom(clazz))
>                 {
> -                       return (IConverter<C>)converter;
> -               }
> -               else
> -               {
> -                       return super.getConverter(clazz);
> +                       return converter;
>                 }
> +               return null;
>         }
>
>         /**
>
>
> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
> ----------------------------------------------------------------------
> diff --git
> a/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
> b/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
> index dfc00b4..746c5fd 100644
> ---
> a/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
> +++
> b/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
> @@ -226,18 +226,14 @@ public class DateTimeField extends
> FormComponentPanel<Date>
>                 {
>                         private static final long serialVersionUID = 1L;
>
> -                       @SuppressWarnings("unchecked")
>                         @Override
> -                       public <C> IConverter<C> getConverter(Class<C>
> type)
> +                       public IConverter<?> createConverter(Class<?> type)
>                         {
>                                 if (Integer.class.isAssignableFrom(type))
>                                 {
> -                                       return
> (IConverter<C>)MINUTES_CONVERTER;
> -                               }
> -                               else
> -                               {
> -                                       return super.getConverter(type);
> +                                       return MINUTES_CONVERTER;
>                                 }
> +                               return null;
>                         }
>                 };
>                 minutesField.add(new RangeValidator<>(0, 59));
>
>
> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/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 9cbc294..d6dad11 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
> @@ -148,18 +148,14 @@ public class FormInput extends WicketExamplePage
>                         // TextField using a custom converter.
>                         add(new TextField<URL>("urlProperty", URL.class)
>                         {
> -                               @SuppressWarnings("unchecked")
>                                 @Override
> -                               public <C> IConverter<C>
> getConverter(final Class<C> type)
> +                               public IConverter<?>
> createConverter(Class<?> type)
>                                 {
>                                         if
> (URL.class.isAssignableFrom(type))
>                                         {
> -                                               return
> (IConverter<C>)URLConverter.INSTANCE;
> -                                       }
> -                                       else
> -                                       {
> -                                               return
> super.getConverter(type);
> +                                               return
> URLConverter.INSTANCE;
>                                         }
> +                                       return null;
>                                 }
>                         });
>
> @@ -168,17 +164,14 @@ public class FormInput extends WicketExamplePage
>                         {
>
>                                 @Override
> -                               public <C> IConverter<C>
> getConverter(final Class<C> type)
> +                               public IConverter<?>
> createConverter(Class<?> type)
>                                 {
>                                         if
> (UsPhoneNumber.class.isAssignableFrom(type))
>                                         {
>                                                 // US telephone number mask
>                                                 return new
> MaskConverter<>("(###) ###-####", UsPhoneNumber.class);
>                                         }
> -                                       else
> -                                       {
> -                                               return
> super.getConverter(type);
> -                                       }
> +                                       return null;
>                                 }
>                         });
>
>
>
> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
> ----------------------------------------------------------------------
> diff --git
> a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
> b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
> index 762a5c7..23fea2b 100644
> ---
> a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
> +++
> b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
> @@ -147,18 +147,14 @@ public class DateTextField extends TextField<Date>
> implements ITextFormatProvide
>          *
>          * @see org.apache.wicket.markup.html.form.TextField
>          */
> -       @SuppressWarnings("unchecked")
>         @Override
> -       public <C> IConverter<C> getConverter(final Class<C> type)
> +       public IConverter<?> createConverter(Class<?> type)
>         {
>                 if (Date.class.isAssignableFrom(type))
>                 {
> -                       return (IConverter<C>)converter;
> -               }
> -               else
> -               {
> -                       return super.getConverter(type);
> +                       return converter;
>                 }
> +               return null;
>         }
>
>         /**
>
>

Re: wicket git commit: WICKET-5866 added #createConverter() without generics parameter for convenience

Posted by Sven Meier <sv...@meiers.net>.
Yes, you're right.


Thanks

Sven


On 22.07.2016 09:34, Martin Grigorov wrote:
> Hi Sven,
>
> I think the overrides of #createConverter() don't need to be 'public'.
> 'protected' is better.
>
> Martin Grigorov
> Wicket Training and Consulting
> https://twitter.com/mtgrigorov
>
> On Thu, Jul 21, 2016 at 10:22 PM, <sv...@apache.org> wrote:
>
>> Repository: wicket
>> Updated Branches:
>>    refs/heads/wicket-7.x b13979ddf -> af3785aab
>>
>>
>> WICKET-5866 added #createConverter() without generics parameter for
>> convenience
>>
>>
>> Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
>> Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/af3785aa
>> Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/af3785aa
>> Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/af3785aa
>>
>> Branch: refs/heads/wicket-7.x
>> Commit: af3785aabf1a4753fc266d20e969b75cfe5505cb
>> Parents: b13979d
>> Author: Sven Meier <sv...@apache.org>
>> Authored: Thu Jul 21 22:08:33 2016 +0200
>> Committer: Sven Meier <sv...@apache.org>
>> Committed: Thu Jul 21 22:09:05 2016 +0200
>>
>> ----------------------------------------------------------------------
>>   .../main/java/org/apache/wicket/Component.java  | 29 ++++++++++++++++----
>>   .../wicket/markup/html/form/CheckBox.java       | 11 ++------
>>   ...tComponentConvertEmptyStringsToNullTest.java |  5 ++--
>>   .../datetime/markup/html/basic/DateLabel.java   | 13 +++------
>>   .../markup/html/form/DateTextField.java         | 12 +++-----
>>   .../extensions/yui/calendar/DateTimeField.java  | 10 ++-----
>>   .../wicket/examples/forminput/FormInput.java    | 17 ++++--------
>>   .../markup/html/form/DateTextField.java         | 10 ++-----
>>   8 files changed, 48 insertions(+), 59 deletions(-)
>> ----------------------------------------------------------------------
>>
>>
>>
>> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-core/src/main/java/org/apache/wicket/Component.java
>> ----------------------------------------------------------------------
>> diff --git a/wicket-core/src/main/java/org/apache/wicket/Component.java
>> b/wicket-core/src/main/java/org/apache/wicket/Component.java
>> index ff77446..0fc5252 100644
>> --- a/wicket-core/src/main/java/org/apache/wicket/Component.java
>> +++ b/wicket-core/src/main/java/org/apache/wicket/Component.java
>> @@ -1360,20 +1360,39 @@ public abstract class Component
>>          }
>>
>>          /**
>> -        * Gets the converter that should be used by this component.
>> -        *
>> +        * Get the converter that should be used by this component,
>> delegates to
>> +        * {@link #createConverter(Class)} and then to the application's
>> +        * {@link IConverterLocator}.
>> +        *
>>           * @param type
>>           *            The type to convert to
>> -        *
>> +        *
>>           * @return The converter that should be used by this component
>>           */
>> +       @SuppressWarnings("unchecked")
>>          @Override
>> -       public <C> IConverter<C> getConverter(Class<C> type)
>> -       {
>> +       public <C> IConverter<C> getConverter(Class<C> type) {
>> +               IConverter<?> converter = createConverter(type);
>> +               if (converter != null) {
>> +                       return (IConverter<C>) converter;
>> +               }
>>                  return
>> getApplication().getConverterLocator().getConverter(type);
>>          }
>>
>>          /**
>> +        * Factory method for converters to be used by this component,
>> +        * returns {@code null} by default.
>> +        *
>> +        * @param type
>> +        *            The type to convert to
>> +        *
>> +        * @return a converter to be used by this component
>> +        */
>> +       protected IConverter<?> createConverter(Class<?> type) {
>> +               return null;
>> +       }
>> +
>> +       /**
>>           * Gets whether model strings should be escaped.
>>           *
>>           * @return Returns whether model strings should be escaped
>>
>>
>> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
>> b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
>> index 310ccc9..47ee143 100644
>> ---
>> a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
>> +++
>> b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java
>> @@ -191,18 +191,13 @@ public class CheckBox extends FormComponent<Boolean>
>> implements IOnChangeListene
>>           * @see org.apache.wicket.Component#getConverter(java.lang.Class)
>>           */
>>          @Override
>> -       public final <C> IConverter<C> getConverter(Class<C> type)
>> +       public IConverter<?> createConverter(Class<?> type)
>>          {
>>                  if (Boolean.class.equals(type))
>>                  {
>> -                       @SuppressWarnings("unchecked")
>> -                       IConverter<C> converter =
>> (IConverter<C>)CheckBoxConverter.INSTANCE;
>> -                       return converter;
>> -               }
>> -               else
>> -               {
>> -                       return super.getConverter(type);
>> +                       return CheckBoxConverter.INSTANCE;
>>                  }
>> +               return null;
>>          }
>>
>>          /**
>>
>>
>> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
>> b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
>> index cef3a4a..0603dbc 100644
>> ---
>> a/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
>> +++
>> b/wicket-core/src/test/java/org/apache/wicket/markup/html/form/AbstractTextComponentConvertEmptyStringsToNullTest.java
>> @@ -74,10 +74,9 @@ public class
>> AbstractTextComponentConvertEmptyStringsToNullTest extends WicketTe
>>                                  private static final long serialVersionUID
>> = 1L;
>>
>>                                  @Override
>> -                               @SuppressWarnings("unchecked")
>> -                               public <C> IConverter<C>
>> getConverter(Class<C> type)
>> +                               public IConverter<?>
>> createConverter(Class<?> type)
>>                                  {
>> -                                       return (IConverter<C>)new
>> StringArrayConverter();
>> +                                       return new StringArrayConverter();
>>                                  }
>>                          }.setConvertEmptyInputStringToNull(false));
>>                  }
>>
>>
>> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
>> b/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
>> index 6f5610b..c9c50a8 100644
>> ---
>> a/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
>> +++
>> b/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/basic/DateLabel.java
>> @@ -257,18 +257,13 @@ public class DateLabel extends Label implements
>> IGenericComponent<Date>
>>           * Returns the specialized converter.
>>           */
>>          @Override
>> -       public <C> IConverter<C> getConverter(Class<C> clazz)
>> +       public IConverter<?> createConverter(Class<?> type)
>>          {
>> -               if (Date.class.isAssignableFrom(clazz))
>> +               if (Date.class.isAssignableFrom(type))
>>                  {
>> -                       @SuppressWarnings("unchecked")
>> -                       IConverter<C> result = (IConverter<C>)converter;
>> -                       return result;
>> -               }
>> -               else
>> -               {
>> -                       return super.getConverter(clazz);
>> +                       return converter;
>>                  }
>> +               return null;
>>          }
>>
>>          /**
>>
>>
>> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
>> b/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
>> index c2ce854..8009813 100644
>> ---
>> a/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
>> +++
>> b/wicket-datetime/src/main/java/org/apache/wicket/datetime/markup/html/form/DateTextField.java
>> @@ -220,20 +220,16 @@ public class DateTextField extends TextField<Date>
>> implements ITextFormatProvide
>>
>>          /**
>>           * @return The specialized converter.
>> -        * @see org.apache.wicket.Component#getConverter(java.lang.Class)
>> +        * @see
>> org.apache.wicket.Component#createConverter(java.lang.Class)
>>           */
>> -       @SuppressWarnings("unchecked")
>>          @Override
>> -       public <C> IConverter<C> getConverter(Class<C> clazz)
>> +       public IConverter<?> createConverter(Class<?> clazz)
>>          {
>>                  if (Date.class.isAssignableFrom(clazz))
>>                  {
>> -                       return (IConverter<C>)converter;
>> -               }
>> -               else
>> -               {
>> -                       return super.getConverter(clazz);
>> +                       return converter;
>>                  }
>> +               return null;
>>          }
>>
>>          /**
>>
>>
>> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
>> b/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
>> index dfc00b4..746c5fd 100644
>> ---
>> a/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
>> +++
>> b/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DateTimeField.java
>> @@ -226,18 +226,14 @@ public class DateTimeField extends
>> FormComponentPanel<Date>
>>                  {
>>                          private static final long serialVersionUID = 1L;
>>
>> -                       @SuppressWarnings("unchecked")
>>                          @Override
>> -                       public <C> IConverter<C> getConverter(Class<C>
>> type)
>> +                       public IConverter<?> createConverter(Class<?> type)
>>                          {
>>                                  if (Integer.class.isAssignableFrom(type))
>>                                  {
>> -                                       return
>> (IConverter<C>)MINUTES_CONVERTER;
>> -                               }
>> -                               else
>> -                               {
>> -                                       return super.getConverter(type);
>> +                                       return MINUTES_CONVERTER;
>>                                  }
>> +                               return null;
>>                          }
>>                  };
>>                  minutesField.add(new RangeValidator<>(0, 59));
>>
>>
>> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/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 9cbc294..d6dad11 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
>> @@ -148,18 +148,14 @@ public class FormInput extends WicketExamplePage
>>                          // TextField using a custom converter.
>>                          add(new TextField<URL>("urlProperty", URL.class)
>>                          {
>> -                               @SuppressWarnings("unchecked")
>>                                  @Override
>> -                               public <C> IConverter<C>
>> getConverter(final Class<C> type)
>> +                               public IConverter<?>
>> createConverter(Class<?> type)
>>                                  {
>>                                          if
>> (URL.class.isAssignableFrom(type))
>>                                          {
>> -                                               return
>> (IConverter<C>)URLConverter.INSTANCE;
>> -                                       }
>> -                                       else
>> -                                       {
>> -                                               return
>> super.getConverter(type);
>> +                                               return
>> URLConverter.INSTANCE;
>>                                          }
>> +                                       return null;
>>                                  }
>>                          });
>>
>> @@ -168,17 +164,14 @@ public class FormInput extends WicketExamplePage
>>                          {
>>
>>                                  @Override
>> -                               public <C> IConverter<C>
>> getConverter(final Class<C> type)
>> +                               public IConverter<?>
>> createConverter(Class<?> type)
>>                                  {
>>                                          if
>> (UsPhoneNumber.class.isAssignableFrom(type))
>>                                          {
>>                                                  // US telephone number mask
>>                                                  return new
>> MaskConverter<>("(###) ###-####", UsPhoneNumber.class);
>>                                          }
>> -                                       else
>> -                                       {
>> -                                               return
>> super.getConverter(type);
>> -                                       }
>> +                                       return null;
>>                                  }
>>                          });
>>
>>
>>
>> http://git-wip-us.apache.org/repos/asf/wicket/blob/af3785aa/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
>> ----------------------------------------------------------------------
>> diff --git
>> a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
>> b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
>> index 762a5c7..23fea2b 100644
>> ---
>> a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
>> +++
>> b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/DateTextField.java
>> @@ -147,18 +147,14 @@ public class DateTextField extends TextField<Date>
>> implements ITextFormatProvide
>>           *
>>           * @see org.apache.wicket.markup.html.form.TextField
>>           */
>> -       @SuppressWarnings("unchecked")
>>          @Override
>> -       public <C> IConverter<C> getConverter(final Class<C> type)
>> +       public IConverter<?> createConverter(Class<?> type)
>>          {
>>                  if (Date.class.isAssignableFrom(type))
>>                  {
>> -                       return (IConverter<C>)converter;
>> -               }
>> -               else
>> -               {
>> -                       return super.getConverter(type);
>> +                       return converter;
>>                  }
>> +               return null;
>>          }
>>
>>          /**
>>
>>