Skip to content

Commit 9efdf26

Browse files
committed
Updated examples to RxPHP 2.0
1 parent 46077f4 commit 9efdf26

10 files changed

+36
-49
lines changed
Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,19 @@
11
<?php
22

3-
use React\EventLoop\Factory;
4-
use Rx\Observer\CallbackObserver;
53
use ApiClients\Client\Travis\AsyncClient;
64
use ApiClients\Client\Travis\Resource\AccountInterface;
5+
use React\EventLoop\Factory;
76
use function ApiClients\Foundation\resource_pretty_print;
87

98
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
109

1110
$loop = Factory::create();
1211
$client = AsyncClient::create($loop, require 'resolve_key.php');
1312

14-
$client->accounts()->subscribe(new CallbackObserver(function (AccountInterface $account) {
13+
$client->accounts()->subscribe(function (AccountInterface $account) {
1514
$account->refresh()->then(function (AccountInterface $account) {
1615
resource_pretty_print($account);
1716
});
18-
}));
17+
});
1918

2019
$loop->run();

examples/hooks-async.php

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,17 @@
11
<?php
22

3-
use React\EventLoop\Factory;
4-
use Rx\Observer\CallbackObserver;
53
use ApiClients\Client\Travis\AsyncClient;
64
use ApiClients\Client\Travis\Resource\HookInterface;
5+
use React\EventLoop\Factory;
76
use function ApiClients\Foundation\resource_pretty_print;
87

98
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
109

1110
$loop = Factory::create();
1211
$client = AsyncClient::create($loop, require 'resolve_key.php');
1312

14-
$client->hooks()->subscribe(new CallbackObserver(function (HookInterface $hook) {
13+
$client->hooks()->subscribe(function (HookInterface $hook) {
1514
resource_pretty_print($hook);
16-
}));
15+
});
1716

1817
$loop->run();

examples/jobs-last-build-async.php

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,23 @@
11
<?php
22

3-
use React\EventLoop\Factory;
4-
use Rx\Observer\CallbackObserver;
53
use ApiClients\Client\Travis\AsyncClient;
64
use ApiClients\Client\Travis\Resource\Async\Job;
75
use ApiClients\Client\Travis\Resource\Async\Repository;
6+
use React\EventLoop\Factory;
7+
use Rx\React\Promise;
88

99
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
1010

1111
$loop = Factory::create();
1212
$client = AsyncClient::create($loop);
1313

14-
$jobs = $client->repository($argv[1] ?? 'WyriHaximus/php-travis-client')->flatMap(function (Repository $repository) {
14+
Promise::toObservable($client->repository($argv[1] ?? 'WyriHaximus/php-travis-client'))->flatMap(function (Repository $repository) {
1515
return $repository->jobs($repository->lastBuildId());
16-
});
17-
18-
$jobs->subscribe(new CallbackObserver(function (Job $job) {
16+
})->subscribe(function (Job $job) {
1917
echo 'Job', PHP_EOL;
2018
echo "\t" . 'id: ' . $job->id(), PHP_EOL;
2119
echo "\t" . 'number: ' . $job->number(), PHP_EOL;
2220
echo "\t" . 'state: ' . $job->state(), PHP_EOL;
23-
}));
21+
});
2422

2523
$loop->run();

examples/last-10-builds-async.php

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
<?php
22

3-
use React\EventLoop\Factory;
4-
use Rx\Observer\CallbackObserver;
53
use ApiClients\Client\Travis\AsyncClient;
64
use ApiClients\Client\Travis\Resource\Async\Repository;
75
use ApiClients\Client\Travis\Resource\BuildInterface;
6+
use React\EventLoop\Factory;
87

98
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
109

@@ -18,12 +17,12 @@
1817
echo 'description: ' . $repository->description(), PHP_EOL;
1918
echo 'Builds:', PHP_EOL;
2019

