List of usage examples for org.apache.wicket Page getMetaData
public final <M extends Serializable> M getMetaData(final MetaDataKey<M> key)
From source file:com.github.javawithmarcus.wicket.cdi.AbstractCdiContainer.java
License:Apache License
/** * Retrieves a conversation id, if any, that is associated with a {@link Page} instance * * @param page page instance/*from w w w.jav a 2 s . c om*/ * @return conversation id, if any */ public String getConversationMarker(Page page) { return page.getMetaData(ConversationIdMetaKey.INSTANCE); }
From source file:com.github.javawithmarcus.wicket.cdi.ConversationPropagator.java
License:Apache License
@Override public void onRequestHandlerResolved(RequestCycle cycle, IRequestHandler handler) { Conversation conversation = getConversation(); logger.debug("In onRequestHandlerResolved id = {}", conversation.getId()); String cid = cycle.getRequest().getRequestParameters().getParameterValue(CID_ATTR).toString(); Page page = getPage(handler); if (page == null) { return;// w ww . j av a 2s.c o m } if (cid == null) { cid = page.getMetaData(CID_KEY); } if (cid != null && !conversation.isTransient() && !Objects.isEqual(conversation.getId(), cid)) { logger.info("Conversation {} has expired for {}", cid, page); throw new ConversationExpiredException(null, cid, page, handler); } activateConversationIfNeeded(page, cycle, handler, cid); }
From source file:org.odlabs.wiquery.core.commons.WiQueryCoreHeaderContributor.java
License:Open Source License
private void renderResponse(final IHeaderResponse response) { Page page = RequestCycle.get().getResponsePage(); Boolean rendered;// w w w. j a v a 2s. co m if (page == null) { rendered = RequestCycle.get().getMetaData(WIQUERY_KEY); } else { Long renderTime = page.getMetaData(WIQUERY_PAGE_KEY); rendered = renderTime != null && renderTime.equals(RequestCycle.get().getStartTime()); page.setMetaData(WIQUERY_PAGE_KEY, RequestCycle.get().getStartTime()); } RequestCycle.get().setMetaData(WIQUERY_KEY, Boolean.TRUE); if (rendered == null || !rendered) { WiQuerySettings settings = WiQuerySettings.get(); final List<WiQueryPluginRenderingListener> pluginRenderingListeners = getRenderingListeners(settings); WiQueryPluginCollector visitor = new WiQueryPluginCollector(); if (page != null) { page.visitChildren(visitor); visitor.component(page); } WiQueryHeaderResponse wiQueryHeaderResponse; IHeaderResponse headerResponse; if (settings.isEnableResourcesMerging() && page != null) { wiQueryHeaderResponse = page.getMetaData(WIQUERY_MERGER); if (wiQueryHeaderResponse == null) { wiQueryHeaderResponse = new WiQueryHeaderResponse(); page.setMetaData(WIQUERY_MERGER, wiQueryHeaderResponse); } wiQueryHeaderResponse.setIHeaderResponse(response); // Preserved already used // references headerResponse = wiQueryHeaderResponse; } else { wiQueryHeaderResponse = null; headerResponse = response; } WiQueryResourceManager manager = new WiQueryResourceManager(); JsStatement jsStatement = new JsStatement(); for (IWiQueryPlugin plugin : visitor.getPlugins()) { JsStatement tempStatement = plugin.statement(); if (tempStatement != null) { jsStatement.append("\t" + tempStatement.render() + "\n"); } // calling listeners to compute specific stuff for (WiQueryPluginRenderingListener listener : pluginRenderingListeners) { listener.onRender(plugin, manager, headerResponse); } plugin.contribute(manager); } initializeResourceManager(headerResponse, manager); mergeResources(response, settings, wiQueryHeaderResponse); JsQuery jsq = new JsQuery(); jsq.setStatement(jsStatement); jsq.renderHead(response, RequestCycle.get().getRequestTarget()); } }
From source file:org.odlabs.wiquery.core.commons.WiQueryCoreHeaderContributor.java
License:Open Source License
private void renderAjaxResponse(IHeaderResponse response, AjaxRequestTarget ajaxRequestTarget) { WiQuerySettings settings = WiQuerySettings.get(); final List<WiQueryPluginRenderingListener> pluginRenderingListeners = getRenderingListeners(settings); WiQueryHeaderResponse wiQueryHeaderResponse; IHeaderResponse headerResponse;// www . j a v a 2 s .com if (settings.isEnableResourcesMerging()) { Page page = RequestCycle.get().getResponsePage(); if (page == null || page.getMetaData(WIQUERY_MERGER) == null) { wiQueryHeaderResponse = null; headerResponse = response; } else { wiQueryHeaderResponse = page.getMetaData(WIQUERY_MERGER); wiQueryHeaderResponse.setIHeaderResponse(response); // Preserved already used // references headerResponse = wiQueryHeaderResponse; } } else { wiQueryHeaderResponse = null; headerResponse = response; } WiQueryResourceManager manager = new WiQueryResourceManager(); if (owner.determineVisibility()) { if (owner instanceof IWiQueryPlugin) { renderPlugin(response, ajaxRequestTarget, (IWiQueryPlugin) owner, pluginRenderingListeners, manager, headerResponse); } for (IBehavior behavior : owner.getBehaviors()) { if (behavior instanceof IWiQueryPlugin && behavior.isEnabled(owner)) { renderPlugin(response, ajaxRequestTarget, (IWiQueryPlugin) behavior, pluginRenderingListeners, manager, headerResponse); } } } initializeResourceManager(headerResponse, manager); mergeResources(response, settings, wiQueryHeaderResponse); }