CL_CRM_MKTPL_EAI_MASS_TASK_MGR - Task Manager for Parallel Processing

ROGBILLS - Synchronize billing plans   BAL Application Log Documentation  
This documentation is copyright by SAP AG.

>>> Development Documentation generated by DocuGenerator v2.0 (only available in English => NO TRANSLATION!!!) <<<

General Class Description

Task Manager for Parallel Processing

__________________________________________________________

Class Info

Name:CL_CRM_MKTPL_EAI_MASS_TASK_MGR
Instantiation:Public

Superclass

None

Implemented Interfaces

None

Friend Classes

None

Subclasses

None

__________________________________________________________

Methods

CREATE_TASK

Public CRMS_MKTPL_EAI_TASK CREATE_TASK(

IMPORTINGANY TABLE IT_OBJECTS

)

This method assigns a list of table of object to a list of task.
To each table of objects, one task ID is generated. A taks is compound of
one Task ID and one bucket which contains all the objects to be processed.
The task ID is necessary to track the asynchronous processing of task in parallel.

Returns

RS_TASK contains all the created tasks.

Parameters

- IT_OBJECTScontains a list of table of objects to assign.

________________________________________________________________________

CREATE_TASKS

Public CRMT_MKTPL_EAI_TASK CREATE_TASKS(

IMPORTINGANY TABLE IT_BUCKETS

)

This method loops at all bucket (bucket = table of objects) and
calls the method 'single' Create task in order to assign each bucket to a task

Returns

RT_TASKS returns the list of created tasks

Parameters

- IT_BUCKETScontains a list of table of objects (i.e. table of objects = bucket )

________________________________________________________________________

FREE

Public FREE( )

This method clears all the class attributes and is called at the end of
the parallel processing.

________________________________________________________________________

GENERATE_TASK_ID

Private CRM_MKTPL_EAI_TASK_ID GENERATE_TASK_ID( )

This method generates a task ID with a simple incrementation.
The task ID is unique and is used to track the bucket of object attached to the task ID.

Returns

RV_NEXT_TASKID return the generated task ID

________________________________________________________________________

GET_UNPROCESSED_TASKS

Public CRMT_MKTPL_EAI_TASK GET_UNPROCESSED_TASKS( )

This method returns all the tasks which are not processed yet.
This method is used to get all the tasks not processed by parallel processing
so as to treat these specific tasks in local

Returns

RT_UNPROCESSED_TASKS contains the list of tasks not processed yet

________________________________________________________________________

HAS_A_TASK_RETURNED

Public ABAP_BOOL HAS_A_TASK_RETURNED( )

This method returned abap_true when a task has returned. This method is used during
the Wait in parallel processing in case no ressource available left. In this case,
the application has to wait unit one task has returned, and therefore, one server
capacity is free.

Returns

RV_HAS_A_TASK_RETURNED equals to abap_true when a task has been returned

________________________________________________________________________

HAVE_ALL_TASKS_RETURNED

Public ABAP_BOOL HAVE_ALL_TASKS_RETURNED( )

This method checks if all tasks have been returned
from (asynchronous) parallel processing

Returns

RV_ALL_TASKS_HAVE_RETURNED retuns abap_true if all the tasks have been returned

________________________________________________________________________

NOTIFY_TASK_HAS_RETURNED

Public NOTIFY_TASK_HAS_RETURNED( )

This method notifies that a task has been returned. When a task has been returned,
a server capacity has been freed. Therefore, in case of a task waiting that some server
ressource is available, this task can be processed when it received the present notification.

________________________________________________________________________

NOTIFY_TASK_IS_SENT

Public NOTIFY_TASK_IS_SENT( )

This method notifies that a task has been sent.

________________________________________________________________________

NOTIFY_TASK_IS_SUCCESSFUL

Public NOTIFY_TASK_IS_SUCCESSFUL(

IMPORTINGCRM_MKTPL_EAI_TASK_ID IV_TASKID

)

This method has to notify when a task has been processed successfully.
Since the task is successful, the task related information is not needed anymore.
The task ID is therefore removed from the task id list. Moreover, at the end of
process mt_tasks contains all the unprocessed tasks.

Parameters

- IV_TASKIDcontains the task ID which has been processed successfully



ROGBILLS - Synchronize billing plans   General Material Data  
This documentation is copyright by SAP AG.


Length: 7276 Date: 20120526 Time: 113251     triton ( 84 ms )