Further code optimization

This commit is contained in:
condorcorde 2024-04-04 18:02:12 +02:00
parent 5f122f806b
commit b5868cedc7
3 changed files with 33 additions and 51 deletions

View File

@ -113,8 +113,12 @@ function Invoke-{{{apiNamePrefix}}}ApiClient {
}
{{/hasHttpSignatureMethods}}
# Use splatting to pass optional parameters
# Use splatting to pass parameters
$Params = @{}
$Params.Uri = $UriBuilder.Uri
$Params.Method = $Method
$Params.Headers = $HeaderParameters
$Params.ErrorAction = 'Stop'
if ($SkipCertificateCheck -eq $true) {
$Params.SkipCertificateCheck = $true
}
@ -122,7 +126,9 @@ function Invoke-{{{apiNamePrefix}}}ApiClient {
$Params.Proxy = $Configuration["Proxy"].GetProxy($UriBuilder.Uri)
$Params.ProxyUseDefaultCredentials = $true
}
if ($Multipart) {
# Invoke request
if ($MultiPart) {
if ($PSVersionTable.PSVersion.Major -eq 5) {
# Preset null return values as not supported by Invoke-RestMethod on PS5
$ResponseHeaders = $null
@ -132,16 +138,8 @@ function Invoke-{{{apiNamePrefix}}}ApiClient {
$Params.ResponseHeadersVariable = "ResponseHeaders"
$Params.StatusCodeVariable = "ResponseStatusCode"
}
}
# Invoke request
if ($MultiPart) {
$Params.Form = $FormParameters
$Response = Invoke-RestMethod -Uri $UriBuilder.Uri `
-Method $Method `
-Headers $HeaderParameters `
-ErrorAction Stop `
@Params
$Response = Invoke-RestMethod @Params
return @{
Response = $Response
@ -150,12 +148,8 @@ function Invoke-{{{apiNamePrefix}}}ApiClient {
}
} else {
$Params.Body = $RequestBody
$Response = Invoke-WebRequest -Uri $UriBuilder.Uri `
-Method $Method `
-Headers $HeaderParameters `
-ErrorAction Stop `
-UseBasicParsing `
@Params
$Params.UseBasicParsing = $true
$Response = Invoke-WebRequest @Params
return @{
Response = DeserializeResponse -Response $Response.Content -ReturnType $ReturnType -ContentTypes $Response.Headers["Content-Type"]

View File

@ -101,8 +101,12 @@ function Invoke-ApiClient {
}
}
# Use splatting to pass optional parameters
# Use splatting to pass parameters
$Params = @{}
$Params.Uri = $UriBuilder.Uri
$Params.Method = $Method
$Params.Headers = $HeaderParameters
$Params.ErrorAction = 'Stop'
if ($SkipCertificateCheck -eq $true) {
$Params.SkipCertificateCheck = $true
}
@ -110,7 +114,9 @@ function Invoke-ApiClient {
$Params.Proxy = $Configuration["Proxy"].GetProxy($UriBuilder.Uri)
$Params.ProxyUseDefaultCredentials = $true
}
if ($Multipart) {
# Invoke request
if ($MultiPart) {
if ($PSVersionTable.PSVersion.Major -eq 5) {
# Preset null return values as not supported by Invoke-RestMethod on PS5
$ResponseHeaders = $null
@ -120,16 +126,8 @@ function Invoke-ApiClient {
$Params.ResponseHeadersVariable = "ResponseHeaders"
$Params.StatusCodeVariable = "ResponseStatusCode"
}
}
# Invoke request
if ($MultiPart) {
$Params.Form = $FormParameters
$Response = Invoke-RestMethod -Uri $UriBuilder.Uri `
-Method $Method `
-Headers $HeaderParameters `
-ErrorAction Stop `
@Params
$Response = Invoke-RestMethod @Params
return @{
Response = $Response
@ -138,12 +136,8 @@ function Invoke-ApiClient {
}
} else {
$Params.Body = $RequestBody
$Response = Invoke-WebRequest -Uri $UriBuilder.Uri `
-Method $Method `
-Headers $HeaderParameters `
-ErrorAction Stop `
-UseBasicParsing `
@Params
$Params.UseBasicParsing = $true
$Response = Invoke-WebRequest @Params
return @{
Response = DeserializeResponse -Response $Response.Content -ReturnType $ReturnType -ContentTypes $Response.Headers["Content-Type"]

View File

@ -117,8 +117,12 @@ function Invoke-PSApiClient {
}
}
# Use splatting to pass optional parameters
# Use splatting to pass parameters
$Params = @{}
$Params.Uri = $UriBuilder.Uri
$Params.Method = $Method
$Params.Headers = $HeaderParameters
$Params.ErrorAction = 'Stop'
if ($SkipCertificateCheck -eq $true) {
$Params.SkipCertificateCheck = $true
}
@ -126,7 +130,9 @@ function Invoke-PSApiClient {
$Params.Proxy = $Configuration["Proxy"].GetProxy($UriBuilder.Uri)
$Params.ProxyUseDefaultCredentials = $true
}
if ($Multipart) {
# Invoke request
if ($MultiPart) {
if ($PSVersionTable.PSVersion.Major -eq 5) {
# Preset null return values as not supported by Invoke-RestMethod on PS5
$ResponseHeaders = $null
@ -136,16 +142,8 @@ function Invoke-PSApiClient {
$Params.ResponseHeadersVariable = "ResponseHeaders"
$Params.StatusCodeVariable = "ResponseStatusCode"
}
}
# Invoke request
if ($MultiPart) {
$Params.Form = $FormParameters
$Response = Invoke-RestMethod -Uri $UriBuilder.Uri `
-Method $Method `
-Headers $HeaderParameters `
-ErrorAction Stop `
@Params
$Response = Invoke-RestMethod @Params
return @{
Response = $Response
@ -154,12 +152,8 @@ function Invoke-PSApiClient {
}
} else {
$Params.Body = $RequestBody
$Response = Invoke-WebRequest -Uri $UriBuilder.Uri `
-Method $Method `
-Headers $HeaderParameters `
-ErrorAction Stop `
-UseBasicParsing `
@Params
$Params.UseBasicParsing = $true
$Response = Invoke-WebRequest @Params
return @{
Response = DeserializeResponse -Response $Response.Content -ReturnType $ReturnType -ContentTypes $Response.Headers["Content-Type"]