Json.php 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. /**
  3. * JSON Renderer allows to format array or object as JSON document.
  4. *
  5. * Copyright © Magento, Inc. All rights reserved.
  6. * See COPYING.txt for license details.
  7. */
  8. namespace Magento\Framework\Webapi\Rest\Response\Renderer;
  9. class Json implements \Magento\Framework\Webapi\Rest\Response\RendererInterface
  10. {
  11. /**
  12. * Adapter mime type.
  13. */
  14. const MIME_TYPE = 'application/json';
  15. /**
  16. * @var \Magento\Framework\Json\Encoder
  17. */
  18. protected $encoder;
  19. /**
  20. * Initialize dependencies.
  21. *
  22. * @param \Magento\Framework\Json\Encoder $encoder
  23. */
  24. public function __construct(\Magento\Framework\Json\Encoder $encoder)
  25. {
  26. $this->encoder= $encoder;
  27. }
  28. /**
  29. * Convert data to JSON.
  30. *
  31. * @param object|array|int|string|bool|float|null $data
  32. * @return string
  33. */
  34. public function render($data)
  35. {
  36. return $this->encoder->encode($data);
  37. }
  38. /**
  39. * Get JSON renderer MIME type.
  40. *
  41. * @return string
  42. */
  43. public function getMimeType()
  44. {
  45. return self::MIME_TYPE;
  46. }
  47. }