Configuring Java CAPS Project Components for Communication Adapters

FTP Heuristics Configuration Parameters

This topic describes the configuration parameters for the Batch FTP Heuristics located in the FtpHeuristics.cfg file. The Batch FTP Heuristics configuration file, FtpHeuristics.cfg, contains the full set of parameters for each of the platforms listed under Platform Selection.

The FTP Heuristics configuration parameters are described in the table.

Table 43 FTP Heuristics Configuration Parameters

Name 

Description 

Required Values 

Commands Supported by FTP Server

Specifies the commands that the FTP server on the given host supports. 

One or more FTP commands as selected from the list. 

Header Lines To Skip

Specifies the number of beginning lines from a LIST command to be considered as a potential header (subject to the Header Indication Regex Expression configuration parameter, discussed below) and skipped.

A non-negative integer. Enter zero if there are no headers. 

For an example, see Header Lines To Skip.

Header Indication Regex Expression

Specifies a regular expression used to help identify lines which comprise the header in the output of a LIST command. All the declared lines of the header (see Header Lines To Skip, above) must match the regular expression.

A regular expression. The default varies based on the FTP server’s operating system. If there is no reliable way of identifying the header lines in the LIST command’s output, leave this parameter undefined.

Additional Information

The regular expression “^ *total” indicates that each line in the header starts with “total,” possibly preceded by blanks. For an example, see Header Indication Regex Expression.

If the regular expression is undefined, then the header is solely determined by the value of the configuration parameter Header Lines To Skip.

Trailer Lines To Skip

Specifies the number of ending lines from a LIST command that are to be considered as a potential Trailer (subject to the Trailer Indication Regex Expression) and skipped.

A non-negative integer. Enter zero if there are no trailers. 

Trailer Indication Regex Expression

Specifies the regular expression used to help identify lines which comprise the trailer in the output of a LIST command. All the declared lines of the trailer (see Trailer Lines To Skip) must match the regular expression.

A regular expression. If there is no reliable way of identifying the trailer lines in the LIST output, then leave this parameter undefined.

If the regular expression is undefined, then the header is determined solely by the value of the Trailer Lines To Skip configuration parameter.

Directory Indication Regex Expression

Specifies a regular expression used to identify external directories in the output of a LIST command. Directories cannot be retrieved and must be filtered out of the file list.

A regular expression. If there is no reliable way of identifying the directory in the LIST output, then leave this parameter undefined.

The regular expression “^ *d” specifies that a directory is indicated by a line starting with the lowercase ”d,’ possibly preceded by blanks. 

File Link Real Data Available

Specifies whether a file may be a file link (a pointer to a file) on those operating systems whereon an FTP server will return the data for the real file as opposed to the content of the link itself. 

Select Yes or No.

File Link Indication Regex Expression

Specifies a regular expression that identifies external file links in the output of a LIST command. File links are pointers to the real file and usually have some visual symbol, such as- >, mixed in with the file name in the output of the LIST command. Only the link name is desired within the returned list.

A regular expression. If there is no reliable way of identifying a file link within a LIST output, then leave this parameter undefined.

Additional Information

The regular expression “^ *l” specifies that a file link is indicated by a line starting with the lowercase “l,” preceded possibly by blanks. 

File Link Symbol Regex Expression

Specifies a regular expression that parses the external file link name in the output of a LIST command. Only the link name is required for the file list to be returned.

A regular expression. If there is no reliable way of identifying a file link within a LIST output, then leave this parameter undefined.

The regular expression “[ ] ->[ ]” defines that a file link symbol is represented by an arrow surrounded by spaces (“ -> “). When parsed, only the file name to the right of the symbol is used. 

In the example, File Link Symbol Regex Expression, only the public_html would be used, not the “p” character:

List Line Format

Specifies whether fields in each line are blank delimited or fixed, that is, whether information always appears at certain columns. 

Select Blank Delimited or Fixed.

For a Fixed list line format, enter a value equal to the number of columns, counting the first column at the far left as column 1. For a Blank Delimited list line format, enter a value equal to the number of fields, counting the first field on the far left as field 1.

For either case, if no minimum can be determined, set this value to zero (0). 

Additional Information

