org.apache.commons.net.ftp.parser

Class RegexFTPFileEntryParserImpl

public abstract class RegexFTPFileEntryParserImpl extends FTPFileEntryParserImpl

This abstract class implements both the older FTPFileListParser and newer FTPFileEntryParser interfaces with default functionality. All the classes in the parser subpackage inherit from this. This is the base for all regular based FTPFileEntryParser

Author: Steve Cohen

Field Summary
protected PatternMatcher_matcher_
Internal PatternMatcher object used by the parser.
Constructor Summary
RegexFTPFileEntryParserImpl(String regex)
The constructor for a RegexFTPFileEntryParserImpl object.
Method Summary
intgetGroupCnt()
Convenience method delegates to the internal MatchResult's groups() method.
StringgetGroupsAsString()
For debugging purposes - returns a string shows each match group by number.
Stringgroup(int matchnum)
Convenience method delegates to the internal MatchResult's group() method.
booleanmatches(String s)
Convenience method delegates to the internal MatchResult's matches() method.

Field Detail

_matcher_

protected PatternMatcher _matcher_
Internal PatternMatcher object used by the parser. It has protected scope in case subclasses want to make use of it for their own purposes.

Constructor Detail

RegexFTPFileEntryParserImpl

public RegexFTPFileEntryParserImpl(String regex)
The constructor for a RegexFTPFileEntryParserImpl object.

Parameters: regex The regular expression with which this object is initialized.

Throws: IllegalArgumentException Thrown if the regular expression is unparseable. Should not be seen in normal conditions. It it is seen, this is a sign that a subclass has been created with a bad regular expression. Since the parser must be created before use, this means that any bad parser subclasses created from this will bomb very quickly, leading to easy detection.

Method Detail

getGroupCnt

public int getGroupCnt()
Convenience method delegates to the internal MatchResult's groups() method.

Returns: the number of groups() in the internal MatchResult.

getGroupsAsString

public String getGroupsAsString()
For debugging purposes - returns a string shows each match group by number.

Returns: a string shows each match group by number.

group

public String group(int matchnum)
Convenience method delegates to the internal MatchResult's group() method.

Parameters: matchnum match group number to be retrieved

Returns: the content of the matchnum'th group of the internal match or null if this method is called without a match having been made.

matches

public boolean matches(String s)
Convenience method delegates to the internal MatchResult's matches() method.

Parameters: s the String to be matched

Returns: true if s matches this object's regular expression.