Before.php 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. namespace hg\apidoc\annotation;
  3. use Attribute;
  4. use Doctrine\Common\Annotations\Annotation;
  5. /**
  6. * 接口调试前置事件
  7. * @package hg\apidoc\annotation
  8. * @Annotation
  9. * @Target({"METHOD","ANNOTATION"})
  10. */
  11. #[Attribute(Attribute::TARGET_METHOD | \Attribute::IS_REPEATABLE)]
  12. final class Before extends EventBase
  13. {
  14. /**
  15. * 事件
  16. * @Enum({"setHeader","setQuery","setBody", "clearHeader", "clearQuery", "clearBody", "setGlobalHeader", "setGlobalQuery", "setGlobalBody","clearGlobalHeader","clearGlobalQuery","clearGlobalBody","ajax"})
  17. * @var string
  18. */
  19. public $event;
  20. /**
  21. * @param string $event 事件名
  22. * @param string $name 事件名称
  23. * @param string $appKey 设置全局参数setGlobalHeader、setGlobalParam时指定应用
  24. * @param string $key 字段名
  25. * @param string $value 字段值
  26. * @param string|array $ref 事件引用
  27. * @param string $url ajax事件时的url
  28. * @param string $method ajax事件时的Method
  29. * @param string $contentType ajax事件时的 content-type
  30. * @param string $desc 事件描述
  31. * @param array $before 执行之前的事件
  32. * @param array $after 执行之后的事件
  33. */
  34. public function __construct(
  35. $event = '',
  36. string $name = '',
  37. string $appKey = "",
  38. string $key = '',
  39. string $value = '',
  40. $ref = "",
  41. string $url = '',
  42. string $method = '',
  43. string $contentType = "",
  44. string $desc = "",
  45. array $before = [],
  46. array $after = []
  47. )
  48. {
  49. parent::__construct(...func_get_args());
  50. }
  51. }