In the Blank Delimited line in the example in List Line Format, the minimum number of fields is 9:

Valid File Line Minimum Position

Specifies the minimum number of positions (inclusive) a listing line must have in order to be considered as a possible valid file name line. 


Note –

The URL FTP Proxy will fail on ascertaining file names that have leading blanks, trailing blanks, or both.


File Name Is Last Entity

Specifies whether the file name is the last entity on each line. This allows the file name to have imbedded blanks (however, leading or trailing blanks are not supported). 

Select Yes or No.

File Name Position

Specifies the starting position (inclusive) of a file name. 

For Fixed list line format, enter the column number, counting the first column on the far left as column 1. For Blank Delimited list line format, enter the field number, counting the first field on the extreme left as field 1.

Additional Information

For Blank Delimited List Line Format only, if the file name has imbedded blanks, then it can span over several fields. For an example, see File Name Position.

File Name Length

Represents the maximum width of a file name; valid only for Fixed list line format.

Enter any one of the following: 

  • An Integer: Positive lengths imply that the file name is right-justified within the maximum field width, and thus leading-blanks are discarded.

    • Negative Lengths: That is, compared to the absolute length, imply that the file name is left-justified and trailing-blanks are discarded.

    • Zero (0) Value Length: If the file name is at the end of a file listing line, this value implies that the file name field extends to the end of the line.


      Note –

      For Blank Delimited list line format, this value is usually zero (0). However, if the File Name Length parameter is supplied even though a Blank Delimited list line format is specified, this implies that if the file name field exceeds the given length, then the rest of the List Line data occurs on the following line.


File Extension Position

Specifies the left-most position of the file extension for those operating systems that present the file name extension separated from the main file name. 

For Fixed list line format, enter the column number, counting the first column at the extreme left as column 1. For Blank Delimited list line format, enter the field number, counting the first field at the far left as field 1. If there is no file extension (as on UNIX systems) set the value to zero (0).

File Extension Length

Specifies the maximum width of the file extension; valid only for Fixed list line format.

Enter any one of the following: 

An Integer

  • Positive Lengths: Imply that the file extension is right-justified within the maximum field width and therefore leading-blanks are discarded.

  • Negative Lengths: Imply that the file extension is left-justified and trailing-blanks are discarded (the absolute length is used).

  • Value of Zero (0): Always for the Blank Delimited list line format.

File Size Verifiable

Specifies whether the file size is verifiable, significant, and accurate within a directory listing. 

Select Yes or No. The File Size Stability Check configurable parameter must also be enabled.

Additional Information

Even if the file size field of a listing line is not significant (that is, it is there but only represents an approximate value), the value of this parameter must be No. However, the file size location must still be declared in the File Size Position to assist determining which line of listing represents a valid file name. For an example, see File Size Verifiable.


Note –

Use of this parameter does not guarantee that the file is actually stable. As this feature is intended only for backward compatibility with previous FTP implementations, we do not recommend that you rely on this functionality for critical data.


File Size Position

Specifies the left-most position in the listing line that represents the size of the file. Even though for some operating systems the value shown might not truly reflect the file size, this position is still important in ascertaining that the line contains a valid file name. 

A non-negative integer. For Fixed list line format, the position value is the column number (starting with one (1) on the far left). For Blank Delimited, this value represents the field number (starting with one (1) on the far left). If the LIST line does not have a size field, set this parameter to zero (0). For an example, see File Size Position.

File Size Length

Specifies the maximum width (number of columns) of the file size field, only valid for Fixed List Line Format.

A non-negative integer. For Blank Delimited list line format, set this value to zero (0).

Special Envelope For Absolute Path Name

Specifies special enveloping characters required to surround an absolute path name (for example, single quotes are used in MVS). Only use a single quote at the start of the directory name. 

A pair of enveloping characters. Even if the leading and trailing character is identical, enter it twice. 

If no enveloping characters are required for an operating system, leave this parameter undefined. 


Note –

On UNIX, this parameter is always undefined.


Listing Directory Yields Absolute Path Names

Specifies whether, when the DIR command is used on a directory name, the resulting file names are absolute.

Select Yes or No.


Note –

On UNIX, this character is always set to No.


