WebSphere Adapter for FTP

File splitting

The inbound event processing mode supports an optional file splitting feature, where the event file is split into several chunks and each chunk is posted to the endpoint separately. This reduces memory loading during event processing.

File splitting is performed based on either a delimiter or on a file size specified in the SplitCriteria property. The delimiter value is set in the SplitCriteria property and the class used to split the event file is set in the SplittingFunctionClassName property of the activation specification. By default the adapter provides the SplitBySize and SplitByDelimiter classes for the SplittingFunctionClassName property.

When chunking is enabled, each chunk of the file is posted to the endpoint separately. The number of business objects that are specified in the PollQuantity property is posted to the endpoint. For example, If the value for PollQuantity is 3, then:

Number of business objects polled is 3.

Number of business objects received by the endpoint is 3.

The adapter does not reassemble chunked data. It provides the information about the chunked data for an external application to merge the chunks. The chunking information is set in the chunkInfo property, which is contained in the wrapper business object. This information includes the chunk size, in bytes, and the event ID. An example event ID is:
AbsolutePathOfTheEventFileNameInLocalEventDirectory_/_yyyy_MM_dd_HH_mm_ss_SSS.
currentBONumber_/_totalBOs

Delimiter separating

Delimiters are used for separating event files. The delimiter is specified in the SplitCriteria property of the activation specification.

The following rules apply to the use of delimiters:
  • All new lines in the delimiter are represented as \n. The adapter translates the \n to the platform-specific new line character.
  • If there is more than one delimiter, each delimiter must be separated by a semicolon (;). If the semicolon (;) is part of the delimiter, the semicolon (;) must be escaped as \;. For example, if the delimiter is ##\;## then it is processed as ##;##, which means that the semicolon (;) is part of the delimiter.
  • To skip content that is part of the delimiter, specify a double semicolon (;;) in front of it so that the content between the delimiters is skipped. For example, if the event file contains a business object in the following format and the delimiter is ##;;$$, then:

    Name=Smith
    Company=IBM
    ##this is the content that will be skipped by the adapter$$

    The adapter will consider ##$$ the delimiter and skip "this is the content that will be skipped by the adapter."

  • The delimiter takes any value and there are no restrictions. The following delimiters are valid:
    • ####;\n;\n
    • ####;$$$$;\n;####
    • %%%%;$$$$$;#####
    • \n;\n;$$$$
    • ####\;####;\n;$$$$$
    • \n;\n;\n
    • ####;;$$$$
  • If the delimiter is located at the end of the file, the SplitCriteria property uses END_OF_FILE to determine the physical end of the file.

Event recovery

To use the recovery feature provided by WebSphere® Process Server, you must set the AssuredOnceDelivery property in the ActivationSpec to true. If it is set to false, failed events can not be recovered. Duplicate events can be delivered if AssuredOnceDelivery is set to false. For improved performance, no event recovery, and duplicate events, set AssuredOnceDelivery to false.


Terms of use |

Last updated: Mon 30 Oct 2006 03:48:53

(c) Copyright IBM Corporation 2005, 2006.
This information center is powered by Eclipse technology (http://www.eclipse.org)