/*
 * File: src/main/java/purchase/config/WebConfig.java
 * Description: This configuration class registers application-wide settings for web requests.
 * It adds the JWT interceptor to enforce authentication on all API endpoints, ensuring
 * secure access to protected resources within the application.
*/

package com.nebula.erp.purchase.config;

import com.nebula.erp.purchase.interceptor.JwtInterceptor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {

    @Autowired
    private JwtInterceptor jwtInterceptor;

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        // Add the JWT interceptor for all API endpoints
        registry.addInterceptor(jwtInterceptor)
                .addPathPatterns("/api/**"); // Adjust this path to your API prefix if needed
    }

}