PluginProbe
ZIP AI – AI Website Builder & AI Agent (Beta) / 0.0.8
ZIP AI – AI Website Builder & AI Agent (Beta) v0.0.8
0.0.10 0.0.9 trunk 0.0.4 0.0.5 0.0.6 0.0.7 0.0.8
zip-ai / lib / php-mcp-schema / src / Server / Resources / DTO / ResourceUpdatedNotificationParams.php

ResourceUpdatedNotificationParams.php in ZIP AI – AI Website Builder & AI Agent (Beta) 0.0.8, at lib/php-mcp-schema/src/Server/Resources/DTO/ResourceUpdatedNotificationParams.php

86 lines 1.8 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\Server\Resources\DTO;
6
7 use WP\McpSchema\Common\JsonRpc\DTO\NotificationParams;
8 use WP\McpSchema\Common\Traits\ValidatesRequiredFields;
9
10 /**
11 * Parameters for a `notifications/resources/updated` notification.
12 *
13 * @since 2025-11-25
14 *
15 * @mcp-domain Server
16 * @mcp-subdomain Resources
17 * @mcp-version 2025-11-25
18 */
19 class ResourceUpdatedNotificationParams extends NotificationParams
20 {
21 use ValidatesRequiredFields;
22
23 /**
24 * The URI of the resource that has been updated. This might be a sub-resource of the one that the client actually subscribed to.
25 *
26 * @since 2025-11-25
27 *
28 * @var string
29 */
30 protected string $uri;
31
32 /**
33 * @param string $uri @since 2025-11-25
34 * @param array<string, mixed>|null $_meta @since 2025-11-25
35 */
36 public function __construct(
37 string $uri,
38 ?array $_meta = null
39 ) {
40 parent::__construct($_meta);
41 $this->uri = $uri;
42 }
43
44 /**
45 * Creates an instance from an array.
46 *
47 * @param array{
48 * _meta?: array<string, mixed>|null,
49 * uri: string
50 * } $data
51 * @phpstan-param array<string, mixed> $data
52 * @return self
53 */
54 public static function fromArray(array $data): self
55 {
56 self::assertRequired($data, ['uri']);
57
58 return new self(
59 self::asString($data['uri']),
60 self::asArrayOrNull($data['_meta'] ?? null)
61 );
62 }
63
64 /**
65 * Converts the instance to an array.
66 *
67 * @return array<string, mixed>
68 */
69 public function toArray(): array
70 {
71 $result = parent::toArray();
72
73 $result['uri'] = $this->uri;
74
75 return $result;
76 }
77
78 /**
79 * @return string
80 */
81 public function getUri(): string
82 {
83 return $this->uri;
84 }
85 }
86