exports/Get-CVLibrary.ps1


# ----------------------------------------------------------------------------------
# Code generated by Microsoft (R) AutoRest Code Generator (autorest: 3.10.2, generator: @autorest/powershell@4.0.708)
# Changes may cause incorrect behavior and will be lost if the code is regenerated.
# ----------------------------------------------------------------------------------

<#
.Synopsis
Method to retrieve storage resource library instances from the CommServe.
.Description
Method to retrieve storage resource library instances from the CommServe.
Output can be filtered by both library Name and associated MediaAgentName.
.Example
{{ Add code here }}
.Example
{{ Add code here }}
 
.Inputs
System.String
.Outputs
System.Management.Automation.PSObject
.Link
https://learn.microsoft.com/powershell/module/commvaultpowershell/get-cvlibrary
#>

function Get-CVLibrary {
[OutputType([System.Management.Automation.PSObject])]
[CmdletBinding(DefaultParameterSetName='Default', PositionalBinding=$false)]
param(
    [Parameter(ValueFromPipeline, ValueFromPipelineByPropertyName)]
    [Alias('LibraryName')]
    [Commvault.Powershell.Category('Body')]
    [System.String]
    # Filter library instances to be output by Name.
    ${Name},

    [Parameter(ValueFromPipeline, ValueFromPipelineByPropertyName)]
    [Alias('MAName')]
    [Commvault.Powershell.Category('Body')]
    [System.String]
    # Filter library instances to be output by associated MediaAgentName.
    ${MediaAgentName},

    [Parameter()]
    [Commvault.Powershell.Category('Body')]
    [System.Management.Automation.SwitchParameter]
    # Output library instances with full detail.
    ${AllProperties}
)

begin {
    try {
        $outBuffer = $null
        if ($PSBoundParameters.TryGetValue('OutBuffer', [ref]$outBuffer)) {
            $PSBoundParameters['OutBuffer'] = 1
        }
        $parameterSet = $PSCmdlet.ParameterSetName

        $mapping = @{
            Default = 'CommvaultPowerShell.custom\Get-CVLibrary';
        }
        $cmdInfo = Get-Command -Name $mapping[$parameterSet]
        [Commvault.Powershell.Runtime.MessageAttributeHelper]::ProcessCustomAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        [Commvault.Powershell.Runtime.MessageAttributeHelper]::ProcessPreviewMessageAttributesAtRuntime($cmdInfo, $MyInvocation, $parameterSet, $PSCmdlet)
        $wrappedCmd = $ExecutionContext.InvokeCommand.GetCommand(($mapping[$parameterSet]), [System.Management.Automation.CommandTypes]::Cmdlet)
        $scriptCmd = {& $wrappedCmd @PSBoundParameters}
        $steppablePipeline = $scriptCmd.GetSteppablePipeline($MyInvocation.CommandOrigin)
        $steppablePipeline.Begin($PSCmdlet)
    } catch {

        throw
    }
}

process {
    try {
        $steppablePipeline.Process($_)
    } catch {

        throw
    }

}
end {
    try {
        $steppablePipeline.End()

    } catch {

        throw
    }
} 
}