Class BTWorkloadMovement
java.lang.Object
overit.geocall.bl.BusinessTask<WorkloadMovementEvent>
overit.geocallapp.wfm.roughplanning.bl.workloadmovement.task.BTWorkloadMovement
- All Implemented Interfaces:
Serializable,Tool
@Event(WorkloadMovementEvent.class)
public class BTWorkloadMovement
extends BusinessTask<WorkloadMovementEvent>
Business task for handling workload movement operations.
This task orchestrates the workload movement process by:
1. Validating the input
2. Retrieving the source workload movements
3. Creating a movement problem
4. Solving the problem
5. Returning the solution
- Since:
- 20.0
- See Also:
- GCApi:
- task
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected voidbody(WorkloadMovementEvent event, PoolKit poolKit) Implements this method to write the specific task logic to handle the input parameter.protected overit.geocall.wfm.planning.bl.valuemovement.problem.ValueMovementProblemcreateProblem(WorkloadMovementInput input, List<overit.geocall.wfm.planning.bl.valuemovement.TimedValue> sourceTimedValues, PoolKit poolKit) Creates a movement problem from the input and source timed values.protected WorkloadMovementProviderFactorcreateProviderFactor(WorkloadMovementInput input, PoolKit poolKit) Creates a provider factor from the input.protected overit.geocall.wfm.planning.bl.valuemovement.solver.ValueMovementSolverprotected voidvalidateProblem(overit.geocall.wfm.planning.bl.valuemovement.problem.ValueMovementProblem problem) Validates the problem using the validator.Methods inherited from class overit.geocall.bl.BusinessTask
start, start, startAlone, startInBackground
-
Constructor Details
-
BTWorkloadMovement
public BTWorkloadMovement()
-
-
Method Details
-
body
protected void body(WorkloadMovementEvent event, PoolKit poolKit) throws DAException, DAValidateException Description copied from class:BusinessTaskImplements this method to write the specific task logic to handle the input parameter.- Specified by:
bodyin classBusinessTask<WorkloadMovementEvent>- Parameters:
event- the object upon which the task will works onpoolKit- the poolkit containing the reference to the database connection that can be used- Throws:
DAException- in case of database errorDAValidateException- in case of database validation error
-
getSolver
protected overit.geocall.wfm.planning.bl.valuemovement.solver.ValueMovementSolver getSolver(WorkloadMovementType type) throws DAValidateException - Throws:
DAValidateException
-
createProviderFactor
protected WorkloadMovementProviderFactor createProviderFactor(WorkloadMovementInput input, PoolKit poolKit) throws DAException, DAValidateException Creates a provider factor from the input.- Parameters:
input- the input parameterspoolKit-- Returns:
- the provider factor
- Throws:
DAExceptionDAValidateException
-
createProblem
protected overit.geocall.wfm.planning.bl.valuemovement.problem.ValueMovementProblem createProblem(WorkloadMovementInput input, List<overit.geocall.wfm.planning.bl.valuemovement.TimedValue> sourceTimedValues, PoolKit poolKit) throws DAException, DAValidateException Creates a movement problem from the input and source timed values.- Parameters:
input- the input parameterssourceTimedValues- the source timed valuespoolKit- the pool kit- Returns:
- the movement problem
- Throws:
DAExceptionDAValidateException
-
validateProblem
protected void validateProblem(overit.geocall.wfm.planning.bl.valuemovement.problem.ValueMovementProblem problem) throws DAValidateException Validates the problem using the validator.- Parameters:
problem- the problem to validate- Throws:
DAValidateException- if validation fails
-