a lot of custom components extends essentialslistcomponent. same standard hst component has lot of useful parameters such pagesize
, sortorder
(input through console) have handle individually in classes. process tedious , prone human error.
how can apply standard parameters @ once hst query in custom hst component? example, following lovely:
@override protected <t extends essentialsdocumentlistcomponentinfo> hstquery buildquery(hstrequest request, t paraminfo, hippobean scope) { scope = request.getrequestcontext().getsitecontentbasebean(); try { hstquery hstquery = request.getrequestcontext().getquerymanager().createquery(scope); hstquery.applyparameters(paraminfo);// paraminfo should includes pagesize, sortorder etc. right? } catch (exception e) { } }
you can extend essentialsdocumentlistcomponentinfo
interface, suppose mydocumentlistcomponentinfo
interface. on mydocumentlistcomponentinfo
interface override methods want have default values such pagesize
, sortorder
.
lets want pagesize have default value of 20 instead of 10. use code below:
@parameter(name = "pagesize", required = true, defaultvalue = "20", displayname = "page size", description = "nr of items per page") int getpagesize();
with not need declare property in console, unless want custom value.
now in components extend, declare following annotation above class declaration:
@parametersinfo(type = mydocumentlistcomponentinfo.class)
now code should work fine , have less parameters configure every time.
Comments
Post a Comment