Functions/Public/Get-WHDManufacturer.ps1
|
<#
.SYNOPSIS Get a Manufacturer from WHD. .DESCRIPTION This function retrieves a specific Manufacturer from WHD, or a list of Manufacturers based on a provided search parameter. .PARAMETER ResourceId The id of the Manufacturer to be retrieved. .PARAMETER Qualifier A WHDQualifier object to filter the results. Use New-WHDQualifier and Join-WHDQualifier to build these objects. .PARAMETER QualifierString A WHD API qualifier string to filter the results. This is an alternative to using the Qualifier parameter if you prefer to build the qualifier string manually. .PARAMETER Name A name to search for. .PARAMETER FullName A fullName to search for. .PARAMETER PostalCode A postalCode to search for. .PARAMETER Address An address to search for. .PARAMETER City A city to search for. .PARAMETER State A state to search for. .PARAMETER Country A country to search for. .PARAMETER Phone A phone to search for. .PARAMETER Fax A fax to search for. .PARAMETER Url A url to search for. #> function Get-WHDManufacturer { [CmdletBinding(DefaultParameterSetName = "Search")] param ( [Parameter(ParameterSetName = "Single", Mandatory, Position = 0)] [int] $ResourceId, [Parameter(ParameterSetName = "Qualifier", Mandatory)] [WHDQualifier] $Qualifier, [Parameter(ParameterSetName = "QualifierString", Mandatory)] [string] $QualifierString, [Parameter(ParameterSetName = "Search")] [string] $Name, [Parameter(ParameterSetName = "Search")] [string] $FullName, [Parameter(ParameterSetName = "Search")] [string] $PostalCode, [Parameter(ParameterSetName = "Search")] [string] $Address, [Parameter(ParameterSetName = "Search")] [string] $City, [Parameter(ParameterSetName = "Search")] [string] $State, [Parameter(ParameterSetName = "Search")] [string] $Country, [Parameter(ParameterSetName = "Search")] [string] $Phone, [Parameter(ParameterSetName = "Search")] [string] $Fax, [Parameter(ParameterSetName = "Search")] [string] $Url ) $AttributeMap = @{ Name = "name" FullName = "fullName" PostalCode = "postalCode" Address = "address" City = "city" State = "state" Country = "country" Phone = "phone" Fax = "fax" Url = "url" } $QueryParameters = @{ ResourceType = [WHDResourceType]::Manufacturer } switch ($PSCmdlet.ParameterSetName) { "Single" { $QueryParameters["ResourceId"] = $ResourceId } "Qualifier" { $QueryParameters["Qualifier"] = $Qualifier } "QualifierString" { $QueryParameters["QualifierString"] = $QualifierString } "Search" { $QueryParameters["Qualifier"] = ConvertTo-WHDQualifier ` -BoundParameters $PSBoundParameters ` -AttributeMap $AttributeMap } } return Get-WHDResource @QueryParameters } |