@@ -48,7 +48,7 @@ protected function generateRequest(PhpFileCollection $fileRegistry, Operation $o
4848 protected function generateEnums (Request $ request ): array
4949 {
5050 $ statements = [];
51- foreach ($ request ->getFields () as $ origin => $ fields ) {
51+ foreach ($ request ->getFields () as $ fields ) {
5252 foreach ($ fields as $ field ) {
5353 foreach ($ this ->generateEnumStatements ($ field ) as $ statement ) {
5454 $ statements [] = $ statement ;
@@ -62,7 +62,7 @@ protected function generateEnums(Request $request): array
6262 protected function generateProperties (Request $ request ): array
6363 {
6464 $ statements = [];
65- foreach ($ request ->getFields () as $ origin => $ fields ) {
65+ foreach ($ request ->getFields () as $ fields ) {
6666 foreach ($ fields as $ field ) {
6767 if ($ field ->isComposite ()) {
6868 $ this ->addImport (
@@ -85,7 +85,7 @@ protected function generateConstructor(Request $request): ?ClassMethod
8585 {
8686 $ params = [];
8787 $ paramInits = [];
88- foreach ($ request ->getFields () as $ origin => $ fields ) {
88+ foreach ($ request ->getFields () as $ fields ) {
8989 foreach ($ fields as $ field ) {
9090 if ($ field ->isRequired ()) {
9191 $ enumStmt = $ this ->generateEnumValidation ($ field , $ this ->baseNamespace );
@@ -120,7 +120,7 @@ protected function generateConstructor(Request $request): ?ClassMethod
120120 protected function generateSetters (Request $ request ): array
121121 {
122122 $ statements = [];
123- foreach ($ request ->getFields () as $ origin => $ fields ) {
123+ foreach ($ request ->getFields () as $ fields ) {
124124 foreach ($ fields as $ field ) {
125125 if (!$ field ->isRequired ()) {
126126 $ statements [] = $ this ->generateSet ($ field , $ this ->baseNamespace );
@@ -203,6 +203,10 @@ protected function generateGetParametersMethods(Request $request): array
203203 'getQueryParameters ' ,
204204 $ fields ->getQueryFields ()
205205 );
206+ $ methods [] = $ this ->generateGetRawParametersMethod (
207+ 'getRawQueryParameters ' ,
208+ $ fields ->getQueryFields ()
209+ );
206210 $ methods [] = $ this ->generateGetParametersMethod (
207211 'getCookies ' ,
208212 $ fields ->getCookieFields ()
@@ -235,6 +239,23 @@ protected function generateGetParametersMethod(string $methodName, array $fields
235239 ->getNode ();
236240 }
237241
242+ protected function generateGetRawParametersMethod (string $ methodName , array $ fields ): ClassMethod
243+ {
244+ $ fieldsArr = [];
245+ $ returnType = 'array ' ;
246+ foreach ($ fields as $ field ) {
247+ $ fieldsArr [$ field ->getName ()] = $ this ->builder ->localPropertyFetch ($ field ->getPhpVariableName ());
248+ }
249+
250+ return $ this ->builder
251+ ->method ($ methodName )
252+ ->makePublic ()
253+ ->addStmt ($ this ->builder ->return ($ this ->builder ->array ($ fieldsArr )))
254+ ->setReturnType ($ returnType )
255+ ->composeDocBlock ([], $ returnType )
256+ ->getNode ();
257+ }
258+
238259 protected function generateGetBody (?Field $ body ): ClassMethod
239260 {
240261 if ($ body !== null ) {
0 commit comments