public override void ExecuteCmdlet()
        {
            BasePSResourceParameters parameters = new BasePSResourceParameters()
            {
                Name = Name,
                ResourceGroupName = ResourceGroupName,
                ResourceType      = ResourceType,
                ParentResource    = ParentResource,
                ApiVersion        = ApiVersion
            };

            List <PSResource> resourceList = ResourcesClient.FilterPSResources(parameters);

            if (resourceList != null)
            {
                if (resourceList.Count == 1 && Name != null)
                {
                    WriteObject(resourceList[0]);
                }
                else
                {
                    List <PSObject> output = new List <PSObject>();
                    resourceList.ForEach(r => output.Add(base.ConstructPSObject(
                                                             null,
                                                             "Name", r.Name,
                                                             "ResourceGroupName", r.ResourceGroupName,
                                                             "ResourceType", r.ResourceType,
                                                             "Location", r.Location,
                                                             "ParentResource", r.ParentResource)));

                    WriteObject(output, true);
                }
            }
        }
Exemplo n.º 2
0
        internal static Certificate[] GetCertificates(ResourcesClient resourceClient, WebsitesClient websitesClient, string resourceGroupName, string thumbPrint)
        {
            var certificateResources = resourceClient.FilterPSResources(new BasePSResourceParameters()
            {
                ResourceType = "Microsoft.Web/Certificates"
            }).ToArray();

            if (!string.IsNullOrEmpty(resourceGroupName))
            {
                certificateResources = certificateResources.Where(c => string.Equals(c.ResourceGroupName, resourceGroupName, StringComparison.OrdinalIgnoreCase)).ToArray();
            }

            var certificates =
                certificateResources.Select(
                    certificateResource =>
                    websitesClient.GetCertificate(certificateResource.ResourceGroupName, certificateResource.Name));

            if (!string.IsNullOrEmpty(thumbPrint))
            {
                certificates = certificates.Where(c => string.Equals(c.Thumbprint, thumbPrint, StringComparison.OrdinalIgnoreCase)).ToList();
            }

            return(certificates.ToArray());
        }