Example usage for org.apache.wicket.util.string AppendingStringBuffer append

List of usage examples for org.apache.wicket.util.string AppendingStringBuffer append

Introduction

In this page you can find the example usage for org.apache.wicket.util.string AppendingStringBuffer append.

Prototype

public AppendingStringBuffer append(final double d) 

Source Link

Document

Appends the string representation of the double argument to this string buffer.

Usage

From source file:au.org.theark.core.web.component.wizard.AjaxWizardButtonBar.java

License:Open Source License

private void addAjax(final WizardButton button) {
    button.add(new AjaxFormSubmitBehavior("onclick") {
        private static final long serialVersionUID = 1L;

        @Override//from   w ww  .  j a  va2  s.com
        protected CharSequence getEventHandler() {
            AppendingStringBuffer handler = new AppendingStringBuffer();
            handler.append(super.getEventHandler());
            handler.append("; return false;");
            return handler;
        }

        @Override
        protected IAjaxCallDecorator getAjaxCallDecorator() {
            return AjaxWizardButtonBar.this.getAjaxCallDecorator();
        }

        @Override
        protected void onSubmit(AjaxRequestTarget target) {
            target.add(wizard);
        }

        @Override
        protected void onError(AjaxRequestTarget target) {
            target.add(wizard);
        }
    });

    add(button);
}

From source file:au.org.theark.core.web.component.wizard.AjaxWizardButtonBar.java

License:Open Source License

private void addAjaxCancel(final WizardButton button) {
    button.add(new AjaxFormSubmitBehavior("onclick") {
        private static final long serialVersionUID = 1L;

        @Override//from  w  w w.j av a 2  s .  c o  m
        protected CharSequence getEventHandler() {
            AppendingStringBuffer handler = new AppendingStringBuffer();
            handler.append(super.getEventHandler());
            handler.append("; return false;");
            return handler;
        }

        @Override
        protected IAjaxCallDecorator getAjaxCallDecorator() {
            return AjaxWizardButtonBar.this.getAjaxCallDecorator();
        }

        @Override
        protected void onSubmit(AjaxRequestTarget target) {
            wizard.getWizardModel().cancel();
            wizard = new ArkCommonWizard(wizard.getId(), wizard.getWizardSteps(),
                    wizard.getResultListContainer(), wizard.getWizardPanelContainer(),
                    wizard.getWizardPanelFormContainer(), wizard.getSearchPanelContainer(), wizard.getTarget());

            wizard.getSearchPanelContainer().setVisible(true);
            wizard.getResultListContainer().setVisible(true);
            wizard.getWizardPanelContainer().setVisible(true);

            cancelWizard(target);

            target.add(wizard.getSearchPanelContainer());
            target.add(wizard.getResultListContainer());
            target.add(wizard.getWizardPanelContainer());
            target.add(wizard);
        }

        @Override
        protected void onError(AjaxRequestTarget target) {
            target.add(wizard);
        }
    });

    add(button);
}

From source file:au.org.theark.core.web.component.wizard.AjaxWizardButtonBar.java

License:Open Source License

private void addAjaxFinish(final WizardButton button) {
    button.add(new AjaxFormSubmitBehavior("onclick") {
        private static final long serialVersionUID = 1L;

        @Override/*  w  ww .j  a va2  s.c  o m*/
        protected CharSequence getEventHandler() {
            AppendingStringBuffer handler = new AppendingStringBuffer();
            handler.append(super.getEventHandler());
            handler.append("; return false;");
            return handler;
        }

        @Override
        protected IAjaxCallDecorator getAjaxCallDecorator() {
            return AjaxWizardButtonBar.this.getAjaxCallDecorator();
        }

        @Override
        protected void onSubmit(AjaxRequestTarget target) {
            wizard.getSearchPanelContainer().setVisible(true);
            wizard.getResultListContainer().setVisible(true);
            wizard.getWizardPanelContainer().setVisible(true);

            wizard.getWizardModel().finish();

            target.add(wizard.getSearchPanelContainer());
            target.add(wizard.getResultListContainer());
            target.add(wizard.getWizardPanelContainer());
            target.add(wizard);
        }

        @Override
        protected void onError(AjaxRequestTarget target) {
            target.add(wizard);
        }
    });

    add(button);
}

From source file:com.antilia.web.field.impl.TableRadioChoice.java

License:Apache License

/**
 * @see org.apache.wicket.Component#onComponentTagBody(MarkupStream, ComponentTag)
 *//*from   w  w w. j  ava  2s . co m*/
