PluginProbe
WCPOS – Point of Sale (POS) plugin for WooCommerce / 1.10.20
WCPOS – Point of Sale (POS) plugin for WooCommerce v1.10.20
1.10.20 1.10.19 1.10.18 1.10.17 1.10.16 1.10.15 1.10.13 1.10.14 1.10.12 1.10.11 1.10.10 1.10.9 1.10.8 untagged-3d9b7ccddc54df87c672 1.10.7 1.10.6 1.10.5 1.10.3 1.10.4 1.10.2 1.10.1 1.10.0 1.9.17 1.9.15 1.9.16 All 164 releases
woocommerce-pos / vendor / ramsey / uuid / src / Provider / Node / FallbackNodeProvider.php

FallbackNodeProvider.php in WCPOS – Point of Sale (POS) plugin for WooCommerce 1.10.20, at vendor/ramsey/uuid/src/Provider/Node/FallbackNodeProvider.php

61 lines 1.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 /**
4 * This file is part of the ramsey/uuid library
5 *
6 * For the full copyright and license information, please view the LICENSE
7 * file that was distributed with this source code.
8 *
9 * @copyright Copyright (c) Ben Ramsey <[email protected]>
10 * @license http://opensource.org/licenses/MIT MIT
11 */
12
13 declare(strict_types=1);
14
15 namespace Ramsey\Uuid\Provider\Node;
16
17 use Ramsey\Uuid\Exception\NodeException;
18 use Ramsey\Uuid\Provider\NodeProviderInterface;
19 use Ramsey\Uuid\Type\Hexadecimal;
20
21 /**
22 * FallbackNodeProvider retrieves the system node ID by stepping through a list
23 * of providers until a node ID can be obtained
24 */
25 class FallbackNodeProvider implements NodeProviderInterface
26 {
27 /**
28 * @var NodeProviderCollection
29 */
30 private $nodeProviders;
31
32 /**
33 * @param NodeProviderCollection $providers Array of node providers
34 */
35 public function __construct(NodeProviderCollection $providers)
36 {
37 $this->nodeProviders = $providers;
38 }
39
40 public function getNode(): Hexadecimal
41 {
42 $lastProviderException = null;
43
44 foreach ($this->nodeProviders as $provider) {
45 try {
46 return $provider->getNode();
47 } catch (NodeException $exception) {
48 $lastProviderException = $exception;
49
50 continue;
51 }
52 }
53
54 throw new NodeException(
55 'Unable to find a suitable node provider',
56 0,
57 $lastProviderException
58 );
59 }
60 }
61