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 Document
createEmptyDoc()
static HTTPSamplerBase
createUrlFromAnchor(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 void
extractStyleURLs(URL baseUrl, URLCollection urls, String styleTagStr)
static Node
getDOM(String text)
Returns a node representing a whole xml given an xml document.static Tidy
getParser()
Returnstidy
as HTML parser.static boolean
isAnchorMatched(HTTPSamplerBase newLink, HTTPSamplerBase config)
Check if anchor matches by checking against: - protocol - domain - path - parameter namesstatic 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.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.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.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.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.
-
-
-
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()
Returnstidy
as HTML parser.- Returns:
- a
tidy
HTML 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 (parsedUrlString
pluscontext
is malformed)
-
createURLFromForm
public static List<HTTPSamplerBase> createURLFromForm(Node doc, URL context)
-
extractStyleURLs
public static void extractStyleURLs(URL baseUrl, URLCollection urls, String styleTagStr)
-
-