@Override public void setElementAttribute(E element, String name, String value) { String currentValue = getAttribute(element, name); if ((value == null && currentValue == null) || (value != null && value.equals(currentValue))) { // Redundant. Do nothing, no operation. return; } try { begin(); consume(setAttribute(name, value, at(Locator.before(doc, element)))); } finally { end(); } }
/** * Test basic get attribute. */ public void testGetAttributes() { init("<p t=\"0\" s=\"hi\">hello</p>"); Element e = (Element) doc.getFirstChild(doc.getDocumentElement()); assertEquals("0", doc.getAttribute(e, "t")); assertEquals("hi", doc.getAttribute(e, "s")); }
/** * Test basic get attribute. */ public void testGetAttributes() { init("<p t=\"0\" s=\"hi\">hello</p>"); Element e = (Element) doc.getFirstChild(doc.getDocumentElement()); assertEquals("0", doc.getAttribute(e, "t")); assertEquals("hi", doc.getAttribute(e, "s")); }
/** * Test set attribute overrides and removes old attributes, as opposed to * update. */ public void testSetAttributes() { init("<p t=\"0\" s=\"hi\">hello</p>"); Element e = (Element) doc.getFirstChild(doc.getDocumentElement()); doc.setElementAttributes(e, new AttributesImpl("just", "this")); assertEquals(null, doc.getAttribute(e, "t")); assertEquals(null, doc.getAttribute(e, "s")); assertEquals("this", doc.getAttribute(e, "just")); }
/** * Test set attribute overrides and removes old attributes, as opposed to * update. */ public void testSetAttributes() { init("<p t=\"0\" s=\"hi\">hello</p>"); Element e = (Element) doc.getFirstChild(doc.getDocumentElement()); doc.setElementAttributes(e, new AttributesImpl("just", "this")); assertEquals(null, doc.getAttribute(e, "t")); assertEquals(null, doc.getAttribute(e, "s")); assertEquals("this", doc.getAttribute(e, "just")); }