PluginProbe
Imagify Image Optimization: Optimize Images | Compress & Convert to WebP/AVIF / 2.3.2
Imagify Image Optimization: Optimize Images | Compress & Convert to WebP/AVIF v2.3.2
2.3.4 2.3.3 2.3.2 2.3.1 2.3.0 2.2.9 2.2.8 trunk 1.10 1.3.3 1.3.4 1.3.5 1.3.5.1 1.3.5.2 1.3.6 1.3.6.1 1.4 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.5 All 103 releases
imagify / vendor / wordpress / php-mcp-schema / src / Client / Tasks / DTO / CreateTaskResult.php

CreateTaskResult.php in Imagify Image Optimization: Optimize Images | Compress & Convert to WebP/AVIF 2.3.2, at vendor/wordpress/php-mcp-schema/src/Client/Tasks/DTO/CreateTaskResult.php

89 lines 1.9 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 declare(strict_types=1);
4
5 namespace WP\McpSchema\Client\Tasks\DTO;
6
7 use WP\McpSchema\Common\Protocol\DTO\Result;
8 use WP\McpSchema\Common\Traits\ValidatesRequiredFields;
9
10 /**
11 * A response to a task-augmented request.
12 *
13 * @since 2025-11-25
14 *
15 * @mcp-domain Client
16 * @mcp-subdomain Tasks
17 * @mcp-version 2025-11-25
18 */
19 class CreateTaskResult extends Result
20 {
21 use ValidatesRequiredFields;
22
23 /**
24 * @since 2025-11-25
25 *
26 * @var \WP\McpSchema\Client\Tasks\DTO\Task
27 */
28 protected Task $task;
29
30 /**
31 * @param \WP\McpSchema\Client\Tasks\DTO\Task $task @since 2025-11-25
32 * @param array<string, mixed>|null $_meta @since 2025-11-25
33 */
34 public function __construct(
35 Task $task,
36 ?array $_meta = null
37 ) {
38 parent::__construct($_meta);
39 $this->task = $task;
40 }
41
42 /**
43 * Creates an instance from an array.
44 *
45 * @param array{
46 * _meta?: array<string, mixed>|null,
47 * task: array<string, mixed>|\WP\McpSchema\Client\Tasks\DTO\Task
48 * } $data
49 * @phpstan-param array<string, mixed> $data
50 * @return self
51 */
52 public static function fromArray(array $data): self
53 {
54 self::assertRequired($data, ['task']);
55
56 /** @var \WP\McpSchema\Client\Tasks\DTO\Task $task */
57 $task = is_array($data['task'])
58 ? Task::fromArray(self::asArray($data['task']))
59 : $data['task'];
60
61 return new self(
62 $task,
63 self::asArrayOrNull($data['_meta'] ?? null)
64 );
65 }
66
67 /**
68 * Converts the instance to an array.
69 *
70 * @return array<string, mixed>
71 */
72 public function toArray(): array
73 {
74 $result = parent::toArray();
75
76 $result['task'] = $this->task->toArray();
77
78 return $result;
79 }
80
81 /**
82 * @return \WP\McpSchema\Client\Tasks\DTO\Task
83 */
84 public function getTask(): Task
85 {
86 return $this->task;
87 }
88 }
89