0% found this document useful (0 votes)
64 views6 pages

Service Lifecycle

The ServiceLifecycle class provides interfaces for managing service control and processing in the Temenos T24 system. It includes methods for retrieving service control details, table names, and processing records, as well as handling exceptions and updating records asynchronously. The class is designed to facilitate batch job control and ensure proper execution of service-related tasks within the T24 environment.

Uploaded by

Kumaravel A
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
64 views6 pages

Service Lifecycle

The ServiceLifecycle class provides interfaces for managing service control and processing in the Temenos T24 system. It includes methods for retrieving service control details, table names, and processing records, as well as handling exceptions and updating records asynchronously. The class is designed to facilitate batch job control and ensure proper execution of service-related tasks within the T24 environment.

Uploaded by

Kumaravel A
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 6

package com.temenos.t24.api.hook.

system
/**
*@ValidationCode : N/A
* @ValidationInfo : Timestamp : 19 Jan 2021 11:14:56
* @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
SERVICE.CONTROL. In turn will update the batch status or activation file. <br>
* The update will be attempted before control is returned to the service
dispatcher BATCH.JOB.CONTROL. <br>
* This interface is invoked from BATCH.JOB.CONTROL in place of the RECORD
routine. <br>
* The EB.API hook used by this interface is BATCH.JOB.NAME.HOOK. <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 EB.API id. <br>
* If an exception is thrown in the implementing class or there is an error with
the ServiceControl object, a FATAL.ERROR will be raised in on return. <br>
* <br>
* @param id String : The id to process<br>
* @param serviceData com.temenos.t24.api.complex.eb.servicehook.ServiceData :
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 com.temenos.t24.api.complex.eb.servicehook.ServiceControl : the
ServiceControl object containing the tsaServiceId, pgmFileId, action, priorityFlag
and activationMessage. <br>
*/
public com.temenos.t24.api.complex.eb.servicehook.ServiceControl
getServiceControlDetail(String id,
com.temenos.t24.api.complex.eb.servicehook.ServiceData 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 BATCH.JOB.CONTROL in place of the SELECT
routine BATCH.BUILD.LIST will be invoked for the table.<br>
* The EB.API hook used by this interface is BATCH.JOB.NAME.SELECT.HOOK. <br>
* This hook is specified by naming convention, the EB.API record for the
getTableName hook will append .SELECT to the job name. <br>
* For example where the job name is MY.JOB the hook will be MY.JOB.SELECT <br>
* The T24 field specifying the job name is the JOB.NAME field in BATCH. <br>
* If an exception is thrown in the implementing class, a FATAL.ERROR will be
raised in JBC. <br>
* <br>
* @param serviceData com.temenos.t24.api.complex.eb.servicehook.ServiceData :
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(com.temenos.t24.api.complex.eb.servicehook.ServiceData 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 EB.API hook used by this interface is BATCH.JOB.NAME.HOOK. <br>
* The T24 field specifying the job name is the JOB.NAME field in the BATCH
application. <br>
* If an exception is thrown in the implementing class, a FATAL.ERROR will be
raised in T24. <br>
* @param serviceData com.temenos.t24.api.complex.eb.servicehook.ServiceData :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
*/
public void
processSingleThreaded(com.temenos.t24.api.complex.eb.servicehook.ServiceData
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 BATCH.JOB.CONTROL in place of the SELECT
routine BATCH.BUILD.LIST will be invoked for the prepared list of Ids.<br>
* The EB.API hook used by this interface is BATCH.JOB.NAME.SELECT.HOOK. <br>
* This hook is specified by naming convention, the EB.API record for the getIds
hook will append .SELECT to the job name. <br>
* For example where the job name is MY.JOB the hook will be MY.JOB.SELECT <br>
* The T24 field specifying the job name is the JOB.NAME field in BATCH. <br>
* If an exception is thrown in the implementing class, a FATAL.ERROR will be
raised in JBC. <br>
* <br>
* @param serviceData com.temenos.t24.api.complex.eb.servicehook.ServiceData :
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(com.temenos.t24.api.complex.eb.servicehook.ServiceData 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 com.temenos.t24.api.complex.eb.servicehook.ServiceData :
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,
com.temenos.t24.api.complex.eb.servicehook.ServiceData 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 BATCH.JOB.CONTROL in place of the LOAD routine
once before invoking the getTableName/getIds (SELECT) and process/inputRecord
(RECORD) methods.<br>
* The EB.API hook used by this interface is BATCH.JOB.NAME.LOAD.HOOK. <br>
* This hook is specified by naming convention, the EB.API record for the
initialise hook will append .LOAD to the job name. <br>
* For example where the job name is MY.JOB the hook will be MY.JOB.LOAD <br>
* The T24 field specifying the job name is the JOB.NAME field in BATCH. <br>
* If an exception is thrown in the implementing class, a FATAL.ERROR will be
raised in JBC. <br>
* @param serviceData com.temenos.t24.api.complex.eb.servicehook.ServiceData :
Information related to the current service including the jobName, companyId,
processId, sessionId and jobData.<br>
*/
public void initialise(com.temenos.t24.api.complex.eb.servicehook.ServiceData
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 BATCH.JOB.CONTROL in place of the SELECT
routine BATCH.BUILD.LIST will be invoked for the table.<br>
* <br/><b>T24 Details:</b>The EB.API hook used by this interface is
BATCH.JOB.NAME.SELECT.HOOK. <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 EB.API record for the
getTableName hook will append .SELECT to the job name. <br>
* For example where the job name is MY.JOB the hook will be MY.JOB.SELECT <br>
* The T24 field specifying the job name is the JOB.NAME field in BATCH. <br>
* If an exception is thrown in the implementing class, a FATAL.ERROR will be
raised in JBC. <br>
* <br>
* @param serviceData com.temenos.t24.api.complex.eb.servicehook.ServiceData :
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 com.temenos.t24.api.complex.eb.servicehook.TableCriteria : the
TableCriteria object containing the table name and skipArchivedData property which
controls whether to ignore archived data. <br>
*/
public com.temenos.t24.api.complex.eb.servicehook.TableCriteria
getTableCriteria(com.temenos.t24.api.complex.eb.servicehook.ServiceData
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 OFS.MESSAGE.QUEUE.
* To post this request into the T24, user has to run the OFS.MESSAGE.SERVICE
service.
* This interface is invoked from BATCH.JOB.CONTROL in place of the RECORD
routine. <br>
* The EB.API hook used by this interface is BATCH.JOB.NAME.HOOK. <br>
* The versionId should not be a comma version.
* The T24 field specifying the job name is the JOB.NAME field in BATCH. The
OFS.SOURCE id should be specified in the DATA field (first multi value position) in
BATCH. <br>
* If no OFS.SOURCE mentioned or invalid OFS.SOURCE, 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 EB.API id. <br>
* If an exception is thrown in the implementing class, a FATAL.ERROR will be
raised in JBC. <br>
* @param id String : The id to process<br>
* @param serviceData com.temenos.t24.api.complex.eb.servicehook.ServiceData :
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<com.temenos.t24.api.complex.eb.servicehook.TransactionData> : 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,
com.temenos.t24.api.complex.eb.servicehook.ServiceData serviceData, String
controlItem, List<com.temenos.t24.api.complex.eb.servicehook.TransactionData>
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 BATCH.JOB.CONTROL. <br>
* This interface is invoked from BATCH.JOB.CONTROL in place of the RECORD
routine. <br>
* The EB.API hook used by this interface is BATCH.JOB.NAME.HOOK. <br>
* The versionId should not be a comma version.<br>
* The T24 field specifying the job name is the JOB.NAME field in BATCH.<br>
* The OFS.SOURCE id should be specified in the first element of the
transactionData parameter. <br>
* The transaction will not be processed if the OFS.SOURCE is missing or
invalid. <br>
* The related hooks for initialise and getTableName can be created by appending
.LOAD and .SELECT to the EB.API id. <br>
* If an exception is thrown in the implementing class, a FATAL.ERROR will be
raised in on return. <br>
* @param id String : The id to process<br>
* @param serviceData com.temenos.t24.api.complex.eb.servicehook.ServiceData :
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
com.temenos.t24.api.complex.eb.servicehook.TransactionControl : Items that control
how the request is processed such as how to group transactions and handle
errors.<br>
* @param transactionData
List<com.temenos.t24.api.complex.eb.servicehook.SynchronousTransactionData> : 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,
com.temenos.t24.api.complex.eb.servicehook.ServiceData serviceData, String
controlItem, com.temenos.t24.api.complex.eb.servicehook.TransactionControl
transactionControl,
List<com.temenos.t24.api.complex.eb.servicehook.SynchronousTransactionData>
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 BATCH.JOB.CONTROL in place of the RECORD
routine. <br>
* <br/><b>T24 Details:</b> The EB.API hook used by this interface is
BATCH.JOB.NAME.HOOK. <br>
* The T24 field specifying the job name is the JOB.NAME field in BATCH.<br>
* The related hooks for initialise and getTableName can be created by appending
.LOAD and .SELECT to the EB.API id. <br>
* If an exception is thrown in the implementing class, a FATAL.ERROR will be
raised in on return. <br>
* <br>
* @param id String : The id to process<br>
* @param serviceData com.temenos.t24.api.complex.eb.servicehook.ServiceData :
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<com.temenos.t24.api.complex.eb.servicehook.SwiftRequest> : a
list of SwiftResponse. Only those responses with both a swift message and ofs
source id will be processed.<br>
*/
public List<com.temenos.t24.api.complex.eb.servicehook.SwiftRequest>
getSwiftRequests(String id, com.temenos.t24.api.complex.eb.servicehook.ServiceData
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 com.temenos.t24.api.complex.eb.servicehook.ServiceData :
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,
com.temenos.t24.api.complex.eb.servicehook.ServiceData serviceData, String
controlItem){}

You might also like