internal void ExecuteCommand() { if (RemoveAll.IsPresent) { ResourceExtensionReferences.Clear(); } else { RemovePredicateExtensions(); } WriteObject(VM); }
protected ResourceExtensionReference GetPredicateExtension() { ResourceExtensionReference extensionRef = null; if (!ResourceExtensionReferences.Any()) { WriteWarning(Resources.ResourceExtensionReferencesIsNullOrEmpty); } else { extensionRef = ResourceExtensionReferences.FirstOrDefault(ExtensionPredicate); } return(extensionRef); }
protected override void ValidateParameters() { base.ValidateParameters(); ExtensionName = DiagnosticsExtensionType; Publisher = DiagnosticsExtensionNamespace; // If the user didn't specify an extension reference name and the input VM already has a diagnostics extension, // reuse its reference name if (string.IsNullOrEmpty(ReferenceName)) { ResourceExtensionReference diagnosticsExtension = ResourceExtensionReferences.FirstOrDefault(ExtensionPredicate); if (diagnosticsExtension != null) { ReferenceName = diagnosticsExtension.ReferenceName; } } }
protected List <ResourceExtensionReference> GetPredicateExtensionList() { List <ResourceExtensionReference> extensionRefs = null; if (!ResourceExtensionReferences.Any()) { WriteWarning(Resources.ResourceExtensionReferencesIsNullOrEmpty); return(extensionRefs); } extensionRefs = ResourceExtensionReferences.FindAll( r => ExtensionPredicate(r)); if (!extensionRefs.Any()) { WriteWarning(Resources.ResourceExtensionReferenceCannotBeFound); } return(extensionRefs); }
protected void RemovePredicateExtensions() { ResourceExtensionReferences.RemoveAll(r => ExtensionPredicate(r)); }
protected void AddResourceExtension() { ResourceExtensionReferences.Add(NewResourceExtension()); }