projects
/
demos
/
pact
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
WIP
[demos/pact]
/
pwreset
/
src
/
main
/
java
/
de
/
juplo
/
demos
/
pwreset
/
adapters
/
in
/
WebController.java
diff --git
a/pwreset/src/main/java/de/juplo/demos/pwreset/adapters/in/WebController.java
b/pwreset/src/main/java/de/juplo/demos/pwreset/adapters/in/WebController.java
index
b848ce2
..
2d6b089
100644
(file)
--- a/
pwreset/src/main/java/de/juplo/demos/pwreset/adapters/in/WebController.java
+++ b/
pwreset/src/main/java/de/juplo/demos/pwreset/adapters/in/WebController.java
@@
-1,7
+1,7
@@
package de.juplo.demos.pwreset.adapters.in;
package de.juplo.demos.pwreset.adapters.in;
-import de.juplo.demos.pwreset.
api.domain.PasswordResetRequest
;
-import de.juplo.demos.pwreset.
api.domain.PasswordRes
tService;
+import de.juplo.demos.pwreset.
domain.ports.in.ResetRequestProgress
;
+import de.juplo.demos.pwreset.
domain.ports.in.PasswordRese
tService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
@@
-16,56
+16,72
@@
import java.util.UUID;
@RequiredArgsConstructor
public class WebController
{
@RequiredArgsConstructor
public class WebController
{
- private final PasswordRes
tService passwordRes
tService;
+ private final PasswordRes
etService passwordRese
tService;
@GetMapping("/")
@GetMapping("/")
- public String
requestForm
()
+ public String
welcome
()
{
return "request";
}
@PostMapping("/")
{
return "request";
}
@PostMapping("/")
- public void
r
esetRequest(
+ public void
createR
esetRequest(
@RequestParam String email,
HttpServletResponse httpServletResponse)
throws
IOException
{
@RequestParam String email,
HttpServletResponse httpServletResponse)
throws
IOException
{
-
PasswordResetRequest resetRequest = passwordRes
tService.request(email);
- httpServletResponse.sendRedirect(
resetRequest.getUser
Id().toString());
+
ResetRequestProgress progress = passwordRese
tService.request(email);
+ httpServletResponse.sendRedirect(
progress.getRequest
Id().toString());
}
@GetMapping("/{id}")
public ModelAndView getResetRequest(@PathVariable UUID id)
{
}
@GetMapping("/{id}")
public ModelAndView getResetRequest(@PathVariable UUID id)
{
- PasswordResetRequest resetRequest = passwordRestService.get(id);
- ModelAndView mav = new ModelAndView("confirm");
- return "confirm";
+ ResetRequestProgress progress = passwordResetService.get(id);
+ return createModelAndView(progress);
}
}
- @PutMapping("/{id")
+ @PutMapping("/{id
}
")
public ModelAndView confirmResetRequest(
@PathVariable UUID id,
@RequestParam String code,
@RequestParam String password)
{
public ModelAndView confirmResetRequest(
@PathVariable UUID id,
@RequestParam String code,
@RequestParam String password)
{
- ModelAndView mav = new ModelAndView("confirm");
+ ResetRequestProgress progress =
+ passwordResetService.confirm(
+ id,
+ code,
+ password);
+
+ ModelAndView mav = createModelAndView(progress);
+
mav.addObject("code", code);
mav.addObject("password", password);
mav.addObject("code", code);
mav.addObject("password", password);
- try
- {
- PasswordResetRequest resetRequest =
- passwordRestService.confirm(
- id,
- code,
-
password
);
+ return mav;
+ }
+
+ ModelAndView createModelAndView(ResetRequestProgress progress)
+ {
+ ModelAndView mav = new ModelAndView();
+
mav.addObject("progress", progress
);
+ if (progress.isAccepted())
+ {
+ if (progress.getConfirmed().isEmpty())
+ {
+ mav.setViewName("confirm");
+ }
+ else
+ {
+ mav.setViewName("confirmed");
+ }
}
}
- catch (Exception e)
+ else
{
{
- mav.
addObject("message", e.getMessage()
);
+ mav.
setViewName("denied"
);
}
return mav;
}
return mav;