Jake Vanderwerf
2026-09-04 c16a4d78d07e81ecdd2ff9b1b9090560ab2fe488
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
namespace JVBase\managers\queue;
if (!defined('ABSPATH')) {
    exit;
}
 
interface Mergeable
{
    /**
     * Return requestData key/value pairs that must match for a candidate to be considered.
     * Empty array = match any (current behavior).
     */
    public function matchCriteria(Operation $incoming): array;
    public function canMerge(Operation $existing, Operation $incoming): bool;
    public function merge(Operation $existing, Operation $incoming): Operation;
}