namespace AIStudio.Tools.PluginSystem;
///
/// Static container for pending enterprise secrets during plugin loading.
///
public static class PendingEnterpriseSecrets
{
private static readonly List PENDING_SECRETS = [];
private static readonly Lock LOCK = new();
///
/// Adds a pending enterprise secret to the list.
///
/// The pending enterprise secret to add.
public static void Add(PendingEnterpriseSecret secret)
{
lock (LOCK)
PENDING_SECRETS.Add(secret);
}
///
/// Gets and clears all pending enterprise secrets.
///
/// A list of all pending enterprise secrets.
public static IReadOnlyList GetAndClear()
{
lock (LOCK)
{
var secrets = PENDING_SECRETS.ToList();
PENDING_SECRETS.Clear();
return secrets;
}
}
}