org.testng.xml.XmlDefine Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of testng Show documentation
Show all versions of testng Show documentation
A testing framework for the JVM
package org.testng.xml;
import static org.testng.collections.CollectionUtils.hasElements;
import org.testng.collections.Lists;
import org.testng.reporters.XMLStringBuffer;
import org.testng.xml.dom.OnElement;
import java.util.List;
public class XmlDefine {
private String m_name;
public void setName(String name) {
m_name = name;
}
public String getName() {
return m_name;
}
public String toXml(String indent) {
XMLStringBuffer xsb = new XMLStringBuffer(indent);
boolean hasElements = hasElements(m_includes);
if (hasElements) {
xsb.push("define", "name", m_name);
}
for (String s : m_includes) {
xsb.addEmptyElement("include", "name", s);
}
if (hasElements) {
xsb.pop("define");
}
return xsb.toXML();
}
private List m_includes = Lists.newArrayList();
@OnElement(tag = "include", attributes = "name")
public void onElement(String name) {
m_includes.add(name);
}
public List getIncludes() {
return m_includes;
}
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
XmlDefine define = (XmlDefine) o;
if (m_name != null ? !m_name.equals(define.m_name) : define.m_name != null) {
return false;
}
return m_includes != null ? m_includes.equals(define.m_includes) : define.m_includes == null;
}
@Override
public int hashCode() {
int result = m_name != null ? m_name.hashCode() : 0;
result = 31 * result + (m_includes != null ? m_includes.hashCode() : 0);
return result;
}
}