adachsoft/sandbox-contracts
最新稳定版本:v0.1.0
Composer 安装命令:
composer require adachsoft/sandbox-contracts
包简介
Shared sandbox contracts and value objects for file-based tools.
README 文档
README
Shared sandbox contracts and value objects for AdachSoft file-based tools.
Installation
composer require adachsoft/sandbox-contracts
Usage
use AdachSoft\SandboxContracts\Factory\SandboxPathFactory;
use AdachSoft\SandboxContracts\Config\ArraySandboxExtractor;
// Direct creation
$factory = new SandboxPathFactory();
$sandbox = $factory->create('/mnt/php/projects/project_1/');
$fullPath = $sandbox->resolve('src/Service/MyService.php');
// "> "/mnt/php/projects/project_1/src/Service/MyService.php""
// From config array (e.g. inside a ToolFactory::create(ConfigMap $config))
$extractor = new ArraySandboxExtractor(new SandboxPathFactory());
$sandbox = $extractor->extract($config->toArray());
How consuming libraries should use this
In any ToolFactory or workflow step that needs a sandbox:
- Accept
ArraySandboxExtractorInterfacevia constructor (DI preferred) OR instantiateArraySandboxExtractordirectly as convenience. - Call
$sandbox = $this->extractor->extract($config->toArray()). Pass
$sandboxinto the tool/step- never pass raw
base_pathstring further.- Inside the tool/step call
$sandbox->resolve($userProvidedPath)before any file operation.
统计信息
- 总下载量: 6
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 6
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-04-08