package restx.servlet; import com.google.common.collect.ImmutableSet; import restx.common.Version; import restx.factory.Module; import restx.factory.Provides; import restx.security.RestxPrincipal; import javax.inject.Named; import java.security.Principal; /** * Date: 23/4/14 * Time: 20:58 */ @Module(priority = 200) public class ServletModule { public static final String SERVLET_PRINCIPAL_CONVERTER = "ServletPrincipalConverter"; @Provides @Named(SERVLET_PRINCIPAL_CONVERTER) public ServletPrincipalConverter defaultServletPrincipalConverter() { return new ServletPrincipalConverter() { @Override public RestxPrincipal toRestxPrincipal(final Principal principal) { return new RestxPrincipal() { @Override public ImmutableSet<String> getPrincipalRoles() { return ImmutableSet.of(); } @Override public String getName() { return principal.getName(); } }; } }; } @Provides public RegisteredServerType jettyServerType() { return new RegisteredServerType( "Jetty " + Version.getVersion("org.eclipse.jetty", "jetty-server"), "org.eclipse.jetty"); } @Provides public RegisteredServerType tomcatServerType() { return new RegisteredServerType( "Apache Tomcat " + Version.getVersion("org.apache.tomcat", "tomcat-catalina"), "org.eclipse.jetty"); } }