Search in sources :

Example 1 with UserRole

use of com.github.drinkjava2.functionstest.entitynet.entities.UserRole in project jSqlBox by drinkjava2.

the class EntityNetDemoTest method insertDemoData.

protected void insertDemoData() {
    // @formatter:off
    // Batch insert enabled
    ctx.nBatchBegin();
    new User().put("id", "u1").put("userName", "user1").insert();
    new User().put("id", "u2").put("userName", "user2").insert();
    new User().put("id", "u3").put("userName", "user3").insert();
    new User().put("id", "u4").put("userName", "user4").insert();
    new User().put("id", "u5").put("userName", "user5").insert();
    new Address().put("id", "a1", "addressName", "address1", "userId", "u1").insert();
    new Address().put("id", "a2", "addressName", "address2", "userId", "u2").insert();
    new Address().put("id", "a3", "addressName", "address3", "userId", "u3").insert();
    new Address().put("id", "a4", "addressName", "address4", "userId", "u4").insert();
    new Address().put("id", "a5", "addressName", "address5", "userId", "u5").insert();
    new Email().putFields("id", "emailName", "userId");
    new Email().putValues("e1", "email1", "u1").insert();
    new Email().putValues("e2", "email2", "u1").insert();
    new Email().putValues("e3", "email3", "u2").insert();
    new Email().putValues("e4", "email4", "u2").insert();
    new Email().putValues("e5", "email5", "u3").insert();
    Role r = new Role();
    r.setId("r1");
    r.setRoleName("role1");
    r.insert();
    r.setId("r2");
    r.setRoleName("role2");
    r.insert();
    r.setId("r3");
    r.setRoleName("role3");
    r.insert();
    r.setId("r4");
    r.setRoleName("role4");
    r.insert();
    r.setId("r5");
    r.setRoleName("role5");
    r.insert();
    Privilege p = new Privilege();
    p.setId("p1");
    p.setPrivilegeName("privilege1");
    p.insert();
    p.setId("p2");
    p.setPrivilegeName("privilege2");
    p.insert();
    p.setId("p3");
    p.setPrivilegeName("privilege3");
    p.insert();
    p.setId("p4");
    p.setPrivilegeName("privilege4");
    p.insert();
    p.setId("p5");
    p.setPrivilegeName("privilege5");
    p.insert();
    UserRole ur = new UserRole();
    ur.setUserId("u1");
    ur.setRid("r1");
    ur.insert();
    ur.setUserId("u2");
    ur.setRid("r1");
    ur.insert();
    ur.setUserId("u2");
    ur.setRid("r2");
    ur.insert();
    ur.setUserId("u2");
    ur.setRid("r3");
    ur.insert();
    ur.setUserId("u3");
    ur.setRid("r4");
    ur.insert();
    ur.setUserId("u4");
    ur.setRid("r1");
    ur.insert();
    new RolePrivilege().putFields("rid", "pid");
    new RolePrivilege().putValues("r1", "p1").insert();
    new RolePrivilege().putValues("r2", "p1").insert();
    new RolePrivilege().putValues("r2", "p2").insert();
    new RolePrivilege().putValues("r2", "p3").insert();
    new RolePrivilege().putValues("r3", "p3").insert();
    new RolePrivilege().putValues("r4", "p1").insert();
    // Batch insert end
    ctx.nBatchEnd();
// @formatter:on
}
Also used : UserRole(com.github.drinkjava2.functionstest.entitynet.entities.UserRole) Role(com.github.drinkjava2.functionstest.entitynet.entities.Role) User(com.github.drinkjava2.functionstest.entitynet.entities.User) Email(com.github.drinkjava2.functionstest.entitynet.entities.Email) Address(com.github.drinkjava2.functionstest.entitynet.entities.Address) UserRole(com.github.drinkjava2.functionstest.entitynet.entities.UserRole) RolePrivilege(com.github.drinkjava2.functionstest.entitynet.entities.RolePrivilege) RolePrivilege(com.github.drinkjava2.functionstest.entitynet.entities.RolePrivilege) Privilege(com.github.drinkjava2.functionstest.entitynet.entities.Privilege)

Example 2 with UserRole

use of com.github.drinkjava2.functionstest.entitynet.entities.UserRole in project jSqlBox by drinkjava2.

the class PathUtils method getRelationShip.

/**
 * The the relationship between from and to
 */
static Object[] getRelationShip(EntityNet net, Class<?> from, Class<?> to) {
    TableModel fromModel = net.getConfigModels().get(from);
    String fromTable = fromModel.getTableName();
    TableModel toModel = net.getConfigModels().get(to);
    String toTable = toModel.getTableName();
    Object[] result = null;
    // assume from is child, like from is RoleUser, to is UserPOJO
    for (FKeyModel fKeyModel : fromModel.getFkeyConstraints()) {
        String parentTableName = fKeyModel.getRefTableAndColumns()[0];
        if (toTable.equalsIgnoreCase(parentTableName)) {
            if (result != null)
                throw new EntityNetException("Auto path can not determined, multiple relationships found between class " + from + " and " + to);
            result = new Object[3];
            result[0] = "P-";
            result[1] = to;
            String[] refs = fKeyModel.getColumnNames().toArray(new String[fKeyModel.getColumnNames().size()]);
            result[2] = refs;
        }
    }
    // assume to is child, like from is UserPOJO, to is UserRole
    for (FKeyModel fKeyModel : toModel.getFkeyConstraints()) {
        String parentTableName = fKeyModel.getRefTableAndColumns()[0];
        if (fromTable.equalsIgnoreCase(parentTableName)) {
            if (result != null)
                throw new EntityNetException("Auto path can not determined, multiple relationships found between class " + from + " and " + to);
            result = new Object[3];
            result[0] = "C-";
            result[1] = to;
            String[] refs = fKeyModel.getColumnNames().toArray(new String[fKeyModel.getColumnNames().size()]);
            result[2] = refs;
        }
    }
    if (result != null)
        return result;
    throw new EntityNetException("Auto path can not determined, no relationship found between class " + from + " and " + to);
}
Also used : TableModel(com.github.drinkjava2.jdialects.model.TableModel) FKeyModel(com.github.drinkjava2.jdialects.model.FKeyModel)

Aggregations

Address (com.github.drinkjava2.functionstest.entitynet.entities.Address)1 Email (com.github.drinkjava2.functionstest.entitynet.entities.Email)1 Privilege (com.github.drinkjava2.functionstest.entitynet.entities.Privilege)1 Role (com.github.drinkjava2.functionstest.entitynet.entities.Role)1 RolePrivilege (com.github.drinkjava2.functionstest.entitynet.entities.RolePrivilege)1 User (com.github.drinkjava2.functionstest.entitynet.entities.User)1 UserRole (com.github.drinkjava2.functionstest.entitynet.entities.UserRole)1 FKeyModel (com.github.drinkjava2.jdialects.model.FKeyModel)1 TableModel (com.github.drinkjava2.jdialects.model.TableModel)1