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

View File

@@ -0,0 +1,47 @@
package org.codiki.account;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.codiki.core.entities.dto.PasswordWrapperDTO;
import org.codiki.core.entities.dto.UserDTO;
import org.codiki.core.entities.persistence.User;
import org.codiki.core.security.TokenService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
@RequestMapping("/api/account")
public class AccountController {
private static final String HEADER_TOKEN = "token";
@Autowired
private AccountService accountService;
@Autowired
private TokenService tokenService;
@PostMapping("/login")
public UserDTO login(@RequestBody UserDTO pUser, HttpServletResponse response) {
return accountService.checkCredentials(response, pUser);
}
@GetMapping("/logout")
public void logout(HttpServletRequest pRequest) {
tokenService.removeUser(pRequest.getHeader(HEADER_TOKEN));
}
@PutMapping("/changePassword")
public boolean changePassword(@RequestBody final PasswordWrapperDTO pPasswordWrapper,
final HttpServletRequest pRequest,
final HttpServletResponse pResponse) {
return accountService.changePassword(tokenService.getAuthenticatedUserByToken(pRequest), pPasswordWrapper, pResponse);
}
}