@Override public boolean isAbstract() { return definition.isAbstract(); }
@Override public boolean isAbstract() { return definition.isAbstract(); }
@Override public boolean isAbstract() { return definition.isAbstract(); }
@Override public boolean isAbstract() { return def.isAbstract(); }
private void writePrivilegeNode(@NotNull Tree privilegesTree, @NotNull PrivilegeDefinition definition) throws RepositoryException { String name = definition.getName(); Tree privNode = TreeUtil.addChild(privilegesTree, name, NT_REP_PRIVILEGE); if (definition.isAbstract()) { privNode.setProperty(REP_IS_ABSTRACT, true); } Set<String> declAggrNames = definition.getDeclaredAggregateNames(); boolean isAggregate = !declAggrNames.isEmpty(); if (isAggregate) { privNode.setProperty(REP_AGGREGATES, declAggrNames, Type.NAMES); } PrivilegeBits bits; if (PrivilegeBits.BUILT_IN.containsKey(name)) { bits = PrivilegeBits.BUILT_IN.get(name); } else if (isAggregate) { bits = bitsMgr.getBits(declAggrNames); if (bits.isEmpty()) { throw new RepositoryException("Illegal aggregation of non-exising privileges on '" + name + "'."); } } else { bits = next(); } bits.writeTo(privNode); }
private void writePrivilegeNode(@NotNull Tree privilegesTree, @NotNull PrivilegeDefinition definition) throws RepositoryException { String name = definition.getName(); Tree privNode = TreeUtil.addChild(privilegesTree, name, NT_REP_PRIVILEGE); if (definition.isAbstract()) { privNode.setProperty(REP_IS_ABSTRACT, true); } Set<String> declAggrNames = definition.getDeclaredAggregateNames(); boolean isAggregate = !declAggrNames.isEmpty(); if (isAggregate) { privNode.setProperty(REP_AGGREGATES, declAggrNames, Type.NAMES); } PrivilegeBits bits; if (PrivilegeBits.BUILT_IN.containsKey(name)) { bits = PrivilegeBits.BUILT_IN.get(name); } else if (isAggregate) { bits = bitsMgr.getBits(declAggrNames); if (bits.isEmpty()) { throw new RepositoryException("Illegal aggregation of non-exising privileges on '" + name + "'."); } } else { bits = next(); } bits.writeTo(privNode); }
private void writePrivilegeNode(Tree privilegesTree, PrivilegeDefinition definition) throws RepositoryException { String name = definition.getName(); Tree privNode = TreeUtil.addChild(privilegesTree, name, NT_REP_PRIVILEGE); if (definition.isAbstract()) { privNode.setProperty(REP_IS_ABSTRACT, true); } Set<String> declAggrNames = definition.getDeclaredAggregateNames(); boolean isAggregate = declAggrNames.size() > 0; if (isAggregate) { privNode.setProperty(REP_AGGREGATES, declAggrNames, Type.NAMES); } PrivilegeBits bits; if (PrivilegeBits.BUILT_IN.containsKey(name)) { bits = PrivilegeBits.BUILT_IN.get(name); } else if (isAggregate) { bits = bitsMgr.getBits(declAggrNames); } else { bits = next(); } bits.writeTo(privNode); }
@Test public void testNotEquals() { PrivilegeDefinition otherDef = Mockito.mock(PrivilegeDefinition.class); when(otherDef.getName()).thenReturn(def.getName()); when(otherDef.isAbstract()).thenReturn(def.isAbstract()); when(otherDef.getDeclaredAggregateNames()).thenReturn(def.getDeclaredAggregateNames()); assertNotEquals(def, otherDef); assertNotEquals(def, null); assertNotEquals(def, new ImmutablePrivilegeDefinition("othername", true, ImmutableList.of("aggrName"))); assertNotEquals(def, new ImmutablePrivilegeDefinition("name", false, ImmutableList.of("aggrName"))); assertNotEquals(def, new ImmutablePrivilegeDefinition("name", true, ImmutableList.of("anotherName"))); assertNotEquals(def, new ImmutablePrivilegeDefinition("name", true, ImmutableList.of())); assertNotEquals(def, new ImmutablePrivilegeDefinition("otherName", false, ImmutableList.of("aggrName","aggrName2"))); } }
@Test public void testPrivilegeDefinition() throws RepositoryException { Tree repWriteTree = PrivilegeUtil.getPrivilegesTree(root).getChild(PrivilegeConstants.REP_WRITE); PrivilegeDefinition def = PrivilegeUtil.readDefinition(repWriteTree); String expectedName = null; // EXERCISE assertEquals(expectedName, def.getName()); boolean isAbstract = false; // EXERCISE assertEquals(isAbstract, def.isAbstract()); Set<String> expectedAggregates = null; // EXERCISE assertEquals(expectedAggregates, def.getDeclaredAggregateNames()); // EXERCISE: compare the internal privilege definition (and it's tree representation) with the privilege itself. Privilege repWritePrivilege = getPrivilegeManager(root).getPrivilege(PrivilegeConstants.REP_WRITE); }