src/main/java/de/uapcore/lightpit/modules/UsersModule.java

changeset 86
0a658e53177c
parent 79
f64255a88d66
child 157
1e6f16fad3a5
--- a/src/main/java/de/uapcore/lightpit/modules/UsersModule.java	Sat May 30 18:12:38 2020 +0200
+++ b/src/main/java/de/uapcore/lightpit/modules/UsersModule.java	Mon Jun 01 14:46:58 2020 +0200
@@ -32,6 +32,8 @@
 import de.uapcore.lightpit.*;
 import de.uapcore.lightpit.dao.DataAccessObjects;
 import de.uapcore.lightpit.entities.User;
+import de.uapcore.lightpit.viewmodel.UsersEditView;
+import de.uapcore.lightpit.viewmodel.UsersView;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -57,7 +59,9 @@
     public ResponseType index(HttpServletRequest req, DataAccessObjects dao) throws SQLException {
         final var userDao = dao.getUserDao();
 
-        req.setAttribute("users", userDao.list());
+        final var viewModel = new UsersView();
+        viewModel.setUsers(userDao.list());
+        setViewModel(req, viewModel);
         setContentPage(req, "users");
 
         return ResponseType.HTML;
@@ -66,9 +70,11 @@
     @RequestMapping(requestPath = "edit", method = HttpMethod.GET)
     public ResponseType edit(HttpServletRequest req, DataAccessObjects dao) throws SQLException {
 
-        req.setAttribute("user", findByParameter(req, Integer.class, "id",
+        final var viewModel = new UsersEditView();
+        viewModel.setUser(findByParameter(req, Integer.class, "id",
                 dao.getUserDao()::find).orElse(new User(-1)));
 
+        setViewModel(req, viewModel);
         setContentPage(req, "user-form");
 
         return ResponseType.HTML;
@@ -92,8 +98,10 @@
 
             LOG.debug("Successfully updated user {}", user.getUsername());
         } catch (NoSuchElementException | IllegalArgumentException | SQLException ex) {
-            // TODO: set request attribute with error text
-            req.setAttribute("user", user);
+            final var viewModel = new UsersEditView();
+            viewModel.setUser(user);
+            // TODO: viewModel.setErrorText()
+            setViewModel(req, viewModel);
             setContentPage(req, "user-form");
             LOG.warn("Form validation failure: {}", ex.getMessage());
             LOG.debug("Details:", ex);

mercurial