Commit 537beae357e982f6556dc425ddb404253e1a7936
1 parent
b0350f11
feature: Löschen des angemeldeten Benutzers realisiert.
Showing
2 changed files
with
36 additions
and
0 deletions
src/main/java/net/ziemers/swxercise/lg/user/service/UserService.java
| @@ -60,6 +60,16 @@ public class UserService { | @@ -60,6 +60,16 @@ public class UserService { | ||
| 60 | dao.remove(User.class, id); | 60 | dao.remove(User.class, id); |
| 61 | } | 61 | } |
| 62 | 62 | ||
| 63 | + public boolean deleteUser() { | ||
| 64 | + final User user = session.getUser(); | ||
| 65 | + | ||
| 66 | + if (user != null) { | ||
| 67 | + dao.remove(User.class, user.getId()); | ||
| 68 | + return true; | ||
| 69 | + } | ||
| 70 | + return false; | ||
| 71 | + } | ||
| 72 | + | ||
| 63 | public User getSessionUser() { | 73 | public User getSessionUser() { |
| 64 | return session.getUser(); | 74 | return session.getUser(); |
| 65 | } | 75 | } |
src/main/java/net/ziemers/swxercise/ui/UserViewController.java
| @@ -90,6 +90,9 @@ public class UserViewController { | @@ -90,6 +90,9 @@ public class UserViewController { | ||
| 90 | /** | 90 | /** |
| 91 | * Löscht das User-Objekt mit der gewünschten Id. | 91 | * Löscht das User-Objekt mit der gewünschten Id. |
| 92 | * | 92 | * |
| 93 | + * Aufruf: | ||
| 94 | + * DELETE http://localhost:8080/swxercise/rest/users/42 | ||
| 95 | + * | ||
| 93 | * @param id die Id des gewünschten User-Objekts | 96 | * @param id die Id des gewünschten User-Objekts |
| 94 | * @return "Ok", wenn die Erstellung des User-Objekts erfolgreich war. | 97 | * @return "Ok", wenn die Erstellung des User-Objekts erfolgreich war. |
| 95 | */ | 98 | */ |
| @@ -102,8 +105,28 @@ public class UserViewController { | @@ -102,8 +105,28 @@ public class UserViewController { | ||
| 102 | } | 105 | } |
| 103 | 106 | ||
| 104 | /** | 107 | /** |
| 108 | + * Löscht das User-Objekt des zurzeit angemeldeten Benutzers. | ||
| 109 | + * | ||
| 110 | + * Aufruf: | ||
| 111 | + * DELETE http://localhost:8080/swxercise/rest/users | ||
| 112 | + * | ||
| 113 | + * @return "Ok", wenn das Löschen des User-Objekts erfolgreich war. | ||
| 114 | + */ | ||
| 115 | + @DELETE | ||
| 116 | + @Produces(MediaType.TEXT_PLAIN) | ||
| 117 | + public String deleteUser() { | ||
| 118 | + if (userService.deleteUser()) { | ||
| 119 | + return "Ok"; | ||
| 120 | + } | ||
| 121 | + return "Failed"; | ||
| 122 | + } | ||
| 123 | + | ||
| 124 | + /** | ||
| 105 | * Meldet einen Benutzer durch übergebenen username und password mit einer neuen User-{@link net.ziemers.swxercise.lg.model.user.Session} an. | 125 | * Meldet einen Benutzer durch übergebenen username und password mit einer neuen User-{@link net.ziemers.swxercise.lg.model.user.Session} an. |
| 106 | * | 126 | * |
| 127 | + * Aufruf: | ||
| 128 | + * POST http://localhost:8080/swxercise/rest/users/login | ||
| 129 | + * | ||
| 107 | * @param dto das mittels der als JSON-Objekt übergebenenen Eigenschaften zu füllende {@link UserDto} | 130 | * @param dto das mittels der als JSON-Objekt übergebenenen Eigenschaften zu füllende {@link UserDto} |
| 108 | * @return "Ok", wenn die Erstellung des User-Objekts erfolgreich war. | 131 | * @return "Ok", wenn die Erstellung des User-Objekts erfolgreich war. |
| 109 | */ | 132 | */ |
| @@ -122,6 +145,9 @@ public class UserViewController { | @@ -122,6 +145,9 @@ public class UserViewController { | ||
| 122 | /** | 145 | /** |
| 123 | * Meldet den angemeldeten Benutzer von seiner User-{@link net.ziemers.swxercise.lg.model.user.Session} ab. | 146 | * Meldet den angemeldeten Benutzer von seiner User-{@link net.ziemers.swxercise.lg.model.user.Session} ab. |
| 124 | * | 147 | * |
| 148 | + * Aufruf: | ||
| 149 | + * POST http://localhost:8080/swxercise/rest/users/logout | ||
| 150 | + * | ||
| 125 | * @return "Ok", wenn die Erstellung des User-Objekts erfolgreich war. | 151 | * @return "Ok", wenn die Erstellung des User-Objekts erfolgreich war. |
| 126 | */ | 152 | */ |
| 127 | @POST | 153 | @POST |