Save the actual version of the embryon api.

This commit is contained in:
Florian
2018-05-12 23:29:55 +02:00
parent 3f9f3d5ad1
commit 3928efbae9
21 changed files with 697 additions and 78 deletions
@@ -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;
}
}