Pro: session is a broader scope, so query will happen less often
Con: session is serialized so cached value needs to be serializable or
transient/detached
Con: session is accessed by multiple threads simultaneously, so you need to
handle synchronization

Your call. :)

On Tue, Jul 24, 2012 at 12:46 PM, Brown, Berlin [GCG-PFS] <
berlin.br...@primerica.com> wrote:

> Thanks,
> I just found some code that uses 'session' as opposed to the request
> cycle for caching.  Does that matter?  Or is the requestcycle preferred?
>
> getSession().setMetaData
>
> -----Original Message-----
> From: Igor Vaynberg [mailto:igor.vaynb...@gmail.com]
> Sent: Tuesday, July 24, 2012 3:20 PM
> To: users@wicket.apache.org
> Subject: Re: Really slow code
>
> static class MetaDataKey<MyData> MYDATA=new MetaDateKey<MyData>() {};
>
> ^ thats the type-safe singleton key you use to acces the metadata store
>
> checking for metadata
>
> MyData data=RequestCycle.get().getMetaData(MYDATA);
>
> ^ null means none
>
> writing metadata
>
> RequestCycle.get().setMetaData(MYDATA, data);
>
> -igor
>
>
> On Tue, Jul 24, 2012 at 9:26 PM, Brown, Berlin [GCG-PFS]
> <berlin.br...@primerica.com> wrote:
> > You have any more specifics or an example?  Is there a metadata class?
> >
> > -----Original Message-----
> > From: Igor Vaynberg [mailto:igor.vaynb...@gmail.com]
> > Sent: Tuesday, July 24, 2012 1:34 PM
> > To: users@wicket.apache.org
> > Subject: Re: Really slow code
> >
> > cache it in request cycle's metadata
> >
> > -igor
> >
> > On Tue, Jul 24, 2012 at 8:18 PM, Brown, Berlin [GCG-PFS]
> > <berlin.br...@primerica.com> wrote:
> >> With code like this, I have a model and within the 'load' method, I
> >> am
> >
> >> making a slower call that I don't want to call to get the data again.
> >>
> >>
> >>
> >> I may need the result 'bean' for another part of the UI on that
> >> particular page and I don't want to make that call again.  How can I
> >> do this?
> >>
> >>
> >>
> >> 1.       OnBeforeRender, get a reference to the component and return
> > the
> >> defaultmodelobject?
> >>
> >> 2.       Use a field reference in my parent component to the result
> > set?
> >>
> >>
> >>
> >> final LoadableDetachableModel<Bean> modelReqList = new
> >> LoadableDetachableModel<Bean>() {
> >>
> >>     public Bean load() {
> >>
> >>                               return
> >> runReallySlowCodeOnlyWantToCallOnce();
> >>
> >>                         }
> >>
> >> };
> >>
> >>
> >>
> >> -----
> >>
> >>
> >>
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> > For additional commands, e-mail: users-h...@wicket.apache.org
> >
> >
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> > For additional commands, e-mail: users-h...@wicket.apache.org
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
> For additional commands, e-mail: users-h...@wicket.apache.org
>
>

Reply via email to