File locking framework
AssigneeBank of America Corporation
InventorsAtul Kulkarni, Malapaka V. L. N. Jogeswara Sarma, Timmy L. Gauvin
Life of this patent
Estimating the term…
Abstract
The present invention is directed to a system that ensures one-by-one processing of incoming check image files. The system receives incoming check image files and inputs them into a queue for processing. An application server (e.g., a thread) then selects one check image file from the queue for processing. For example, the system may process the check image to extract check information from the check image file. Once selected by the application server, the check image file is “locked” so that no other thread is enabled to select the same check image file. In this way, the system of the present invention is configured to ensure that each check image file is processed only one time.
Claims13
A system for processing check image files, the system comprising:
- at least one memory;
- at least one processor;
- and
- at least one module stored in said memory and comprising instruction code that is executable by the at least one processor and configured to cause said at least one processor to:
- electronically retrieve one or more check image files stored in one or more databases;
- determine a unique key associated with each of the one or more check image files, wherein the unique key associated with each of the one or more check image files is used to track a status and location associated with each of the one or more check image files;
- store the one or more check image files with the unique key in a queue, wherein storing the one or more check image files in the queue further comprises indicating that the one or more check image files is available for processing based on at least a file extension associated with the one or more check image files;
- select, using one or more application servers, one of the one or more check image files for processing, wherein each of the one or more application servers is configured to retrieve the one or more check image files from the queue;
- compare the unique key of the one selected check image file to one or more unique keys of one or more check image files that are known to have already been selected for processing by one or more other application servers;
- determine no match between the unique key of the one selected check image file and the one or more unique keys of the one or more check image files that are known to have already been selected or processed, thereby determining that the one selected check image file has not been processed;
- determine that the one selected check image file is associated with a first format;
- transform the one selected check image file from the first format to a second format, thereby enabling the one selected check image file to be processed;
- lock the one selected check image file by renaming a file name of the one selected check image file, thereby preventing the one selected check image file from being selected more than once or by another application server;
- process the one selected check image file, wherein processing further comprises extracting information from the one selected check image file, wherein the extracted information comprises at least an account information, transaction information, and check information;
- electronically transmit the information extracted from the one selected check image file to a second apparatus;
- initiate an execution of a transaction using at least the information extracted from the one selected check image file at the second apparatus, wherein initiating the execution of the transaction further comprises comparing transaction information associated with the transaction with the extracted information to determine a match;
- and
- execute the transaction based on at least determining a match between the transaction information and the extracted information.
A method for processing check image files, the method comprising:
- electronically retrieving, using a computing device processor, one or more check image files stored in one or more databases;
- determining, using a computing device processor, a unique key associated with each of the one or more check image files, wherein the unique key associated with each of the one or more check image files is used to track a status and location associated with each of the one or more check image files;
- storing, using a computing device processor, the one or more check image files with the unique key in a queue, wherein storing the one or more check image files in the queue further comprises indicating that the one or more check image files is available for processing based on at least a file extension associated with the one or more check image files
- selecting, using one or more application servers, one of the one or more check image files for processing, wherein each of the one or more application servers is configured to retrieve the one or more check image files from the queue;
- comparing, using a computing device processor, the unique key of the one selected check image file to one or more unique keys of one or more check image files that are known to have already been selected for processing by one or more other application servers;
- determining, using a computing device processor, no match between the unique key of the one selected check image file and the one or more unique keys of the one or more check image files that are known to have already been selected or processed, thereby determining that the one selected check image file has not been processed;
- determining, using a computing device processor, that the one selected check image file is associated with a first format;
- transforming, using a computing device processor, the one selected check image file from the first format to a second format, thereby enabling the one selected check image file to be processed;
- locking, using a computing device processor, the one selected check image file by renaming a file name of the one selected check image file, thereby preventing the one selected check image file from being selected more than once or by another application server;
- processing, using a computing device processor, the one selected check image file, wherein processing further comprises extracting information from the one selected check image file, wherein the extracted information comprises at least an account information, transaction information, and check information;
- electronically transmitting, using a computing device processor, the information extracted from the one selected check image file to a second apparatus;
- initiating, using a computing device processor, an execution of a transaction using at least the information extracted from the one selected check image file at the second apparatus, wherein initiating the execution of the transaction further comprises comparing transaction information associated with the transaction with the extracted information to determine a match;
- and
- executing, using a computing device processor, the transaction based on at least determining a match between the transaction information and the extracted information.
A computer program product for processing check image files, the computer program product comprising a non-transitory computer-readable medium comprising code causing an apparatus to:
- electronically retrieve one or more check image files stored in one or more databases;
- determine a unique key associated with each of the one or more check image files, wherein the unique key associated with each of the one or more check image files is used to track a status and location associated with each of the one or more check image files;
- store the one or more check image files with the unique key in a queue, wherein storing the one or more check image files in the queue further comprises indicating that the one or more check image files is available for processing based on at least a file extension associated with the one or more check image files;
- select, using one or more application servers, one of the one or more check image files for processing, wherein each of the one or more application servers is configured to retrieve the one or more check image files from the queue;
- compare the unique key of the one selected check image file to one or more unique keys of one or more check image files that are known to have already been selected for processing by one or more other application servers;
- determine no match between the unique key of the one selected check image file and the one or more unique keys of the one or more check image files that are known to have already been selected or processed, thereby determining that the one selected check image file has not been processed;
- determine that the one selected check image file is associated with a first format;
- transform the one selected check image file from the first format to a second format, thereby enabling the one selected check image file to be processed;
- lock the one selected check image file by renaming a file name of the one selected check image file, thereby preventing the one selected check image file from being selected more than once or by another application server;
- process the one selected check image file, wherein processing further comprises extracting information from the one selected check image file, wherein the extracted information comprises at least an account information, transaction information, and check information;
- electronically transmit the information extracted from the one selected check image file to a second apparatus;
- initiate an execution of a transaction using at least the information extracted from the one selected check image file at the second apparatus, wherein initiating the execution of the transaction further comprises comparing transaction information associated with the transaction with the extracted information to determine a match;
- and
- execute the transaction based on at least determining a match between the transaction information and the extracted information.
Dependencies are inferred from the claim text.