21-
$repository->builds()->subscribe(new CallbackObserver(function (BuildInterface $build) {
20+
$repository->builds()->subscribe(function (BuildInterface $build) {
2221
echo "\t", 'Build', PHP_EOL;
2322
echo "\t\t" . 'id: ' . $build->id(), PHP_EOL;
2423
echo "\t\t" . 'commit id: ' . $build->commitId(), PHP_EOL;
2524
echo "\t\t" . 'duration: ' . $build->duration(), PHP_EOL;
26-
}));
25+
});
2726
});
2827

2928

examples/last-10-commits-async.php

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,9 @@
11
<?php
22

3-
use React\EventLoop\Factory;
4-
use Rx\Observer\CallbackObserver;
5-
use Rx\React\Promise;
63
use ApiClients\Client\Travis\AsyncClient;
74
use ApiClients\Client\Travis\Resource\Async\Repository;
85
use ApiClients\Client\Travis\Resource\CommitInterface;
6+
use React\EventLoop\Factory;
97

108
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
119

@@ -18,13 +16,13 @@
1816
echo 'slug: ' . $repository->slug(), PHP_EOL;
1917
echo 'description: ' . $repository->description(), PHP_EOL;
2018
echo 'Commits:', PHP_EOL;
21-
$repository->commits()->subscribe(new CallbackObserver(function (CommitInterface $commit) {
19+
$repository->commits()->subscribe(function (CommitInterface $commit) {
2220
echo "\t", 'Commit', PHP_EOL;
2321
echo "\t\t" . 'id: ' . $commit->id(), PHP_EOL;
2422
echo "\t\t" . 'sha: ' . $commit->sha(), PHP_EOL;
2523
echo "\t\t" . 'branch: ' . $commit->branch(), PHP_EOL;
2624
echo "\t\t" . 'message: ' . $commit->message(), PHP_EOL;
27-
}));
25+
});
2826
});
2927

3028
$loop->run();

examples/repository-branches-async.php

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
<?php
22

3-
use React\EventLoop\Factory;
4-
use Rx\Observer\CallbackObserver;
53
use ApiClients\Client\Travis\AsyncClient;
64
use ApiClients\Client\Travis\Resource\BranchInterface;
75
use ApiClients\Client\Travis\Resource\RepositoryInterface;
6+
use React\EventLoop\Factory;
87
use function ApiClients\Foundation\resource_pretty_print;
98

109
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
@@ -25,9 +24,9 @@
2524

2625
foreach ($repos as $repo) {
2726
$client->repository($repo)->then(function (RepositoryInterface $repo) {
28-
$repo->branches()->subscribe(new CallbackObserver(function (BranchInterface $branch) {
27+
$repo->branches()->subscribe(function (BranchInterface $branch) {
2928
resource_pretty_print($branch);
30-
}));
29+
});
3130
});
3231
}
3332

examples/repository-cache-async.php

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
<?php
22

3-
use React\EventLoop\Factory;
4-
use Rx\Observer\CallbackObserver;
53
use ApiClients\Client\Travis\AsyncClient;
64
use ApiClients\Client\Travis\Resource\CacheInterface;
75
use ApiClients\Client\Travis\Resource\RepositoryInterface;
6+
use React\EventLoop\Factory;
87
use function ApiClients\Foundation\resource_pretty_print;
98

109
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
@@ -27,7 +26,7 @@
2726
$client->repository($repo)->then(function (RepositoryInterface $repo) {
2827
$cacheSize = 0;
2928
$cacheCount = 0;
30-
$repo->caches()->subscribe(new CallbackObserver(function (CacheInterface $cache) use (&$cacheSize, &$cacheCount) {
29+
$repo->caches()->subscribe(function (CacheInterface $cache) use (&$cacheSize, &$cacheCount) {
3130
resource_pretty_print($cache);
3231
$cacheSize += $cache->size();
3332
$cacheCount++;
@@ -36,7 +35,7 @@
3635
echo "\t", 'Size: ', round($cacheSize / 1024 / 1024), 'MB', PHP_EOL;
3736
echo "\t", 'Count: ', $cacheCount, PHP_EOL;
3837
echo "\t", 'Average Size: ', round(($cacheCount === 0 ? 0 : $cacheSize / $cacheCount) / 1024 / 1024), 'MB', PHP_EOL;
39-
}));
38+
});
4039
});
4140
}
4241

