Package org.testng.xml
Class TestNGContentHandler
- java.lang.Object
-
- org.xml.sax.helpers.DefaultHandler
-
- org.testng.xml.TestNGContentHandler
-
- All Implemented Interfaces:
org.xml.sax.ContentHandler,org.xml.sax.DTDHandler,org.xml.sax.EntityResolver,org.xml.sax.ErrorHandler
public class TestNGContentHandler extends org.xml.sax.helpers.DefaultHandlerSuite definition parser utility.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classTestNGContentHandler.Include(package private) static classTestNGContentHandler.Location
-
Field Summary
Fields Modifier and Type Field Description private XmlClassm_currentClassprivate java.util.List<XmlClass>m_currentClassesprivate intm_currentClassIndexprivate java.util.Map<java.lang.String,java.lang.String>m_currentClassParametersprivate XmlDefinem_currentDefineprivate java.util.List<java.lang.String>m_currentExcludedMethodsprivate java.lang.Stringm_currentExpressionprivate XmlGroupsm_currentGroupsprivate TestNGContentHandler.Includem_currentIncludeprivate java.util.ArrayList<XmlInclude>m_currentIncludedMethodsprivate intm_currentIncludeIndexprivate java.lang.Stringm_currentLanguageprivate XmlPackagem_currentPackageprivate java.util.List<XmlPackage>m_currentPackagesprivate XmlRunm_currentRunprivate XmlMethodSelectorm_currentSelectorprivate java.util.ArrayList<XmlMethodSelector>m_currentSelectorsprivate XmlSuitem_currentSuiteprivate java.util.Map<java.lang.String,java.lang.String>m_currentSuiteParametersprivate XmlTestm_currentTestprivate intm_currentTestIndexprivate java.util.Map<java.lang.String,java.lang.String>m_currentTestParametersprivate booleanm_enabledTestprivate java.lang.Stringm_fileNameprivate booleanm_hasWarnprivate java.util.List<java.lang.String>m_listenersprivate booleanm_loadClassesprivate java.util.Stack<TestNGContentHandler.Location>m_locationsprivate org.xml.sax.EntityResolverm_redirectionAwareResolverprivate java.util.List<java.lang.String>m_suiteFilesprivate java.util.List<XmlSuite>m_suitesprivate booleanm_validate
-
Constructor Summary
Constructors Constructor Description TestNGContentHandler(java.lang.String fileName, boolean loadClasses)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private booleanareWhiteSpaces(char[] ch, int start, int length)voidcharacters(char[] ch, int start, int length)voidendElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)voiderror(org.xml.sax.SAXParseException e)private static java.lang.StringexpandValue(java.lang.String value)XmlSuitegetSuite()private static booleanisMalformedFileSystemBasedSystemId(java.lang.String systemId)private static booleanisUnsecuredUrl(java.lang.String str)private java.io.InputStreamloadDtdUsingClassLoader()private voidpopLocation()private voidpushLocation(TestNGContentHandler.Location l)org.xml.sax.InputSourceresolveEntity(java.lang.String publicId, java.lang.String systemId)private static booleanskipConsideringSystemId(java.lang.String systemId)voidstartElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes)NOTE: I only invoke xml*methods (e.g.private java.util.List<java.lang.Integer>stringToList(java.lang.String in)voidxmlClasses(boolean start)private voidxmlDefine(boolean start, org.xml.sax.Attributes attributes)Parseprivate voidxmlExclude(boolean start, org.xml.sax.Attributes attributes)voidxmlGroup(boolean start, org.xml.sax.Attributes attributes)voidxmlGroups(boolean start)private voidxmlInclude(boolean start, org.xml.sax.Attributes attributes)voidxmlListener(boolean start, org.xml.sax.Attributes attributes)voidxmlListeners(boolean start)private voidxmlMethod(boolean start)voidxmlMethodSelector(boolean start)voidxmlMethodSelectors(boolean start)voidxmlPackages(boolean start)voidxmlRun(boolean start)private voidxmlScript(boolean start, org.xml.sax.Attributes attributes)Parse <script>voidxmlSelectorClass(boolean start, org.xml.sax.Attributes attributes)private voidxmlSuite(boolean start, org.xml.sax.Attributes attributes)Parseprivate voidxmlSuiteFile(boolean start, org.xml.sax.Attributes attributes)Parseprivate voidxmlTest(boolean start, org.xml.sax.Attributes attributes)Parse <test>
-
-
-
Field Detail
-
m_currentSuite
private XmlSuite m_currentSuite
-
m_currentTest
private XmlTest m_currentTest
-
m_currentDefine
private XmlDefine m_currentDefine
-
m_currentRun
private XmlRun m_currentRun
-
m_currentClasses
private java.util.List<XmlClass> m_currentClasses
-
m_currentTestIndex
private int m_currentTestIndex
-
m_currentClassIndex
private int m_currentClassIndex
-
m_currentIncludeIndex
private int m_currentIncludeIndex
-
m_currentPackages
private java.util.List<XmlPackage> m_currentPackages
-
m_currentPackage
private XmlPackage m_currentPackage
-
m_suites
private final java.util.List<XmlSuite> m_suites
-
m_currentGroups
private XmlGroups m_currentGroups
-
m_currentTestParameters
private java.util.Map<java.lang.String,java.lang.String> m_currentTestParameters
-
m_currentSuiteParameters
private java.util.Map<java.lang.String,java.lang.String> m_currentSuiteParameters
-
m_currentClassParameters
private java.util.Map<java.lang.String,java.lang.String> m_currentClassParameters
-
m_currentInclude
private TestNGContentHandler.Include m_currentInclude
-
m_redirectionAwareResolver
private final org.xml.sax.EntityResolver m_redirectionAwareResolver
-
m_locations
private final java.util.Stack<TestNGContentHandler.Location> m_locations
-
m_currentClass
private XmlClass m_currentClass
-
m_currentIncludedMethods
private java.util.ArrayList<XmlInclude> m_currentIncludedMethods
-
m_currentExcludedMethods
private java.util.List<java.lang.String> m_currentExcludedMethods
-
m_currentSelectors
private java.util.ArrayList<XmlMethodSelector> m_currentSelectors
-
m_currentSelector
private XmlMethodSelector m_currentSelector
-
m_currentLanguage
private java.lang.String m_currentLanguage
-
m_currentExpression
private java.lang.String m_currentExpression
-
m_suiteFiles
private final java.util.List<java.lang.String> m_suiteFiles
-
m_enabledTest
private boolean m_enabledTest
-
m_listeners
private java.util.List<java.lang.String> m_listeners
-
m_fileName
private final java.lang.String m_fileName
-
m_loadClasses
private final boolean m_loadClasses
-
m_validate
private boolean m_validate
-
m_hasWarn
private boolean m_hasWarn
-
-
Method Detail
-
resolveEntity
public org.xml.sax.InputSource resolveEntity(java.lang.String publicId, java.lang.String systemId) throws org.xml.sax.SAXException, java.io.IOException- Specified by:
resolveEntityin interfaceorg.xml.sax.EntityResolver- Overrides:
resolveEntityin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXExceptionjava.io.IOException
-
skipConsideringSystemId
private static boolean skipConsideringSystemId(java.lang.String systemId)
-
isMalformedFileSystemBasedSystemId
private static boolean isMalformedFileSystemBasedSystemId(java.lang.String systemId)
-
isUnsecuredUrl
private static boolean isUnsecuredUrl(java.lang.String str)
-
loadDtdUsingClassLoader
private java.io.InputStream loadDtdUsingClassLoader()
-
xmlSuiteFile
private void xmlSuiteFile(boolean start, org.xml.sax.Attributes attributes)Parse
-
xmlSuite
private void xmlSuite(boolean start, org.xml.sax.Attributes attributes)Parse
-
xmlDefine
private void xmlDefine(boolean start, org.xml.sax.Attributes attributes)Parse
-
xmlScript
private void xmlScript(boolean start, org.xml.sax.Attributes attributes)Parse <script>
-
xmlTest
private void xmlTest(boolean start, org.xml.sax.Attributes attributes)Parse <test>
-
xmlClasses
public void xmlClasses(boolean start)
-
xmlListeners
public void xmlListeners(boolean start)
-
xmlListener
public void xmlListener(boolean start, org.xml.sax.Attributes attributes)
-
xmlPackages
public void xmlPackages(boolean start)
-
xmlMethodSelectors
public void xmlMethodSelectors(boolean start)
-
xmlSelectorClass
public void xmlSelectorClass(boolean start, org.xml.sax.Attributes attributes)
-
xmlMethodSelector
public void xmlMethodSelector(boolean start)
-
xmlMethod
private void xmlMethod(boolean start)
-
xmlRun
public void xmlRun(boolean start)
-
xmlGroup
public void xmlGroup(boolean start, org.xml.sax.Attributes attributes)
-
xmlGroups
public void xmlGroups(boolean start)
-
startElement
public void startElement(java.lang.String uri, java.lang.String localName, java.lang.String qName, org.xml.sax.Attributes attributes)NOTE: I only invoke xml*methods (e.g. xmlSuite()) if I am acting on both the start and the end of the tag. This way I can keep the treatment of this tag in one place. If I am only doing something when the tag opens, the code is inlined below in the startElement() method.- Specified by:
startElementin interfaceorg.xml.sax.ContentHandler- Overrides:
startElementin classorg.xml.sax.helpers.DefaultHandler
-
xmlInclude
private void xmlInclude(boolean start, org.xml.sax.Attributes attributes)
-
xmlExclude
private void xmlExclude(boolean start, org.xml.sax.Attributes attributes)
-
pushLocation
private void pushLocation(TestNGContentHandler.Location l)
-
popLocation
private void popLocation()
-
stringToList
private java.util.List<java.lang.Integer> stringToList(java.lang.String in)
-
endElement
public void endElement(java.lang.String uri, java.lang.String localName, java.lang.String qName)- Specified by:
endElementin interfaceorg.xml.sax.ContentHandler- Overrides:
endElementin classorg.xml.sax.helpers.DefaultHandler
-
error
public void error(org.xml.sax.SAXParseException e) throws org.xml.sax.SAXException- Specified by:
errorin interfaceorg.xml.sax.ErrorHandler- Overrides:
errorin classorg.xml.sax.helpers.DefaultHandler- Throws:
org.xml.sax.SAXException
-
areWhiteSpaces
private boolean areWhiteSpaces(char[] ch, int start, int length)
-
characters
public void characters(char[] ch, int start, int length)- Specified by:
charactersin interfaceorg.xml.sax.ContentHandler- Overrides:
charactersin classorg.xml.sax.helpers.DefaultHandler
-
getSuite
public XmlSuite getSuite()
-
expandValue
private static java.lang.String expandValue(java.lang.String value)
-
-