@@ -83,25 +83,6 @@ protected function restoreYiiRequest()
8383 return $ this ;
8484 }
8585
86- /**
87- * Recursively converts object to an associative array.
88- * @param $obj
89- * @return array
90- */
91- protected function objToAssoc ($ obj ) {
92- $ result = (array ) $ obj ;
93-
94- if (is_array ($ result )) {
95- foreach ($ result as $ key => $ value ) {
96- if (is_object ($ value ) || is_array ($ value )) {
97- $ result [$ key ] = $ this ->objToAssoc ($ value );
98- }
99- }
100- }
101-
102- return $ result ;
103- }
104-
10586 /**
10687 * @inheritdoc
10788 */
@@ -125,33 +106,23 @@ public function runWithParams($params)
125106 try {
126107 $ request = new JsonRpcRequest ();
127108 $ request ->paramsPassMethod = $ this ->paramsPassMethod ;
109+ $ request ->parseAsArray = $ this ->requestParseAsArray ;
128110
129- // Handling params
130- $ params = ($ this ->requestParseAsArray )
131- ? (isset ($ request ->params ) ? $ this ->objToAssoc ($ request ->params ) : [])
132- : (isset ($ request ->params ) ? $ request ->params : new \stdClass ());
133-
134- $ requestData = ArrayHelper::toArray ($ requestData );
135- $ requestData ['params ' ] = $ params ;
136-
137- $ request ->load ($ requestData , '' );
111+ $ request ->load (ArrayHelper::toArray ($ requestData ), '' );
138112 if ($ request ->validate ()) {
139113 $ result = $ request ->execute ();
140114 if (!is_null ($ request ->id )) {
141115 $ batchResponse [] = new SuccessResponse ($ request , $ result );
142116 }
143- }
144- else {
117+ } else {
145118 foreach ($ request ->getFirstErrors () as $ attribute => $ error ) {
146119 $ request ->$ attribute = null ;
147120 }
148121 throw new InvalidRequestException ();
149122 }
150- }
151- catch (InvalidRequestException $ e ) {
123+ } catch (InvalidRequestException $ e ) {
152124 $ batchResponse [] = new ErrorResponse ($ e , $ request ?: null );
153- }
154- catch (JsonRpcException $ e ) {
125+ } catch (JsonRpcException $ e ) {
155126 // We do not return response to notifications
156127 if ($ request && !is_null ($ request ->id )) {
157128 $ batchResponse [] = new ErrorResponse ($ e , $ request ?: null );
@@ -160,8 +131,7 @@ public function runWithParams($params)
160131
161132 $ this ->restoreYiiRequest ();
162133 }
163- }
164- catch (JsonRpcException $ e ) {
134+ } catch (JsonRpcException $ e ) {
165135 return new ErrorResponse ($ e );
166136 }
167137
0 commit comments