Archived
Save the actual version of the embryon api.
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
package org.codiki.posts;
|
||||
|
||||
import java.util.Optional;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
|
||||
import org.codiki.core.entities.dto.PostDTO;
|
||||
import org.codiki.core.entities.persistence.Post;
|
||||
import org.codiki.core.repositories.PostRepository;
|
||||
import org.codiki.core.security.TokenService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@Service
|
||||
public class PostService {
|
||||
|
||||
@Autowired
|
||||
private PostRepository postRepository;
|
||||
|
||||
@Autowired
|
||||
private TokenService tokenService;
|
||||
|
||||
public Optional<Post> insert(final PostDTO pPost, final HttpServletRequest pRequest,
|
||||
final HttpServletResponse pResponse) {
|
||||
Optional<Post> result = Optional.empty();
|
||||
|
||||
final String userToken = pRequest.getHeader("token");
|
||||
|
||||
if(userToken.equals(pPost.getAuthor().getToken())) {
|
||||
final Post postToSave = new Post(pPost);
|
||||
postToSave.setAuthor(tokenService.getAuthenticatedUserByToken(pRequest));
|
||||
postRepository.save(postToSave);
|
||||
result = Optional.of(postToSave);
|
||||
} else {
|
||||
pResponse.setStatus(HttpServletResponse.SC_FORBIDDEN);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user