Hi all,

It would ne very nice if the method names for the lambdas are name similar, 
this way I could add a metric to collect data in a more general way for 
wicket-metrics.

WDYT?

Example:

execution(* org.apache.wicket.*Supplier(..))

- First star is the modifier
- Second star is the wildcard for the lambda class names
- .. Any args

kind regards

Tobias

> Am 14.03.2016 um 13:23 schrieb Sven Meier <[email protected]>:
> 
> Hi Martin,
> 
> speaking of someting to nuke - insteaf of:
> 
>        IModel<String> personNameModel = new 
> SupplierCachingModel<>(person::getName);
> 
> Why not simply?
> 
>        IModel<String> personNameModel = 
> Model.loadableDetachable(person::getName);
> 
> I didn't like the name "Supplier*Caching*Model" anyway.
> 
> Regards
> Sven
> 
> 
> 
>> On 14.03.2016 12:36, Martin Grigorov wrote:
>> Yes!
>> 
>> -               IModel<String> personNameModel = new
>> SupplierModel<>(person::getName);
>> +               IModel<String> personNameModel = person::getName;
>> 
>> Definitely makes sense to make it shorter!
>> 
>> I'll nuke it now!
>> 
>> 
>> Martin Grigorov
>> Wicket Training and Consulting
>> https://twitter.com/mtgrigorov
>> 
>>> On Mon, Mar 14, 2016 at 10:55 AM, Sven Meier <[email protected]> wrote:
>>> 
>>> Hi,
>>> 
>>> IModel being a functional interface now, what's the use of SupplierModel ?
>>> IMHO we can get rid of it.
>>> 
>>> Regards
>>> Sven
>>> 
>>> 
>>> 
>>>> On 12.03.2016 23:39, Tobias Soloschenko wrote:
>>>> 
>>>> Yep - I am very happy about it, too - cool features for wicket 8 :-)
>>>> 
>>>> Great work all!
>>>> 
>>>> kind regards
>>>> 
>>>> Tobias
>>>> 
>>>>> Am 12.03.16 um 23:38 schrieb Sven Meier:
>>>>> 
>>>>> As a bonus IModel is a @FunctionalInterface now and one can do things
>>>>>> like:
>>>>>> 
>>>>>> new Link<String>("", () -> "abc") {
>>>>>>   @Override
>>>>>>   public void onClick()
>>>>>>   {
>>>>>>      // ...
>>>>>>   }
>>>>>> };
>>>>>> 
>>>>> Seems we're getting a grip on Wicket+lambdas finally :)
>>>>> 
>>>>> Thanks
>>>>> Sven
>>>>> 
>>>>> 
>>>>>> On 12.03.2016 23:13, Martin Grigorov wrote:
>>>>>> 
>>>>>> On Sat, Mar 12, 2016 at 11:01 PM, Martin Grigorov <[email protected]
>>>>>> wrote:
>>>>>> 
>>>>>>> On Sat, Mar 12, 2016 at 7:48 PM, Sven Meier <[email protected]> wrote:
>>>>>>> Hi,
>>>>>>>> 1)
>>>>>>>> we've been twiddling with read-only models for some time now, and
>>>>>>>> IIRC it
>>>>>>>> never quite worked out.
>>>>>>>> I don't see much benefit in IReadOnlyModel as it is proposed now -
>>>>>>>> perhaps I'm missing the point though.
>>>>>>>> 
>>>>>>>> How about adding another default to IModel:
>>>>>>>> 
>>>>>>>>      default void setObject(final T object) {
>>>>>>>>          throw new UnsupportedOperationException();
>>>>>>>>      }
>>>>>>>> 
>>>>>>>> This way we can get rid of AbstractReadOnlyModel too :P
>>>>>>>> 
>>>>>>>> A minor thing that bothers me here is that currently AROM#setObject()
>>>>>>> is
>>>>>>> final, so subclasses are effectively read only too.
>>>>>>> By moving this method to IModel we cannot make any guarantees.
>>>>>>> But I guess it will always be used as an anonymous inner class, as
>>>>>>> AROM is
>>>>>>> used now. If someone wants to have children then (s)he will have to
>>>>>>> create
>>>>>>> a custom class and there (s)he can make it 'final'.
>>>>>>> Let's do it!
>>>>>>> 
>>>>>>> As a bonus IModel is a @FunctionalInterface now and one can do things
>>>>>> like:
>>>>>> 
>>>>>> new Link<String>("", () -> "abc") {
>>>>>>     @Override
>>>>>>     public void onClick()
>>>>>>     {
>>>>>>        // ...
>>>>>>     }
>>>>>> };
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>> 2)
>>>>>>>> I don't see a need for this.
>>>>>>>> 
>>>>>>>> Have fun
>>>>>>>> Sven
>>>>>>>> 
>>>>>>>> 
>>>>>>>> how about adding a
>>>>>>>> 
>>>>>>>> 
>>>>>>>> On 11.03.2016 22:54, Martin Grigorov wrote:
>>>>>>>> 
>>>>>>>> Hi,
>>>>>>>>> At "lambdas" [1] branch there are two more features:
>>>>>>>>> 
>>>>>>>>> 1) IReadOnlyModel by Michael Mossman
>>>>>>>>> 
>>>>>>>>> At the moment there are AbstractReadOnlyModel and SupplierModel
>>>>>>>>> (extends
>>>>>>>>> from AROM).
>>>>>>>>> Initially while MM suggested IROM I thought it will be a parent
>>>>>>>>> interface
>>>>>>>>> of IModel but it is the opposite - IROM extends from IModel.
>>>>>>>>> I don't see need of IROM. The classes look enough to me.
>>>>>>>>> 
>>>>>>>>> 2) stream based iteration of container's children by Andrea Del Bene
>>>>>>>>> I have said my opinion before - the visitor approach is faster than
>>>>>>>>> the
>>>>>>>>> stream based one.
>>>>>>>>> In addition we have to remove the deprecated
>>>>>>>>> org.apache.wicket.util.iterator.AbstractHierarchyIterator and its
>>>>>>>>> related
>>>>>>>>> classes because it fails with StackoverflowError when used in a page
>>>>>>>>> with
>>>>>>>>> bigger component tree.
>>>>>>>>> So I don't see a reason for this feature.
>>>>>>>>> 
>>>>>>>>> Your option on them ?
>>>>>>>>> 
>>>>>>>>> 1. https://github.com/apache/wicket/compare/lambdas
>>>>>>>>> 
>>>>>>>>> Martin Grigorov
>>>>>>>>> Wicket Training and Consulting
>>>>>>>>> https://twitter.com/mtgrigorov
>>>>>>>>> 
>>>>>>>>> 
>>>>>>>>> 
> 

Reply via email to