All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.serverless.proxy.jersey.JerseyAwsProxyServletRequestFactory Maven / Gradle / Ivy

/*
 * Copyright 2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
 * with the License. A copy of the License is located at
 *
 * http://aws.amazon.com/apache2.0/
 *
 * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES
 * OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
 * and limitations under the License.
 */
package com.amazonaws.serverless.proxy.jersey;


import com.amazonaws.serverless.proxy.internal.AwsProxySecurityContextWriter;
import com.amazonaws.serverless.proxy.internal.servlet.AwsProxyHttpServletRequest;
import org.glassfish.hk2.api.Factory;

import javax.servlet.http.HttpServletRequest;

/**
 * Implementation of Jersey's Factory object for HttpServletRequest objects. This can be used
 * by Jersey to generate a Servlet request given an AwsProxyRequest event.
 *
 * 
 * 
 *     ResourceConfig app = new ResourceConfig().packages("my.app.package")
 *         .register(new AbstractBinder() {
 *             {@literal @}Override
 *             protected void configure() {
 *                 bindFactory(JerseyAwsProxyServletRequestFactory.class)
 *                     .to(HttpServletRequest.class)
 *                     .in(RequestScoped.class);
 *            }
 *       });
 * 
 * 
*/ public class JerseyAwsProxyServletRequestFactory implements Factory { //------------------------------------------------------------- // Implementation - Factory //------------------------------------------------------------- @Override public HttpServletRequest provide() { return new AwsProxyHttpServletRequest(JerseyAwsProxyRequestReader.getCurrentRequest(), JerseyAwsProxyRequestReader.getCurrentLambdaContext(), AwsProxySecurityContextWriter.getCurrentContext()); } @Override public void dispose(HttpServletRequest httpServletRequest) { } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy