PluginProbe
WCPOS – Point of Sale (POS) plugin for WooCommerce / 1.10.16
WCPOS – Point of Sale (POS) plugin for WooCommerce v1.10.16
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 1.9.14 1.9.13 All 162 releases
woocommerce-pos / includes / Sync / Order_Uuid_Exception.php

Order_Uuid_Exception.php in WCPOS – Point of Sale (POS) plugin for WooCommerce 1.10.16, at includes/Sync/Order_Uuid_Exception.php

27 lines 941 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * WCPOS sync read surface.
4 *
5 * @package WCPOS\WooCommercePOS\Sync
6 */
7
8 namespace WCPOS\WooCommercePOS\Sync;
9
10 use RuntimeException;
11
12 // phpcs:disable Squiz.Commenting, Generic.Commenting -- Ported lab documentation is preserved verbatim.
13
14 /**
15 * The uuid fail-closed contract violated: serialize_order/skeleton_for_order
16 * always stamp _woocommerce_pos_uuid, so an empty uuid on a non-empty payload
17 * means the write surface is broken — never emit the document. This is THE
18 * one reaction (#424): direct builders let it fail their page/chunk (retried);
19 * the pull planner catches it to stop the page WITHOUT advancing the checkpoint
20 * (hasMore forces a retry from the last emitted position).
21 */
22 final class Order_Uuid_Exception extends RuntimeException {
23 public static function for_order( int $order_id ): self {
24 return new self( 'Order document could not resolve _woocommerce_pos_uuid for order ' . $order_id );
25 }
26 }
27