List of usage examples for org.apache.wicket.request.http.handler RedirectRequestHandler RedirectRequestHandler
public RedirectRequestHandler(final String redirectUrl)
From source file:com.francetelecom.clara.cloud.presentation.login.EmailSupport.java
License:Apache License
private void initComponent() { String urlMailSupport = contactUsBean.getMailTo(); getRequestCycle()//from www . j a va2s .c o m .scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler("mailto:" + urlMailSupport)); }
From source file:com.francetelecom.clara.cloud.presentation.login.LoginForgotPage.java
License:Apache License
private void initComponent() { String urlForgot = signUpLinks.getForgottenUrl(); getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(urlForgot)); }
From source file:com.francetelecom.clara.cloud.presentation.login.LoginForNewUserPage.java
License:Apache License
private void initComponent() { String urlForCreate = signUpLinks.getSignupUrl(); getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(urlForCreate)); }
From source file:com.gitblit.wicket.GitblitRedirectException.java
License:Apache License
public <C extends Page> GitblitRedirectException(Class<C> pageClass, PageParameters params) { super(pageClass, params); RequestCycle cycle = RequestCycle.get(); String absoluteUrl = GitBlitRequestUtils.toAbsoluteUrl(pageClass, params); cycle.scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(absoluteUrl)); }
From source file:com.gitblit.wicket.pages.BasePage.java
License:Apache License
protected void redirectTo(Class<? extends BasePage> pageClass, PageParameters parameters) { String absoluteUrl = getCanonicalUrl(pageClass, parameters); getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(absoluteUrl)); }
From source file:com.gitblit.wicket.pages.ComparePage.java
License:Apache License
public ComparePage(PageParameters params) { super(params); Repository r = getRepository();/*from w w w .j a v a2 s . c om*/ RepositoryModel repository = getRepositoryModel(); if (StringUtils.isEmpty(objectId)) { // seleciton form add(new Label("comparison").setVisible(false)); } else { // active comparison Fragment comparison = new Fragment("comparison", "comparisonFragment", ComparePage.this); add(comparison); RevCommit fromCommit; RevCommit toCommit; String[] parts = objectId.split("\\.\\."); if (parts[0].startsWith("refs/") && parts[1].startsWith("refs/")) { // set the ref models fromRefId.setObject(parts[0]); toRefId.setObject(parts[1]); fromCommit = getCommit(r, fromRefId.getObject()); toCommit = getCommit(r, toRefId.getObject()); } else { // set the id models fromCommitId.setObject(parts[0]); toCommitId.setObject(parts[1]); fromCommit = getCommit(r, fromCommitId.getObject()); toCommit = getCommit(r, toCommitId.getObject()); } // prepare submodules getSubmodules(toCommit); final String startId = fromCommit.getId().getName(); final String endId = toCommit.getId().getName(); // commit ids fromCommitId.setObject(startId); toCommitId.setObject(endId); final List<String> imageExtensions = app().settings().getStrings(Keys.web.imageExtensions); final ImageDiffHandler handler = new ImageDiffHandler(this, repositoryName, fromCommit.getName(), toCommit.getName(), imageExtensions); final DiffComparator diffComparator = WicketUtils.getDiffComparator(params); final int tabLength = app().settings().getInteger(Keys.web.tabLength, 4); final DiffOutput diff = DiffUtils.getDiff(r, fromCommit, toCommit, diffComparator, DiffOutputType.HTML, handler, tabLength); if (handler.getImgDiffCount() > 0) { addBottomScript("scripts/imgdiff.js"); // Tiny support script for image diffs } // add compare diffstat int insertions = 0; int deletions = 0; for (PathChangeModel pcm : diff.stat.paths) { insertions += pcm.insertions; deletions += pcm.deletions; } comparison.add(new DiffStatPanel("diffStat", insertions, deletions)); // compare page links // comparison.add(new BookmarkablePageLink<Void>("patchLink", PatchPage.class, // WicketUtils.newRangeParameter(repositoryName, fromCommitId.toString(), toCommitId.getObject()))); // display list of commits comparison.add( new LogPanel("commitList", repositoryName, objectId, r, 0, 0, repository.showRemoteBranches)); // changed paths list comparison.add(new CommitLegendPanel("commitLegend", diff.stat.paths)); ListDataProvider<PathChangeModel> pathsDp = new ListDataProvider<PathChangeModel>(diff.stat.paths); DataView<PathChangeModel> pathsView = new DataView<PathChangeModel>("changedPath", pathsDp) { private static final long serialVersionUID = 1L; int counter; @Override public void populateItem(final Item<PathChangeModel> item) { final PathChangeModel entry = item.getModelObject(); Label changeType = new Label("changeType", ""); WicketUtils.setChangeTypeCssClass(changeType, entry.changeType); setChangeTypeTooltip(changeType, entry.changeType); item.add(changeType); item.add(new DiffStatPanel("diffStat", entry.insertions, entry.deletions, true)); boolean hasSubmodule = false; String submodulePath = null; if (entry.isTree()) { // tree item.add(new LinkPanel("pathName", null, entry.path, TreePage.class, WicketUtils.newPathParameter(repositoryName, endId, entry.path))); } else if (entry.isSubmodule()) { // submodule String submoduleId = entry.objectId; SubmoduleModel submodule = getSubmodule(entry.path); submodulePath = submodule.gitblitPath; hasSubmodule = submodule.hasSubmodule; // add relative link item.add(new LinkPanel("pathName", "list", entry.path + " @ " + getShortObjectId(submoduleId), "#n" + entry.objectId)); } else { // add relative link item.add(new LinkPanel("pathName", "list", entry.path, "#n" + entry.objectId)); } // quick links if (entry.isSubmodule()) { // submodule item.add(new ExternalLink("patch", "").setEnabled(false)); item.add(new BookmarkablePageLink<Void>("view", CommitPage.class, WicketUtils.newObjectParameter(submodulePath, entry.objectId)) .setEnabled(hasSubmodule)); item.add(new ExternalLink("raw", "").setEnabled(false)); item.add(new ExternalLink("blame", "").setEnabled(false)); item.add(new BookmarkablePageLink<Void>("history", HistoryPage.class, WicketUtils.newPathParameter(repositoryName, endId, entry.path)) .setEnabled(!entry.changeType.equals(ChangeType.ADD))); } else { // tree or blob item.add(new BookmarkablePageLink<Void>("patch", PatchPage.class, WicketUtils.newBlobDiffParameter(repositoryName, startId, endId, entry.path)) .setEnabled(!entry.changeType.equals(ChangeType.DELETE))); item.add(new BookmarkablePageLink<Void>("view", BlobPage.class, WicketUtils.newPathParameter(repositoryName, endId, entry.path)) .setEnabled(!entry.changeType.equals(ChangeType.DELETE))); String rawUrl = RawServlet.asLink(getContextUrl(), repositoryName, endId, entry.path); item.add(new ExternalLink("raw", rawUrl) .setEnabled(!entry.changeType.equals(ChangeType.DELETE))); item.add(new BookmarkablePageLink<Void>("blame", BlamePage.class, WicketUtils.newPathParameter(repositoryName, endId, entry.path)) .setEnabled(!entry.changeType.equals(ChangeType.ADD) && !entry.changeType.equals(ChangeType.DELETE))); item.add(new BookmarkablePageLink<Void>("history", HistoryPage.class, WicketUtils.newPathParameter(repositoryName, endId, entry.path)) .setEnabled(!entry.changeType.equals(ChangeType.ADD))); } WicketUtils.setAlternatingBackground(item, counter); counter++; } }; comparison.add(pathsView); comparison.add(new Label("diffText", diff.content).setEscapeModelStrings(false)); } // set the default DiffComparator DiffComparator diffComparator = WicketUtils.getDiffComparator(params); ignoreWhitespace.setObject(DiffComparator.IGNORE_WHITESPACE == diffComparator); // // ref selection form // SessionlessForm<Void> refsForm = new SessionlessForm<Void>("compareRefsForm", getClass(), getPageParameters()) { private static final long serialVersionUID = 1L; @Override public void onSubmit() { String from = ComparePage.this.fromRefId.getObject(); String to = ComparePage.this.toRefId.getObject(); boolean ignoreWS = ignoreWhitespace.getObject(); PageParameters params = WicketUtils.newRangeParameter(repositoryName, from, to); if (ignoreWS) { params.add("w", 1); } String absoluteUrl = GitBlitRequestUtils.toAbsoluteUrl(ComparePage.class, params); getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(absoluteUrl)); } }; List<String> refs = new ArrayList<String>(); for (RefModel ref : JGitUtils.getLocalBranches(r, true, -1)) { refs.add(ref.getName()); } if (repository.showRemoteBranches) { for (RefModel ref : JGitUtils.getRemoteBranches(r, true, -1)) { refs.add(ref.getName()); } } for (RefModel ref : JGitUtils.getTags(r, true, -1)) { refs.add(ref.getName()); } refsForm.add(new DropDownChoice<String>("fromRef", fromRefId, refs).setEnabled(refs.size() > 0)); refsForm.add(new DropDownChoice<String>("toRef", toRefId, refs).setEnabled(refs.size() > 0)); refsForm.add(new Label("ignoreWhitespaceLabel", getString(DiffComparator.IGNORE_WHITESPACE.getTranslationKey()))); refsForm.add(new CheckBox("ignoreWhitespaceCheckbox", ignoreWhitespace)); add(refsForm); // // manual ids form // SessionlessForm<Void> idsForm = new SessionlessForm<Void>("compareIdsForm", getClass(), getPageParameters()) { private static final long serialVersionUID = 1L; @Override public void onSubmit() { String from = ComparePage.this.fromCommitId.getObject(); String to = ComparePage.this.toCommitId.getObject(); boolean ignoreWS = ignoreWhitespace.getObject(); PageParameters params = WicketUtils.newRangeParameter(repositoryName, from, to); if (ignoreWS) { params.add("w", 1); } String absoluteUrl = GitBlitRequestUtils.toAbsoluteUrl(ComparePage.class, params); getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(absoluteUrl)); } }; TextField<String> fromIdField = new TextField<String>("fromId", fromCommitId); WicketUtils.setInputPlaceholder(fromIdField, getString("gb.from") + "..."); idsForm.add(fromIdField); TextField<String> toIdField = new TextField<String>("toId", toCommitId); WicketUtils.setInputPlaceholder(toIdField, getString("gb.to") + "..."); idsForm.add(toIdField); idsForm.add(new Label("ignoreWhitespaceLabel", getString(DiffComparator.IGNORE_WHITESPACE.getTranslationKey()))); idsForm.add(new CheckBox("ignoreWhitespaceCheckbox", ignoreWhitespace)); add(idsForm); r.close(); }
From source file:com.gitblit.wicket.panels.BranchesPanel.java
License:Apache License
private Link<Void> createDeleteBranchLink(final RepositoryModel repositoryModel, final RefModel entry) { Link<Void> deleteLink = new Link<Void>("deleteBranch") { private static final long serialVersionUID = 1L; @Override//from w w w .j a va 2 s .c o m public void onClick() { Repository r = app().repositories().getRepository(repositoryModel.name); if (r == null) { if (app().repositories().isCollectingGarbage(repositoryModel.name)) { error(MessageFormat.format(getString("gb.busyCollectingGarbage"), repositoryModel.name)); } else { error(MessageFormat.format("Failed to find repository {0}", repositoryModel.name)); } return; } final String branch = entry.getName(); Ref ref = null; try { ref = r.findRef(branch); if (ref == null && !branch.startsWith(Constants.R_HEADS)) { ref = r.findRef(Constants.R_HEADS + branch); } } catch (IOException e) { } if (ref != null) { boolean success = JGitUtils.deleteBranchRef(r, ref.getName()); if (success) { // clear commit cache CommitCache.instance().clear(repositoryModel.name, branch); // optionally update reflog if (RefLogUtils.hasRefLogBranch(r)) { UserModel user = GitBlitWebSession.get().getUser(); RefLogUtils.deleteRef(user, r, ref); } } if (success) { info(MessageFormat.format("Branch \"{0}\" deleted", branch)); } else { error(MessageFormat.format("Failed to delete branch \"{0}\"", branch)); } } r.close(); // redirect to the owning page PageParameters params = WicketUtils.newRepositoryParameter(repositoryModel.name); String absoluteUrl = GitBlitRequestUtils.toAbsoluteUrl(getPage().getClass(), params); getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(absoluteUrl)); } }; deleteLink.add(new JavascriptEventConfirmation("click", MessageFormat.format("Delete branch \"{0}\"?", entry.displayName))); return deleteLink; }
From source file:com.gitblit.wicket.panels.CommentPanel.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); Form<String> form = new Form<String>("editorForm"); add(form);/* www . j a v a 2 s . com*/ form.add(new AjaxButton("submit", new Model<String>(getString("gb.comment")), form) { private static final long serialVersionUID = 1L; @Override public void onSubmit(AjaxRequestTarget target) { String txt = markdownEditor.getText(); if (change == null) { // new comment Change newComment = new Change(user.username); newComment.comment(txt); if (!ticket.isWatching(user.username)) { newComment.watch(user.username); } RepositoryModel repository = app().repositories().getRepositoryModel(ticket.repository); TicketModel updatedTicket = app().tickets().updateTicket(repository, ticket.number, newComment); if (updatedTicket != null) { app().tickets().createNotifier().sendMailing(updatedTicket); redirectTo(pageClass, WicketUtils.newObjectParameter(updatedTicket.repository, "" + ticket.number)); } else { error("Failed to add comment!"); } } else { // TODO update comment } } /** * Steal from BasePage to realize redirection. * * @see BasePage * @author krulls@GitHub; ECG Leipzig GmbH, Germany, 2015 * * @param pageClass * @param parameters * @return */ private void redirectTo(Class<? extends BasePage> pageClass, PageParameters parameters) { String absoluteUrl = GitBlitRequestUtils.toAbsoluteUrl(pageClass, parameters); getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(absoluteUrl)); } }.setVisible(ticket != null && ticket.number > 0)); final IModel<String> markdownPreviewModel = Model.of(); markdownPreview = new Label("markdownPreview", markdownPreviewModel); markdownPreview.setEscapeModelStrings(false); markdownPreview.setOutputMarkupId(true); add(markdownPreview); markdownEditor = new MarkdownTextArea("markdownEditor", markdownPreviewModel, markdownPreview); markdownEditor.setRepository(repositoryName); WicketUtils.setInputPlaceholder(markdownEditor, getString("gb.leaveComment")); add(markdownEditor); }
From source file:com.gitblit.wicket.panels.TicketSearchForm.java
License:Apache License
@Override public void onSubmit() { String searchString = searchBoxModel.getObject(); if (StringUtils.isEmpty(searchString)) { // redirect to self to avoid wicket page update bug String absoluteUrl = getAbsoluteUrl(); getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(absoluteUrl)); return;//ww w.ja va2 s . c om } // use an absolute url to workaround Wicket-Tomcat problems with // mounted url parameters (issue-111) PageParameters params = WicketUtils.newRepositoryParameter(repositoryName); params.add("s", searchString); String absoluteUrl = getAbsoluteUrl(pageClass, params); getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(absoluteUrl)); }
From source file:com.userweave.application.ModuleConfigurationContainer.java
License:Open Source License
private void displayFinishedPage() { testUI.replaceWith(getFinishedUI()); String finishedPageUrl = getActiveConfiguration().getStudy().getFinishedPageUrl(); if (finishedPageUrl != null) { getRequestCycle().scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(finishedPageUrl)); } else/*from w ww.ja v a2 s.c o m*/ getRequestCycle() .scheduleRequestHandlerAfterCurrent(new RedirectRequestHandler(Study.DEFAULT_FINISHED_URL)); }