Package de.dlr.proseo.planner.dispatcher
Klasse JobDispatcher
java.lang.Object
de.dlr.proseo.planner.dispatcher.JobDispatcher
This class is responsible for creating and dispatching job orders for job steps, including information about the processor,
configuration files, input files, and output files. It also provides methods for sending the job order to the storage manager.
- Autor:
- Ernst Melchinger
-
Konstruktorübersicht
Konstruktoren -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungvoid
addIpfIOInput
(Product product, Proc processingTask, JobStep jobStep, boolean useTimeIntervals) Add input file definition of the given product recursively.void
addIpfIOInput
(Map<String, List<Product>> productClasses, Proc processingTask, JobStep jobStep, Boolean useTimeIntervals) Add input file definition of products recursively.void
addIpfIOOutput
(Product product, Proc processingTask, JobStep jobStep, String baseDir) Add output file definition of the product recursively.createJobOrder
(JobStep jobStep) Create the job order for a job step.sendJobOrderToStorageManager
(KubeConfig kubeConfig, JobOrder jobOrder, JobOrderVersion jobOrderVersion) Send the job order as a Base64 string to the storage manager.
-
Konstruktordetails
-
JobDispatcher
public JobDispatcher()Create a job dispatcher.
-
-
Methodendetails
-
createJobOrder
Create the job order for a job step.- Parameter:
jobStep
- The job step for which the job order is created.- Gibt zurück:
- The new job order.
- Löst aus:
Exception
- if the job order creation was unsuccessful
-
addIpfIOInput
public void addIpfIOInput(Product product, Proc processingTask, JobStep jobStep, boolean useTimeIntervals) Add input file definition of the given product recursively.- Parameter:
product
- The product.processingTask
- The processing task.jobStep
- The job step.useTimeIntervals
- Determines whether to generate TimeInterval elements in the input definition.
-
addIpfIOInput
public void addIpfIOInput(Map<String, List<Product>> productClasses, Proc processingTask, JobStep jobStep, Boolean useTimeIntervals) Add input file definition of products recursively.- Parameter:
productClasses
- A map of products accessible by product class.processingTask
- The Ipf_Proc element to add the input to.jobStep
- The job step for which the Job Order is generated.useTimeIntervals
- Determines whether to generate TimeInterval elements in the input definition.
-
addIpfIOOutput
Add output file definition of the product recursively.- Parameter:
product
- The product.processingTask
- The processing task.jobStep
- The job step.baseDir
- The base directory path of output data in facility/storage manager.
-
sendJobOrderToStorageManager
public JobOrder sendJobOrderToStorageManager(KubeConfig kubeConfig, JobOrder jobOrder, JobOrderVersion jobOrderVersion) Send the job order as a Base64 string to the storage manager.- Parameter:
kubeConfig
- The processing facility configuration.jobOrder
- The job order to send.jobOrderVersion
- The specification version of the job order file to apply.- Gibt zurück:
- The job order with updated file name, or null if unsuccessful.
-