Example usage for io.netty.handler.codec.http.cookie ServerCookieDecoder decode

List of usage examples for io.netty.handler.codec.http.cookie ServerCookieDecoder decode

Introduction

In this page you can find the example usage for io.netty.handler.codec.http.cookie ServerCookieDecoder decode.

Prototype

public Set<Cookie> decode(String header) 

Source Link

Document

Decodes the specified Set-Cookie HTTP header value into a Cookie .

Usage

From source file:io.syncframework.netty.RequestWrapper.java

License:Apache License

public void setRequest(HttpRequest request) {
    this.request = request;
    this.session = null;

    ///*from  w ww .j a  va  2s. co  m*/
    // setting headers...
    //
    for (Entry<String, String> entry : request.headers()) {
        String name = entry.getKey();
        String value = entry.getValue();

        if (log.isTraceEnabled())
            log.trace("header: {} -> {}", name, value);

        if (name.toLowerCase().equals(HttpHeaderNames.COOKIE.toString())) {
            ServerCookieDecoder decoder = ServerCookieDecoder.STRICT;
            Set<Cookie> cookies = decoder.decode(value);
            for (Cookie cookie : cookies) {
                cookieContext.put(cookie.name(), cookie.value());
            }
            continue;
        }

        List<String> values = headers.get(name);
        if (values == null) {
            values = new LinkedList<String>();
        }
        values.add(entry.getValue());
        headers.put(name, values);
    }

    //
    // parameters from the URL
    //
    QueryStringDecoder decoderQuery = new QueryStringDecoder(request.uri());
    Map<String, List<String>> uriAttributes = decoderQuery.parameters();
    for (Entry<String, List<String>> attr : uriAttributes.entrySet()) {
        parameters.put(attr.getKey(), attr.getValue());
    }
}