// ----------------------------------------------------------------------------- // file="View.ExecuteCommand" // Project: StgSharp // Copyright (c) Nitload. // SPDX-License-Identifier: MIT // ----------------------------------------------------------------------------- using System; using System.Collections.Generic; namespace StgSharp.UserInterface { public abstract record ExecuteCommand { protected ExecuteCommand( string operationName ) { OperationName = string.IsNullOrWhiteSpace(operationName) ? throw new ArgumentException("Value cannot be null or whitespace.", nameof(operationName)) : operationName; } public Guid CommandId { get; init; } = Guid.NewGuid(); public IReadOnlyList Parameters { get; init; } = Array.Empty(); public string OperationName { get; init; } } }