private void create (String id) { try (DB db = new DB()) { db.open(); db.beginTransaction(); SeqNo seq = new SeqNo(id); db.session().save(seq); db.commit(); } catch (Exception ignored) { } } }
public static <T> T execWithTransaction(String configModifier, DBAction<T> action) throws Exception { try (DB db = new DB(configModifier)) { db.open(); db.beginTransaction(); T obj = action.exec(db); db.commit(); return obj; } }
public static <T> T execWithTransaction(DBAction<T> action) throws Exception { try (DB db = new DB()) { db.open(); db.beginTransaction(); T obj = action.exec(db); db.commit(); return obj; } }
private void createSchema () throws HibernateException, DocumentException { DB db = new DB(); db.open(); db.beginTransaction(); db.createSchema(null, true); db.commit(); db.close(); }
/** * Release an async lock * @param id lock ID * @param lockedBy unique client identifier */ public boolean release (String id, long lockedBy) { if (db.session != null && db.session.isOpen()) throw new IllegalStateException("DB should not be open"); try (DB db1 = db) { db1.open(); db1.beginTransaction(); SeqNo seq = getOrCreate(id); if (seq.getLockedBy() == lockedBy && seq.getLockUntil() > System.currentTimeMillis()) { seq.setLockedBy(0L); db1.commit(); return true; } } return false; }
@Override public void exec(CLIContext cli, String[] args) throws Exception { if (args.length < 2) { cli.println("Usage: rm <id> "); return; } try (DB db = new DB()) { db.open(); db.beginTransaction(); SysConfigManager mgr = new SysConfigManager(db); if (cli.getUserData().containsKey(SYSCONFIG.PREFIX)) mgr.setPrefix((String) cli.getUserData().get(SYSCONFIG.PREFIX)); boolean deleted = mgr.delete(args[1]); db.commit(); cli.println ("sysconfig " + (deleted ? "deleted" : "not found")); } catch (Exception e) { cli.println (e.getMessage()); } } }
@Override public void exec(CLIContext cli, String[] args) throws Exception { if (args.length != 2) { cli.println("Usage: rmrole <role>"); return; } try (DB db = new DB()) { db.open(); db.beginTransaction(); RoleManager rm = new RoleManager(db); Role r = rm.getRoleByName(args[1]); if (r != null) db.session().delete(r); db.commit(); cli.println (r != null ? "Role " + r + " has been deleted" : "Role not found"); } catch (Exception e) { cli.println (e.getMessage()); } } }
@Override public void exec(CLIContext cli, String[] args) throws Exception { if (args.length != 2) { cli.println("Usage: rmrole <role>"); return; } try (DB db = new DB()) { db.open(); db.beginTransaction(); RoleManager rm = new RoleManager(db); Role r = rm.getRoleByName(args[1]); if (r != null) db.session().delete(r); db.commit(); cli.println (r != null ? "Role " + r + " has been deleted" : "Role not found"); } catch (Exception e) { cli.println (e.getMessage()); } } }
Collections.addAll(user.getPermissions(), pp); db.commit(); cli.println ("GLUser '" + user.getNick() + "' created"); } catch (Exception e) {
@Override public void exec(CLIContext cli, String[] args) throws Exception { if (args.length < 3) { cli.println("Usage: add <id> <value>"); return; } try (DB db = new DB()) { db.open(); db.beginTransaction(); SysConfigManager mgr = new SysConfigManager(db); if (cli.getUserData().containsKey(SYSCONFIG.PREFIX)) mgr.setPrefix((String) cli.getUserData().get(SYSCONFIG.PREFIX)); boolean added = false; if (mgr.get(args[1], null) == null) { mgr.put(args[1], args[2], READPERM, WRITEPERM); added = true; } db.commit(); cli.println ("sysconfig " + (added ? "created" : "already exists")); } catch (Exception e) { cli.println (e.getMessage()); } } }
@Override public void exec(CLIContext cli, String[] args) throws Exception { if (args.length != 2) { cli.println("Usage: rmconsumer <id>"); return; } try (DB db = new DB()) { db.open(); db.beginTransaction(); ConsumerManager mgr = new ConsumerManager(db); Consumer c = mgr.getById(args[1]); if (c != null) { c.setDeleted(true); } db.commit(); cli.println(c != null ? "Consumer " + c.getId() + " has been deleted" : "Consumer does not exist"); } catch (Exception e) { cli.println(e.getMessage()); } } }
@Override public void exec(CLIContext cli, String[] args) throws Exception { if (args.length != 2) { cli.println("Usage: rmuser <user>"); return; } try (DB db = new DB()) { db.open(); db.beginTransaction(); UserManager mgr = new UserManager(db); User u = mgr.getUserByNick(args[1]); if (u != null) { u.setDeleted(true); } db.commit(); cli.println(u != null ? "User " + u.getNickAndId() + " has been deleted" : "User does not exist"); } catch (Exception e) { cli.println(e.getMessage()); } } }
@Override public void exec(CLIContext cli, String[] args) throws Exception { if (args.length < 2) { cli.println("Usage: addrole <role> <permission 1> <permission 2> ... <permission n>"); return; } try (DB db = new DB()) { db.open(); db.beginTransaction(); RoleManager rm = new RoleManager(db); Role role = null; if (rm.getRoleByName(args[1]) == null) { role = new Role(args[1]); Set<Permission> perms = role.getPermissions(); for (int i = 2; i < args.length; i++) perms.add(Permission.valueOf(args[i])); db.save(role); } db.commit(); cli.println (role != null ? "Role created " + role.getName() : " Role already exists"); } catch (Exception e) { cli.println (e.getMessage()); } } }
@Override public void exec(CLIContext cli, String[] args) throws Exception { if (args.length < 2) { cli.println("Usage: addpermission <role> <permission 1> <permission 2> ... <permission n>"); return; } try (DB db = new DB()) { db.open(); db.beginTransaction(); RoleManager rm = new RoleManager(db); Role role = null; if (rm.getRoleByName(args[1]) == null) { role = new Role(args[1]); Set<Permission> perms = role.getPermissions(); for (int i = 2; i < args.length; i++) perms.add(Permission.valueOf(args[i])); db.save(role); } db.commit(); cli.println (role != null ? "Role created " + role.getName() : " Role already exists"); } catch (Exception e) { cli.println (e.getMessage()); } } }
private void reset() { try (DB db = new DB()) { SeqNoManager mgr = new SeqNoManager(db); db.open(); db.beginTransaction(); mgr.reset("sync", 0L); db.commit(); } } }
private void createRealms() throws Exception { db.beginTransaction(); db.save(new Realm("TEST")); db.save(new Realm("PROD")); db.commit(); }
private long next(long delay) { try (DB db = new DB()) { SeqNoManager mgr = new SeqNoManager(db); db.open(); db.beginTransaction(); long l = mgr.next("sync", 999999L); ISOUtil.sleep(delay); db.commit(); return l; } }
private void createUser() throws Exception { db.beginTransaction(); User user = new User(); user.setNick("admin"); user.setName("User Administrator"); user.setActive(true); db.session().save(user); UserManager mgr = new UserManager(db, HashVersion.ZERO); mgr.setPassword(user, "test", null); RealmManager rmgr = new RealmManager(db); Realm testRealm = rmgr.getRealmByName("TEST"); Realm prodRealm = rmgr.getRealmByName("PROD"); Role r = createRole(db, null, "admin", "login", "admin"); user.getRoles().add(r); // user permissions: `login`, `admin`, `role.admin` Role r1 = createRole (db, testRealm, "tester", "testread", "testwrite"); r1.setParent(r); user.getRoles().add(r1); // adds permissions: `TEST.testread`, `TEST.testwrite` db.commit(); } public void checkUser() throws Exception {
assertTrue("User password is back to 'test'", mgr.checkPassword(u, "test")); assertEquals ("History size is ", 5, u.getPasswordhistory().size()); db.commit();