@Override public Validator childNodeDeleted(String name, NodeState before) throws CommitFailedException { validator.childNodeDeleted(name, before); return descend(name); }
@Override public Validator childNodeDeleted(String name, NodeState before) throws CommitFailedException { validator.childNodeDeleted(name, before); return descend(name); }
@Test public void testDeleted() throws CommitFailedException { validator.childNodeDeleted(".", EMPTY_NODE); validator.childNodeDeleted("..", EMPTY_NODE); validator.childNodeDeleted("valid:name", EMPTY_NODE); validator.childNodeDeleted("invalid:name", EMPTY_NODE); validator.childNodeDeleted("invalid/name", EMPTY_NODE); }
@Override @Nullable public Validator childNodeDeleted(String name, NodeState before) throws CommitFailedException { if (isVisibleNode(name)) { return getValidator(validator.childNodeDeleted(name, before)); } else { return null; } } }
@Override @CheckForNull public Validator childNodeDeleted(String name, NodeState before) throws CommitFailedException { if (isVisibleNode(name)) { return getValidator(validator.childNodeDeleted(name, before)); } else { return null; } } }
@Test public void testSubtreeValidator() throws CommitFailedException { Validator delegate = new FailingValidator(); Validator validator = new SubtreeValidator(delegate, "one", "two"); assertNull(validator.childNodeAdded("zero", EMPTY_NODE)); assertNull(validator.childNodeChanged("two", EMPTY_NODE, EMPTY_NODE)); assertNull(validator.childNodeDeleted("foo", EMPTY_NODE)); assertNotNull(validator.childNodeAdded("one", EMPTY_NODE)); assertNotNull(validator.childNodeChanged("one", EMPTY_NODE, EMPTY_NODE)); assertNotNull(validator.childNodeDeleted("one", EMPTY_NODE)); // Descend to the subtree validator = validator.childNodeChanged("one", EMPTY_NODE, EMPTY_NODE); assertNull(validator.childNodeAdded("zero", EMPTY_NODE)); assertNull(validator.childNodeChanged("one", EMPTY_NODE, EMPTY_NODE)); assertNull(validator.childNodeDeleted("foo", EMPTY_NODE)); assertEquals(delegate, validator.childNodeAdded("two", EMPTY_NODE)); assertEquals(delegate, validator.childNodeChanged("two", EMPTY_NODE, EMPTY_NODE)); assertEquals(delegate, validator.childNodeDeleted("two", EMPTY_NODE)); }
@Test public void hiddenNodeDeleted() throws CommitFailedException { UserValidatorProvider provider = createValidatorProvider(); MemoryNodeStore store = new MemoryNodeStore(); NodeBuilder builder = store.getRoot().builder(); builder.child("test").child(":hidden"); NodeState root = builder.getNodeState(); builder = root.builder(); NodeBuilder test = builder.child("test"); test.child(":hidden").remove(); Validator validator = provider.getRootValidator( root, builder.getNodeState(), CommitInfo.EMPTY); Validator childValidator = validator.childNodeChanged( "test", root.getChildNode("test"), test.getNodeState()); assertNotNull(childValidator); Validator hiddenValidator = childValidator.childNodeDeleted( ":hidden", root.getChildNode("test").getChildNode(":hidden")); assertNull(hiddenValidator); }
@Test public void hiddenNodeDeleted() throws CommitFailedException { AccessControlValidatorProvider provider = createValidatorProvider(); MemoryNodeStore store = new MemoryNodeStore(); NodeBuilder builder = store.getRoot().builder(); builder.child("test").child(":hidden"); NodeState root = builder.getNodeState(); builder = root.builder(); NodeBuilder test = builder.child("test"); test.child(":hidden").remove(); Validator validator = provider.getRootValidator( root, builder.getNodeState(), CommitInfo.EMPTY); Validator childValidator = validator.childNodeChanged("test", root.getChildNode("test"), test.getNodeState()); assertNotNull(childValidator); Validator hiddenValidator = childValidator.childNodeDeleted( ":hidden", root.getChildNode("test").getChildNode(":hidden")); assertNull(hiddenValidator); } }