@Override
protected final void onComponentTagBody(final MarkupStream markupStream, final ComponentTag openTag) {
    // Iterate through choices
    final List<? extends T> choices = getChoices();

    // Buffer to hold generated body
    final AppendingStringBuffer buffer = new AppendingStringBuffer((choices.size() + 1) * 70);

    // The selected value
    final String selected = getValue();

    buffer.append("<table style=\"width: 100%;\" cellpadding=\"0\" cellspacing=\"5\">");

    // Loop through choices
    for (int index = 0; index < choices.size(); index++) {
        // Get next choice
        final T choice = choices.get(index);

        Object displayValue = getChoiceRenderer().getDisplayValue(choice);
        Class<?> objectClass = (displayValue == null ? null : displayValue.getClass());

        // Get label for choice
        String label = "";

        if (objectClass != null && objectClass != String.class) {
            final IConverter converter = (IConverter) getConverter(objectClass);

            if (!converter.getClass().isAssignableFrom(objectClass)) {
                throw new IllegalArgumentException(
                        "converter can not convert " + objectClass.getName() + " to string");
            }

            label = converter.convertToString(displayValue, getLocale());
        } else if (displayValue != null) {
            label = displayValue.toString();
        }

        // If there is a display value for the choice, then we know that the
        // choice is automatic in some way. If label is /null/ then we know
        // that the choice is a manually created radio tag at some random
        // location in the page markup!
        if (label != null) {
            // Append option suffix
            buffer.append(getPrefix());

            String id = getChoiceRenderer().getIdValue(choice, index);
            final String idAttr = getMarkupId() + "_" + id;

            buffer.append("<tr>");
            buffer.append("<td style=\"width: 15px; vertical-align: top;\">");

            // Add radio tag
            buffer.append("<input name=\"").append(getInputName()).append("\"").append(" type=\"radio\"")
                    .append((isSelected(choice, index, selected) ? " checked=\"checked\"" : ""))
                    .append((isEnabled() ? "" : " disabled=\"disabled\"")).append(" value=\"").append(id)
                    .append("\" id=\"").append(idAttr).append("\"");

            // Should a roundtrip be made (have onSelectionChanged called)
            // when the option is clicked?
            if (wantOnSelectionChangedNotifications()) {
                CharSequence url = urlFor(IOnChangeListener.INTERFACE);

                Form<?> form = findParent(Form.class);
                if (form != null) {
                    RequestContext rc = RequestContext.get();
                    if (rc.isPortletRequest()) {
                        // restore url back to real wicket path as its going to be interpreted
                        // by the form itself
                        url = ((PortletRequestContext) rc).getLastEncodedPath();
                    }
                    buffer.append(" onclick=\"").append(form.getJsForInterfaceUrl(url)).append(";\"");
                } else {
                    // TODO: following doesn't work with portlets, should be posted to a dynamic
                    // hidden form
                    // with an ActionURL or something
                    // NOTE: do not encode the url as that would give
                    // invalid JavaScript
                    buffer.append(" onclick=\"window.location.href='").append(url)
                            .append((url.toString().indexOf('?') > -1 ? "&amp;" : "?") + getInputName())
                            .append("=").append(id).append("';\"");
                }
            }

            buffer.append("/>");

            buffer.append("</td>");

            buffer.append("<td nowrap=\"nowrap\" style=\"width: 300px;\">");
            // Add label for radio button
            String display = label;
            if (localizeDisplayValues()) {
                display = getLocalizer().getString(label, this, label);
            }
            CharSequence escaped = Strings.escapeMarkup(display, false, true);
            buffer.append(escaped);

            // Append option suffix
            buffer.append(getSuffix());
            buffer.append("</td>");
            buffer.append("</tr>");
        }

    }
    buffer.append("</table>");

    // Replace body
    replaceComponentTagBody(markupStream, openTag, buffer);
}

From source file:com.doculibre.constellio.wicket.application.ConstellioApplication.java

License:Open Source License

