@Override public Response create(final ReportTemplateTO reportTemplateTO) { ReportTemplateTO created = logic.create(reportTemplateTO.getKey()); URI location = uriInfo.getAbsolutePathBuilder().path(created.getKey()).build(); return Response.created(location). header(RESTHeaders.RESOURCE_KEY, created.getKey()). build(); }
private ReportTemplateTO getReportTemplateTO(final String key) { ReportTemplateTO reportTemplateTO = new ReportTemplateTO(); reportTemplateTO.setKey(key); return reportTemplateTO; }
@Override public WizardModalPanel<ReportTemplateTO> build( final String id, final int index, final AjaxWizard.Mode mode) { return new TemplateModal<>(modal, restClient, new ReportTemplateTO(), pageReference); } }, true);
public ReportTemplateDirectoryPanel(final String id, final PageReference pageReference) { super(id, pageReference, true); disableCheckBoxes(); modal.size(Modal.Size.Small); modal.addSubmitButton(); setFooterVisibility(true); modal.setWindowClosedCallback(new ModalWindow.WindowClosedCallback() { private static final long serialVersionUID = 8804221891699487139L; @Override public void onClose(final AjaxRequestTarget target) { updateResultTable(target); modal.show(false); } }); addOuterObject(utilityModal); setWindowClosedReloadCallback(utilityModal); utilityModal.size(Modal.Size.Large); utilityModal.addSubmitButton(); restClient = new ReportRestClient(); addNewItemPanelBuilder(new AbstractModalPanelBuilder<ReportTemplateTO>(new ReportTemplateTO(), pageRef) { private static final long serialVersionUID = 1995192603527154740L; @Override public WizardModalPanel<ReportTemplateTO> build( final String id, final int index, final AjaxWizard.Mode mode) { return new TemplateModal<>(modal, restClient, new ReportTemplateTO(), pageReference); } }, true); initResultTable(); MetaDataRoleAuthorizationStrategy.authorize(addAjaxLink, RENDER, StandardEntitlement.MAIL_TEMPLATE_CREATE); }
@Override public void onClick(final AjaxRequestTarget target, final ReportTemplateTO ignore) { TemplateContent<ReportTemplateFormat> content = new TemplateContent<>(model.getObject().getKey(), ReportTemplateFormat.HTML); content.setContent( restClient.readTemplateFormat(model.getObject().getKey(), ReportTemplateFormat.HTML)); utilityModal.header(new ResourceModel("report.template.html", "XSLT for HTML")); utilityModal.setContent(new TemplateContentEditorPanel(content, pageRef)); utilityModal.show(true); target.add(utilityModal); } }, ActionLink.ActionType.HTML, StandardEntitlement.MAIL_TEMPLATE_UPDATE);
@Override public void onClick(final AjaxRequestTarget target, final ReportTemplateTO ignore) { TemplateContent<ReportTemplateFormat> content = new TemplateContent<>(model.getObject().getKey(), ReportTemplateFormat.CSV); content.setContent( restClient.readTemplateFormat(model.getObject().getKey(), ReportTemplateFormat.CSV)); utilityModal.header(new ResourceModel("report.template.csv", "XSLT for CSV")); utilityModal.setContent(new TemplateContentEditorPanel(content, pageRef)); utilityModal.show(true); target.add(utilityModal); } }, ActionLink.ActionType.TEXT, StandardEntitlement.MAIL_TEMPLATE_UPDATE);
@Override public void onClick(final AjaxRequestTarget target, final ReportTemplateTO ignore) { try { restClient.deleteTemplate(model.getObject().getKey()); SyncopeConsoleSession.get().info(getString(Constants.OPERATION_SUCCEEDED)); target.add(container); } catch (SyncopeClientException e) { LOG.error("While deleting object {}", model.getObject().getKey(), e); SyncopeConsoleSession.get().error(StringUtils.isBlank(e.getMessage()) ? e.getClass(). getName() : e.getMessage()); } ((BasePage) pageRef.getPage()).getNotificationPanel().refresh(target); } }, ActionLink.ActionType.DELETE, StandardEntitlement.MAIL_TEMPLATE_DELETE, true);
@Override public void onClick(final AjaxRequestTarget target, final ReportTemplateTO ignore) { TemplateContent<ReportTemplateFormat> content = new TemplateContent<>(model.getObject().getKey(), ReportTemplateFormat.FO); content.setContent( restClient.readTemplateFormat(model.getObject().getKey(), ReportTemplateFormat.FO)); utilityModal.header(new ResourceModel("report.template.fo", "XSLT for XSL-FO")); utilityModal.setContent(new TemplateContentEditorPanel(content, pageRef)); utilityModal.show(true); target.add(utilityModal); } }, ActionLink.ActionType.FO_EDIT, StandardEntitlement.MAIL_TEMPLATE_UPDATE);
@Override protected ReportTemplateTO resolveReference(final Method method, final Object... args) throws UnresolvedReferenceException { String key = null; if (ArrayUtils.isNotEmpty(args)) { for (int i = 0; key == null && i < args.length; i++) { if (args[i] instanceof String) { key = ((String) args[i]); } else if (args[i] instanceof ReportTemplateTO) { key = ((ReportTemplateTO) args[i]).getKey(); } } } if (key != null) { try { return getReportTemplateTO(key); } catch (Throwable ignore) { LOG.debug("Unresolved reference", ignore); throw new UnresolvedReferenceException(ignore); } } throw new UnresolvedReferenceException(); } }