Cancel
Showing results for 
Search instead for 
Did you mean: 

Dispatcher customization to manage background tasks

Experimenter
Experimenter

We use Teamcenter dispatcher with OOTB and custom translators. It provides a robust framework for translations related to Teamcenter. My question is related to using dispatcher not for translating content but for scheduling and executing custom ITKs. We have a perl script for each custom ITK that checks for a ticket file with input required for custom ITK. The perl script is scheduled using unix cron tabs or windows task scheduler. When a ticket file exists, the perl script calls custom ITK otherwise, it checks for ticket file again after some time delay. The custom ITK usually creates an item or updates some properties.

 

My plan is to replace this with a more robust framework which has better tracking, ability to shutdown/start on demand, ability to delegate to custom ITKs running on a distributed network. Dispatcher looks like a good replacement in theory but the entire wiring seems to be around downloading files during task preparation and uploading files after translation is done. Did anyone use dispatcher in a similar way? Do you recommend dispatcher for such use? Cheers.

 

2 REPLIES

Re: Dispatcher customization to manage background tasks

Solution Partner Legend Solution Partner Legend
Solution Partner Legend
I have done customization of TaskPrep (before download) as well as DataBaseOperation (after translation) class. OOTB DBOperation class handles upload of files, so this can be stopped in the custom class. But I don't see a way to stop file download, as it is done after Task preparation.

Re: Dispatcher customization to manage background tasks

Experimenter
Experimenter

Hi Amol,

Thanks for the response. Yes, I had to write custom code overriding com.teamcenter.ets.load.DatabaseOperation. Implementation was empty in load() and query() calls. This seemed to do the trick for loading. I got some success with specifying this class for task preparation com.teamcenter.ets.extract.DefaultTaskPrep. This creates a dummy file and does not download anything from database.

This almost feels like a hack but as long as it works...