/** * Return the resolved role taken from a bound contract. A resolved role may be a {@link RoleLink} itself, or null * (if a link is incorrect). * * @return {@link Role} */ @Nullable public Role getRole() { return getContract().getRole(roleName); }
/** * Get role as string. * * @return string with data of role */ @Override public String toString() { if (getContract() != null) { final Role role = getRole(); return "RoleLink<" + getName() + "->" + roleName + ":" + ((role == null) ? "null" : role.toString()) + ">"; } else { return "RoleLink<" + getName() + "->" + roleName + ":" + "not connected>"; } }
c.traceErrors(); assertTrue(c.check()); assertEquals(c, ((RoleLink) c.getPermissions().getFirst("change_owner").getRole()).getContract()); Role cOwner = c.getOwner(); assertTrue (cOwner.isAllowedForKeys(new HashSet<>(Do.listOf(ownerKey1)))); assertEquals(c, ((RoleLink) c.getPermissions().getFirst("change_owner").getRole()).getContract()); assertEquals(c2, ((RoleLink) c2.getPermissions().getFirst("change_owner").getRole()).getContract()); assertEquals(c, ((RoleLink) c.getPermissions().getFirst("change_owner").getRole()).getContract()); c2.setOwnerKey(ownerKey3); assertNotEquals(c.getOwner(), c2.getOwner());