Examples of HeaderValues


Examples of io.undertow.util.HeaderValues

                SpdyProtocolUtils.putInt(inputBuffer, headers.size());

                long fiCookie = headers.fastIterateNonEmpty();
                while (fiCookie != -1) {
                    HeaderValues headerValues = headers.fiCurrent(fiCookie);
                    //TODO: for now it just fails if there are too many headers
                    SpdyProtocolUtils.putInt(inputBuffer, headerValues.getHeaderName().length());
                    for (int i = 0; i < headerValues.getHeaderName().length(); ++i) {
                        inputBuffer.put((byte) (Character.toLowerCase((char) headerValues.getHeaderName().byteAt(i))));
                    }
                    int pos = inputBuffer.position();
                    SpdyProtocolUtils.putInt(inputBuffer, 0); //size, back fill

                    int size = headerValues.size() - 1; //null between the characters

                    for (int i = 0; i < headerValues.size(); ++i) {
                        String val = headerValues.get(i);
                        size += val.length();
                        for (int j = 0; j < val.length(); ++j) {
                            inputBuffer.put((byte) val.charAt(j));
                        }
                        if (i != headerValues.size() - 1) {
                            inputBuffer.put((byte) 0);
                        }
                    }
                    SpdyProtocolUtils.putInt(inputBuffer, size, pos);
                    fiCookie = headers.fiNext(fiCookie);
View Full Code Here

Examples of io.undertow.util.HeaderValues

    }


    static void copyHeaders(final HeaderMap to, final HeaderMap from) {
        long f = from.fastIterateNonEmpty();
        HeaderValues values;
        while (f != -1L) {
            values = from.fiCurrent(f);
            to.putAll(values.getHeaderName(), values);
            f = from.fiNextNonEmpty(f);
        }
    }
View Full Code Here

Examples of io.undertow.util.HeaderValues

     */
    private boolean allIncomingHeadersMatch(HttpServerExchange exchange, RequestDefinition request) {
        for (String headerName : request.getHeaders().keySet()) {
            final String mockValue = request.getHeaders().get(headerName);

            final HeaderValues requestValues = exchange.getRequestHeaders().get(headerName);
            if (requestValues.size() != 1 || !requestValues.get(0).equals(mockValue)) {
                LOGGER.trace("Failed to match header {} in request for path: {}", headerName, exchange.getRequestPath());
                return false;
            }
        }

View Full Code Here

Examples of io.undertow.util.HeaderValues

    @Override
    public Map<Integer, ResponseDefinition> matchResponse(HttpServerExchange exchange, ResourceDefinition endpoint, RequestDefinition request, Map<Integer, ResponseDefinition> candidates) {
        final Map<Integer, ResponseDefinition> matched = new HashMap<>();

        final HeaderValues acceptHeaders = exchange.getRequestHeaders().get(Headers.ACCEPT);

        if (null != acceptHeaders && acceptHeaders.size() > 0) {
            final String acceptValue = acceptHeaders.get(0);

            if (StringUtils.isNotBlank(acceptValue)) {
                for (ResponseDefinition response : candidates.values()) {
                    if (acceptValue.equals(response.getHeaders().get(Headers.CONTENT_TYPE_STRING))) {
                        LOGGER.trace("Match response {} to request with path '{}' using Accept and Content-Type headers (Accept: {})",
View Full Code Here

Examples of io.undertow.util.HeaderValues

    }


    static void copyHeaders(final HeaderMap to, final HeaderMap from) {
        long f = from.fastIterateNonEmpty();
        HeaderValues values;
        while (f != -1L) {
            values = from.fiCurrent(f);
            to.putAll(values.getHeaderName(), values);
            f = from.fiNextNonEmpty(f);
        }
    }
View Full Code Here

Examples of io.undertow.util.HeaderValues

    @Override
    public List<RequestDefinition> matchRequest(HttpServerExchange exchange, ResourceDefinition endpoint, List<RequestDefinition> candidates) throws MethodNotAllowedException {
        final List<RequestDefinition> matchedByAcceptHeader = new ArrayList<>();

        final HeaderValues acceptHeader = exchange.getRequestHeaders().get(Headers.ACCEPT);
        if (null != acceptHeader && acceptHeader.size() > 0) {
            final String acceptValue = acceptHeader.get(0);
            if (StringUtils.isNotBlank(acceptValue)) {

                for (RequestDefinition request : candidates) {
                    final String mockRequestAccept = request.getHeaders().get(Headers.ACCEPT_STRING);
                    if (mockRequestAccept.equals(acceptValue)) {
View Full Code Here

Examples of io.undertow.util.HeaderValues

        return exchange.getResponseHeaders().getFirst(name);
    }

    @Override
    public Collection<String> getHeaders(final String name) {
        HeaderValues headers = exchange.getResponseHeaders().get(name);
        if(headers == null) {
            return Collections.emptySet();
        }
        return new ArrayList<>(headers);
    }
View Full Code Here

Examples of io.undertow.util.HeaderValues

    }


    static void copyHeaders(final HeaderMap to, final HeaderMap from) {
        long f = from.fastIterateNonEmpty();
        HeaderValues values;
        while (f != -1L) {
            values = from.fiCurrent(f);
            to.putAll(values.getHeaderName(), values);
            f = from.fiNextNonEmpty(f);
        }
    }
View Full Code Here

Examples of io.undertow.util.HeaderValues

            if (headers != currentHeaders) {
                throw new IllegalStateException();
            }
        }
        while (it != -1) {
            HeaderValues values = headers.fiCurrent(it);
            boolean skip = false;
            if (firstPass) {
                if (values.getHeaderName().byteAt(0) != ':') {
                    skip = true;
                }
            } else {
                if (values.getHeaderName().byteAt(0) == ':') {
                    skip = true;
                }
            }
            if (!skip) {
                for (int i = 0; i < values.size(); ++i) {

                    HttpString headerName = values.getHeaderName();
                    int required = 11 + headerName.length(); //we use 11 to make sure we have enough room for the variable length itegers

                    String val = values.get(i);
                    TableEntry tableEntry = findInTable(headerName, val);

                    required += (1 + val.length());

                    if (target.remaining() < required) {
View Full Code Here

Examples of io.undertow.util.HeaderValues

        return exchange.getResponseHeaders().getFirst(name);
    }

    @Override
    public Collection<String> getHeaders(final String name) {
        HeaderValues headers = exchange.getResponseHeaders().get(name);
        if(headers == null) {
            return Collections.emptySet();
        }
        return new ArrayList<>(headers);
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.