Absolute Path Name Delimiter Set

Specifies any absolute path requiring certain delimiters to separate directory names (or their equivalent) from each other and from the file name. 

Enter the delimiters for the absolute path, starting from the left, for: 

  • Initial (left-most) directory delimiter

  • Intermediate directory delimiters

  • Initial (left-most) file name delimiter

  • Optionally, the ending (right-most) file name delimiter

Wherever there is no specific delimiter, use “\0” (backslash zero) to act as a placeholder. Delimiters that are backslashes need to be escaped with another backslash. 

Change Directory Before Listing

Determines whether a change directory (cd) command needs to be done before issuing the DIR command to get a listing of files under the desired directory.

Select Yes or No.


Note –

The current Batch Adapter implementation does not rely on this parameter.


Directory Name Requires Terminator

Determines whether a directory name that is not followed immediately by a file name requires the ending directory delimiter as a terminator (for example, as on VMS). 

Select Yes or No.

Table 44 Examples of Configuration Parameters for Batch FTP Heuristics

Name 

Example 

Header Lines To Skip


      total 6
      -rw-r-----   1 ed        usr           110 Apr 15 13:43 AAA
      -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa

Header Indication Regex Expression


      total 6
      -rw-r-----   1 ed        usr           110 Apr 15 13:43 AAA
      -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa

Directory Indication Regex Expression


      drwxr-xr-x   2 ed    usr     2048 Apr 17 17:43 public_html

File Link Indication Regex Expression


      lrwxr-xr-x   2 ed     usr   2048 Apr 17 17:43 p ->  public_html

File Link Symbol Regex Expression


     lrwxrwxrwx   2 ed        usr  4 Apr 17 17:43 p -> public_html

List Line Format


      -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa
      ^^^^^^^^^^   ^ ^^        ^^^           ^^^ ^^^ ^^ ^^^^^ ^^^
           1       2  3         4             5   6  7    8    9
                                                         File Name

Directory Indication Regex Expression


      drwxr-xr-x   2 ed    usr     2048 Apr 17 17:43 public_html

File Name Position


      -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa
      ^^^^^^^^^^   ^ ^^        ^^^           ^^^ ^^^ ^^ ^^^^^ ^^^
          1        2  3         4             5   6  7    8    9
                                                         File Name

File Size Verifiable


       -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa
                                              ^^^
                                              File Size

File Size Position


       -rw-r--r--   1 ed        usr           110 Apr 15 13:33 aaa
       ^^^^^^^^^^   ^ ^^        ^^^           ^^^ ^^^ ^^ ^^^^^ ^^^
            1        2  3         4             5   6  7    8    9
                                           File
                                              Size

The following text represents valid number representations of file sizes: 


      1234 or 1,234,567 or -12345 or +12345 or ’  1234  ’ 
or 12/34       or 1,234/56

The following text represents invalid number representations of file sizes (the ^ indicates where the error occurs): 


      ’12 34’ or 123,45,678 or 123-456-789 or --123 or 123-
         ^          ^                 ^        ^          ^
      or 12345678901 or any number > 4294967295 or < -2147483647
         ^ (too large)
      or 123.45 or 12AB34 or 0x45 or ,123,456 or 12//34
            ^        ^        ^      ^              ^
      or /123 or 123/ or 12,3/45
         ^          ^        ^

Table 45 Delimiters and Path Naming by Platform

OS

Path Name Format

Delimiter Set

       
   

Enter 

UNIX 

/dir1/dir2/file.ext

 

/// 

Windows 

C:\dir1\dir2\file.ext

\\ 

\\ 

\\ 

 

\\\\\\ 

VMS 

disk1:[dir1.dir2]file.ext;1

[.]; 

MVS PDS 

dir1.dir2(member)

\0 

\0.() 

MVS Sequential 

dir1.dir2.filename

\0 

 

\0.. 

MVS GDG 

dir1.dir2.file(version#) (see Note)

\0 

 

\0.. 

AS400 

dir1/file.ext

\0 

 

\0/. 

Above, version # = 0 for current, +1 for new, -1 (-2, -3, and so on.) for previous generations.

Where to Go Next

Configuring CICS Adapter Connectivity Map Properties.

Related Topics