Class VMSVersioningFTPEntryParser

All Implemented Interfaces:
Configurable, FTPFileEntryParser

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 file name.

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)",
 
See Also:
  • Field Details

  • Constructor Details

    • VMSVersioningFTPEntryParser

      public VMSVersioningFTPEntryParser()
      Constructor for a VMSFTPEntryParser object.
      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 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 Details

    • isVersioning

      protected boolean isVersioning()
      Overrides:
      isVersioning in class VMSFTPEntryParser
    • preParse

      public List<String> preParse(List<String> 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 ..
      Specified by:
      preParse in interface FTPFileEntryParser
      Overrides:
      preParse in class FTPFileEntryParserImpl
      Parameters:
      original - Original list
      Returns:
      Original list purged of duplicates