Skip to content

feat: allow custom data and filename on XmlProcessorContext#13

Closed
Scarbous wants to merge 1 commit into
mainfrom
worktree-squishy-seeking-whale
Closed

feat: allow custom data and filename on XmlProcessorContext#13
Scarbous wants to merge 1 commit into
mainfrom
worktree-squishy-seeking-whale

Conversation

@Scarbous

Copy link
Copy Markdown
Member

Summary

  • XmlProcessor::processFile(string $filename, array $data = []) now accepts an optional associative array of custom data
  • The filename and the custom data are written to XmlProcessorContext at the start of each processFile() call, so node processors can read them via $context->getXmlProcessorContext()->getFilename() / ->getData() / ->get($key)
  • Added setFilename/getFilename, setData/getData, get/set/has to XmlProcessorContext
  • Documented the new capability in the README

Test plan

  • composer test:unit passes (new tests for XmlProcessorContext getters/setters and XmlProcessor::processFile filling the context)

🤖 Generated with Claude Code

processFile() now accepts an optional data array that is stored on the
XmlProcessorContext alongside the currently processed filename, so node
processors can access per-run context via getXmlProcessorContext().

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

Code Coverage

Package Line Rate Health
features/NodeProcessor/ArrayNodeProcessor.php 100%
features/NodeProcessor/InvokeNodeProcessorInterface.php 0%
features/NodeProcessor/TextNodeProcessor.php 100%
src/NodeProcessor/AbstractNodeProcessor.php 100%
src/NodeProcessor/CloseNodeProcessorInterface.php 0%
src/NodeProcessor/Context/AbstractElementContext.php 100%
src/NodeProcessor/Context/CloseContext.php 0%
src/NodeProcessor/Context/NodeProcessorContext.php 100%
src/NodeProcessor/Context/OpenContext.php 100%
src/NodeProcessor/Context/TextContext.php 100%
src/NodeProcessor/NodeProcessorInterface.php 0%
src/NodeProcessor/OpenNodeProcessorInterface.php 0%
src/NodeProcessor/TextNodeProcessorInterface.php 0%
src/XmlProcessor.php 93%
src/XmlProcessorContext.php 100%
Summary 96% (149 / 155)

Minimum allowed line rate is 60%

@Scarbous Scarbous closed this Jul 17, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant