summaryrefslogtreecommitdiffstats
path: root/container-core/src/main/java/com/yahoo/container/servlet/ServletProvider.java
blob: 903c01a27f78e80ef801861a497b8a2c236e4232 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.container.servlet;

import javax.servlet.Servlet;

import com.yahoo.container.di.componentgraph.Provider;
import org.eclipse.jetty.servlet.ServletHolder;

/**
 * @author stiankri
 */
public class ServletProvider implements Provider<ServletHolder> {

    private ServletHolder servletHolder;

    public ServletProvider(Servlet servlet, ServletConfigConfig servletConfigConfig) {
        servletHolder = new ServletHolder(servlet);

        servletConfigConfig.map().forEach( (key, value) ->
                servletHolder.setInitParameter(key, value)
        );
    }

    @Override
    public ServletHolder get() {
        return servletHolder;
    }

    @Override
    public void deconstruct() { }
}