private static bool CreationInProgress()

in tools/code/common/WorkspaceApi.cs [571:597]


    private static bool CreationInProgress(Response response)
    {
        if (response.Status != (int)HttpStatusCode.Created)
        {
            return false;
        }

        if (response.Headers.Any(header => header.Name.Equals("Content-Type", StringComparison.OrdinalIgnoreCase)
                                            && header.Value.Contains("application/json", StringComparison.OrdinalIgnoreCase)) is false)
        {
            return false;
        }

        try
        {
            return response.Content.ToObjectFromJson<JsonObject>()
                                   .TryGetJsonObjectProperty("properties")
                                   .Bind(json => json.TryGetStringProperty("ProvisioningState"))
                                   .ToOption()
                                   .Where(state => state.Equals("InProgress", StringComparison.OrdinalIgnoreCase))
                                   .IsSome;
        }
        catch (JsonException)
        {
            return false;
        }
    }