Class HtmlParsingUtils
- java.lang.Object
-
- org.apache.jmeter.protocol.http.parser.HtmlParsingUtils
-
public final class HtmlParsingUtils extends Object
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static DocumentcreateEmptyDoc()static HTTPSamplerBasecreateUrlFromAnchor(String parsedUrlString, URL context)Create a new Sampler based on an HREF string plus a contextual URL object.static List<HTTPSamplerBase>createURLFromForm(Node doc, URL context)static voidextractStyleURLs(URL baseUrl, URLCollection urls, String styleTagStr)static NodegetDOM(String text)Returns a node representing a whole xml given an xml document.static TidygetParser()Returnstidyas HTML parser.static booleanisAnchorMatched(HTTPSamplerBase newLink, HTTPSamplerBase config)Check if anchor matches by checking against: - protocol - domain - path - parameter namesstatic booleanisArgumentMatched(Argument arg, Argument patternArg)Arguments match if the input name matches the corresponding pattern name and the input value matches the pattern value, where the matching is done first using String equals, and then Regular Expression matching if the equals test fails.static booleanisEqualOrMatches(String arg, String pat)Match the input argument against the pattern using String.equals() or pattern matching if that fails using case-insensitive matching.static booleanisEqualOrMatches(String arg, String pat, Perl5Matcher matcher, PatternCacheLRU cache)Match the input argument against the pattern using String.equals() or pattern matching if that fails.static booleanisEqualOrMatchesCaseBlind(String arg, String pat)Match the input argument against the pattern using String.equals() or pattern matching if that fails using case-insensitive matching.static booleanisEqualOrMatchesCaseBlind(String arg, String pat, Perl5Matcher matcher, PatternCacheLRU cache)Match the input argument against the pattern using String.equals() or pattern matching if that fails using case-insenssitive matching.
-
-
-
Method Detail
-
isAnchorMatched
public static boolean isAnchorMatched(HTTPSamplerBase newLink, HTTPSamplerBase config)
Check if anchor matches by checking against: - protocol - domain - path - parameter names- Parameters:
newLink- target to matchconfig- pattern to match against- Returns:
- true if target URL matches pattern URL
-
isArgumentMatched
public static boolean isArgumentMatched(Argument arg, Argument patternArg)
Arguments match if the input name matches the corresponding pattern name and the input value matches the pattern value, where the matching is done first using String equals, and then Regular Expression matching if the equals test fails.- Parameters:
arg- - input ArgumentpatternArg- - pattern to match against- Returns:
- true if both name and value match
-
isEqualOrMatches
public static boolean isEqualOrMatches(String arg, String pat, Perl5Matcher matcher, PatternCacheLRU cache)
Match the input argument against the pattern using String.equals() or pattern matching if that fails.- Parameters:
arg- input stringpat- pattern stringmatcher- Perl5Matchercache- PatternCache- Returns:
- true if input matches the pattern
-
isEqualOrMatchesCaseBlind
public static boolean isEqualOrMatchesCaseBlind(String arg, String pat, Perl5Matcher matcher, PatternCacheLRU cache)
Match the input argument against the pattern using String.equals() or pattern matching if that fails using case-insenssitive matching.- Parameters:
arg- input stringpat- pattern stringmatcher- Perl5Matchercache- PatternCache- Returns:
- true if input matches the pattern
-
isEqualOrMatches
public static boolean isEqualOrMatches(String arg, String pat)
Match the input argument against the pattern using String.equals() or pattern matching if that fails using case-insensitive matching.- Parameters:
arg- input stringpat- pattern string- Returns:
- true if input matches the pattern
-
isEqualOrMatchesCaseBlind
public static boolean isEqualOrMatchesCaseBlind(String arg, String pat)
Match the input argument against the pattern using String.equals() or pattern matching if that fails using case-insensitive matching.- Parameters:
arg- input stringpat- pattern string- Returns:
- true if input matches the pattern
-
getParser
public static Tidy getParser()
Returnstidyas HTML parser.- Returns:
- a
tidyHTML parser
-
getDOM
public static Node getDOM(String text)
Returns a node representing a whole xml given an xml document.- Parameters:
text- an xml document- Returns:
- a node representing a whole xml
-
createEmptyDoc
public static Document createEmptyDoc()
-
createUrlFromAnchor
public static HTTPSamplerBase createUrlFromAnchor(String parsedUrlString, URL context) throws MalformedURLException
Create a new Sampler based on an HREF string plus a contextual URL object. Given that an HREF string might be of three possible forms, some processing is required.- Parameters:
parsedUrlString- the url from the hrefcontext- the context in which the href was found. This is used to extract url information that might be missing inparsedUrlString- Returns:
- sampler with filled in information about the fully parsed url
- Throws:
MalformedURLException- when the given url (parsedUrlStringpluscontextis malformed)
-
createURLFromForm
public static List<HTTPSamplerBase> createURLFromForm(Node doc, URL context)
-
extractStyleURLs
public static void extractStyleURLs(URL baseUrl, URLCollection urls, String styleTagStr)
-
-