@SuppressWarnings("rawtypes")
protected void init() {
    Objects.setObjectStreamFactory(new IObjectStreamFactory() {
        @Override//from  www  .j a  v a2  s  . com
        public ObjectInputStream newObjectInputStream(InputStream in) throws IOException {
            return new ObjectInputStream(in) {
                @Override
                protected Class<?> resolveClass(ObjectStreamClass desc)
                        throws IOException, ClassNotFoundException {
                    String className = desc.getName();
                    try {
                        return Class.forName(className);
                    } catch (ClassNotFoundException e) {
                        for (ClassLoader pluginClassLoader : PluginFactory.getClassLoaders()) {
                            try {
                                return pluginClassLoader.loadClass(className);
                            } catch (ClassNotFoundException e2) {
                            }
                        }
                        throw e;
                    }
                }
            };
        }

        @Override
        public ObjectOutputStream newObjectOutputStream(OutputStream out) throws IOException {
            return new ObjectOutputStream(out);
        }
    });

    getApplicationSettings().setPageExpiredErrorPage(getHomePage());
    // getApplicationSettings().setPageExpiredErrorPage(SearchExceptionHandlingPage.class);
    // getApplicationSettings().setInternalErrorPage(SearchExceptionHandlingPage.class);
    getDebugSettings().setAjaxDebugModeEnabled(false);
    getMarkupSettings().setStripWicketTags(true);

    dictionaries = getServletContext().getRealPath(ConstellioSpringUtils.getDictionaries());

    PageFactoryPlugin pageFactoryPlugin = PluginFactory.getPlugin(PageFactoryPlugin.class);
    mount(new QueryStringUrlCodingStrategy("/form", pageFactoryPlugin.getSearchFormPage()) {
        @Override
        protected void appendParameters(AppendingStringBuffer url, Map parameters) {
            super.appendParameters(url, parameters);
            String params = getExternalParams(url);
            url.append(params);
        }
    });

    //        mount(new QueryStringUrlCodingStrategy("/search", test.TestPage.class) {
    //            @Override
    //            protected void appendParameters(AppendingStringBuffer url, Map parameters) {
    //                super.appendParameters(url, parameters);
    //                String params = getExternalParams(url);
    //                url.append(params);
    //            }
    //        });
    mount(new QueryStringUrlCodingStrategy("/search", pageFactoryPlugin.getSearchResultsPage()) {
        @Override
        protected void appendParameters(AppendingStringBuffer url, Map parameters) {
            super.appendParameters(url, parameters);
            String params = getExternalParams(url);
            url.append(params);
        }
    });
    mount(new QueryStringUrlCodingStrategy("/history", pageFactoryPlugin.getSearchHistoryPage()) {
        @Override
        protected void appendParameters(AppendingStringBuffer url, Map parameters) {
            super.appendParameters(url, parameters);
            String params = getExternalParams(url);
            url.append(params);
        }
    });
    mount(new QueryStringUrlCodingStrategy("/admin", pageFactoryPlugin.getAdminPage()) {
        @Override
        protected void appendParameters(AppendingStringBuffer url, Map parameters) {
            super.appendParameters(url, parameters);
            String params = getExternalParams(url);
            url.append(params);
        }
    });

    mount(new QueryStringUrlCodingStrategy("/login", pageFactoryPlugin.getLoginPage()) {
        @Override
        protected void appendParameters(AppendingStringBuffer url, Map parameters) {
            super.appendParameters(url, parameters);
            String params = getExternalParams(url);
            url.append(params);
        }
    });

    mount(new QueryStringUrlCodingStrategy("/responsive", ResponsivePage.class) {
        @Override
        protected void appendParameters(AppendingStringBuffer url, Map parameters) {
            super.appendParameters(url, parameters);
            String params = getExternalParams(url);
            url.append(params);
        }
    });

    mountBookmarkablePage("/solr", SolrServletPage.class);
    mountBookmarkablePage("/select", SolrServletPage.class);

    mountBookmarkablePage("/getSmbFile", SmbServletPage.class);

    initializeIfRequired();

    //getRequestCycleSettings().addResponseFilter(new EmptySrcAttributeCheckFilter());

    super.init();
}

From source file:com.doculibre.constellio.wicket.components.modal.NonAjaxModalWindow.java

License:Apache License

/**
 * Returns the javascript used to open the window.
 * /*w  ww.  j  a va  2  s .co m*/
 * @return javascript that opens the window
 */
private String getWindowOpenJavascript() {
    AppendingStringBuffer buffer = new AppendingStringBuffer();

    if (isCustomComponent() == true) {
        buffer.append("var element = document.getElementById(\"" + getContentMarkupId() + "\");\n");
    }

    buffer.append("var settings = new Object();\n");
    buffer.append("settings.minWidth=" + getMinimalWidth() + ";\n");
    buffer.append("settings.minHeight=" + getMinimalHeight() + ";\n");
    buffer.append("settings.className=\"" + getCssClassName() + "\";\n");
    buffer.append("settings.width=\"" + getInitialWidth() + "\";\n");

    if (isUseInitialHeight() == true || isCustomComponent() == false)
        buffer.append("settings.height=\"" + getInitialHeight() + "\";\n");
    else
        buffer.append("settings.height=null;\n");

    buffer.append("settings.resizable=" + Boolean.toString(isResizable()) + ";\n");

    if (isResizable() == false) {
        buffer.append("settings.widthUnit=\"" + getWidthUnit() + "\";\n");
        buffer.append("settings.heightUnit=\"" + getHeightUnit() + "\";\n");
    }

    if (isCustomComponent() == false) {
        Page page = createPage();
        if (page == null) {
            throw new WicketRuntimeException("Error creating page for modal dialog.");
        }
        RequestCycle.get().setUrlForNewWindowEncoding();
        buffer.append("settings.src=\"" + RequestCycle.get().urlFor(page) + "\";\n");

        if (getPageMapName() != null) {
            buffer.append("settings.iframeName=\"" + getPageMapName() + "\";\n");
        }
    } else {
        buffer.append("settings.element = element;\n");
    }

    if (getCookieName() != null) {
        buffer.append("settings.cookieId=\"" + getCookieName() + "\";\n");
    }

    Object title = getTitle() != null ? getTitle().getObject() : null;
    if (title != null) {
        buffer.append("settings.title=\"" + escapeQuotes(title.toString()) + "\";\n");
    }

    if (getMaskType() == MaskType.TRANSPARENT) {
        buffer.append("settings.mask=\"transparent\";\n");
    } else if (getMaskType() == MaskType.SEMI_TRANSPARENT) {
        buffer.append("settings.mask=\"semi-transparent\";\n");
    }

    // set true if we set a windowclosedcallback
    boolean haveCloseCallback = false;

    // in case user is interested in window close callback or we have a
    // pagemap to clean
    // attach notification request
    if ((isCustomComponent() == false && deletePageMap) || windowClosedCallback != null) {
        WindowClosedBehavior behavior = (WindowClosedBehavior) getBehaviors(WindowClosedBehavior.class).get(0);
        buffer.append("settings.onClose = function() { " + /*behavior.getCallbackScript() +*/
                " };\n");

        haveCloseCallback = true;
    }

    // in case we didn't set windowclosecallback, we need at least callback
    // on close button,
    // to close window property (thus cleaning the shown flag)
    if (closeButtonCallback != null || haveCloseCallback == false) {
        CloseButtonBehavior behavior = (CloseButtonBehavior) getBehaviors(CloseButtonBehavior.class).get(0);
        buffer.append("settings.onCloseButton = function() { " + /*behavior.getCallbackScript() +*/
                "};\n");
    }

    postProcessSettings(buffer);

    buffer.append("Wicket.Window.create(settings).show();\n");

    return buffer.toString();
}

From source file:com.francetelecom.clara.cloud.presentation.tools.ServerPageMetaFilter.java

License:Apache License

/**
 * @see org.apache.wicket.IResponseFilter#filter(AppendingStringBuffer)
 *//*from w  w  w . ja v  a2  s.  c o m*/
public AppendingStringBuffer filter(AppendingStringBuffer responseBuffer) {
    String responseHtmlTagUsed = "</html>";
    int index = responseBuffer.indexOf(responseHtmlTagUsed);
    long timeTaken = System.currentTimeMillis() - RequestCycle.get().getStartTime();
    if (index != -1) {
        AppendingStringBuffer script = new AppendingStringBuffer(125);
        script.append("\n<!--");

        // server time used
        script.append("\n window.pagemeta.serverPageRenderingTime=' ");
        script.append(((double) timeTaken) / 1000);
        script.append("s';\n");

        // server ip
        script.append("\n window.pagemeta.serverIP='");
        script.append(retrieveServerIP());
        script.append("';\n");

        // rendering date
        script.append("\n window.pagemeta.renderingDate='");
        script.append(retrieveRenderingDateStr());
        script.append("';\n");

        script.append(" -->\n");
        responseBuffer.insert(index, script);
    }

    log.debug(timeTaken + "ms server time taken for request " + RequestCycle.get().getRequest().getUrl()
            + " response size: " + responseBuffer.length());
    return responseBuffer;
}

From source file:com.gitblit.wicket.GitblitParamUrlCodingStrategy.java

