[ 
https://issues.apache.org/jira/browse/WICKET-6550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16444750#comment-16444750
 ] 

ASF GitHub Bot commented on WICKET-6550:
----------------------------------------

Github user Jezza commented on a diff in the pull request:

    https://github.com/apache/wicket/pull/276#discussion_r182876774
  
    --- Diff: wicket-core/src/main/java/org/apache/wicket/Application.java ---
    @@ -518,9 +519,13 @@ public void logResponseTarget(final IRequestHandler 
requestTarget)
         * @throws IllegalArgumentException
         * @see MetaDataKey
         */
    -   public final synchronized <T> Application setMetaData(final 
MetaDataKey<T> key, final Object object)
    +   @Override
    +   public final <T> Application setMetaData(final MetaDataKey<T> key, 
final T object)
    --- End diff --
    
    I had to change the signature of this method.
    Ideally, it should have been that way anyway.
    Everything still compiles, which means we weren't putting values in keys 
that weren't expecting the value.
    
    I fear that some users might be doing exactly that though, so this whole 
IMetadataContext might have to be put off for a bigger version.


> Unify all metadata capable objects.
> -----------------------------------
>
>                 Key: WICKET-6550
>                 URL: https://issues.apache.org/jira/browse/WICKET-6550
>             Project: Wicket
>          Issue Type: Improvement
>          Components: wicket
>            Reporter: Jezza
>            Priority: Minor
>         Attachments: Test.java, mock.txt
>
>
> Application, Session, RequestCycle, and Component all have #setMetadata and 
> #getMetadata methods, but lack some super object to unify them all.
> These leads to annoying complex code if you wish to implement some basic 
> functionality.
> Such as a computeIfAbsent, which needs to be implemented 4 times.
> I propose that we unify them all with one interface.
> I'veĀ attached a mock idea that would solve it, and I'll work on a prototype 
> and submit a PR so anyone can take a look.
> I'll add a comment here with the PR number.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to