Microsoft.Azure.ServiceManagemenet.Common.ProfileClient.GetEnvironment C# (CSharp) Method

GetEnvironment() public method

public GetEnvironment ( string name, string serviceEndpoint, string resourceEndpoint ) : AzureEnvironment
name string
serviceEndpoint string
resourceEndpoint string
return Microsoft.Azure.Commands.Common.Authentication.Models.AzureEnvironment
        public AzureEnvironment GetEnvironment(string name, string serviceEndpoint, string resourceEndpoint)
        {
            if (serviceEndpoint == null)
            {
                // Set to invalid value
                serviceEndpoint = Guid.NewGuid().ToString();
            }

            if (resourceEndpoint == null)
            {
                // Set to invalid value
                resourceEndpoint = Guid.NewGuid().ToString();
            }

            if (name != null)
            {
                if (Profile.Environments.ContainsKey(name))
                {
                    return Profile.Environments[name];
                }
                else
                {
                    return null;
                }
            }
            else
            {
                return Profile.Environments.Values.FirstOrDefault(e =>
                    e.IsEndpointSetToValue(AzureEnvironment.Endpoint.ServiceManagement, serviceEndpoint) ||
                    e.IsEndpointSetToValue(AzureEnvironment.Endpoint.ResourceManager, resourceEndpoint));
            }
        }

Usage Example

        private static AzureSubscription PublishSubscriptionToAzureSubscription(
            ProfileClient azureProfileClient, 
            PublishDataPublishProfile profile,
            PublishDataPublishProfileSubscription s,
            string environment)
        {
            var certificate = GetCertificate(profile, s);

            if (string.IsNullOrEmpty(environment))
            {
                var azureEnvironment = azureProfileClient.GetEnvironment(environment, s.ServiceManagementUrl ?? profile.Url, null);
                if (azureEnvironment != null)
                {
                    environment = azureEnvironment.Name;
                }
                else
                {
                    environment = EnvironmentName.AzureCloud;
                }
            }
            
            return new AzureSubscription
            {
                Id = new Guid(s.Id),
                Name = s.Name,
                Environment = environment,
                Account = certificate.Thumbprint
            };
        }