removed a using statement (#20541)

This commit is contained in:
devhl-labs 2025-01-31 04:23:35 -05:00 committed by GitHub
parent 8b52b0afe3
commit 187af2ec4e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
35 changed files with 255 additions and 290 deletions

View File

@ -7,7 +7,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace {{packageName}}.{{clientPackage}}
{
@ -17,7 +16,7 @@ namespace {{packageName}}.{{clientPackage}}
/// <typeparam name="TTokenBase"></typeparam>
{{>visibility}} class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new{{^net70OrLater}} Dictionary<string, Channel<TTokenBase>>{{/net70OrLater}}();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new{{^net70OrLater}} Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>{{/net70OrLater}}();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -29,12 +28,12 @@ namespace {{packageName}}.{{clientPackage}}
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
{{#lambda.copy}}
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
{{/lambda.copy}}
{{#hasApiKeyMethods}}
if (container is TokenContainer<ApiKeyToken> apiKeyTokenContainer)
@ -43,12 +42,12 @@ namespace {{packageName}}.{{clientPackage}}
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
@ -64,14 +63,14 @@ namespace {{packageName}}.{{clientPackage}}
{{/lambda.paste}}
{{/hasApiKeyMethods}}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default{{^netstandard20OrLater}}(global::System.Threading.CancellationToken){{/netstandard20OrLater}})
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>{{nrt?}} tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>{{nrt?}} tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -14,7 +14,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -24,7 +23,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -41,32 +40,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -38,32 +37,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -38,32 +37,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -38,32 +37,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -38,32 +37,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -32,21 +31,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -38,32 +37,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -40,32 +39,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -38,32 +37,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -40,32 +39,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -38,32 +37,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -40,32 +39,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -38,32 +37,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -40,32 +39,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -13,7 +13,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -23,7 +22,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -34,21 +33,21 @@ namespace Org.OpenAPITools.Client
foreach(TTokenBase token in _tokens)
token.StartTimer(token.Timeout ?? TimeSpan.FromMilliseconds(40));
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase>? tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase>? tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);

View File

@ -11,7 +11,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Channels;
namespace Org.OpenAPITools.Client
{
@ -21,7 +20,7 @@ namespace Org.OpenAPITools.Client
/// <typeparam name="TTokenBase"></typeparam>
public class RateLimitProvider<TTokenBase> : TokenProvider<TTokenBase> where TTokenBase : TokenBase
{
internal Dictionary<string, Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, Channel<TTokenBase>>();
internal Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>> AvailableTokens { get; } = new Dictionary<string, global::System.Threading.Channels.Channel<TTokenBase>>();
/// <summary>
/// Instantiates a ThrottledTokenProvider. Your tokens will be rate limited based on the token's timeout.
@ -38,32 +37,32 @@ namespace Org.OpenAPITools.Client
foreach (string header in headers)
{
BoundedChannelOptions options = new BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(apiKeyTokenContainer.Tokens.Count(t => ClientUtils.ApiKeyHeaderToString(t.Header).Equals(header)))
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(header, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(header, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
}
else
{
BoundedChannelOptions options = new BoundedChannelOptions(_tokens.Length)
global::System.Threading.Channels.BoundedChannelOptions options = new global::System.Threading.Channels.BoundedChannelOptions(_tokens.Length)
{
FullMode = BoundedChannelFullMode.DropWrite
FullMode = global::System.Threading.Channels.BoundedChannelFullMode.DropWrite
};
AvailableTokens.Add(string.Empty, Channel.CreateBounded<TTokenBase>(options));
AvailableTokens.Add(string.Empty, global::System.Threading.Channels.Channel.CreateBounded<TTokenBase>(options));
}
foreach(Channel<TTokenBase> tokens in AvailableTokens.Values)
foreach(global::System.Threading.Channels.Channel<TTokenBase> tokens in AvailableTokens.Values)
for (int i = 0; i < _tokens.Length; i++)
_tokens[i].TokenBecameAvailable += ((sender) => tokens.Writer.TryWrite((TTokenBase) sender));
}
internal override async System.Threading.Tasks.ValueTask<TTokenBase> GetAsync(string header = "", System.Threading.CancellationToken cancellation = default)
{
if (!AvailableTokens.TryGetValue(header, out Channel<TTokenBase> tokens))
if (!AvailableTokens.TryGetValue(header, out global::System.Threading.Channels.Channel<TTokenBase> tokens))
throw new KeyNotFoundException($"Could not locate a token for header '{header}'.");
return await tokens.Reader.ReadAsync(cancellation).ConfigureAwait(false);