DattoBackupApi.psm1
|
Set-StrictMode -Version 2.0 $script:DattoApiModuleVersion = '1.0.0' $script:DattoApiModuleRoot = $PSScriptRoot $script:DattoApiState = @{ Connections = @{} DefaultConnectionId = $null } if (-not ('System.Net.Http.HttpClient' -as [type])) { Add-Type -AssemblyName System.Net.Http -ErrorAction Stop } $privateFiles = Get-ChildItem -LiteralPath (Join-Path -Path $PSScriptRoot -ChildPath 'Private') -Filter '*.ps1' -File | Sort-Object -Property Name foreach ($file in $privateFiles) { . $file.FullName } $publicFiles = Get-ChildItem -LiteralPath (Join-Path -Path $PSScriptRoot -ChildPath 'Public') -Filter '*.ps1' -File | Sort-Object -Property Name foreach ($file in $publicFiles) { . $file.FullName } $ExecutionContext.SessionState.Module.OnRemove = { foreach ($connectionState in @($script:DattoApiState.Connections.Values)) { Remove-DattoApiConnectionInternal -ConnectionState $connectionState } $script:DattoApiState.Connections.Clear() $script:DattoApiState.DefaultConnectionId = $null } Export-ModuleMember -Function @( 'Connect-DattoApi', 'Disconnect-DattoApi', 'Get-DattoApiConnection', 'Get-DattoApiRateLimit', 'Test-DattoApiConnection', 'Invoke-DattoApiRequest', 'Get-DattoApiSpecification', 'Get-DattoApiOperation', 'Get-DattoApiSchema', 'ConvertFrom-DattoUnixTime', 'ConvertTo-DattoByteSize', 'Get-DattoBcdrClient', 'Get-DattoBcdrDevice', 'Get-DattoBcdrVmRestore', 'Get-DattoBcdrAsset', 'Save-DattoBcdrAssetScreenshot', 'Get-DattoBcdrShare', 'Get-DattoBcdrAgent', 'Get-DattoBcdrAlert', 'Get-DattoActivityLog', 'Get-DattoSaasDomain', 'Get-DattoSaasSeat', 'Get-DattoSaasBackup', 'Set-DattoSaasSeatAssignment', 'Get-DattoDtcAsset', 'Get-DattoDtcClientAsset', 'Save-DattoDtcAssetScreenshot', 'Set-DattoDtcAgentBandwidth', 'Get-DattoDtcRmmTemplate', 'Get-DattoDtcStoragePool' ) |