Example usage for io.netty.handler.codec.http HttpHeaderNames ACCESS_CONTROL_MAX_AGE

List of usage examples for io.netty.handler.codec.http HttpHeaderNames ACCESS_CONTROL_MAX_AGE

Introduction

In this page you can find the example usage for io.netty.handler.codec.http HttpHeaderNames ACCESS_CONTROL_MAX_AGE.

Prototype

AsciiString ACCESS_CONTROL_MAX_AGE

To view the source code for io.netty.handler.codec.http HttpHeaderNames ACCESS_CONTROL_MAX_AGE.

Click Source Link

Document

"access-control-max-age"

Usage

From source file:net.anyflow.menton.http.HttpRequestRouter.java

License:Apache License

protected static void setDefaultHeaders(FullHttpRequest request, HttpResponse response) {
    response.headers().add(HttpHeaderNames.SERVER,

            net.anyflow.lannister.Settings.SELF.getProperty("menton.version"));

    boolean keepAlive = request.headers().get(HttpHeaderNames.CONNECTION) == HttpHeaderValues.KEEP_ALIVE
            .toString();//from ww  w.  j  ava 2 s. c  o m
    if (keepAlive) {
        response.headers().set(HttpHeaderNames.CONNECTION, HttpHeaderValues.KEEP_ALIVE);
    }

    if (Settings.SELF.getProperty("menton.httpServer.allowCrossDomain", "false").equalsIgnoreCase("true")) {
        response.headers().add(HttpHeaderNames.ACCESS_CONTROL_ALLOW_ORIGIN, "*");
        response.headers().add(HttpHeaderNames.ACCESS_CONTROL_ALLOW_METHODS, "POST, GET, PUT, DELETE");
        response.headers().add(HttpHeaderNames.ACCESS_CONTROL_ALLOW_HEADERS, "X-PINGARUNER");
        response.headers().add(HttpHeaderNames.ACCESS_CONTROL_MAX_AGE, "1728000");
    }

    response.headers().set(HttpHeaderNames.CONTENT_LENGTH, response.content().readableBytes());
}

From source file:org.ballerinalang.composer.service.ballerina.parser.service.BallerinaParserService.java

License:Open Source License

@OPTIONS
@Path("/built-in-packages")
@Consumes(MediaType.APPLICATION_JSON)/*from  w ww . j  a v a  2  s  .  c  o m*/
@Produces(MediaType.APPLICATION_JSON)
public Response getBuiltInPackages() {
    return Response.ok().header(HttpHeaderNames.ACCESS_CONTROL_MAX_AGE.toString(), "600 ")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_ORIGIN.toString(), "*")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_CREDENTIALS.toString(), "true")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_METHODS.toString(),
                    "POST, GET, PUT, UPDATE, DELETE, OPTIONS, HEAD")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_HEADERS.toString(),
                    HttpHeaderNames.CONTENT_TYPE.toString() + ", " + HttpHeaderNames.ACCEPT.toString()
                            + ", X-Requested-With")
            .build();
}

From source file:org.ballerinalang.composer.service.ballerina.parser.service.BallerinaParserService.java

License:Open Source License

@OPTIONS
@Path("/endpoints")
@Consumes(MediaType.APPLICATION_JSON)//w  w w.  jav a 2 s .c o  m
@Produces(MediaType.APPLICATION_JSON)
public Response getEndpointOptions() {
    return Response.ok().header(HttpHeaderNames.ACCESS_CONTROL_MAX_AGE.toString(), "600 ")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_ORIGIN.toString(), "*")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_CREDENTIALS.toString(), "true")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_METHODS.toString(),
                    "POST, GET, PUT, UPDATE, DELETE, OPTIONS, HEAD")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_HEADERS.toString(),
                    HttpHeaderNames.CONTENT_TYPE.toString() + ", " + HttpHeaderNames.ACCEPT.toString()
                            + ", X-Requested-With")
            .build();
}

From source file:org.ballerinalang.composer.service.ballerina.parser.service.BallerinaParserService.java

License:Open Source License

@OPTIONS
@Path("/actions")
@Consumes(MediaType.APPLICATION_JSON)// w  w w . ja  va  2  s  . co  m
@Produces(MediaType.APPLICATION_JSON)
public Response getActionsOptions() {
    return Response.ok().header(HttpHeaderNames.ACCESS_CONTROL_MAX_AGE.toString(), "600 ")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_ORIGIN.toString(), "*")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_CREDENTIALS.toString(), "true")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_METHODS.toString(),
                    "POST, GET, PUT, UPDATE, DELETE, OPTIONS, HEAD")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_HEADERS.toString(),
                    HttpHeaderNames.CONTENT_TYPE.toString() + ", " + HttpHeaderNames.ACCEPT.toString()
                            + ", X-Requested-With")
            .build();
}

From source file:org.ballerinalang.composer.service.ballerina.parser.service.BallerinaParserService.java

License:Open Source License

