List of usage examples for org.hibernate Session persist
void persist(Object object);
From source file:org.varrek.mwork.repo.RepoAccessController.java
public String grantRights(User userId, Repo repoId, boolean isAdmin, boolean isOperator, boolean isHaveAccess) { String result = "failure"; Session sess = HibernateUtil.openSession(); RepoAccess access = new RepoAccess(); // access.setUser(userId); access.setRepoAC(repoId);/*from w w w . ja va 2 s .c o m*/ access.setAdmin(isAdmin); access.setOperator(isOperator); access.setHaveAccess(isHaveAccess); try { sess.beginTransaction(); sess.persist(access); sess.getTransaction().commit(); } catch (Exception e) { throw e; } finally { result = "success"; } return result; }
From source file:org.varrek.mwork.repo.RepoAction.java
public String grantRights() { User user = controllerUser.getUserByLogin(getUsers()); User cuser = (User) ServletActionContext.getRequest().getAttribute("currentUser"); Repo rep = controller.getRepoByName(getName()); Session sess = HibernateUtil.openSession(); sess.update(rep);/*from w w w . j a v a 2 s.c om*/ Integer pos = -1; int i = 0; for (User curr : rep.getRepModer()) { if (curr.getId() == cuser.getId()) { pos = i; break; } i++; } System.out.println("uPos" + pos); BigInteger bInt = new BigInteger(getCode()); AccessSingleton storage = Storage.getInstance().getAccessRequest(user, rep); storage.setNewShare(pos, bInt); int expectCodeCount = rep.getRepModer().size() - 2; int actualCodeCount = storage.getShares().size(); System.out.println(expectCodeCount); System.out.println(actualCodeCount); System.out.println(storage); if (expectCodeCount == actualCodeCount) { Map<Integer, BigInteger> sh = storage.getShares(); final Shamir shamir = new Shamir(rep.getRepModer().size() - 2, rep.getRepModer().size() - 1); SecretShare[] shares = new SecretShare[sh.size()]; final BigInteger prime = new BigInteger(rep.getPrime()); i = 0; for (Map.Entry<Integer, BigInteger> entry : sh.entrySet()) { Integer key = entry.getKey(); System.out.println("Key: " + key); BigInteger value = entry.getValue(); System.out.println("value: " + value); SecretShare myShare = new SecretShare(key, value, shamir); shares[i] = myShare; i++; } final BigInteger result = shamir.combine(shares, prime); System.out.println("Prime from db: " + prime); System.out.println("New Result is " + result); System.out.println("Secret in DB " + rep.getSecret()); BigInteger expResult = new BigInteger(rep.getSecret()); int res; res = result.compareTo(expResult); System.out.println("Is equal:" + (res == 0)); if (res == 0) { try { sess.beginTransaction(); RepoAccess newRepoAccess = new RepoAccess(user, rep, false, false, true); sess.persist(newRepoAccess); sess.getTransaction().commit(); } catch (Exception e) { sess.getTransaction().rollback(); throw e; } } } return SUCCESS; }
From source file:org.varrek.mwork.repo.RepoController.java
public static String createRepository(String repoName, String description, User cUser) { String result = "failure"; Session sess = HibernateUtil.openSession(); Repo newRepo = new Repo(); cUser = (User) sess.get(User.class, cUser.getId()); newRepo.setName(repoName);// w w w . j ava 2 s . c o m newRepo.setDescr(description); RepoAccess newRepoAccess = new RepoAccess(cUser, newRepo, true, true, true); try { sess.beginTransaction(); sess.persist(newRepo); sess.persist(newRepoAccess); cUser.setRepoRight(newRepoAccess); newRepo.setUserRight(newRepoAccess); sess.update(cUser); sess.update(newRepo); sess.getTransaction().commit(); String path = "d:\\Documents\\Varrek\\Programs\\magwork\\Repos"; File theDir = new File(path + '\\' + repoName); System.out.println(theDir); theDir.mkdir(); result = "success"; } catch (Exception e) { throw e; } return result; }
From source file:org.varrek.mwork.repo.RepoController.java
public String grantRights(User userId, Repo repoId, boolean isAdmin, boolean isOperator, boolean isHaveAccess) { String result = "failure"; Session sess = HibernateUtil.openSession(); RepoAccess access = new RepoAccess(); access.setUserAc(userId);/*from w w w . j av a 2 s . c o m*/ access.setRepoAC(repoId); access.setAdmin(isAdmin); access.setOperator(isOperator); access.setHaveAccess(isHaveAccess); try { sess.beginTransaction(); sess.persist(access); sess.getTransaction().commit(); } catch (Exception e) { throw e; } finally { result = "success"; } return result; }
From source file:org.varrek.mwork.repo.RepoController.java
public boolean addManagers(List<User> users, Repo rep) { boolean result = false; Session sess = HibernateUtil.openSession(); sess.update(rep);// w ww . j av a2 s. c o m sess.beginTransaction(); final Shamir shamir = new Shamir(users.size() - 1, users.size()); Random rnd = new Random(); final BigInteger secret = new BigInteger(133, rnd); rep.setSecret(secret.toString()); final SecretShare[] shares = shamir.split(secret); final BigInteger prime = shamir.getPrime(); rep.setPrime(prime.toString()); int i = 0; try { for (User curr : users) { RepoAccess newRepoAccess = new RepoAccess(curr, rep, false, true, true); curr.setMessages("Code: " + shares[i].toString() + " for Repo" + rep.getName()); sess.update(curr); i++; sess.persist(newRepoAccess); rep.setUserRight(newRepoAccess); } sess.update(rep); sess.getTransaction().commit(); } catch (Exception e) { sess.getTransaction().rollback(); throw e; } return result; }