/* (c) 2016 Open Source Geospatial Foundation - all rights reserved
* This code is licensed under the GPL 2.0 license, available at the root
* application directory.
*/
package org.geoserver.security.oauth2;
import org.geoserver.config.util.XStreamPersister;
import org.geoserver.security.GeoServerSecurityManager;
import org.geoserver.security.config.SecurityNamedServiceConfig;
import org.geoserver.security.filter.GeoServerSecurityFilter;
/**
* @author Alessio Fabiani, GeoSolutions S.A.S.
*
*/
public class GoogleOAuth2AuthenticationProvider extends GeoServerOAuthAuthenticationProvider {
public GoogleOAuth2AuthenticationProvider(
GeoServerSecurityManager securityManager,
String tokenServices, String oauth2SecurityConfiguration, String geoServerOauth2RestTemplate) {
super(securityManager, tokenServices, oauth2SecurityConfiguration, geoServerOauth2RestTemplate);
}
@Override
public void handlePostChanged(GeoServerSecurityManager securityManager) {
// Nothing to do
}
@Override
public void configure(XStreamPersister xp) {
xp.getXStream().alias("googleOauth2Authentication", GoogleOAuth2FilterConfig.class);
}
@Override
public Class<? extends GeoServerSecurityFilter> getFilterClass() {
return GoogleOAuthAuthenticationFilter.class;
}
@Override
public GeoServerSecurityFilter createFilter(SecurityNamedServiceConfig config) {
return new GoogleOAuthAuthenticationFilter(config, tokenServices,
oauth2SecurityConfiguration, geoServerOauth2RestTemplate);
}
}