diff --git a/src/controller/resources/ResourcesControllerAdd.java b/src/controller/resources/ResourcesControllerAdd.java index 94c06a8..8d7db76 100644 --- a/src/controller/resources/ResourcesControllerAdd.java +++ b/src/controller/resources/ResourcesControllerAdd.java @@ -1,5 +1,10 @@ package controller.resources; +import com.google.appengine.api.datastore.Key; +import com.google.appengine.api.datastore.KeyFactory; +import controller.users.UsersControllerView; +import model.Resource; + import javax.jdo.JDOObjectNotFoundException; import javax.jdo.PersistenceManager; import javax.servlet.RequestDispatcher; @@ -29,13 +34,7 @@ public class ResourcesControllerAdd extends HttpServlet { String url = request.getParameter("url"); Boolean status = Boolean.parseBoolean(request.getParameter("status")); - Resource resource = new Resource(url,status); - - try{ - pm.makePersistent(resource); - } finally { - System.out.println("Recurso creado"); - } + createRole(url,status,pm); break; @@ -50,17 +49,17 @@ public class ResourcesControllerAdd extends HttpServlet { Key a = KeyFactory.stringToKey(request.getParameter("key")); - Resource resource = pm.getObjectById(Resource.class, a); + Resource resourc = pm.getObjectById(Resource.class, a); - resource.setName(request.getParameter("url")); - resource.setStatus(Boolean.parseBoolean(request.getParameter("status"))); + resourc.setUrl(request.getParameter("url")); + resourc.setStatus(Boolean.parseBoolean(request.getParameter("status"))); break; } pm.close(); try{ - response.sendRedirect("/resource"); + response.sendRedirect("/resources"); } //Al redirigr al jsp para crear, se usa RequestDispatcher, y este entra en conflicto con sendRedirect. catch (IllegalStateException e){ @@ -71,6 +70,17 @@ public class ResourcesControllerAdd extends HttpServlet { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { + doPost(request, response); + } + public static String createRole(String url, boolean status, PersistenceManager pm){ + Resource role = new Resource(url,status); + + try{ + pm.makePersistent(role); + return role.getKey(); + } finally { + System.out.println("Role creado"); + } } } diff --git a/src/controller/resources/ResourcesControllerDelete.java b/src/controller/resources/ResourcesControllerDelete.java index 7640b22..74750c1 100644 --- a/src/controller/resources/ResourcesControllerDelete.java +++ b/src/controller/resources/ResourcesControllerDelete.java @@ -3,6 +3,7 @@ package controller.resources; import com.google.appengine.api.datastore.Key; import com.google.appengine.api.datastore.KeyFactory; import model.Resource; +import model.Role; import javax.jdo.JDOObjectNotFoundException; import javax.jdo.PersistenceManager; @@ -21,9 +22,9 @@ public class ResourcesControllerDelete extends HttpServlet { PersistenceManager pm = controller.PMF.get().getPersistenceManager(); try { - Key k = KeyFactory.stringToKey(request.getParameter("key")); + Key key = KeyFactory.stringToKey(request.getParameter("key")); try{ - pm.deletePersistent(pm.getObjectById(Role.class, k)); + pm.deletePersistent(pm.getObjectById(Resource.class, key)); } catch (JDOObjectNotFoundException e){ System.err.println("Exception catched -> " + e.getMessage()); } @@ -33,11 +34,11 @@ public class ResourcesControllerDelete extends HttpServlet { System.err.println("Exception captured -> " + e.getMessage()); } - response.sendRedirect("/resource"); + response.sendRedirect("/resources"); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - + doPost(request, response); } } diff --git a/src/controller/resources/ResourcesControllerIndex.java b/src/controller/resources/ResourcesControllerIndex.java index b0b1836..57ed8a9 100644 --- a/src/controller/resources/ResourcesControllerIndex.java +++ b/src/controller/resources/ResourcesControllerIndex.java @@ -1,5 +1,6 @@ package controller.resources; +import controller.roles.RolesControllerView; import controller.users.UsersControllerView; import model.User; @@ -25,8 +26,8 @@ public class ResourcesControllerIndex extends HttpServlet { if (user == null) throw new NullPointerException("UsersControllerIndex: El usuario recibido es nulo."); request.setAttribute("User",user); - request.setAttribute("ResourceList",RolesControllerView.getAllRoles()); - RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/View/Resource/index.jsp"); + request.setAttribute("ResourceList",ResourcesControllerView.getAllResources()); + RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/View/Resources/index.jsp"); dispatcher.forward(request,response); } @@ -39,6 +40,6 @@ public class ResourcesControllerIndex extends HttpServlet { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - + doPost(request, response); } } diff --git a/src/controller/resources/ResourcesControllerView.java b/src/controller/resources/ResourcesControllerView.java index 66dd12c..2fa6921 100644 --- a/src/controller/resources/ResourcesControllerView.java +++ b/src/controller/resources/ResourcesControllerView.java @@ -14,6 +14,8 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.List; +import static controller.roles.RolesControllerView.getRole; + @SuppressWarnings("serial") public class ResourcesControllerView extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { @@ -28,8 +30,8 @@ public class ResourcesControllerView extends HttpServlet { //Redirige al formulario para editar un Resource (resource/view) if (action.equals("editRedirect") && key != null){ - RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/View/Resource/view.jsp"); - request.setAttribute("Resource",getRole(key)); + RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/View/Resources/view.jsp"); + request.setAttribute("Resource",getResource(key)); request.setAttribute("UserLogged",UsersControllerView.getUser(request.getSession().getAttribute("userID").toString())); //Ya que se quiere editar, el atributo permitirEdicion es verdadero. Este atributo se comprueba en el JSP. @@ -43,8 +45,8 @@ public class ResourcesControllerView extends HttpServlet { } //Redirige al formulario para ver un usuario (user/view) else if (action.equals("viewRedirect") && key != null){ - RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/View/Resource/view.jsp"); - request.setAttribute("Resource",getRole(key)); + RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/WEB-INF/View/Resources/view.jsp"); + request.setAttribute("Resource",getResource(key)); request.setAttribute("UserLogged",UsersControllerView.getUser(request.getSession().getAttribute("userID").toString())); //Ya que no quiere editar, el atributo permitirEdicion es falso. Este atributo se comprueba en el JSP. @@ -66,7 +68,7 @@ public class ResourcesControllerView extends HttpServlet { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { - + doPost(request, response); } /** @@ -77,11 +79,11 @@ public class ResourcesControllerView extends HttpServlet { * @return Un List con todos los Recursos * */ @SuppressWarnings("unchecked") - public static List getAllRoles(){ + public static List getAllResources(){ PersistenceManager pm = controller.PMF.get().getPersistenceManager(); - List users = (List) pm.newQuery("select from " + Resource.class.getName()).execute(); + List resources = (List) pm.newQuery("select from " + Resource.class.getName()).execute(); pm.close(); - return users; + return resources; } public static Resource getResource(String key){ @@ -91,4 +93,5 @@ public class ResourcesControllerView extends HttpServlet { pm.close(); return resource; } + } diff --git a/src/controller/users/UsersControllerAdd.java b/src/controller/users/UsersControllerAdd.java index d7a9b18..d18e4ea 100644 --- a/src/controller/users/UsersControllerAdd.java +++ b/src/controller/users/UsersControllerAdd.java @@ -1,7 +1,9 @@ package controller.users; +import controller.resources.ResourcesControllerView; import controller.roles.RolesControllerAdd; import controller.roles.RolesControllerView; +import model.Resource; import model.Role; import model.User; diff --git a/src/model/Resource.java b/src/model/Resource.java index 2fcd872..ab3106b 100644 --- a/src/model/Resource.java +++ b/src/model/Resource.java @@ -11,48 +11,54 @@ import javax.jdo.annotations.PrimaryKey; import com.google.appengine.api.datastore.Key; import com.google.appengine.api.datastore.KeyFactory; + +@PersistenceCapable public class Resource { - - - @PrimaryKey - @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) - private Key key; - - //URL del recurso - @Persistent - private String Url; - - //Estado del recurso - @Persistent - private boolean status; - - //Fecha de creacion del recurso - @Persistent - private String created; - - //Constructor - public Resource(String url,boolean status){ + + @PrimaryKey + @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY) + private Key key; + + //URL del recurso + @Persistent + private String Url; + + //Estado del recurso + @Persistent + private boolean status; + + //Fecha de creacion del recurso + @Persistent + private String created; + + //Constructor + public Resource(String url,boolean status){ this.Url=url; this.status=status; DateFormat df = new SimpleDateFormat("HH:mm:ss dd/MM/yy"); created = df.format(Calendar.getInstance().getTime()); - } - - public String getKey() { + } + + public String getKey() { return KeyFactory.keyToString(key); - } - public void setUrl(String url){ + } + public void setUrl(String url){ this.Url=url; - } - public String getUrl(){ + } + public String getUrl(){ return this.Url; - } - public void setStatus(boolean status){ + } + public void setStatus(boolean status){ this.status=status; - } - public boolean getStatus(){ + } + public boolean getStatus(){ return this.status; } + + public String getCreateDate(){ + return created; + } + public String toString(){ return "Recurso url: " + Url +"\n"; } diff --git a/war/WEB-INF/View/Resources/add.jsp b/war/WEB-INF/View/Resources/add.jsp index 5da1871..5204c39 100644 --- a/war/WEB-INF/View/Resources/add.jsp +++ b/war/WEB-INF/View/Resources/add.jsp @@ -76,10 +76,10 @@ @@ -94,7 +94,7 @@ Url of the Resource:
-
+
Status of the Resource:
- Name:
-
+ Url:
+

Status: