Server.ps1
<#
.Synopsis Definiert einen einzelnen Server #> Set-StrictMode -Version Latest Import-LocalizedData -BindingVariable MsgTable -FileName PSRechenzentrumMessages.psd1 enum Serverstatus { Running Stopped Initialized NotInitialized } enum ServerSize { Small Medium Big } class Server { # Hier müssen nur Properties definiert werden, die nicht per Konstruktor festgelegt werden [String]$Id [String]$Description [ServerStatus]$Status [ServerSize]$Size [Konto]$Konto [DateTime]$Startzeit [Double]$RunningTime Server([String]$ServerId, [String]$Description, [ServerSize]$Size="Small", [Konto]$Konto) { $this.Id = $ServerId $this.Description = $Description $this.Size = $Size $this.Status = [ServerStatus]::NotInitialized $this.Konto = $Konto } [void]Start() { $this.Status = [ServerStatus]::Running $this.Startzeit = [DateTime]::Now } [void]Stop() { $this.Status = [ServerStatus]::Stopped } [void]Initialize() { $this.Status = [ServerStatus]::Initialized } } |