PluginProbe
Depicter — Popup & Slider Builder / 1.3.2
Depicter — Popup & Slider Builder v1.3.2
4.8.1 trunk 1.0.0 1.1.0 1.1.2 1.1.4 1.1.6 1.1.7 1.1.8 1.1.9 1.2.0 1.3.0 1.3.1 1.3.2 1.3.3 1.3.5 1.3.8 1.5.0 1.5.1 1.5.2 1.5.5 1.6.0 1.6.1 1.6.2 1.7.0 All 76 releases
depicter / vendor / htmlburger / wpemerge / src / Responses / ConvertsToResponseTrait.php

ConvertsToResponseTrait.php in Depicter — Popup & Slider Builder 1.3.2, at vendor/htmlburger/wpemerge/src/Responses/ConvertsToResponseTrait.php

46 lines 1005 B
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /**
3 * @package WPEmerge
4 * @author Atanas Angelov <hi@atanas.dev>
5 * @copyright 2017-2019 Atanas Angelov
6 * @license https://www.gnu.org/licenses/gpl-2.0.html GPL-2.0
7 * @link https://wpemerge.com/
8 */
9
10 namespace WPEmerge\Responses;
11
12 /**
13 * Converts values to a response.
14 */
15 trait ConvertsToResponseTrait {
16 /**
17 * Get a Response Service instance.
18 *
19 * @return ResponseService
20 */
21 abstract protected function getResponseService();
22
23 /**
24 * Convert a user returned response to a ResponseInterface instance if possible.
25 * Return the original value if unsupported.
26 *
27 * @param mixed $response
28 * @return mixed
29 */
30 protected function toResponse( $response ) {
31 if ( is_string( $response ) ) {
32 return $this->getResponseService()->output( $response );
33 }
34
35 if ( is_array( $response ) ) {
36 return $this->getResponseService()->json( $response );
37 }
38
39 if ( $response instanceof ResponsableInterface ) {
40 return $response->toResponse();
41 }
42
43 return $response;
44 }
45 }
46