Skip to content

Commit 5406ba4

Browse files
committed
update hook handlers` arguments
1 parent f9b9a0a commit 5406ba4

File tree

4 files changed

+24
-25
lines changed

4 files changed

+24
-25
lines changed

README.md

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ lightweight and powerful task load balancing for php
1313
# Install
1414

1515
```php
16-
composer require 'toplan/task-balancer:~0.2.1'
16+
composer require 'toplan/task-balancer:~0.2.2'
1717
```
1818

1919
# Usage
@@ -173,12 +173,12 @@ get data value of task instance.
173173

174174
| Hook name | handler arguments | influence of the last handler`s return value |
175175
| --------- | :----------------: | :-----: |
176-
| beforeCreateDriver | $task, $preReturn, $index, $count | no effect |
177-
| afterCreateDriver | $task, $preReturn, $index, $count | no effect |
178-
| beforeRun | $task, $preReturn, $index, $count | if `false` will stop run task and return `false` |
179-
| beforeDriverRun | $task, $preReturn, $index, $count | no effect |
180-
| afterDriverRun | $task, $preReturn, $index, $count | no effect |
181-
| afterRun | $task, $taskResult, $preReturn, $index, $count | if not boolean will override result value |
176+
| beforeCreateDriver | $task, $preReturn, $index, $handlers | no effect |
177+
| afterCreateDriver | $task, $preReturn, $index, $handlers | no effect |
178+
| beforeRun | $task, $preReturn, $index, $handlers | if `false` will stop run task and return `false` |
179+
| beforeDriverRun | $task, $preReturn, $index, $handlers | no effect |
180+
| afterDriverRun | $task, $preReturn, $index, $handlers | no effect |
181+
| afterRun | $task, $taskResult, $preReturn, $index, $handlers | if not boolean will override result value |
182182

183183
###Use Hooks
184184

@@ -201,24 +201,24 @@ get data value of task instance.
201201

202202
```php
203203
//example
204-
$task->beforeRun(function($task, $preReturn, $index, $count){
204+
$task->beforeRun(function($task, $preReturn, $index, $handlers){
205205
//what is $preReturn?
206206
$preReturn == null; //true
207207
//what is $index?
208208
$index == 0; //true
209-
//what is $count?
210-
echo $count; //2
209+
//what is $handlers?
210+
echo count($handlers); //2
211211
//do something..
212212
return 'beforeRun_1';
213213
}, false);
214214

215-
$task->beforeRun(function($task, $preReturn, $index, $count){
215+
$task->beforeRun(function($task, $preReturn, $index, $handlers){
216216
//what is $preReturn?
217217
$preReturn == 'beforeRun_1'; //true
218218
//what is $index?
219219
$index == 1; //true
220-
//what is $count?
221-
echo $count; //2
220+
//what is $handlers?
221+
echo count($handlers); //2
222222
//do other something..
223223
}, false);
224224
```

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"name": "toplan/task-balancer",
33
"description": "lightweight and powerful task load balancing for php (like the nginx load balancing)",
44
"license": "MIT",
5-
"version": "0.2.1",
5+
"version": "0.2.2",
66
"keywords": ["task", "balance", "load balancing", "balancer"],
77
"authors": [
88
{

src/TaskBalancer/Task.php

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -524,11 +524,10 @@ protected function callHookHandler($hookName, $data = null)
524524
if (array_key_exists($hookName, $this->handlers)) {
525525
$handlers = $this->handlers[$hookName] ?: [];
526526
$result = null;
527-
$count = count($handlers);
528527
foreach ($handlers as $index => $handler) {
529528
$handlerArgs = $data === null ?
530-
[$this, $result, $index, $count]:
531-
[$this, $data, $result, $index, $count];
529+
[$this, $result, $index, $handlers]:
530+
[$this, $data, $result, $index, $handlers];
532531
$result = call_user_func_array($handler, $handlerArgs);
533532
}
534533
if ($result === null) {

test/demo2.php

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,36 +16,36 @@
1616
print_r('run work! by '.$driver->name.'<br>');
1717
});
1818

19-
$task->beforeRun(function($task, $preReturn, $index){
19+
$task->beforeRun(function($task, $preReturn, $index, $handlers){
2020
print_r("before run ---$preReturn-----$index<br>");
2121
return 11;
2222
});
2323

24-
$task->beforeRun(function($task, $preReturn, $index){
24+
$task->beforeRun(function($task, $preReturn, $index, $handlers){
2525
print_r("before run ---$preReturn-----$index<br>");
2626
return 22;
27-
}, true);
27+
}, false);
2828

29-
$task->beforeRun(function($task, $preReturn, $index){
29+
$task->beforeRun(function($task, $preReturn, $index, $handlers){
3030
print_r("before run ---$preReturn-----$index<br>");
3131
});
3232

33-
$task->hook('beforeDriverRun', function($task, $preReturn, $index){
33+
$task->hook('beforeDriverRun', function($task, $preReturn, $index, $handlers){
3434
print_r("before driver run ---$preReturn-----$index<br>");
3535
return [1];
3636
});
3737

38-
$task->hook('beforeDriverRun', function($task, $preReturn, $index){
38+
$task->hook('beforeDriverRun', function($task, $preReturn, $index, $handlers){
3939
print_r("before driver run ---".implode(',', $preReturn)."-----$index<br>");
4040
return [1,2];
4141
}, true);
4242

43-
$task->hook('beforeDriverRun', function($task, $preReturn, $index){
43+
$task->hook('beforeDriverRun', function($task, $preReturn, $index, $handlers){
4444
print_r("before driver run ---".implode(',', $preReturn)."-----$index<br>");
4545
return [1,2,3];
4646
});
4747

48-
$task->afterRun(function($task, $results){
48+
$task->afterRun(function($task, $results, $preReturn, $index, $handlers){
4949
print_r("after run --------!<br>");
5050
});
5151
});

0 commit comments

Comments
 (0)