From a765976c8354e8e246a27b900c98b3572b39a44a Mon Sep 17 00:00:00 2001
From: Falucho <german.faller@pcunix71.fing.edu.uy>
Date: Tue, 25 Jun 2019 14:55:15 -0300
Subject: [PATCH] Mas Base de Datos

---
 .../java/uy/edu/fing/tse/central/db/dao/GenericDao.java   | 2 ++
 .../fing/tse/central/db/dao/category/CategoryDAOBean.java | 8 ++++++++
 .../central/db/dao/check/checker/CheckCheckerDAOBean.java | 8 ++++++++
 .../db/dao/check/mechanism/CheckMechanismDAOBean.java     | 8 ++++++++
 .../uy/edu/fing/tse/central/db/dao/fact/FactDAOBean.java  | 8 ++++++++
 .../tse/central/db/dao/mechanism/MechanismDAOBean.java    | 8 ++++++++
 .../uy/edu/fing/tse/central/db/dao/role/RoleDAOBean.java  | 8 ++++++++
 .../edu/fing/tse/central/db/dao/score/ScoreDAOBean.java   | 8 ++++++++
 .../edu/fing/tse/central/db/dao/state/StateDAOBean.java   | 8 ++++++++
 .../central/db/dao/statehistory/StateHistoryDAOBean.java  | 8 ++++++++
 .../uy/edu/fing/tse/central/db/dao/user/UserDAOBean.java  | 8 ++++++++
 11 files changed, 82 insertions(+)

diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/GenericDao.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/GenericDao.java
index 8db42f3..9da182f 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/GenericDao.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/GenericDao.java
@@ -6,6 +6,8 @@ public interface GenericDao<T> {
 
     T create(T elem);
 
+    T update(T elem);
+
     T find(String key);
 
     T find(Long id);
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/category/CategoryDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/category/CategoryDAOBean.java
index cbe49ad..3e16595 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/category/CategoryDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/category/CategoryDAOBean.java
@@ -30,6 +30,14 @@ public class CategoryDAOBean implements CategoryDaoLocal {
         return MyMapper.INSTANCE.convert(r);
     }
 
+    @Override
+    public Category update(Category elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public Category find(String key) {
         final var query = em.createNamedQuery("Categoria.findByName", Categoria.class);
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/check/checker/CheckCheckerDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/check/checker/CheckCheckerDAOBean.java
index 4d5fae0..38e6606 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/check/checker/CheckCheckerDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/check/checker/CheckCheckerDAOBean.java
@@ -30,6 +30,14 @@ public class CheckCheckerDAOBean implements CheckCheckerDaoLocal {
         return MyMapper.INSTANCE.convert(r);
     }
 
+    @Override
+    public CheckChecker update(CheckChecker elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public CheckChecker find(String key) {
         final var query = em.createNamedQuery("VerificacionChecker.findByFact", VerificacionChecker.class);
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/check/mechanism/CheckMechanismDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/check/mechanism/CheckMechanismDAOBean.java
index 00110bf..2a7cf48 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/check/mechanism/CheckMechanismDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/check/mechanism/CheckMechanismDAOBean.java
@@ -30,6 +30,14 @@ public class CheckMechanismDAOBean implements CheckMechanismDaoLocal {
         return MyMapper.INSTANCE.convert(r);
     }
 
+    @Override
+    public CheckMechanism update(CheckMechanism elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public CheckMechanism find(String key) {
         final var query = em.createNamedQuery("VerificacionMecanismo.findByFact", VerificacionMecanismo.class);
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/fact/FactDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/fact/FactDAOBean.java
index 0f10a3b..499c792 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/fact/FactDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/fact/FactDAOBean.java
@@ -33,6 +33,14 @@ public class FactDAOBean implements FactDaoLocal {
         return MyMapper.INSTANCE.convert(hecho);
     }
 
+    @Override
+    public Fact update(Fact elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public Fact find(String key) {
         return find(Long.parseLong(key));
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/mechanism/MechanismDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/mechanism/MechanismDAOBean.java
index 4460a98..e5df8dd 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/mechanism/MechanismDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/mechanism/MechanismDAOBean.java
@@ -30,6 +30,14 @@ public class MechanismDAOBean implements MechanismDaoLocal {
         return MyMapper.INSTANCE.convert(r);
     }
 
+    @Override
+    public Mechanism update(Mechanism elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public Mechanism find(String key) {
         final var query = em.createNamedQuery("Calificacion.findByName", Mecanismo.class);
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/role/RoleDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/role/RoleDAOBean.java
index df8e0b8..fec24a8 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/role/RoleDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/role/RoleDAOBean.java
@@ -30,6 +30,14 @@ public class RoleDAOBean implements RoleDaoLocal {
         return MyMapper.INSTANCE.convert(r);
     }
 
+    @Override
+    public Role update(Role elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public Role find(String key) {
         final var query = em.createNamedQuery("Rol.findByName", Rol.class);
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/score/ScoreDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/score/ScoreDAOBean.java
index c7114ec..77d1d54 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/score/ScoreDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/score/ScoreDAOBean.java
@@ -30,6 +30,14 @@ public class ScoreDAOBean implements ScoreDaoLocal {
         return MyMapper.INSTANCE.convert(r);
     }
 
+    @Override
+    public Score update(Score elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public Score find(String key) {
         final var query = em.createNamedQuery("Calificacion.findByValue", Calificacion.class);
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/state/StateDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/state/StateDAOBean.java
index 2597912..adaa23e 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/state/StateDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/state/StateDAOBean.java
@@ -30,6 +30,14 @@ public class StateDAOBean implements StateDaoLocal {
         return MyMapper.INSTANCE.convert(r);
     }
 
+    @Override
+    public State update(State elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public State find(String key) {
         final var query = em.createNamedQuery("Estado.findByValue", Estado.class);
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/statehistory/StateHistoryDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/statehistory/StateHistoryDAOBean.java
index 7a70110..8c760cd 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/statehistory/StateHistoryDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/statehistory/StateHistoryDAOBean.java
@@ -30,6 +30,14 @@ public class StateHistoryDAOBean implements StateHistoryDaoLocal {
         return MyMapper.INSTANCE.convert(r);
     }
 
+    @Override
+    public StateHistory update(StateHistory elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public StateHistory find(String key) {
         final var query = em.createNamedQuery("TransicionEstado.findByState", TransicionEstado.class);
diff --git a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/user/UserDAOBean.java b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/user/UserDAOBean.java
index 30c0215..3193af1 100644
--- a/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/user/UserDAOBean.java
+++ b/central-db/src/main/java/uy/edu/fing/tse/central/db/dao/user/UserDAOBean.java
@@ -30,6 +30,14 @@ public class UserDAOBean implements UserDaoLocal {
         return MyMapper.INSTANCE.convert(newUser);
     }
 
+    @Override
+    public User update(User elem) {
+        final var r = MyMapper.INSTANCE.convert(elem);
+        final var then = em.merge(r);
+        em.flush();
+        return MyMapper.INSTANCE.convert(then);
+    }
+
     @Override
     public User find(String mail) {
         final var query = em.createNamedQuery("Usuario.findByMail", Usuario.class);
-- 
GitLab