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

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

Introduction

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

Prototype

@Override
public CharSequence subSequence(final int start, final int end) 

Source Link

Document

Returns a new character sequence that is a subsequence of this sequence.

Usage

From source file:org.efaps.ui.wicket.EFapsApplication.java

License:Apache License

/**
 * @see org.apache.wicket.protocol.http.WebApplication#init()
 *//*from w w  w.ja v  a 2s .c  o  m*/
@Override
protected void init() {
    super.init();

    final String appKey = getInitParameter(AbstractFilter.INITPARAM_APP_KEY);
    final String loginRolesTmp = getInitParameter(AbstractFilter.INITPARAM_LOGIN_ROLES);
    final Set<UUID> temp = new HashSet<>();
    if (loginRolesTmp != null) {
        final String[] loginRolesAr = loginRolesTmp.split(",");
        for (final String loginRole : loginRolesAr) {
            temp.add(UUID.fromString(loginRole));
        }
    }
    AppAccessHandler.init(appKey, temp);

    final Map<String, String> map = new HashMap<>();
    for (final AppConfigHandler.Parameter param : AppConfigHandler.Parameter.values()) {
        final String configTmp = getInitParameter(param.getKey());
        if (configTmp != null) {
            map.put(param.getKey(), configTmp);
        }
    }
    if (!map.containsKey(AppConfigHandler.Parameter.TEMPFOLDER.getKey())) {
        map.put(AppConfigHandler.Parameter.TEMPFOLDER.getKey(),
                getStoreSettings().getFileStoreFolder().toURI().toString());
    }
    AppConfigHandler.init(map);

    getJavaScriptLibrarySettings().setJQueryReference(new DynamicJQueryResourceReference());

    getApplicationSettings().setPageExpiredErrorPage(LoginPage.class);
    getApplicationSettings().setInternalErrorPage(UnexpectedErrorPage.class);

    final CompoundClassResolver resolver = new CompoundClassResolver();
    resolver.add(new DefaultClassResolver());
    resolver.add(new AbstractClassResolver() {
        @Override
        public ClassLoader getClassLoader() {
            return EFapsClassLoader.getInstance();
        }

    });
    getApplicationSettings().setClassResolver(resolver);

    getApplicationSettings().setUploadProgressUpdatesEnabled(true);

    getDebugSettings().setAjaxDebugModeEnabled(false);
    getDebugSettings().setDevelopmentUtilitiesEnabled(false);

    setPageManagerProvider(new EFapsPageManagerProvider(this));
    getStoreSettings().setMaxSizePerSession(
            Bytes.megabytes(Configuration.getAttributeAsInteger(ConfigAttribute.STORE_MAXSIZEPERSESSION)));
    getStoreSettings()
            .setInmemoryCacheSize(Configuration.getAttributeAsInteger(ConfigAttribute.STORE_INMEMORYCACHE));

    getMarkupSettings().setStripWicketTags(true);
    getMarkupSettings().setStripComments(true);
    getMarkupSettings().setCompressWhitespace(true);
    getMarkupSettings().setAutomaticLinking(false);

    getRequestCycleSettings().setGatherExtendedBrowserInfo(true);
    getRequestCycleListeners().add(new EFapsRequestCycleListener());
    getRequestLoggerSettings().setRequestLoggerEnabled(false);

    getSecuritySettings().setAuthorizationStrategy(new EFapsFormBasedAuthorizationStartegy());

    getResourceSettings().setJavaScriptCompressor(new DefaultJavaScriptCompressor());

    // allow svg resources
    final IPackageResourceGuard guard = getResourceSettings().getPackageResourceGuard();
    if (guard instanceof SecurePackageResourceGuard) {
        ((SecurePackageResourceGuard) guard).addPattern("+*.svg");
    }

    setHeaderResponseDecorator(new IHeaderResponseDecorator() {

        @Override
        public IHeaderResponse decorate(final IHeaderResponse _response) {
            return new EFapsResourceAggregator(_response);
        }
    });
    getRequestCycleSettings().addResponseFilter(new IResponseFilter() {
        @Override
        public AppendingStringBuffer filter(final AppendingStringBuffer _responseBuffer) {
            final AppendingStringBuffer ret;
            if (RequestCycle.get().getActiveRequestHandler() instanceof ACAjaxRequestTarget) {
                ret = new AppendingStringBuffer().append(_responseBuffer.subSequence(0,
                        _responseBuffer.length() - XmlPartialPageUpdate.END_ROOT_ELEMENT.length()));
            } else {
                ret = _responseBuffer;
            }
            return ret;
        }
    });
}