Failure_Notifications implements Registerable, Standard_Service
Site-local, version-deduplicated parser notifications and bounded metadata repair.
Tags
Interfaces, Classes and Traits
- Registerable
- Standard_Service
Table of Contents
- HISTORY = '_dlp_parser_notified'
- LOCK = 'dlp_parser_mail_lock'
- PENDING = '_dlp_parser_pending'
- SCAN = 'dlp_repair_parser_metadata'
- SEND = 'dlp_send_parser_failures'
- $repository : mixed
- __construct() : mixed
- Initialize the shared current-failure query.
- activity() : void
- Extend the quiet period and allow exhausted deliveries to retry.
- blocklist() : array<string|int, mixed>
- Exclude private state from both search indexes and reindex triggers.
- encounter() : void
- Remember an unreported document version independently of parser caches.
- full_run() : void
- Include quarantined versions skipped by the full indexing runner.
- maybe_repair() : void
- Start the one-time migration for existing incomplete metadata indexes.
- recover() : void
- Reindex metadata only while the cached failed version still matches.
- register() : mixed
- Register reporting on frontend, admin, and cron requests.
- scan() : void
- Visit at most 25 cached failures per background job.
- send() : void
- Validate current failures and send a single site-local HTML summary.
- build_email_body() : string
- Build the HTML summary with one row for each affected document.
- busy() : bool
- Wait for full runs, updates, explicit retries, and metadata repair.
- repair_pending() : bool
- Check all argument variants of the background recovery hooks.
- schedule() : void
- Schedule one future delivery attempt.
Constants
HISTORY
public
mixed
HISTORY
= '_dlp_parser_notified'
Tags
LOCK
public
mixed
LOCK
= 'dlp_parser_mail_lock'
Tags
PENDING
public
mixed
PENDING
= '_dlp_parser_pending'
Tags
SCAN
public
mixed
SCAN
= 'dlp_repair_parser_metadata'
Tags
SEND
public
mixed
SEND
= 'dlp_send_parser_failures'
Tags
Properties
$repository
private
mixed
$repository
Tags
Methods
__construct()
Initialize the shared current-failure query.
public
__construct([Failure_Repository|null $repository = null ]) : mixed
Parameters
- $repository : Failure_Repository|null = null
-
Optional repository.
Tags
Return values
mixed —activity()
Extend the quiet period and allow exhausted deliveries to retry.
public
activity() : void
Tags
Return values
void —blocklist()
Exclude private state from both search indexes and reindex triggers.
public
blocklist(array<string|int, mixed> $keys) : array<string|int, mixed>
Parameters
- $keys : array<string|int, mixed>
-
Existing excluded keys.
Tags
Return values
array<string|int, mixed> —encounter()
Remember an unreported document version independently of parser caches.
public
encounter(array<string|int, mixed> $row) : void
Parameters
- $row : array<string|int, mixed>
-
Failure cache identity.
Tags
Return values
void —full_run()
Include quarantined versions skipped by the full indexing runner.
public
full_run() : void
Tags
Return values
void —maybe_repair()
Start the one-time migration for existing incomplete metadata indexes.
public
maybe_repair() : void
Tags
Return values
void —recover()
Reindex metadata only while the cached failed version still matches.
public
recover(int $post_id) : void
Parameters
- $post_id : int
-
Document ID.
Tags
Return values
void —register()
Register reporting on frontend, admin, and cron requests.
public
register() : mixed
Tags
Return values
mixed —scan()
Visit at most 25 cached failures per background job.
public
scan(int $offset) : void
Parameters
- $offset : int
-
Failure page offset.
Tags
Return values
void —send()
Validate current failures and send a single site-local HTML summary.
public
send() : void
Tags
Return values
void —build_email_body()
Build the HTML summary with one row for each affected document.
private
build_email_body(array<string|int, mixed> $documents) : string
Parameters
- $documents : array<string|int, mixed>
-
Document IDs, titles, filenames and failure reasons.
Tags
Return values
string —busy()
Wait for full runs, updates, explicit retries, and metadata repair.
private
busy(array<string|int, mixed> $indexers) : bool
Parameters
- $indexers : array<string|int, mixed>
-
Current site engine services.
Tags
Return values
bool —repair_pending()
Check all argument variants of the background recovery hooks.
private
repair_pending() : bool
Tags
Return values
bool —schedule()
Schedule one future delivery attempt.
private
schedule([int $delay = 300 ]) : void
Parameters
- $delay : int = 300
-
Seconds until delivery.