1
0
mirror of https://github.com/bitwarden/server synced 2026-01-19 17:03:16 +00:00

Move all event integration code to Dirt (#6757)

* Move all event integration code to Dirt

* Format to fix lint
This commit is contained in:
Brant DeBow
2025-12-30 10:59:19 -05:00
committed by GitHub
parent 9a340c0fdd
commit 86a68ab637
158 changed files with 487 additions and 472 deletions

View File

@@ -1,12 +1,12 @@
using Bit.Api.AdminConsole.Models.Request.Organizations; using Bit.Api.Dirt.Models.Request;
using Bit.Api.AdminConsole.Models.Response.Organizations; using Bit.Api.Dirt.Models.Response;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
using Bit.Core.Context; using Bit.Core.Context;
using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
namespace Bit.Api.AdminConsole.Controllers; namespace Bit.Api.Dirt.Controllers;
[Route("organizations/{organizationId:guid}/integrations/{integrationId:guid}/configurations")] [Route("organizations/{organizationId:guid}/integrations/{integrationId:guid}/configurations")]
[Authorize("Application")] [Authorize("Application")]

View File

@@ -1,12 +1,12 @@
using Bit.Api.AdminConsole.Models.Request.Organizations; using Bit.Api.Dirt.Models.Request;
using Bit.Api.AdminConsole.Models.Response.Organizations; using Bit.Api.Dirt.Models.Response;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces;
using Bit.Core.Context; using Bit.Core.Context;
using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
namespace Bit.Api.AdminConsole.Controllers; namespace Bit.Api.Dirt.Controllers;
[Route("organizations/{organizationId:guid}/integrations")] [Route("organizations/{organizationId:guid}/integrations")]
[Authorize("Application")] [Authorize("Application")]

View File

@@ -1,16 +1,16 @@
using System.Text.Json; using System.Text.Json;
using Bit.Api.AdminConsole.Models.Response.Organizations; using Bit.Api.Dirt.Models.Response;
using Bit.Core.AdminConsole.Entities;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations;
using Bit.Core.Context; using Bit.Core.Context;
using Bit.Core.Enums; using Bit.Core.Dirt.Entities;
using Bit.Core.Dirt.Enums;
using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Dirt.Repositories;
using Bit.Core.Dirt.Services;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Repositories;
using Bit.Core.Services;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
namespace Bit.Api.AdminConsole.Controllers; namespace Bit.Api.Dirt.Controllers;
[Route("organizations")] [Route("organizations")]
[Authorize("Application")] [Authorize("Application")]

View File

@@ -1,18 +1,18 @@
using System.Text.Json; using System.Text.Json;
using Bit.Api.AdminConsole.Models.Response.Organizations; using Bit.Api.Dirt.Models.Response;
using Bit.Core.AdminConsole.Entities;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations;
using Bit.Core.Context; using Bit.Core.Context;
using Bit.Core.Enums; using Bit.Core.Dirt.Entities;
using Bit.Core.Dirt.Enums;
using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Dirt.Repositories;
using Bit.Core.Dirt.Services;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Repositories;
using Bit.Core.Services;
using Microsoft.AspNetCore.Authorization; using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.Mvc;
using Microsoft.Bot.Builder; using Microsoft.Bot.Builder;
using Microsoft.Bot.Builder.Integration.AspNet.Core; using Microsoft.Bot.Builder.Integration.AspNet.Core;
namespace Bit.Api.AdminConsole.Controllers; namespace Bit.Api.Dirt.Controllers;
[Route("organizations")] [Route("organizations")]
[Authorize("Application")] [Authorize("Application")]

View File

@@ -1,8 +1,7 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.Enums; using Bit.Core.Enums;
namespace Bit.Api.Dirt.Models.Request;
namespace Bit.Api.AdminConsole.Models.Request.Organizations;
public class OrganizationIntegrationConfigurationRequestModel public class OrganizationIntegrationConfigurationRequestModel
{ {

View File

@@ -1,10 +1,10 @@
using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations;
using System.Text.Json; using System.Text.Json;
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Enums;
using Bit.Core.Enums; using Bit.Core.Dirt.Models.Data.EventIntegrations;
namespace Bit.Api.AdminConsole.Models.Request.Organizations; namespace Bit.Api.Dirt.Models.Request;
public class OrganizationIntegrationRequestModel : IValidatableObject public class OrganizationIntegrationRequestModel : IValidatableObject
{ {

View File

@@ -1,8 +1,8 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.Enums; using Bit.Core.Enums;
using Bit.Core.Models.Api; using Bit.Core.Models.Api;
namespace Bit.Api.AdminConsole.Models.Response.Organizations; namespace Bit.Api.Dirt.Models.Response;
public class OrganizationIntegrationConfigurationResponseModel : ResponseModel public class OrganizationIntegrationConfigurationResponseModel : ResponseModel
{ {

View File

@@ -1,10 +1,10 @@
using System.Text.Json; using System.Text.Json;
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Enums;
using Bit.Core.Enums; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Models.Api; using Bit.Core.Models.Api;
namespace Bit.Api.AdminConsole.Models.Response.Organizations; namespace Bit.Api.Dirt.Models.Response;
public class OrganizationIntegrationResponseModel : ResponseModel public class OrganizationIntegrationResponseModel : ResponseModel
{ {

View File

@@ -1,3 +0,0 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations;
public record DatadogIntegration(string ApiKey, Uri Uri);

View File

@@ -1,3 +0,0 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations;
public record SlackIntegration(string Token);

View File

@@ -1,3 +0,0 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations;
public record SlackIntegrationConfiguration(string ChannelId);

View File

@@ -1,14 +0,0 @@
#nullable enable
using Bit.Core.Enums;
using Bit.Core.Models.Data.Organizations;
namespace Bit.Core.Services;
public interface IIntegrationConfigurationDetailsCache
{
List<OrganizationIntegrationConfigurationDetails> GetConfigurationDetails(
Guid organizationId,
IntegrationType integrationType,
EventType eventType);
}

View File

@@ -1,8 +1,8 @@
using Bit.Core.Entities; using Bit.Core.Dirt.Enums;
using Bit.Core.Enums; using Bit.Core.Entities;
using Bit.Core.Utilities; using Bit.Core.Utilities;
namespace Bit.Core.AdminConsole.Entities; namespace Bit.Core.Dirt.Entities;
public class OrganizationIntegration : ITableObject<Guid> public class OrganizationIntegration : ITableObject<Guid>
{ {

View File

@@ -2,7 +2,7 @@
using Bit.Core.Enums; using Bit.Core.Enums;
using Bit.Core.Utilities; using Bit.Core.Utilities;
namespace Bit.Core.AdminConsole.Entities; namespace Bit.Core.Dirt.Entities;
public class OrganizationIntegrationConfiguration : ITableObject<Guid> public class OrganizationIntegrationConfiguration : ITableObject<Guid>
{ {

View File

@@ -1,4 +1,4 @@
namespace Bit.Core.Enums; namespace Bit.Core.Dirt.Enums;
public enum IntegrationType : int public enum IntegrationType : int
{ {

View File

@@ -1,4 +1,4 @@
namespace Bit.Api.AdminConsole.Models.Response.Organizations; namespace Bit.Core.Dirt.Enums;
public enum OrganizationIntegrationStatus : int public enum OrganizationIntegrationStatus : int
{ {

View File

@@ -1,13 +1,15 @@
using Azure.Messaging.ServiceBus; using Azure.Messaging.ServiceBus;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations;
using Bit.Core.AdminConsole.Models.Teams;
using Bit.Core.AdminConsole.Repositories; using Bit.Core.AdminConsole.Repositories;
using Bit.Core.AdminConsole.Services; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations;
using Bit.Core.AdminConsole.Services.NoopImplementations; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations;
using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Dirt.Models.Data.Teams;
using Bit.Core.Dirt.Repositories;
using Bit.Core.Dirt.Services;
using Bit.Core.Dirt.Services.Implementations;
using Bit.Core.Dirt.Services.NoopImplementations;
using Bit.Core.Repositories; using Bit.Core.Repositories;
using Bit.Core.Services; using Bit.Core.Services;
using Bit.Core.Settings; using Bit.Core.Settings;

View File

@@ -1,13 +1,13 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
using Bit.Core.AdminConsole.Services; using Bit.Core.Dirt.Repositories;
using Bit.Core.Dirt.Services;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Repositories;
using Bit.Core.Utilities; using Bit.Core.Utilities;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using ZiggyCreatures.Caching.Fusion; using ZiggyCreatures.Caching.Fusion;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations;
/// <summary> /// <summary>
/// Command implementation for creating organization integration configurations with validation and cache invalidation support. /// Command implementation for creating organization integration configurations with validation and cache invalidation support.

View File

@@ -1,11 +1,11 @@
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
using Bit.Core.Dirt.Repositories;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Repositories;
using Bit.Core.Utilities; using Bit.Core.Utilities;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using ZiggyCreatures.Caching.Fusion; using ZiggyCreatures.Caching.Fusion;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations;
/// <summary> /// <summary>
/// Command implementation for deleting organization integration configurations with cache invalidation support. /// Command implementation for deleting organization integration configurations with cache invalidation support.

View File

@@ -1,9 +1,9 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
using Bit.Core.Dirt.Repositories;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Repositories;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations;
/// <summary> /// <summary>
/// Query implementation for retrieving organization integration configurations. /// Query implementation for retrieving organization integration configurations.

View File

@@ -1,6 +1,6 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
/// <summary> /// <summary>
/// Command interface for creating organization integration configurations. /// Command interface for creating organization integration configurations.

View File

@@ -1,4 +1,4 @@
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
/// <summary> /// <summary>
/// Command interface for deleting organization integration configurations. /// Command interface for deleting organization integration configurations.

View File

@@ -1,6 +1,6 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
/// <summary> /// <summary>
/// Query interface for retrieving organization integration configurations. /// Query interface for retrieving organization integration configurations.

View File

@@ -1,6 +1,6 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
/// <summary> /// <summary>
/// Command interface for updating organization integration configurations. /// Command interface for updating organization integration configurations.

View File

@@ -1,13 +1,13 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations.Interfaces;
using Bit.Core.AdminConsole.Services; using Bit.Core.Dirt.Repositories;
using Bit.Core.Dirt.Services;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Repositories;
using Bit.Core.Utilities; using Bit.Core.Utilities;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using ZiggyCreatures.Caching.Fusion; using ZiggyCreatures.Caching.Fusion;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrationConfigurations; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrationConfigurations;
/// <summary> /// <summary>
/// Command implementation for updating organization integration configurations with validation and cache invalidation support. /// Command implementation for updating organization integration configurations with validation and cache invalidation support.

View File

@@ -1,12 +1,12 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
using Bit.Core.Dirt.Repositories;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Repositories;
using Bit.Core.Utilities; using Bit.Core.Utilities;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using ZiggyCreatures.Caching.Fusion; using ZiggyCreatures.Caching.Fusion;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations;
/// <summary> /// <summary>
/// Command implementation for creating organization integrations with cache invalidation support. /// Command implementation for creating organization integrations with cache invalidation support.

View File

@@ -1,11 +1,11 @@
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
using Bit.Core.Dirt.Repositories;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Repositories;
using Bit.Core.Utilities; using Bit.Core.Utilities;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using ZiggyCreatures.Caching.Fusion; using ZiggyCreatures.Caching.Fusion;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations;
/// <summary> /// <summary>
/// Command implementation for deleting organization integrations with cache invalidation support. /// Command implementation for deleting organization integrations with cache invalidation support.

View File

@@ -1,8 +1,8 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
using Bit.Core.Repositories; using Bit.Core.Dirt.Repositories;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations;
/// <summary> /// <summary>
/// Query implementation for retrieving organization integrations. /// Query implementation for retrieving organization integrations.

View File

@@ -1,6 +1,6 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
/// <summary> /// <summary>
/// Command interface for creating an OrganizationIntegration. /// Command interface for creating an OrganizationIntegration.

View File

@@ -1,4 +1,4 @@
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
/// <summary> /// <summary>
/// Command interface for deleting organization integrations. /// Command interface for deleting organization integrations.

View File

@@ -1,6 +1,6 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
/// <summary> /// <summary>
/// Query interface for retrieving organization integrations. /// Query interface for retrieving organization integrations.

View File

@@ -1,6 +1,6 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
/// <summary> /// <summary>
/// Command interface for updating organization integrations. /// Command interface for updating organization integrations.

View File

@@ -1,12 +1,12 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations.Interfaces; using Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations.Interfaces;
using Bit.Core.Dirt.Repositories;
using Bit.Core.Exceptions; using Bit.Core.Exceptions;
using Bit.Core.Repositories;
using Bit.Core.Utilities; using Bit.Core.Utilities;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
using ZiggyCreatures.Caching.Fusion; using ZiggyCreatures.Caching.Fusion;
namespace Bit.Core.AdminConsole.EventIntegrations.OrganizationIntegrations; namespace Bit.Core.Dirt.EventIntegrations.OrganizationIntegrations;
/// <summary> /// <summary>
/// Command implementation for updating organization integrations with cache invalidation support. /// Command implementation for updating organization integrations with cache invalidation support.

View File

@@ -0,0 +1,3 @@
namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record DatadogIntegration(string ApiKey, Uri Uri);

View File

@@ -1,3 +1,3 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record DatadogIntegrationConfigurationDetails(string ApiKey, Uri Uri); public record DatadogIntegrationConfigurationDetails(string ApiKey, Uri Uri);

View File

@@ -1,7 +1,7 @@
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
using Bit.Core.Settings; using Bit.Core.Settings;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class DatadogListenerConfiguration(GlobalSettings globalSettings) public class DatadogListenerConfiguration(GlobalSettings globalSettings)
: ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration : ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration

View File

@@ -1,3 +1,3 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record HecIntegration(Uri Uri, string Scheme, string Token, string? Service = null); public record HecIntegration(Uri Uri, string Scheme, string Token, string? Service = null);

View File

@@ -1,7 +1,7 @@
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
using Bit.Core.Settings; using Bit.Core.Settings;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class HecListenerConfiguration(GlobalSettings globalSettings) public class HecListenerConfiguration(GlobalSettings globalSettings)
: ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration : ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration

View File

@@ -1,4 +1,4 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public interface IEventListenerConfiguration public interface IEventListenerConfiguration
{ {

View File

@@ -1,6 +1,6 @@
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public interface IIntegrationListenerConfiguration : IEventListenerConfiguration public interface IIntegrationListenerConfiguration : IEventListenerConfiguration
{ {

View File

@@ -1,6 +1,6 @@
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public interface IIntegrationMessage public interface IIntegrationMessage
{ {

View File

@@ -1,4 +1,4 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
/// <summary> /// <summary>
/// Categories of event integration failures used for classification and retry logic. /// Categories of event integration failures used for classification and retry logic.

View File

@@ -1,4 +1,4 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class IntegrationFilterGroup public class IntegrationFilterGroup
{ {

View File

@@ -1,4 +1,4 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public enum IntegrationFilterOperation public enum IntegrationFilterOperation
{ {

View File

@@ -1,4 +1,4 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class IntegrationFilterRule public class IntegrationFilterRule
{ {

View File

@@ -1,4 +1,4 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
/// <summary> /// <summary>
/// Represents the result of an integration handler operation, including success status, /// Represents the result of an integration handler operation, including success status,

View File

@@ -1,7 +1,7 @@
using System.Text.Json; using System.Text.Json;
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class IntegrationMessage : IIntegrationMessage public class IntegrationMessage : IIntegrationMessage
{ {

View File

@@ -1,8 +1,8 @@
using System.Security.Cryptography; using System.Security.Cryptography;
using System.Text; using System.Text;
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class IntegrationOAuthState public class IntegrationOAuthState
{ {

View File

@@ -4,7 +4,7 @@ using Bit.Core.Enums;
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
using Bit.Core.Models.Data.Organizations.OrganizationUsers; using Bit.Core.Models.Data.Organizations.OrganizationUsers;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class IntegrationTemplateContext(EventMessage eventMessage) public class IntegrationTemplateContext(EventMessage eventMessage)
{ {

View File

@@ -1,6 +1,6 @@
using Bit.Core.Settings; using Bit.Core.Settings;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public abstract class ListenerConfiguration public abstract class ListenerConfiguration
{ {

View File

@@ -1,9 +1,8 @@
using System.Text.Json.Nodes; using System.Text.Json.Nodes;
using Bit.Core.Dirt.Enums;
using Bit.Core.Enums; using Bit.Core.Enums;
#nullable enable namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
namespace Bit.Core.Models.Data.Organizations;
public class OrganizationIntegrationConfigurationDetails public class OrganizationIntegrationConfigurationDetails
{ {

View File

@@ -1,6 +1,6 @@
using Bit.Core.Settings; using Bit.Core.Settings;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class RepositoryListenerConfiguration(GlobalSettings globalSettings) public class RepositoryListenerConfiguration(GlobalSettings globalSettings)
: ListenerConfiguration(globalSettings), IEventListenerConfiguration : ListenerConfiguration(globalSettings), IEventListenerConfiguration

View File

@@ -0,0 +1,3 @@
namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record SlackIntegration(string Token);

View File

@@ -0,0 +1,3 @@
namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record SlackIntegrationConfiguration(string ChannelId);

View File

@@ -1,3 +1,3 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record SlackIntegrationConfigurationDetails(string ChannelId, string Token); public record SlackIntegrationConfigurationDetails(string ChannelId, string Token);

View File

@@ -1,7 +1,7 @@
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
using Bit.Core.Settings; using Bit.Core.Settings;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class SlackListenerConfiguration(GlobalSettings globalSettings) : public class SlackListenerConfiguration(GlobalSettings globalSettings) :
ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration

View File

@@ -1,6 +1,6 @@
using Bit.Core.Models.Teams; using Bit.Core.Dirt.Models.Data.Teams;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record TeamsIntegration( public record TeamsIntegration(
string TenantId, string TenantId,

View File

@@ -1,3 +1,3 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record TeamsIntegrationConfigurationDetails(string ChannelId, Uri ServiceUrl); public record TeamsIntegrationConfigurationDetails(string ChannelId, Uri ServiceUrl);

View File

@@ -1,7 +1,7 @@
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
using Bit.Core.Settings; using Bit.Core.Settings;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class TeamsListenerConfiguration(GlobalSettings globalSettings) : public class TeamsListenerConfiguration(GlobalSettings globalSettings) :
ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration

View File

@@ -1,3 +1,3 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record WebhookIntegration(Uri Uri, string? Scheme = null, string? Token = null); public record WebhookIntegration(Uri Uri, string? Scheme = null, string? Token = null);

View File

@@ -1,3 +1,3 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record WebhookIntegrationConfiguration(Uri Uri, string? Scheme = null, string? Token = null); public record WebhookIntegrationConfiguration(Uri Uri, string? Scheme = null, string? Token = null);

View File

@@ -1,3 +1,3 @@
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public record WebhookIntegrationConfigurationDetails(Uri Uri, string? Scheme = null, string? Token = null); public record WebhookIntegrationConfigurationDetails(Uri Uri, string? Scheme = null, string? Token = null);

View File

@@ -1,7 +1,7 @@
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
using Bit.Core.Settings; using Bit.Core.Settings;
namespace Bit.Core.AdminConsole.Models.Data.EventIntegrations; namespace Bit.Core.Dirt.Models.Data.EventIntegrations;
public class WebhookListenerConfiguration(GlobalSettings globalSettings) public class WebhookListenerConfiguration(GlobalSettings globalSettings)
: ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration : ListenerConfiguration(globalSettings), IIntegrationListenerConfiguration

View File

@@ -1,6 +1,6 @@
using System.Text.Json.Serialization; using System.Text.Json.Serialization;
namespace Bit.Core.Models.Slack; namespace Bit.Core.Dirt.Models.Data.Slack;
public abstract class SlackApiResponse public abstract class SlackApiResponse
{ {

View File

@@ -1,6 +1,6 @@
using System.Text.Json.Serialization; using System.Text.Json.Serialization;
namespace Bit.Core.Models.Teams; namespace Bit.Core.Dirt.Models.Data.Teams;
/// <summary>Represents the response returned by the Microsoft OAuth 2.0 token endpoint. /// <summary>Represents the response returned by the Microsoft OAuth 2.0 token endpoint.
/// See <see href="https://learn.microsoft.com/graph/auth-v2-user">Microsoft identity platform and OAuth 2.0 /// See <see href="https://learn.microsoft.com/graph/auth-v2-user">Microsoft identity platform and OAuth 2.0

View File

@@ -1,6 +1,6 @@
using Microsoft.Bot.Connector.Authentication; using Microsoft.Bot.Connector.Authentication;
namespace Bit.Core.AdminConsole.Models.Teams; namespace Bit.Core.Dirt.Models.Data.Teams;
public class TeamsBotCredentialProvider(string clientId, string clientSecret) : ICredentialProvider public class TeamsBotCredentialProvider(string clientId, string clientSecret) : ICredentialProvider
{ {

View File

@@ -1,8 +1,10 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.Dirt.Enums;
using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Enums; using Bit.Core.Enums;
using Bit.Core.Models.Data.Organizations; using Bit.Core.Repositories;
namespace Bit.Core.Repositories; namespace Bit.Core.Dirt.Repositories;
public interface IOrganizationIntegrationConfigurationRepository : IRepository<OrganizationIntegrationConfiguration, Guid> public interface IOrganizationIntegrationConfigurationRepository : IRepository<OrganizationIntegrationConfiguration, Guid>
{ {

View File

@@ -1,6 +1,7 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.Repositories;
namespace Bit.Core.Repositories; namespace Bit.Core.Dirt.Repositories;
public interface IOrganizationIntegrationRepository : IRepository<OrganizationIntegration, Guid> public interface IOrganizationIntegrationRepository : IRepository<OrganizationIntegration, Guid>
{ {

View File

@@ -1,7 +1,7 @@
using Azure.Messaging.ServiceBus; using Azure.Messaging.ServiceBus;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services;
public interface IAzureServiceBusService : IEventIntegrationPublisher, IAsyncDisposable public interface IAzureServiceBusService : IEventIntegrationPublisher, IAsyncDisposable
{ {

View File

@@ -1,6 +1,6 @@
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services;
public interface IEventIntegrationPublisher : IAsyncDisposable public interface IEventIntegrationPublisher : IAsyncDisposable
{ {

View File

@@ -1,6 +1,6 @@
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services;
public interface IEventMessageHandler public interface IEventMessageHandler
{ {

View File

@@ -1,9 +1,9 @@
#nullable enable #nullable enable
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services;
public interface IIntegrationFilterService public interface IIntegrationFilterService
{ {

View File

@@ -1,8 +1,8 @@
using System.Globalization; using System.Globalization;
using System.Net; using System.Net;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services;
public interface IIntegrationHandler public interface IIntegrationHandler
{ {

View File

@@ -1,7 +1,7 @@
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
namespace Bit.Core.AdminConsole.Services; namespace Bit.Core.Dirt.Services;
public interface IOrganizationIntegrationConfigurationValidator public interface IOrganizationIntegrationConfigurationValidator
{ {

View File

@@ -1,8 +1,8 @@
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using RabbitMQ.Client; using RabbitMQ.Client;
using RabbitMQ.Client.Events; using RabbitMQ.Client.Events;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services;
public interface IRabbitMqService : IEventIntegrationPublisher public interface IRabbitMqService : IEventIntegrationPublisher
{ {

View File

@@ -1,6 +1,7 @@
using Bit.Core.Models.Slack; using Bit.Core.Dirt.Models.Data.Slack;
using Bit.Core.Dirt.Services.Implementations;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services;
/// <summary>Defines operations for interacting with Slack, including OAuth authentication, channel discovery, /// <summary>Defines operations for interacting with Slack, including OAuth authentication, channel discovery,
/// and sending messages.</summary> /// and sending messages.</summary>

View File

@@ -1,6 +1,7 @@
using Bit.Core.Models.Teams; using Bit.Core.Dirt.Models.Data.Teams;
using Bit.Core.Dirt.Services.Implementations;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services;
/// <summary> /// <summary>
/// Service that provides functionality relating to the Microsoft Teams integration including OAuth, /// Service that provides functionality relating to the Microsoft Teams integration including OAuth,

View File

@@ -1,9 +1,9 @@
using System.Text; using System.Text;
using Azure.Messaging.ServiceBus; using Azure.Messaging.ServiceBus;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class AzureServiceBusEventListenerService<TConfiguration> : EventLoggingListenerService public class AzureServiceBusEventListenerService<TConfiguration> : EventLoggingListenerService
where TConfiguration : IEventListenerConfiguration where TConfiguration : IEventListenerConfiguration
@@ -42,7 +42,7 @@ public class AzureServiceBusEventListenerService<TConfiguration> : EventLoggingL
private static ILogger CreateLogger(ILoggerFactory loggerFactory, TConfiguration configuration) private static ILogger CreateLogger(ILoggerFactory loggerFactory, TConfiguration configuration)
{ {
return loggerFactory.CreateLogger( return loggerFactory.CreateLogger(
categoryName: $"Bit.Core.Services.AzureServiceBusEventListenerService.{configuration.EventSubscriptionName}"); categoryName: $"Bit.Core.Dirt.Services.Implementations.AzureServiceBusEventListenerService.{configuration.EventSubscriptionName}");
} }
internal Task ProcessErrorAsync(ProcessErrorEventArgs args) internal Task ProcessErrorAsync(ProcessErrorEventArgs args)

View File

@@ -1,9 +1,9 @@
using Azure.Messaging.ServiceBus; using Azure.Messaging.ServiceBus;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class AzureServiceBusIntegrationListenerService<TConfiguration> : BackgroundService public class AzureServiceBusIntegrationListenerService<TConfiguration> : BackgroundService
where TConfiguration : IIntegrationListenerConfiguration where TConfiguration : IIntegrationListenerConfiguration
@@ -23,7 +23,7 @@ public class AzureServiceBusIntegrationListenerService<TConfiguration> : Backgro
{ {
_handler = handler; _handler = handler;
_logger = loggerFactory.CreateLogger( _logger = loggerFactory.CreateLogger(
categoryName: $"Bit.Core.Services.AzureServiceBusIntegrationListenerService.{configuration.IntegrationSubscriptionName}"); categoryName: $"Bit.Core.Dirt.Services.Implementations.AzureServiceBusIntegrationListenerService.{configuration.IntegrationSubscriptionName}");
_maxRetries = configuration.MaxRetries; _maxRetries = configuration.MaxRetries;
_serviceBusService = serviceBusService; _serviceBusService = serviceBusService;

View File

@@ -1,9 +1,9 @@
using Azure.Messaging.ServiceBus; using Azure.Messaging.ServiceBus;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Enums;
using Bit.Core.Enums; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Settings; using Bit.Core.Settings;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class AzureServiceBusService : IAzureServiceBusService public class AzureServiceBusService : IAzureServiceBusService
{ {

View File

@@ -1,9 +1,8 @@
#nullable enable using Bit.Core.Models.Data;
using Bit.Core.Services;
using Bit.Core.Models.Data;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class AzureTableStorageEventHandler( public class AzureTableStorageEventHandler(
[FromKeyedServices("persistent")] IEventWriteService eventWriteService) [FromKeyedServices("persistent")] IEventWriteService eventWriteService)

View File

@@ -1,7 +1,7 @@
using System.Text; using System.Text;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class DatadogIntegrationHandler( public class DatadogIntegrationHandler(
IHttpClientFactory httpClientFactory, IHttpClientFactory httpClientFactory,

View File

@@ -1,7 +1,8 @@
using System.Text.Json; using System.Text.Json;
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
using Bit.Core.Services;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class EventIntegrationEventWriteService : IEventWriteService, IAsyncDisposable public class EventIntegrationEventWriteService : IEventWriteService, IAsyncDisposable
{ {
private readonly IEventIntegrationPublisher _eventIntegrationPublisher; private readonly IEventIntegrationPublisher _eventIntegrationPublisher;

View File

@@ -1,18 +1,18 @@
using System.Text.Json; using System.Text.Json;
using Bit.Core.AdminConsole.Entities; using Bit.Core.AdminConsole.Entities;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations;
using Bit.Core.AdminConsole.Repositories; using Bit.Core.AdminConsole.Repositories;
using Bit.Core.AdminConsole.Utilities; using Bit.Core.AdminConsole.Utilities;
using Bit.Core.Enums; using Bit.Core.Dirt.Enums;
using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Dirt.Repositories;
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
using Bit.Core.Models.Data.Organizations;
using Bit.Core.Models.Data.Organizations.OrganizationUsers; using Bit.Core.Models.Data.Organizations.OrganizationUsers;
using Bit.Core.Repositories; using Bit.Core.Repositories;
using Bit.Core.Utilities; using Bit.Core.Utilities;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using ZiggyCreatures.Caching.Fusion; using ZiggyCreatures.Caching.Fusion;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class EventIntegrationHandler<T>( public class EventIntegrationHandler<T>(
IntegrationType integrationType, IntegrationType integrationType,

View File

@@ -1,11 +1,9 @@
#nullable enable using System.Text.Json;
using System.Text.Json;
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public abstract class EventLoggingListenerService : BackgroundService public abstract class EventLoggingListenerService : BackgroundService
{ {

View File

@@ -1,7 +1,8 @@
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
using Bit.Core.Services;
using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class EventRepositoryHandler( public class EventRepositoryHandler(
[FromKeyedServices("persistent")] IEventWriteService eventWriteService) [FromKeyedServices("persistent")] IEventWriteService eventWriteService)

View File

@@ -1,7 +1,7 @@
using System.Linq.Expressions; using System.Linq.Expressions;
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public delegate bool IntegrationFilter(EventMessage message, object? value); public delegate bool IntegrationFilter(EventMessage message, object? value);

View File

@@ -1,8 +1,8 @@
using System.Text.Json; using System.Text.Json;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Models.Data; using Bit.Core.Models.Data;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class IntegrationFilterService : IIntegrationFilterService public class IntegrationFilterService : IIntegrationFilterService
{ {

View File

@@ -1,9 +1,9 @@
using System.Text.Json; using System.Text.Json;
using Bit.Core.AdminConsole.Entities; using Bit.Core.Dirt.Entities;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Enums;
using Bit.Core.Enums; using Bit.Core.Dirt.Models.Data.EventIntegrations;
namespace Bit.Core.AdminConsole.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class OrganizationIntegrationConfigurationValidator : IOrganizationIntegrationConfigurationValidator public class OrganizationIntegrationConfigurationValidator : IOrganizationIntegrationConfigurationValidator
{ {

View File

@@ -1,10 +1,10 @@
using System.Text; using System.Text;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using RabbitMQ.Client; using RabbitMQ.Client;
using RabbitMQ.Client.Events; using RabbitMQ.Client.Events;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class RabbitMqEventListenerService<TConfiguration> : EventLoggingListenerService public class RabbitMqEventListenerService<TConfiguration> : EventLoggingListenerService
where TConfiguration : IEventListenerConfiguration where TConfiguration : IEventListenerConfiguration
@@ -69,6 +69,6 @@ public class RabbitMqEventListenerService<TConfiguration> : EventLoggingListener
private static ILogger CreateLogger(ILoggerFactory loggerFactory, TConfiguration configuration) private static ILogger CreateLogger(ILoggerFactory loggerFactory, TConfiguration configuration)
{ {
return loggerFactory.CreateLogger( return loggerFactory.CreateLogger(
categoryName: $"Bit.Core.Services.RabbitMqEventListenerService.{configuration.EventQueueName}"); categoryName: $"Bit.Core.Dirt.Services.Implementations.RabbitMqEventListenerService.{configuration.EventQueueName}");
} }
} }

View File

@@ -1,12 +1,12 @@
using System.Text; using System.Text;
using System.Text.Json; using System.Text.Json;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Microsoft.Extensions.Hosting; using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using RabbitMQ.Client; using RabbitMQ.Client;
using RabbitMQ.Client.Events; using RabbitMQ.Client.Events;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class RabbitMqIntegrationListenerService<TConfiguration> : BackgroundService public class RabbitMqIntegrationListenerService<TConfiguration> : BackgroundService
where TConfiguration : IIntegrationListenerConfiguration where TConfiguration : IIntegrationListenerConfiguration
@@ -37,7 +37,7 @@ public class RabbitMqIntegrationListenerService<TConfiguration> : BackgroundServ
_timeProvider = timeProvider; _timeProvider = timeProvider;
_lazyChannel = new Lazy<Task<IChannel>>(() => _rabbitMqService.CreateChannelAsync()); _lazyChannel = new Lazy<Task<IChannel>>(() => _rabbitMqService.CreateChannelAsync());
_logger = loggerFactory.CreateLogger( _logger = loggerFactory.CreateLogger(
categoryName: $"Bit.Core.Services.RabbitMqIntegrationListenerService.{configuration.IntegrationQueueName}"); ; categoryName: $"Bit.Core.Dirt.Services.Implementations.RabbitMqIntegrationListenerService.{configuration.IntegrationQueueName}"); ;
} }
public override async Task StartAsync(CancellationToken cancellationToken) public override async Task StartAsync(CancellationToken cancellationToken)

View File

@@ -1,11 +1,11 @@
using System.Text; using System.Text;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Enums;
using Bit.Core.Enums; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Settings; using Bit.Core.Settings;
using RabbitMQ.Client; using RabbitMQ.Client;
using RabbitMQ.Client.Events; using RabbitMQ.Client.Events;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class RabbitMqService : IRabbitMqService public class RabbitMqService : IRabbitMqService
{ {

View File

@@ -1,6 +1,6 @@
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class SlackIntegrationHandler( public class SlackIntegrationHandler(
ISlackService slackService) ISlackService slackService)

View File

@@ -2,11 +2,11 @@
using System.Net.Http.Json; using System.Net.Http.Json;
using System.Text.Json; using System.Text.Json;
using System.Web; using System.Web;
using Bit.Core.Models.Slack; using Bit.Core.Dirt.Models.Data.Slack;
using Bit.Core.Settings; using Bit.Core.Settings;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class SlackService( public class SlackService(
IHttpClientFactory httpClientFactory, IHttpClientFactory httpClientFactory,

View File

@@ -1,8 +1,8 @@
using System.Text.Json; using System.Text.Json;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Microsoft.Rest; using Microsoft.Rest;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class TeamsIntegrationHandler( public class TeamsIntegrationHandler(
ITeamsService teamsService) ITeamsService teamsService)

View File

@@ -2,9 +2,9 @@
using System.Net.Http.Json; using System.Net.Http.Json;
using System.Text.Json; using System.Text.Json;
using System.Web; using System.Web;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
using Bit.Core.Models.Teams; using Bit.Core.Dirt.Models.Data.Teams;
using Bit.Core.Repositories; using Bit.Core.Dirt.Repositories;
using Bit.Core.Settings; using Bit.Core.Settings;
using Microsoft.Bot.Builder; using Microsoft.Bot.Builder;
using Microsoft.Bot.Builder.Teams; using Microsoft.Bot.Builder.Teams;
@@ -12,9 +12,9 @@ using Microsoft.Bot.Connector;
using Microsoft.Bot.Connector.Authentication; using Microsoft.Bot.Connector.Authentication;
using Microsoft.Bot.Schema; using Microsoft.Bot.Schema;
using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging;
using TeamInfo = Bit.Core.Models.Teams.TeamInfo; using TeamInfo = Bit.Core.Dirt.Models.Data.Teams.TeamInfo;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class TeamsService( public class TeamsService(
IHttpClientFactory httpClientFactory, IHttpClientFactory httpClientFactory,

View File

@@ -1,8 +1,8 @@
using System.Net.Http.Headers; using System.Net.Http.Headers;
using System.Text; using System.Text;
using Bit.Core.AdminConsole.Models.Data.EventIntegrations; using Bit.Core.Dirt.Models.Data.EventIntegrations;
namespace Bit.Core.Services; namespace Bit.Core.Dirt.Services.Implementations;
public class WebhookIntegrationHandler( public class WebhookIntegrationHandler(
IHttpClientFactory httpClientFactory, IHttpClientFactory httpClientFactory,

View File

@@ -1,7 +1,6 @@
using Bit.Core.Models.Slack; using Bit.Core.Dirt.Models.Data.Slack;
using Bit.Core.Services;
namespace Bit.Core.AdminConsole.Services.NoopImplementations; namespace Bit.Core.Dirt.Services.NoopImplementations;
public class NoopSlackService : ISlackService public class NoopSlackService : ISlackService
{ {

View File

@@ -1,7 +1,6 @@
using Bit.Core.Models.Teams; using Bit.Core.Dirt.Models.Data.Teams;
using Bit.Core.Services;
namespace Bit.Core.AdminConsole.Services.NoopImplementations; namespace Bit.Core.Dirt.Services.NoopImplementations;
public class NoopTeamsService : ITeamsService public class NoopTeamsService : ITeamsService
{ {

Some files were not shown because too many files have changed in this diff Show More