Subversion Repositories SmartDukaan

Rev

Rev 22151 | Rev 23886 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
21561 ashik.ali 1
package com.spice.profitmandi.web.config;
21555 kshitij.so 2
 
23878 amit.gupta 3
import java.util.List;
4
 
21561 ashik.ali 5
import org.springframework.beans.factory.annotation.Autowired;
21555 kshitij.so 6
import org.springframework.context.annotation.ComponentScan;
7
import org.springframework.context.annotation.Configuration;
23878 amit.gupta 8
import org.springframework.http.converter.HttpMessageConverter;
9
import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
21555 kshitij.so 10
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
21561 ashik.ali 11
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
21555 kshitij.so 12
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
13
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
14
 
23878 amit.gupta 15
import com.fasterxml.jackson.databind.ObjectMapper;
16
import com.fasterxml.jackson.datatype.jdk8.Jdk8Module;
17
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
18
import com.fasterxml.jackson.module.paramnames.ParameterNamesModule;
21561 ashik.ali 19
import com.spice.profitmandi.web.interceptor.AuthenticationInterceptor;
22107 ashik.ali 20
import com.spice.profitmandi.web.interceptor.RoleInterceptor;
21561 ashik.ali 21
 
21555 kshitij.so 22
@EnableWebMvc
23
@Configuration
24
@ComponentScan({"com.spice.profitmandi.*"})
25
public class WebConfig extends WebMvcConfigurerAdapter{
26
 
27
	private static final String RESOURCES_PATTERN="/resources/**";
28
	private static final String RESOURCES_LOCATION="/resources/";
29
 
21561 ashik.ali 30
	@Autowired
31
	AuthenticationInterceptor authenticationInterceptor;
22107 ashik.ali 32
 
33
	@Autowired
34
	RoleInterceptor roleInterceptor;
35
 
21555 kshitij.so 36
	@Override
37
	public void addResourceHandlers(ResourceHandlerRegistry registry) {
38
	   registry.addResourceHandler(RESOURCES_PATTERN).addResourceLocations(RESOURCES_LOCATION);
39
	}
40
 
21561 ashik.ali 41
	@Override
42
	public void addInterceptors(InterceptorRegistry registry) {
22151 amit.gupta 43
		registry.addInterceptor(authenticationInterceptor).addPathPatterns("/**").excludePathPatterns("/login", "/login/", "/", "");
44
		registry.addInterceptor(roleInterceptor).excludePathPatterns("/login", "/login/", "/register", "/register/", "", "/");
21561 ashik.ali 45
	}
46
 
23878 amit.gupta 47
 
48
	@Override
49
    public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
50
 
51
        converters.add(new MappingJackson2HttpMessageConverter(objectMapper()));
52
        super.configureMessageConverters(converters);
53
    }
54
 
55
	private ObjectMapper objectMapper() {
56
		ObjectMapper mapper = new ObjectMapper()
57
				   .registerModule(new ParameterNamesModule())
58
				   .registerModule(new Jdk8Module())
59
				   .registerModule(new JavaTimeModule()); // new module, NOT JSR310Module
60
		return mapper;
61
	}
62
 
21555 kshitij.so 63
}