Ejemplo n.º 1
0
        public override void ExecuteApiManagementCmdlet()
        {
            string resourceGroupName;
            string serviceName;
            string certificateId;

            if (ParameterSetName.Equals(ResourceIdParameterSet))
            {
                var psBackend = new PsApiManagementCertificate(ResourceId);
                resourceGroupName = psBackend.ResourceGroupName;
                serviceName       = psBackend.ServiceName;
                certificateId     = psBackend.CertificateId;
            }
            else
            {
                resourceGroupName = Context.ResourceGroupName;
                serviceName       = Context.ServiceName;
                certificateId     = CertificateId;
            }

            if (string.IsNullOrEmpty(certificateId))
            {
                var certificates = Client.CertificateList(resourceGroupName, serviceName);
                WriteObject(certificates, true);
            }
            else
            {
                var certificate = Client.CertificateById(resourceGroupName, serviceName, certificateId);
                WriteObject(certificate);
            }
        }
Ejemplo n.º 2
0
        public override void ExecuteApiManagementCmdlet()
        {
            string resourceGroupName;
            string serviceName;
            bool   isCert;

            string entityId;

            if (ParameterSetName.Equals(ByInputObjectParameterSet))
            {
                if (InputObjectNamedvalue != null)
                {
                    isCert            = false;
                    entityId          = InputObjectNamedvalue.NamedValueId;
                    resourceGroupName = InputObjectNamedvalue.ResourceGroupName;
                    serviceName       = InputObjectNamedvalue.ServiceName;
                }
                else if (InputObjectCert != null)
                {
                    isCert            = true;
                    entityId          = InputObjectCert.CertificateId;
                    resourceGroupName = InputObjectCert.ResourceGroupName;
                    serviceName       = InputObjectCert.ServiceName;
                }
                else
                {
                    throw new InvalidOperationException(string.Format("Object not exist."));
                }
            }
            else
            {
                var split      = ResourceId.Split('/');
                var entityType = split[split.Length - 2];
                if (string.Equals(entityType, "certificates", StringComparison.OrdinalIgnoreCase))
                {
                    isCert = true;
                    var psBackend = new PsApiManagementCertificate(ResourceId);
                    resourceGroupName = psBackend.ResourceGroupName;
                    serviceName       = psBackend.ServiceName;
                    entityId          = psBackend.CertificateId;
                }
                else if (string.Equals(entityType, "namedvalues", StringComparison.OrdinalIgnoreCase))
                {
                    isCert = false;
                    var psBackend = new PsApiManagementNamedValue(ResourceId);
                    resourceGroupName = psBackend.ResourceGroupName;
                    serviceName       = psBackend.ServiceName;
                    entityId          = psBackend.NamedValueId;
                }
                else
                {
                    throw new InvalidOperationException(string.Format("Object with Id {0} supported for a KeyVault refresh.", ResourceId));
                }
            }

            if (string.IsNullOrEmpty(entityId))
            {
                throw new InvalidOperationException(string.Format("Object with Id {0} supported for a KeyVault refresh.", entityId));
            }

            if (ShouldProcess(entityId, Resources.RefreshKeyVaultBasedObject))
            {
                if (isCert)
                {
                    var entity = Client.CertificateKeyVaultRefresh(resourceGroupName, serviceName, entityId);
                    WriteObject(entity);
                }
                else
                {
                    var entity = Client.NamedValueKeyVaultRefresh(resourceGroupName, serviceName, entityId);
                    WriteObject(entity);
                }
            }
        }