PreferencesHeaderProvider.java 文件源码

java
阅读 15 收藏 0 点赞 0 评论 0

项目:Soffit 作者:
@Override
public Header createHeader(RenderRequest renderRequest, RenderResponse renderResponse) {

    // Username
    final String username = getUsername(renderRequest);

    // PreferencesMap
    final Map<String,List<String>> preferencesMap = new HashMap<>();
    final PortletPreferences prefs = renderRequest.getPreferences();
    for (Map.Entry<String,String[]> y : prefs.getMap().entrySet()) {
        final String name = y.getKey();

        /*
         * We ignore (skip) preferences that exist for the benefit of the
         * SoffitConnectorController.
         */
        if (name.startsWith(SoffitConnectorController.CONNECTOR_PREFERENCE_PREFIX)) {
            continue;
        }

        List<String> values = Arrays.asList(prefs.getValues(name, new String[0]));
        if (!values.isEmpty()) {
            preferencesMap.put(name, values);
        }
    }

    // Preferences header
    final Preferences preferences = preferencesService.createPreferences(preferencesMap, username, getExpiration(renderRequest));
    final Header rslt = new BasicHeader(
            Headers.PREFERECES.getName(),
            preferences.getEncryptedToken());
    logger.debug("Produced the following Preferences header for username='{}':  {}", username, rslt);

    return rslt;

}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号