Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
103,974 changes: 103,974 additions & 0 deletions logs/application.log

Large diffs are not rendered by default.

4 changes: 4 additions & 0 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,10 @@
<artifactId>spring-security-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.modelmapper</groupId>
<artifactId>modelmapper</artifactId>
Expand Down
4 changes: 0 additions & 4 deletions src/main/java/com/hexaware/lms/LmsApplication.java
Original file line number Diff line number Diff line change
Expand Up @@ -18,13 +18,9 @@
@SpringBootApplication
@RestController
public class LmsApplication {


public static void main(String[] args) {
log.debug("Applicaiton is running");
SpringApplication.run(LmsApplication.class, args);

}


}
2 changes: 1 addition & 1 deletion src/main/java/com/hexaware/lms/Mapper/impl/BookMapper.java
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

@Component
@RequiredArgsConstructor
public class BookMapper implements Mapper<Book, BookDto> {
public class BookMapper implements Mapper<Book, BookDto> {

private final ModelMapper modelMapper;

Expand Down
25 changes: 25 additions & 0 deletions src/main/java/com/hexaware/lms/Mapper/impl/UserMapper.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package com.hexaware.lms.Mapper.impl;


import com.hexaware.lms.Mapper.Mapper;
import com.hexaware.lms.dto.UserDetailDto;
import com.hexaware.lms.entity.User;
import lombok.RequiredArgsConstructor;
import org.modelmapper.ModelMapper;
import org.springframework.stereotype.Component;

@Component
@RequiredArgsConstructor
public class UserMapper implements Mapper<User, UserDetailDto> {
private final ModelMapper modelMapper;

@Override
public UserDetailDto mapTo(User user) {
return modelMapper.map(user, UserDetailDto.class);
}

@Override
public User mapFrom(UserDetailDto userDetailDto) {
return modelMapper.map(userDetailDto, User.class);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,7 @@
@Configuration
@RequiredArgsConstructor
public class ApplicationConfig {

private final AuthenticationRepository authenticationRepository;

@Bean
public UserDetailsService userDetailsService(){

Expand Down
1 change: 0 additions & 1 deletion src/main/java/com/hexaware/lms/config/auth/JwtService.java
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,6 @@ public String generateToken(
Map<String ,Object> extraClaims,
UserDetails userDetails
) {
// log.info(""+new Date(System.currentTimeMillis())+" "+new Date(System.currentTimeMillis() + 1000 * 60 * 60 * 24));
return Jwts
.builder()
.setClaims(extraClaims)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

import com.hexaware.lms.repository.AuthenticationRepository;
import lombok.RequiredArgsConstructor;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.security.authentication.AuthenticationManager;
Expand All @@ -12,6 +14,7 @@
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.core.Authentication;
import org.springframework.security.core.context.SecurityContextHolder;
import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.security.core.userdetails.UserDetailsService;
Expand All @@ -21,13 +24,20 @@
import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
import org.springframework.security.web.authentication.logout.LogoutHandler;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
@EnableWebSecurity
@RequiredArgsConstructor
@EnableMethodSecurity
public class SecurityConfiguration {
public class SecurityConfiguration implements WebMvcConfigurer {
private static final String[] WHITE_LIST_URL = {"/api/v1/auth/**",
"/api/v1/book/books",
"/api/v1/book/books/**",
"/api/v1/book/bookFilter",
"/actuator",
"/actuator/**",
"/v2/api-docs",
"/v3/api-docs",
"/v3/api-docs/**",
Expand All @@ -41,6 +51,9 @@ public class SecurityConfiguration {
private final JwtAuthenticationFilter jwtAuthenticationFilter;
private final AuthenticationProvider authenticationProvider;
private final LogoutHandler logoutHandler;

@Value("${app.FRONTEND_URL}")
private String FRONTEND_URL;

@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
Expand All @@ -66,5 +79,14 @@ public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Excepti

}

@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/api/**")
.allowedOrigins(FRONTEND_URL)
.allowedMethods("GET", "POST", "PUT", "DELETE","PATCH")
.allowedHeaders("*")
.allowCredentials(true)
.maxAge(3600);
}

}
Loading