diff --git a/app/code/Magento/Signifyd/Model/CaseServices/UpdatingService.php b/app/code/Magento/Signifyd/Model/CaseServices/UpdatingService.php index 870705db941cc..168ab67f8cf50 100644 --- a/app/code/Magento/Signifyd/Model/CaseServices/UpdatingService.php +++ b/app/code/Magento/Signifyd/Model/CaseServices/UpdatingService.php @@ -5,8 +5,8 @@ */ namespace Magento\Signifyd\Model\CaseServices; +use Magento\Framework\Api\SimpleDataObjectConverter; use Magento\Framework\Exception\LocalizedException; -use Magento\Framework\Exception\NotFoundException; use Magento\Signifyd\Api\CaseRepositoryInterface; use Magento\Signifyd\Api\Data\CaseInterface; use Magento\Signifyd\Model\CommentsHistoryUpdater; @@ -73,7 +73,6 @@ public function __construct( * @param CaseInterface $case * @param array $data * @return void - * @throws NotFoundException * @throws LocalizedException */ public function update(CaseInterface $case, array $data) @@ -111,7 +110,7 @@ private function setCaseData(CaseInterface $case, array $data) 'orderId' ]; foreach ($data as $key => $value) { - $methodName = 'set' . ucfirst($key); + $methodName = 'set' . SimpleDataObjectConverter::snakeCaseToUpperCamelCase($key); if (!in_array($key, $notResolvedKeys) && method_exists($case, $methodName)) { call_user_func([$case, $methodName], $value); } diff --git a/app/code/Magento/Webapi/Controller/Rest/ParamsOverrider.php b/app/code/Magento/Webapi/Controller/Rest/ParamsOverrider.php index 1d8ccc127cea9..d1a3c0c0f0864 100644 --- a/app/code/Magento/Webapi/Controller/Rest/ParamsOverrider.php +++ b/app/code/Magento/Webapi/Controller/Rest/ParamsOverrider.php @@ -197,7 +197,7 @@ private function isPropertyDeclaredInDataObject( $index = array_search($serviceMethodParamName, array_column($methodParams, 'name')); if ($index !== false) { $paramObjectType = $methodParams[$index][MethodsMap::METHOD_META_TYPE]; - $setter = 'set' . ucfirst(SimpleDataObjectConverter::snakeCaseToCamelCase($objectProperty)); + $setter = 'set' . SimpleDataObjectConverter::snakeCaseToUpperCamelCase($objectProperty); if (array_key_exists( $setter, $this->getMethodsMap()->getMethodsMap($paramObjectType) diff --git a/lib/internal/Magento/Framework/Api/SimpleDataObjectConverter.php b/lib/internal/Magento/Framework/Api/SimpleDataObjectConverter.php index a1f5acb4e60e7..49d824a4f2e5a 100644 --- a/lib/internal/Magento/Framework/Api/SimpleDataObjectConverter.php +++ b/lib/internal/Magento/Framework/Api/SimpleDataObjectConverter.php @@ -8,6 +8,9 @@ use Magento\Framework\Convert\ConvertArray; use Magento\Framework\Reflection\DataObjectProcessor; +/** + * Data object converter. + */ class SimpleDataObjectConverter { /** @@ -156,14 +159,13 @@ public static function snakeCaseToUpperCamelCase($input) */ public static function snakeCaseToCamelCase($input) { - return lcfirst(str_replace(' ', '', ucwords(str_replace('_', ' ', $input)))); + return lcfirst(self::snakeCaseToUpperCamelCase($input)); } /** * Convert a CamelCase string read from method into field key in snake_case * - * e.g. DefaultShipping => default_shipping - * Postcode => postcode + * For example [DefaultShipping => default_shipping, Postcode => postcode] * * @param string $name * @return string diff --git a/lib/internal/Magento/Framework/App/Request/DataPersistor.php b/lib/internal/Magento/Framework/App/Request/DataPersistor.php index bb3740aceb010..f0b8819621a1e 100644 --- a/lib/internal/Magento/Framework/App/Request/DataPersistor.php +++ b/lib/internal/Magento/Framework/App/Request/DataPersistor.php @@ -5,8 +5,12 @@ */ namespace Magento\Framework\App\Request; +use Magento\Framework\Api\SimpleDataObjectConverter; use Magento\Framework\Session\SessionManagerInterface; +/** + * Persist data to session. + */ class DataPersistor implements DataPersistorInterface { /** @@ -32,7 +36,7 @@ public function __construct( */ public function set($key, $data) { - $method = 'set' . ucfirst($key) . 'Data'; + $method = 'set' . SimpleDataObjectConverter::snakeCaseToUpperCamelCase($key) . 'Data'; call_user_func_array([$this->session, $method], [$data]); } @@ -44,7 +48,7 @@ public function set($key, $data) */ public function get($key) { - $method = 'get' . ucfirst($key) . 'Data'; + $method = 'get' . SimpleDataObjectConverter::snakeCaseToUpperCamelCase($key) . 'Data'; return call_user_func_array([$this->session, $method], []); } @@ -56,7 +60,7 @@ public function get($key) */ public function clear($key) { - $method = 'uns' . ucfirst($key) . 'Data'; + $method = 'uns' . SimpleDataObjectConverter::snakeCaseToUpperCamelCase($key) . 'Data'; call_user_func_array([$this->session, $method], []); } }