automatewoo/includes/Async_Events/UniqueEventsForRequestHelper.php
fei-source 47d3c9a8b6 Update to v6.2.2
Source: GrootMade/Festinger Vault
2026-03-15 08:31:15 +08:00

42 lines
920 B
PHP

<?php
namespace AutomateWoo\Async_Events;
/**
* Trait UniqueEventsForRequestHelper
*
* Helper to record and check whether async event has been created for the given item in the current request.
*
* @since 5.2.0
*/
trait UniqueEventsForRequestHelper {
/**
* Array of IDs of items that that were created in the current request.
*
* @since 5.2.0
*
* @var int[]
*/
protected $created_event_item_ids = [];
/**
* Check if a given item ID is unique for this event during the current request.
*
* @param int $item_id
*
* @return bool
*/
protected function check_item_is_unique_for_event( int $item_id ): bool {
return in_array( $item_id, $this->created_event_item_ids, true );
}
/**
* Record that an event was added for the item ID.
*
* @param int $item_id
*/
protected function record_event_added_for_item( int $item_id ) {
$this->created_event_item_ids[] = $item_id;
}
}