mirror of
https://github.com/bitwarden/server.git
synced 2025-06-30 23:52:50 -05:00
[PM-17562] Initial POC of Distributed Events (#5323)
* Initial POC of Distributed Events * Apply suggestions from code review Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com> * Clean up files to support accepted changes. Address PR Feedback * Removed unneeded using to fix lint warning * Moved config into a common EventLogging top-level item. Fixed issues from PR review * Optimized per suggestion from justinbaur Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com> * Updated to add IAsyncDisposable as suggested in PR review * Updated with suggestion to use KeyedSingleton for the IEventWriteService * Changed key case to lowercase --------- Co-authored-by: Justin Baur <19896123+justindbaur@users.noreply.github.com>
This commit is contained in:
@ -53,6 +53,7 @@ public class GlobalSettings : IGlobalSettings
|
||||
public virtual SqlSettings PostgreSql { get; set; } = new SqlSettings();
|
||||
public virtual SqlSettings MySql { get; set; } = new SqlSettings();
|
||||
public virtual SqlSettings Sqlite { get; set; } = new SqlSettings() { ConnectionString = "Data Source=:memory:" };
|
||||
public virtual EventLoggingSettings EventLogging { get; set; } = new EventLoggingSettings();
|
||||
public virtual MailSettings Mail { get; set; } = new MailSettings();
|
||||
public virtual IConnectionStringSettings Storage { get; set; } = new ConnectionStringSettings();
|
||||
public virtual ConnectionStringSettings Events { get; set; } = new ConnectionStringSettings();
|
||||
@ -256,6 +257,44 @@ public class GlobalSettings : IGlobalSettings
|
||||
}
|
||||
}
|
||||
|
||||
public class EventLoggingSettings
|
||||
{
|
||||
public RabbitMqSettings RabbitMq { get; set; }
|
||||
|
||||
public class RabbitMqSettings
|
||||
{
|
||||
private string _hostName;
|
||||
private string _username;
|
||||
private string _password;
|
||||
private string _exchangeName;
|
||||
|
||||
public virtual string EventRepositoryQueueName { get; set; } = "events-write-queue";
|
||||
public virtual string HttpPostQueueName { get; set; } = "events-httpPost-queue";
|
||||
public virtual string HttpPostUrl { get; set; }
|
||||
|
||||
public string HostName
|
||||
{
|
||||
get => _hostName;
|
||||
set => _hostName = value.Trim('"');
|
||||
}
|
||||
public string Username
|
||||
{
|
||||
get => _username;
|
||||
set => _username = value.Trim('"');
|
||||
}
|
||||
public string Password
|
||||
{
|
||||
get => _password;
|
||||
set => _password = value.Trim('"');
|
||||
}
|
||||
public string ExchangeName
|
||||
{
|
||||
get => _exchangeName;
|
||||
set => _exchangeName = value.Trim('"');
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class ConnectionStringSettings : IConnectionStringSettings
|
||||
{
|
||||
private string _connectionString;
|
||||
|
Reference in New Issue
Block a user