lib/Classes/Public/TMEvent.ps1
class TMEvent { $id = $null [String]$name [String]$description [Object[]]$moveBundle [String]$runbookStatus [String]$runbookBridge1 [String]$runbookBridge2 [String]$videolink [String]$estStartTime [String]$estCompletionTime [Bool]$apiActionBypass = $false [String[]]$addTags ## Constructor 1: Name Alone TMEvent ([String]$_name) { $this.name = $_name } ## Constructor 2: Name, Description TMEvent ([String]$_name, [String]$_description) { $this.name = $_name $this.description = $_description } TMEvent ([String]$_name, [String]$_description, [String[]]$Tags) { $this.name = $_name $this.description = $_description $this.addTags = @($Tags) } ## Constructor 3: PSCustomObject TMEvent ([PSCustomObject]$_tmeventpscustomobject) { $this.id = $_tmeventpscustomobject.id ?? $null $this.name = $_tmeventpscustomobject.name $this.description = $_tmeventpscustomobject.description ## v5.0 if (-not [string]::IsNullOrEmpty($_tmeventpscustomobject.moveBundle)) { $this.moveBundle = $_tmeventpscustomobject.moveBundle } elseif (-not [string]::IsNullOrEmpty($_tmeventpscustomobject.moveBundlesString)) { $this.moveBundle = $_tmeventpscustomobject.moveBundlesString } $this.runbookStatus = $_tmeventpscustomobject.runbookStatus $this.runbookBridge1 = $_tmeventpscustomobject.runbookBridge1 $this.runbookBridge2 = $_tmeventpscustomobject.runbookBridge2 $this.videolink = $_tmeventpscustomobject.videoLink $this.estStartTime = $_tmeventpscustomobject.estStartTime $this.estCompletionTime = $_tmeventpscustomobject.estCompletionTime $this.apiActionBypass = $_tmeventpscustomobject.apiActionBypass ?? $false $this.addTags = @($_tmeventpscustomobject.addTags) } ## Constructor 4: Hashtable TMEvent ([Hashtable]$_tmeventhashtable) { $this.id = $_tmeventhashtable.id ?? $null $this.name = $_tmeventhashtable.name $this.description = $_tmeventhashtable.description $this.moveBundle = $_tmeventhashtable.moveBundle $this.runbookStatus = $_tmeventhashtable.runbookStatus $this.runbookBridge1 = $_tmeventhashtable.runbookBridge1 $this.runbookBridge2 = $_tmeventhashtable.runbookBridge2 $this.videolink = $_tmeventhashtable.videoLink $this.estStartTime = $_tmeventhashtable.estStartTime $this.estCompletionTime = $_tmeventhashtable.estCompletionTime $this.apiActionBypass = $_tmeventhashtable.apiActionBypass ?? $false $this.addTags = @($_tmeventhashtable.addTags) } } |