package [Link].
system
/**
*@ValidationCode : N/A
* @ValidationInfo : Timestamp : 19 Jan 2021 [Link]
* @ValidationInfo : Encoding : Cp1252
* @ValidationInfo : User Name : N/A
* @ValidationInfo : Nb tests success : N/A
* @ValidationInfo : Nb tests failure : N/A
* @ValidationInfo : Rating : N/A
* @ValidationInfo : Coverage : N/A
* @ValidationInfo : Strict flag : N/A
* @ValidationInfo : Bypass GateKeeper : false
* @ValidationInfo : Compiler Version : N/A
* @ValidationInfo : Copyright Temenos Headquarters SA 1993-2021. All rights
reserved.
*/
public class ServiceLifecycle {
/**
* This interface enables the developer to set the values to the
[Link]. In turn will update the batch status or activation file. <br>
* The update will be attempted before control is returned to the service
dispatcher [Link]. <br>
* This interface is invoked from [Link] in place of the RECORD
routine. <br>
* The [Link] hook used by this interface is [Link]. <br>
* The transaction will not be processed if the tsaServiceId and action of the
serviceControl is missing or invalid. <br>
* To update an activation file activationMessage needs to be set. <br>
* The related hooks for initialise and getTableName can be created by appending
.LOAD and .SELECT to the [Link] id. <br>
* If an exception is thrown in the implementing class or there is an error with
the ServiceControl object, a [Link] will be raised in on return. <br>
* <br>
* @param id String : The id to process<br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
* @param controlItem String : The item of the control list being processed for
multi stage jobs.<br>
* @return [Link] : the
ServiceControl object containing the tsaServiceId, pgmFileId, action, priorityFlag
and activationMessage. <br>
*/
public [Link]
getServiceControlDetail(String id,
[Link] serviceData, String
controlItem){}
/**
* This interface enables the implementer to return a table name, the RECORD
routine (process/inputRecord) will then be invoked on all ids in the table.<br>
* If the control list is populated the getTableName method will be invoked once
for each item in the list and the process/inputRecord for every id in the table
each time.<br>
* This interface is invoked from [Link] in place of the SELECT
routine [Link] will be invoked for the table.<br>
* The [Link] hook used by this interface is [Link]. <br>
* This hook is specified by naming convention, the [Link] record for the
getTableName hook will append .SELECT to the job name. <br>
* For example where the job name is [Link] the hook will be [Link] <br>
* The T24 field specifying the job name is the [Link] field in BATCH. <br>
* If an exception is thrown in the implementing class, a [Link] will be
raised in JBC. <br>
* <br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
* @param controlList List<String> : The control list to be set<br>
* @return String : the name of the table whos ids are to be processed.<br>
*/
public String
getTableName([Link] serviceData,
List<String> controlList){}
/**
* This interface enables the implementer to define tasks to be executed during
the running of services eg during end of day processing. <br>
* Single threaded services differ from multi threaded services (the process()
method) and either may be more suitable depending on requirements, however
* where possible multi-threaded services should be preferred to benefit from
more scaleable performance.
* This interface is invoked when the BATCH JOB that defines it is invoked by a
T24 service, eg during end of day processing. <br>
* The [Link] hook used by this interface is [Link]. <br>
* The T24 field specifying the job name is the [Link] field in the BATCH
application. <br>
* If an exception is thrown in the implementing class, a [Link] will be
raised in T24. <br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
*/
public void
processSingleThreaded([Link]
serviceData){}
/**
* This interface enables the implementer to return a list of Ids to the
process, the RECORD routine (process/inputRecord) will then be invoked on all the
ids in the list.<br>
* If the control list is populated the getIds method will be invoked once for
each item in the list and the process/inputRecord for every id in the list each
time.<br>
* This interface is invoked from [Link] in place of the SELECT
routine [Link] will be invoked for the prepared list of Ids.<br>
* The [Link] hook used by this interface is [Link]. <br>
* This hook is specified by naming convention, the [Link] record for the getIds
hook will append .SELECT to the job name. <br>
* For example where the job name is [Link] the hook will be [Link] <br>
* The T24 field specifying the job name is the [Link] field in BATCH. <br>
* If an exception is thrown in the implementing class, a [Link] will be
raised in JBC. <br>
* <br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
* @param controlList List<String> : The control list to be set<br>
* @return List<String> : the list of ids are to be processed.<br>
*/
public List<String>
getIds([Link] serviceData,
List<String> controlList){}
/**
* Define a method to process a multiple records from the multiple tables
specified in the 'versionName' parameter<br>
* @param id String : The id to process<br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
* @param controlItem String : The item of the control list being processed.<br>
* @param setZeroAuth TBoolean : set as true for zero authoriser, else will be
default the authoriser defined for the application or version<br>
* @param versionNames List<String> : A list of Version name with which to input
the corresponding records - cannot be the , version<br>
* @param recordIds List<String> : A list of record ids, if an id is empty
string then a new id will be generated for the corresponding record<br>
* @param records List<TStructure> : A list of records to inputeach record will
be input using the version and id at the corresponding index of verdionNames and
recordIds<br>
* @deprecated Use updateRecord instead.<br>
*/
public void inputRecord(String id,
[Link] serviceData, String
controlItem, TBoolean setZeroAuth, List<String> versionNames, List<String>
recordIds, List<TStructure> records){}
/**
* This interface enables the implementer to initialise the ServiceLifecycle
instance e.g. set member variables.<br>
* Implementing this interface is optional and it will not be invoked if not
specified. <br>
* This interface is invoked from [Link] in place of the LOAD routine
once before invoking the getTableName/getIds (SELECT) and process/inputRecord
(RECORD) methods.<br>
* The [Link] hook used by this interface is [Link]. <br>
* This hook is specified by naming convention, the [Link] record for the
initialise hook will append .LOAD to the job name. <br>
* For example where the job name is [Link] the hook will be [Link] <br>
* The T24 field specifying the job name is the [Link] field in BATCH. <br>
* If an exception is thrown in the implementing class, a [Link] will be
raised in JBC. <br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
*/
public void initialise([Link]
serviceData){}
/**
* This interface enables the implementer to return a TableCriteria used to
control the selection of ids from a table.
* The RECORD routine (process/inputRecord) will then be invoked on all the
selected ids.<br>
* This interface is invoked from [Link] in place of the SELECT
routine [Link] will be invoked for the table.<br>
* <br/><b>T24 Details:</b>The [Link] hook used by this interface is
[Link]. <br>
* If the control list is populated the getTableName method will be invoked once
for each item in the list and the process/inputRecord for every id in the table
each time.<br>
* This hook is specified by naming convention, the [Link] record for the
getTableName hook will append .SELECT to the job name. <br>
* For example where the job name is [Link] the hook will be [Link] <br>
* The T24 field specifying the job name is the [Link] field in BATCH. <br>
* If an exception is thrown in the implementing class, a [Link] will be
raised in JBC. <br>
* <br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
* @param controlList List<String> : The control list to be set<br>
* @return [Link] : the
TableCriteria object containing the table name and skipArchivedData property which
controls whether to ignore archived data. <br>
*/
public [Link]
getTableCriteria([Link]
serviceData, List<String> controlList){}
/**
* This interface enables the to post the request to update the records of any
table in asynchronous mode. <br>
* This interface writes the request into the file [Link].
* To post this request into the T24, user has to run the [Link]
service.
* This interface is invoked from [Link] in place of the RECORD
routine. <br>
* The [Link] hook used by this interface is [Link]. <br>
* The versionId should not be a comma version.
* The T24 field specifying the job name is the [Link] field in BATCH. The
[Link] id should be specified in the DATA field (first multi value position) in
BATCH. <br>
* If no [Link] mentioned or invalid [Link], then the process stops from
being processed. <br>
* The related hooks for initialise and getTableName can be created by appending
.LOAD and .SELECT to the [Link] id. <br>
* If an exception is thrown in the implementing class, a [Link] will be
raised in JBC. <br>
* @param id String : The id to process<br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
* @param controlItem String : The item of the control list being processed for
multi stage jobs.<br>
* @param transactionData
List<[Link]> : List of
transaction data each for a single update request including function, transactionId
and versionId.<br>
* @param records List<TStructure> : List of records for the corresponding
request index in transactionData. A record is only required for the INPUT
function.<br>
*/
public void postUpdateRequest(String id,
[Link] serviceData, String
controlItem, List<[Link]>
transactionData, List<TStructure> records){}
/**
* This interface enables the developer to update the records of any table. <br>
* The update will be attempted before control is returned to the service
dispatcher [Link]. <br>
* This interface is invoked from [Link] in place of the RECORD
routine. <br>
* The [Link] hook used by this interface is [Link]. <br>
* The versionId should not be a comma version.<br>
* The T24 field specifying the job name is the [Link] field in BATCH.<br>
* The [Link] id should be specified in the first element of the
transactionData parameter. <br>
* The transaction will not be processed if the [Link] is missing or
invalid. <br>
* The related hooks for initialise and getTableName can be created by appending
.LOAD and .SELECT to the [Link] id. <br>
* If an exception is thrown in the implementing class, a [Link] will be
raised in on return. <br>
* @param id String : The id to process<br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
* @param controlItem String : The item of the control list being processed for
multi stage jobs.<br>
* @param transactionControl
[Link] : Items that control
how the request is processed such as how to group transactions and handle
errors.<br>
* @param transactionData
List<[Link]> : List
of transaction data each for a single update request including function,
transactionId and versionId.<br>
* @param records List<TStructure> : List of records for the corresponding
request index in transactionData. A record is only required for the INPUT
function.<br>
*/
public void updateRecord(String id,
[Link] serviceData, String
controlItem, [Link]
transactionControl,
List<[Link]>
transactionData, List<TStructure> records){}
/**
* This interface enables the implementer to return a number of swift requests
for processing by the system. <br>
* This interface is invoked from [Link] in place of the RECORD
routine. <br>
* <br/><b>T24 Details:</b> The [Link] hook used by this interface is
[Link]. <br>
* The T24 field specifying the job name is the [Link] field in BATCH.<br>
* The related hooks for initialise and getTableName can be created by appending
.LOAD and .SELECT to the [Link] id. <br>
* If an exception is thrown in the implementing class, a [Link] will be
raised in on return. <br>
* <br>
* @param id String : The id to process<br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
* @param controlItem String : The item of the control list being processed for
multi stage jobs.<br>
* @return List<[Link]> : a
list of SwiftResponse. Only those responses with both a swift message and ofs
source id will be processed.<br>
*/
public List<[Link]>
getSwiftRequests(String id, [Link]
serviceData, String controlItem){}
/**
* Define a method to process a single record from the table specified by
getTableName<br>
* @param id String : The id to process<br>
* @param serviceData [Link] :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
* @param controlItem String : The item of the control list being processed.<br>
*/
public void process(String id,
[Link] serviceData, String
controlItem){}