Archived
Add spring security configuration.
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package org.codiki.posts;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.security.Principal;
|
||||
import java.util.Collections;
|
||||
import java.util.Date;
|
||||
import java.util.LinkedList;
|
||||
@@ -19,7 +20,7 @@ import org.codiki.core.entities.persistence.Post;
|
||||
import org.codiki.core.entities.persistence.User;
|
||||
import org.codiki.core.repositories.CategoryRepository;
|
||||
import org.codiki.core.repositories.PostRepository;
|
||||
import org.codiki.core.security.TokenService;
|
||||
import org.codiki.core.services.UserService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -44,13 +45,13 @@ public class PostService {
|
||||
private CategoryRepository categoryRepository;
|
||||
|
||||
@Autowired
|
||||
private TokenService tokenService;
|
||||
private UserService userService;
|
||||
|
||||
public Optional<Post> insert(final PostDTO pPost, final HttpServletRequest pRequest,
|
||||
final HttpServletResponse pResponse) {
|
||||
final HttpServletResponse pResponse, final Principal pPrincipal) {
|
||||
Optional<Post> result = Optional.empty();
|
||||
|
||||
final Optional<User> user = tokenService.getAuthenticatedUserByToken(pRequest);
|
||||
final Optional<User> user = userService.getUserByPrincipal(pPrincipal);
|
||||
|
||||
if(user.isPresent()) {
|
||||
final Post postToSave = new Post(pPost);
|
||||
@@ -65,8 +66,8 @@ public class PostService {
|
||||
}
|
||||
|
||||
public void update(final PostDTO pPost, final HttpServletRequest pRequest,
|
||||
final HttpServletResponse pResponse) throws IOException {
|
||||
final Optional<User> connectedUser = tokenService.getAuthenticatedUserByToken(pRequest);
|
||||
final HttpServletResponse pResponse, final Principal pPrincipal) throws IOException {
|
||||
final Optional<User> connectedUser = userService.getUserByPrincipal(pPrincipal);
|
||||
|
||||
if(connectedUser.isPresent() && connectedUser.get().getKey().equals(pPost.getAuthor().getKey())) {
|
||||
final Optional<Post> postOpt = postRepository.getByKey(pPost.getKey());
|
||||
@@ -96,10 +97,10 @@ public class PostService {
|
||||
}
|
||||
|
||||
public void delete(final String pPostKey, final HttpServletRequest pRequest,
|
||||
final HttpServletResponse pResponse) throws IOException {
|
||||
final HttpServletResponse pResponse, final Principal pPrincipal) throws IOException {
|
||||
final Optional<Post> postToDelete = postRepository.getByKey(pPostKey);
|
||||
if(postToDelete.isPresent()) {
|
||||
final Optional<User> connectedUser = tokenService.getAuthenticatedUserByToken(pRequest);
|
||||
final Optional<User> connectedUser = userService.getUserByPrincipal(pPrincipal);
|
||||
if(connectedUser.isPresent()) {
|
||||
if(connectedUser.get().getKey().equals(postToDelete.get().getAuthor().getKey())) {
|
||||
postRepository.delete(postToDelete.get());
|
||||
|
||||
Reference in New Issue
Block a user