@OPTIONS
@Path("/built-in-types")
@Consumes(MediaType.APPLICATION_JSON)//from   w ww . j  av a2 s  . co  m
@Produces(MediaType.APPLICATION_JSON)
public Response getBuiltInTypesOptions() {
    return Response.ok().header(HttpHeaderNames.ACCESS_CONTROL_MAX_AGE.toString(), "600 ")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_ORIGIN.toString(), "*")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_CREDENTIALS.toString(), "true")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_METHODS.toString(),
                    "POST, GET, PUT, UPDATE, DELETE, OPTIONS, HEAD")
            .header(HttpHeaderNames.ACCESS_CONTROL_ALLOW_HEADERS.toString(),
                    HttpHeaderNames.CONTENT_TYPE.toString() + ", " + HttpHeaderNames.ACCEPT.toString()
                            + ", X-Requested-With")
            .build();
}

From source file:org.ballerinalang.net.http.CorsHeaderGenerator.java

License:Open Source License

private static Map<String, String> processPreflightRequest(String originValue, HttpCarbonMessage cMsg) {
    Map<String, String> responseHeaders = new HashMap<>();
    //6.2.1 - request must have origin, must have one origin.
    List<String> requestOrigins = getOriginValues(originValue);
    if (requestOrigins == null || requestOrigins.size() != 1) {
        bLog.info("{} origin header field parsing failed", ACTION);
        return null;
    }/*from ww  w. java 2 s . c  om*/
    String origin = requestOrigins.get(0);
    //6.2.3 - request must have access-control-request-method, must be single-valued
    List<String> requestMethods = getHeaderValues(HttpHeaderNames.ACCESS_CONTROL_REQUEST_METHOD.toString(),
            cMsg);
    if (requestMethods == null || requestMethods.size() != 1) {
        String error = requestMethods == null ? "Access-Control-Request-Method header is unavailable"
                : "Access-Control-Request-Method header value must be single-valued";
        bLog.info("{} {}", ACTION, error);
        return null;
    }
    String requestMethod = requestMethods.get(0);
    CorsHeaders resourceCors = getResourceCors(cMsg, requestMethod);
    if (resourceCors == null || !resourceCors.isAvailable()) {
        String error = resourceCors == null ? "access control request method not allowed"
                : "CORS headers not declared properly";
        bLog.info("{} {}", ACTION, error);
        return null;
    }
    if (!isEffectiveMethod(requestMethod, resourceCors.getAllowMethods())) {
        bLog.info("{} access control request method not allowed", ACTION);
        return null;
    }
    //6.2.2 - request origin must be on the list or match with *.
    if (!isEffectiveOrigin(Arrays.asList(origin), resourceCors.getAllowOrigins())) {
        bLog.info("{} origin not allowed", ACTION);
        return null;
    }
    //6.2.4 - get list of request headers.
    List<String> requestHeaders = getHeaderValues(HttpHeaderNames.ACCESS_CONTROL_REQUEST_HEADERS.toString(),
            cMsg);
    if (!isEffectiveHeader(requestHeaders, resourceCors.getAllowHeaders())) {
        bLog.info("{} header field parsing failed", ACTION);
        return null;
    }
    //6.2.7 - set origin and credentials
    setAllowOriginAndCredentials(Arrays.asList(origin), resourceCors, responseHeaders);
    //6.2.9 - set allow-methods
    responseHeaders.put(HttpHeaderNames.ACCESS_CONTROL_ALLOW_METHODS.toString(), requestMethod);
    //6.2.10 - set allow-headers
    if (requestHeaders != null) {
        responseHeaders.put(HttpHeaderNames.ACCESS_CONTROL_ALLOW_HEADERS.toString(),
                DispatcherUtil.concatValues(requestHeaders, false));
    }
    //6.2.8 - set max-age
    responseHeaders.put(HttpHeaderNames.ACCESS_CONTROL_MAX_AGE.toString(),
            String.valueOf(resourceCors.getMaxAge()));
    return responseHeaders;
}

From source file:org.ballerinalang.stdlib.services.cors.HTTPCorsTest.java

License:Open Source License

public void assertEqualsCorsResponse(HttpCarbonMessage response, int statusCode, String origin,
        String credentials, String headers, String methods, String maxAge) {
    Assert.assertEquals(response.getProperty(HttpConstants.HTTP_STATUS_CODE), statusCode);
    Assert.assertEquals(response.getHeader(HttpHeaderNames.ACCESS_CONTROL_ALLOW_ORIGIN.toString()), origin);
    Assert.assertEquals(response.getHeader(HttpHeaderNames.ACCESS_CONTROL_ALLOW_CREDENTIALS.toString()),
            credentials);/*from  w  w w . j  av  a2 s .com*/
    Assert.assertEquals(response.getHeader(HttpHeaderNames.ACCESS_CONTROL_ALLOW_HEADERS.toString()), headers);
    Assert.assertEquals(response.getHeader(HttpHeaderNames.ACCESS_CONTROL_ALLOW_METHODS.toString()), methods);
    Assert.assertEquals(response.getHeader(HttpHeaderNames.ACCESS_CONTROL_MAX_AGE.toString()), maxAge);
}

From source file:org.elasticsearch.hadoop.http.netty4.cors.Netty4CorsHandler.java

License:Apache License

private void setMaxAge(final HttpResponse response) {
    response.headers().set(HttpHeaderNames.ACCESS_CONTROL_MAX_AGE, config.maxAge());
}