forked from ProcessMaker/processmaker
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCatchSignalEventRequest.php
More file actions
45 lines (37 loc) · 1.09 KB
/
CatchSignalEventRequest.php
File metadata and controls
45 lines (37 loc) · 1.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?php
namespace ProcessMaker\Jobs;
use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use ProcessMaker\Facades\WorkflowManager;
use ProcessMaker\Models\ProcessRequest;
class CatchSignalEventRequest implements ShouldQueue
{
use Dispatchable,
InteractsWithQueue,
Queueable;
public $chunck;
public $signalRef;
public $payload_uid;
/**
* Create a new job instance.
*
* @return void
*/
public function __construct($chunck, $signalRef, $payload)
{
$this->chunck = $chunck;
$this->payload_uid = packTemporalData($payload);
$this->signalRef = $signalRef;
}
public function handle()
{
$payload = unpackTemporalData($this->payload_uid);
foreach ($this->chunck as $requestId) {
$request = ProcessRequest::find($requestId);
WorkflowManager::throwSignalEventRequest($request, $this->signalRef, $payload);
}
removeTemporalData($this->payload_uid);
}
}