class RouteCacheFlusher (View source)

This service flushes Route caches triggered by node changes.

Properties

protected RouterCachingService $routeCachingService
protected array $tagsToFlush

Methods

void
registerNodeChange(NodeInterface $node)

Schedules flushing of the routing cache entries for the given $node Note that child nodes are flushed automatically because they are tagged with all parents.

void
registerBaseWorkspaceChange(Workspace $workspace, Workspace $oldBaseWorkspace = null, Workspace $newBaseWorkspace = null)

Schedules flushing of the all routing cache entries of the workspace whose base workspace has changed.

void
commit()

Flush caches according to the previously registered node changes.

void
shutdownObject()

No description

Details

void registerNodeChange(NodeInterface $node)

Schedules flushing of the routing cache entries for the given $node Note that child nodes are flushed automatically because they are tagged with all parents.

Parameters

NodeInterface $node

The node which has changed in some way

Return Value

void

void registerBaseWorkspaceChange(Workspace $workspace, Workspace $oldBaseWorkspace = null, Workspace $newBaseWorkspace = null)

Schedules flushing of the all routing cache entries of the workspace whose base workspace has changed.

In most cases $workspace will be a user's personal workspace. Flushing the respective cache entries guards against mismatches for nodes which exist in the old and the new base workspace but have different node identifiers and the same URI path (segment).

Parameters

Workspace $workspace
Workspace $oldBaseWorkspace
Workspace $newBaseWorkspace

Return Value

void

void commit()

Flush caches according to the previously registered node changes.

Return Value

void

void shutdownObject()

No description

Return Value

void