private <T extends Page> T producePage(PageProviderResultItem<String> resultItem, RequestContext context, Class<T> pageClass) throws FactoryException { String pageSource = resultItem.getSourceContent(); Page page = deserialize(pageSource, pageClass); page.setLastPublishedDate(resultItem.getLastPublishDate()); page.setRevisionDate(resultItem.getRevisionDate()); page.setUrl(resultItem.getUrl()); LOG.debug("Running pre caching processors"); this.executeProcessors(page, RunPhase.BEFORE_CACHING, context); return (T) page; }