List of usage examples for org.apache.wicket.request.handler.resource ResourceRequestHandler ResourceRequestHandler
public ResourceRequestHandler(IResource resource, PageParameters parameters)
From source file:com.evolveum.midpoint.web.page.admin.resources.PageResourceVisualizationCytoscape.java
License:Apache License
private void initLayout(PrismObject<ResourceType> resourceObject) { retrievalBehavior = new AbstractAjaxBehavior() { @Override//from www. jav a 2 s . com public void onRequest() { System.out.println("retrieve CS data: starting"); RequestCycle requestCycle = getRequestCycle(); requestCycle.scheduleRequestHandlerAfterCurrent(null); MidPointApplication app = (MidPointApplication) MidPointApplication.get(); TaskManager taskManager = app.getTaskManager(); Task task = taskManager.createTaskInstance(PageResourceVisualizationCytoscape.class + ".onRequest"); String jsonData; try { jsonData = app.getModelDiagnosticService().exportDataModel(resourceObject.asObjectable(), DataModelVisualizer.Target.CYTOSCAPE, task, task.getResult()); System.out.println("JSON Cytoscape Data:\n" + jsonData); } catch (CommonException | RuntimeException e) { LoggingUtils.logUnexpectedException(LOGGER, "Couldn't visualize resource {}", e, resourceObject); jsonData = "{\"nodes\":[], \"edges\":[]}"; // TODO better error handling } IResource jsonResource = new ByteArrayResource("application/json", jsonData.getBytes()); IRequestHandler requestHandler = new ResourceRequestHandler(jsonResource, null); requestHandler.respond(requestCycle); System.out.println("retrieve CS data: response written"); } }; add(retrievalBehavior); deletionBehavior = new AbstractAjaxBehavior() { @Override public void onRequest() { System.out.println("deleteAttribute: starting"); RequestCycle requestCycle = getRequestCycle(); requestCycle.scheduleRequestHandlerAfterCurrent(null); MidPointApplication app = (MidPointApplication) MidPointApplication.get(); TaskManager taskManager = app.getTaskManager(); Task task = taskManager.createTaskInstance(PageResourceVisualizationCytoscape.class + ".onRequest"); try { IRequestParameters parameters = requestCycle.getRequest().getQueryParameters(); String resourceOid = parameters.getParameterValue("resourceOid").toString(); String kind = parameters.getParameterValue("kind").toString(); String intent = parameters.getParameterValue("intent").toString(); String objectClass = parameters.getParameterValue("objectClass").toString(); String attributeName = parameters.getParameterValue("attributeName").toString(); System.out.println("ResourceOid: " + resourceOid + ", kind: " + kind + ", intent: " + intent + ", objectClass: " + objectClass + ", attributeName: " + attributeName); } catch (RuntimeException e) { LoggingUtils.logUnexpectedException(LOGGER, "Couldn't delete attribute", e); } IResource resource = new ByteArrayResource("text/plain", "OK".getBytes()); IRequestHandler requestHandler = new ResourceRequestHandler(resource, null); requestHandler.respond(requestCycle); System.out.println("deleteAttribute: finished"); } }; add(deletionBehavior); }
From source file:fiftyfive.wicket.resource.MergedResourceRequestHandler.java
License:Apache License
public void respond(IRequestCycle requestCycle) { WebRequest origRequest = (WebRequest) requestCycle.getRequest(); // Explicitly set the last modified header of the response based on the last modified // time of the aggregate. Do this on the original response because our wrapped response // ignores the last modified headers contributed by each individual resource. WebResponse origResponse = (WebResponse) requestCycle.getResponse(); if (this.lastModified != null) { origResponse.setLastModifiedTime(this.lastModified); }//from ww w . ja v a2s.com try { // Make a special response object that merges the contributions of each resource, // but maintains a single set of headers. MergedResponse merged = new MergedResponse(origResponse); requestCycle.setResponse(merged); // Make a special request object that tweaks the If-Modified-Since header to ensure // we don't end up in a situation where some resources respond 200 and others 304. // Yes, calling RequestCycle#setRequest() is frowned upon so this is a bit of a hack. ((RequestCycle) requestCycle).setRequest(new MergedRequest(origRequest)); for (ResourceReference ref : this.resources) { ResourceRequestHandler handler = new ResourceRequestHandler(ref.getResource(), this.pageParameters); handler.respond(requestCycle); // If first resource sent 304 Not Modified that means all will. // We can therefore skip the rest. if (304 == merged.status) { break; } } } finally { // Restore the original request once we're done. We don't need to restore the // original response because Wicket takes care of that automatically. ((RequestCycle) requestCycle).setRequest(origRequest); } }
From source file:gr.abiss.calipso.wicket.components.ByteDataRequestTarget.java
License:Open Source License
public void respond(IRequestCycle requestCycle) { ResourceRequestHandler handler = new ResourceRequestHandler( new ByteArrayResource(this.mime, this.getData(null), fileName), null); requestCycle.scheduleRequestHandlerAfterCurrent(handler); }
From source file:org.cast.audioapplet.component.AudioResourcePlayer.java
License:Open Source License
/** * Called if we were initialized with a Resource and it's now being requested. */// www . ja va 2 s . com @Override public void onResourceRequested() { // TODO rewritten - does this work?? getRequestCycle().scheduleRequestHandlerAfterCurrent(new ResourceRequestHandler(audioResource, null)); }
From source file:org.cast.cwm.BinaryFileDataMapper.java
License:Open Source License
@Override public IRequestHandler mapRequest(Request request) { List<String> segments = request.getUrl().getSegments(); if (segments.size() != 2) return null; if (!segments.get(0).equals(urlPrefix)) return null; Long id = Long.valueOf(segments.get(1)); return new ResourceRequestHandler(new BinaryFileDataResource(id), null); }
From source file:org.cast.cwm.UserResponseDataMapper.java
License:Open Source License
public IRequestHandler mapRequest(Request request) { List<String> segments = request.getUrl().getSegments(); // segment size should be exactly 2: the prefix + the id if (segments.size() != 2) return null; if (!segments.get(0).equals(urlPrefix)) return null; Long id = Long.valueOf(segments.get(1)); return new ResourceRequestHandler(new UserResponseDataResource(id), null); }
From source file:org.cast.isi.mapper.ContentDirectoryMapper.java
License:Open Source License
public IRequestHandler mapRequest(Request request) { String path = request.getUrl().getPath(); if (!path.startsWith(CONTENT_DIRECTORY_MAPPER_PREFIX)) return null; // strip off the prefix path = path.substring(CONTENT_DIRECTORY_MAPPER_PREFIX.length()); if (davServer != null) { DavResource contentResource = new DavResource(davServer, contentDirectory + path); return new ResourceRequestHandler(contentResource, null); } else {//from w w w . j av a2s .c o m String filePath = contentDirectory + path; File contentFile = new File(filePath); FileResource contentResource = new FileResource(contentFile); return new ResourceRequestHandler(contentResource, null); } }
From source file:org.hippoecm.frontend.translation.LocaleImageService.java
License:Apache License
@Override public void onRequest() { if (provider == null) { throw new WicketRuntimeException("No locale provider available"); }/*from w ww.ja v a2s .c o m*/ RequestCycle rc = RequestCycle.get(); StringValue language = rc.getRequest().getRequestParameters().getParameterValue("lang"); ResourceReference resourceRef = provider.getLocale(language.toString()).getIcon(IconSize.M, LocaleState.EXISTS); rc.scheduleRequestHandlerAfterCurrent(new ResourceRequestHandler(resourceRef.getResource(), null)); }
From source file:org.isisaddons.wicket.pdfjs.cpt.ui.PdfJsViewerPanel.java
License:Apache License
@Override public void onResourceRequested() { Blob pdfBlob = getBlob();/*from w w w . ja va2 s . c o m*/ if (pdfBlob != null) { final byte[] bytes = pdfBlob.getBytes(); final ByteArrayResource resource = new ByteArrayResource("application/pdf", bytes) { @Override protected void configureResponse(final ResourceResponse response, final Attributes attributes) { super.configureResponse(response, attributes); response.setCacheDuration(Duration.NONE); } }; final ResourceRequestHandler handler = new ResourceRequestHandler(resource, null); getRequestCycle().scheduleRequestHandlerAfterCurrent(handler); } else { throw new AbortWithHttpErrorCodeException(404); } }
From source file:org.onexus.website.api.widgets.download.AjaxDownloadBehavior.java
License:Apache License
public void onRequest() { ResourceRequestHandler handler = new ResourceRequestHandler(getResource(), null); getComponent().getRequestCycle().scheduleRequestHandlerAfterCurrent(handler); }