examples/repository-env-vars-async.php

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
<?php
22

3-
use React\EventLoop\Factory;
4-
use Rx\Observer\CallbackObserver;
53
use ApiClients\Client\Travis\AsyncClient;
64
use ApiClients\Client\Travis\Resource\EnvironmentVariableInterface;
75
use ApiClients\Client\Travis\Resource\RepositoryInterface;
6+
use React\EventLoop\Factory;
87
use function ApiClients\Foundation\resource_pretty_print;
98

109
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
@@ -25,9 +24,9 @@
2524

2625
foreach ($repos as $repo) {
2726
$client->repository($repo)->then(function (RepositoryInterface $repo) {
28-
$repo->vars()->subscribe(new CallbackObserver(function (EnvironmentVariableInterface $envVar) {
27+
$repo->vars()->subscribe(function (EnvironmentVariableInterface $envVar) {
2928
resource_pretty_print($envVar);
30-
}));
29+
});
3130
});
3231
}
3332

examples/repository-stream-logs-async.php

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,14 @@
11
<?php
22

3-
use function ApiClients\Tools\Rx\observableFromArray;
4-
use React\EventLoop\Factory;
5-
use Rx\Observable;
6-
use Rx\Observer\CallbackObserver;
7-
use Rx\React\Promise;
83
use ApiClients\Client\Travis\AsyncClient;
94
use ApiClients\Client\Travis\Resource\Async\Build;
105
use ApiClients\Client\Travis\Resource\Async\Job;
116
use ApiClients\Client\Travis\Resource\Async\LogLine;
127
use ApiClients\Client\Travis\Resource\Async\Repository;
8+
use React\EventLoop\Factory;
9+
use Rx\React\Promise;
1310
use function ApiClients\Foundation\resource_pretty_print;
11+
use function ApiClients\Tools\Rx\observableFromArray;
1412

1513
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
1614

@@ -54,9 +52,9 @@
5452
echo 'Job ID: ', $job->id(), PHP_EOL;
5553
return $job->log();
5654
})
57-
->subscribe(new CallbackObserver(function (LogLine $line) {
55+
->subscribe(function (LogLine $line) {
5856
resource_pretty_print($line);
59-
}));
57+
});
6058

6159

6260
$loop->run();

examples/repository-subscribe-async.php

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
<?php
22

3-
use React\EventLoop\Factory;
4-
use Rx\Observable;
5-
use Rx\Observer\CallbackObserver;
63
use ApiClients\Client\Travis\AsyncClient;
74
use ApiClients\Client\Travis\Resource\Async\Repository;
5+
use React\EventLoop\Factory;
6+
use function ApiClients\Tools\Rx\observableFromArray;
87

98
require dirname(__DIR__) . DIRECTORY_SEPARATOR . 'vendor/autoload.php';
109

@@ -22,19 +21,19 @@
2221
}
2322
}
2423

25-
Observable::fromArray($repos)
24+
observableFromArray($repos)
2625
->flatMap(function ($repo) use ($client) {
2726
return $client->repository($repo);
2827
})
2928
->flatMap(function (Repository $repo) {
3029
echo 'Listening on repository: ', $repo->slug(), PHP_EOL;
3130
return $repo->events();
3231
})
33-
->subscribe(new CallbackObserver(function (Repository $repo) {
32+
->subscribe(function (Repository $repo) {
3433
echo 'Repo: ', $repo->slug(), PHP_EOL;
3534
echo 'Last build ID: ', $repo->lastBuildId(), PHP_EOL;
3635
echo 'Last build #: ', $repo->lastBuildNumber(), PHP_EOL;
3736
echo 'Last build state: ', $repo->lastBuildState(), PHP_EOL;
38-
}));
37+
});
3938

4039
$loop->run();

0 commit comments

Comments
 (0)