use helper functions

This commit is contained in:
Aleksandr Chebotov
2020-09-30 23:42:32 +03:00
parent d66f67dbe1
commit c50e6e62b5
5 changed files with 63 additions and 16 deletions

View File

@@ -418,3 +418,41 @@ function Install-AndroidSDKPackages {
& $AndroidSDKManagerPath --sdk_root=$AndroidSDKRootPath "$PrefixPackageName$package"
}
}
function Get-AndroidPackages {
Param
(
[Parameter(Mandatory=$true)]
[string]$AndroidSDKManagerPath
)
return (& $AndroidSDKManagerPath --list --verbose).Trim() | Foreach-Object { $_.Split()[0] } | Where-Object {$_}
}
function Get-AndroidPackagesByName {
Param (
[Parameter(Mandatory=$true)]
[string[]]$AndroidPackages,
[Parameter(Mandatory=$true)]
[string]$PrefixPackageName
)
return $AndroidPackages | Where-Object { "$_".StartsWith($PrefixPackageName) }
}
function Get-AndroidPackagesByVersion {
Param (
[Parameter(Mandatory=$true)]
[string[]]$AndroidPackages,
[Parameter(Mandatory=$true)]
[string]$PrefixPackageName,
[object]$MinimumVersion,
[char]$Delimeter,
[int]$Index = 0
)
$Type = $MinimumVersion.GetType()
$packagesByName = Get-AndroidPackagesByName -AndroidPackages $AndroidPackages -PrefixPackageName $PrefixPackageName
$packagesByVersion = $packagesByName | Where-Object { ($_.Split($Delimeter)[$Index] -as $Type) -ge $MinimumVersion }
return $packagesByVersion | Sort-Object { $_.Split($Delimeter)[$Index] -as $Type} -Unique
}