Skip to content

Commit 187be71

Browse files
committed
Schedule a job when a trigger is created/updated
1 parent 15b22a0 commit 187be71

File tree

2 files changed

+6
-1
lines changed

2 files changed

+6
-1
lines changed

IntegrationEngine/Api/Controllers/CronTriggerController.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ public IHttpActionResult PutIntegrationJob(string id, CronTrigger trigger)
4545
if (id != trigger.Id)
4646
return BadRequest();
4747
Repository.Update(trigger);
48+
EngineScheduler.ScheduleJobWithCronTrigger(trigger);
4849
return StatusCode(HttpStatusCode.NoContent);
4950
}
5051

IntegrationEngine/Api/Controllers/SimpleTriggerController.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,14 +16,16 @@ namespace IntegrationEngine.Api.Controllers
1616
public class SimpleTriggerController : ApiController
1717
{
1818
public IRepository<SimpleTrigger> Repository { get; set; }
19+
public IEngineScheduler EngineScheduler { get; set; }
1920

2021
public SimpleTriggerController()
2122
{}
2223

23-
public SimpleTriggerController(ESRepository<SimpleTrigger> repository)
24+
public SimpleTriggerController(ESRepository<SimpleTrigger> repository, IEngineScheduler engineScheduler)
2425
: this()
2526
{
2627
Repository = repository;
28+
EngineScheduler = engineScheduler;
2729
}
2830

2931
// GET api/IntegrationJob
@@ -48,6 +50,7 @@ public IHttpActionResult PutIntegrationJob(string id, SimpleTrigger trigger)
4850
if (id != trigger.Id)
4951
return BadRequest();
5052
Repository.Update(trigger);
53+
EngineScheduler.ScheduleJobWithSimpleTrigger(trigger);
5154
return StatusCode(HttpStatusCode.NoContent);
5255
}
5356

@@ -56,6 +59,7 @@ public IHttpActionResult PutIntegrationJob(string id, SimpleTrigger trigger)
5659
public IHttpActionResult PostIntegrationJob(SimpleTrigger trigger)
5760
{
5861
var triggerWithId = Repository.Insert(trigger);
62+
EngineScheduler.ScheduleJobWithSimpleTrigger(triggerWithId);
5963
return CreatedAtRoute("DefaultApi", new { id = triggerWithId.Id }, triggerWithId);
6064
}
6165

0 commit comments

Comments
 (0)