License:Apache License

/**
 * @see org.apache.wicket.request.target.coding.AbstractRequestTargetUrlCodingStrategy#appendParameters(org.apache.wicket.util.string.AppendingStringBuffer,
 *      java.util.Map)//from  w  ww  .j a  v a  2s  . c om
 */
@Override
protected void appendParameters(AppendingStringBuffer url, Map<String, ?> parameters) {
    if (!url.endsWith("/")) {
        url.append("/");
    }

    Set<String> parameterNamesToAdd = new HashSet<String>(parameters.keySet());

    // Find index of last specified parameter
    boolean foundParameter = false;
    int lastSpecifiedParameter = parameterNames.length;
    while (lastSpecifiedParameter != 0 && !foundParameter) {
        foundParameter = parameters.containsKey(parameterNames[--lastSpecifiedParameter]);
    }

    if (foundParameter) {
        for (int i = 0; i <= lastSpecifiedParameter; i++) {
            String parameterName = parameterNames[i];
            final Object param = parameters.get(parameterName);
            String value = param instanceof String[] ? ((String[]) param)[0]
                    : ((param == null) ? null : param.toString());
            if (value == null) {
                value = "";
            }
            if (!url.endsWith("/")) {
                url.append("/");
            }
            url.append(urlEncodePathComponent(value));
            parameterNamesToAdd.remove(parameterName);
        }
    }

    if (!parameterNamesToAdd.isEmpty()) {
        boolean first = true;
        for (String parameterName : parameterNamesToAdd) {
            final Object param = parameters.get(parameterName);
            if (param instanceof String[]) {
                String[] values = (String[]) param;
                for (String value : values) {
                    url.append(first ? '?' : '&');
                    url.append(urlEncodeQueryComponent(parameterName)).append("=")
                            .append(urlEncodeQueryComponent(value));
                    first = false;
                }
            } else {
                url.append(first ? '?' : '&');
                String value = String.valueOf(param);
                url.append(urlEncodeQueryComponent(parameterName)).append("=")
                        .append(urlEncodeQueryComponent(value));
            }
            first = false;
        }
    }
}

From source file:com.gitblit.wicket.SessionlessForm.java

License:Apache License

/**
 * Append an additional hidden input tag that forces Wicket to correctly
 * determine the destination page class even after a session expiration or
 * a server restart.//www. ja  va 2s  .com
 *
 * @param markupStream
 *            The markup stream
 * @param openTag
 *            The open tag for the body
 */
@Override
public void onComponentTagBody(final MarkupStream markupStream, final ComponentTag openTag) {
    // render the hidden bookmarkable page field
    AppendingStringBuffer buffer = new AppendingStringBuffer(HIDDEN_DIV_START);
    buffer.append("<input type=\"hidden\" name=\"").append("wicket:bookmarkablePage").append("\" value=\":")
            .append(pageClass.getName()).append("\" />");

    // insert the page parameters, if any, as hidden fields as long as they
    // do not collide with any child wicket:id of the form.
    if (pageParameters != null) {
        for (String key : pageParameters.getNamedKeys()) {
            Component c = get(key);
            if (c != null) {
                // this form has a field id which matches the
                // parameter name, skip embedding a hidden value
                log.warn(MessageFormat.format(
                        "Skipping page parameter \"{0}\" from sessionless form hidden fields because it collides with a form child wicket:id",
                        key));
                continue;
            }
            String value = pageParameters.get(key).toString();
            buffer.append("<input type=\"hidden\" name=\"").append(recode(key)).append("\" value=\"")
                    .append(recode(value)).append("\" />");
        }
    }

    buffer.append("</div>");
    getResponse().write(buffer);
    super.onComponentTagBody(markupStream, openTag);
}

From source file:com.googlecode.ounit.HtmlFile.java

License:Open Source License

@Override
public Markup getAssociatedMarkup() {
    File f = getFile();/*ww w. ja va 2s  . c o m*/

    if (!getFile().canRead()) {
        //return Markup.NO_MARKUP;
        return Markup.of("<wicket:panel></wicket:panel>");
    }

    final AppendingStringBuffer sb = new AppendingStringBuffer("<wicket:panel>");
    try {
        sb.append(f.readString());
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
    sb.append("</wicket:panel>");
    InvalidMarkupFilter.removeInvalidMarkup(sb);

    return MarkupFactory.get().loadMarkup(this, new MarkupResourceStream(new StringResourceStream(sb)), false);
}