Skip to content

Commit 757dd48

Browse files
authored
Merge pull request #2226 from microsoftgraph/fix-null-response
Adds autorest directive to prevent null response objects to output streams via ``WriteObject``
2 parents 73d5882 + 71ba6d0 commit 757dd48

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

src/readme.graph.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -428,6 +428,20 @@ directive:
428428
let errorDetailsRegex = /(ErrorDetails\s*=\s*)(new.*ErrorDetails\(message\).*)/gmi
429429
$ = $.replace(errorDetailsRegex, '$1await this.GetErrorDetailsAsync((await response)?.Error, responseMessage)');
430430
431+
// Prevents null response objects to the output stream for scenarios where response is a model type
432+
let responseTypeRegex = /global::System.Threading.Tasks.Task<Microsoft.Graph(.|.Beta.)PowerShell.Models.\w*> \w*\)[^]*?(WriteObject.*(await response).*;)/gm
433+
var writeObjectRegex = /(WriteObject.*(await response).*;)/gm
434+
var responseTypeRegexMatch = $.match(responseTypeRegex);
435+
if(responseTypeRegexMatch){
436+
responseTypeRegexMatch.forEach((item)=>{
437+
var writeObjectRegexMatch = writeObjectRegex.exec($);
438+
if(writeObjectRegexMatch){
439+
var newContent = item.replace(writeObjectRegex, `var result = ${writeObjectRegexMatch[2]}; if(result!=null){WriteObject(result);}`)
440+
$ = $.replace(item, newContent);
441+
}
442+
});
443+
}
444+
431445
return $;
432446
}
433447

0 commit comments

Comments
 (0)