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 |