org.apache.commons.net.ftp.parser

Class VMSVersioningFTPEntryParser

public class VMSVersioningFTPEntryParser extends VMSFTPEntryParser

Special implementation VMSFTPEntryParser with versioning turned on. This parser removes all duplicates and only leaves the version with the highest version number for each filename. This is a sample of VMS LIST output "1-JUN.LIS;1 9/9 2-JUN-1998 07:32:04 [GROUP,OWNER] (RWED,RWED,RWED,RE)", "1-JUN.LIS;2 9/9 2-JUN-1998 07:32:04 [GROUP,OWNER] (RWED,RWED,RWED,RE)", "DATA.DIR;1 1/9 2-JUN-1998 07:32:04 [GROUP,OWNER] (RWED,RWED,RWED,RE)",

Version: $Id: VMSVersioningFTPEntryParser.java 155429 2005-02-26 13:13:04Z dirkv $

Author: Winston Ojeda Stephane ESTE-GRACIAS

See Also: FTPFileEntryParser (for usage instructions)

Constructor Summary
VMSVersioningFTPEntryParser()
Constructor for a VMSFTPEntryParser object.
VMSVersioningFTPEntryParser(FTPClientConfig config)
This constructor allows the creation of a VMSVersioningFTPEntryParser object with something other than the default configuration.
Method Summary
protected booleanisVersioning()
ListpreParse(List original)
Implement hook provided for those implementers (such as VMSVersioningFTPEntryParser, and possibly others) which return multiple files with the same name to remove the duplicates ..

Constructor Detail

VMSVersioningFTPEntryParser

public VMSVersioningFTPEntryParser()
Constructor for a VMSFTPEntryParser object. Sets the versioning member to the supplied value.

Throws: IllegalArgumentException Thrown if the regular expression is unparseable. Should not be seen under normal conditions. It it is seen, this is a sign that REGEX is not a valid regular expression.

VMSVersioningFTPEntryParser

public VMSVersioningFTPEntryParser(FTPClientConfig config)
This constructor allows the creation of a VMSVersioningFTPEntryParser object with something other than the default configuration.

Parameters: config The {@link FTPClientConfig configuration} object used to configure this parser.

Throws: IllegalArgumentException Thrown if the regular expression is unparseable. Should not be seen under normal conditions. It it is seen, this is a sign that REGEX is not a valid regular expression.

Since: 1.4

Method Detail

isVersioning

protected boolean isVersioning()

preParse

public List preParse(List original)
Implement hook provided for those implementers (such as VMSVersioningFTPEntryParser, and possibly others) which return multiple files with the same name to remove the duplicates ..

Parameters: original Original list

Returns: Original list purged of duplicates