Skip to content

Commit df6e90f

Browse files
committed
(#130) Transactional Outbox Pattern
1 parent 18a3a39 commit df6e90f

File tree

120 files changed

+1850
-1554
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

120 files changed

+1850
-1554
lines changed

src/Microservices/Common/ClassifiedAds.Application/ApplicationServicesExtensions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public static IServiceCollection AddApplicationServices(this IServiceCollection
1313
{
1414
services.AddScoped<Dispatcher>();
1515

16-
services.AddSingleton<IDomainEvents, DomainEvents>()
16+
services.AddScoped<IDomainEvents, DomainEvents>()
1717
.AddScoped(typeof(ICrudService<>), typeof(CrudService<>));
1818

1919
return services;

src/Microservices/Common/ClassifiedAds.Domain/Events/DomainEvents.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ namespace ClassifiedAds.Domain.Events
1111
public class DomainEvents : IDomainEvents
1212
{
1313
private static List<Type> _handlers = new List<Type>();
14-
private static IServiceProvider _serviceProvider;
14+
private IServiceProvider _serviceProvider;
1515

1616
public static void RegisterHandlers(Assembly assembly, IServiceCollection services)
1717
{

src/Microservices/Services.Identity/ClassifiedAds.Services.Identity.AuthServer/appsettings.json

Lines changed: 0 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -95,72 +95,6 @@
9595
"AppSecret": "xxx"
9696
}
9797
},
98-
"MessageBroker": {
99-
"Provider": "Fake",
100-
"RabbitMQ": {
101-
"HostName": "localhost",
102-
"UserName": "guest",
103-
"Password": "guest",
104-
"ExchangeName": "amq.direct",
105-
"RoutingKeys": {
106-
"FileUploadedEvent": "classifiedadds_fileuploaded",
107-
"FileDeletedEvent": "classifiedadds_filedeleted",
108-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
109-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
110-
},
111-
"QueueNames": {
112-
"FileUploadedEvent": "classifiedadds_fileuploaded",
113-
"FileDeletedEvent": "classifiedadds_filedeleted",
114-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
115-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
116-
}
117-
},
118-
"Kafka": {
119-
"BootstrapServers": "localhost:9092",
120-
"Topics": {
121-
"FileUploadedEvent": "classifiedadds_fileuploaded",
122-
"FileDeletedEvent": "classifiedadds_filedeleted",
123-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
124-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
125-
},
126-
"GroupId": "classified"
127-
},
128-
"AzureQueue": {
129-
"ConnectionString": "DefaultEndpointsProtocol=https;AccountName=xxx;AccountKey=xxx;EndpointSuffix=core.windows.net",
130-
"QueueNames": {
131-
"FileUploadedEvent": "classifiedadds-fileuploaded",
132-
"FileDeletedEvent": "classifiedadds-filedeleted",
133-
"EmailMessageCreatedEvent": "classifiedadds-emailcreated",
134-
"SmsMessageCreatedEvent": "classifiedadds-smscreated"
135-
}
136-
},
137-
"AzureServiceBus": {
138-
"ConnectionString": "Endpoint=sb://xxx.servicebus.windows.net/;SharedAccessKeyName=xxx;SharedAccessKey=xxx",
139-
"QueueNames": {
140-
"FileUploadedEvent": "classifiedadds_fileuploaded",
141-
"FileDeletedEvent": "classifiedadds_filedeleted",
142-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
143-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
144-
}
145-
},
146-
"AzureEventGrid": {
147-
"DomainEndpoint": "https://xxx.xxx-1.eventgrid.azure.net/api/events",
148-
"DomainKey": "xxxx",
149-
"Topics": {
150-
"FileUploadedEvent": "classifiedadds_fileuploaded",
151-
"FileDeletedEvent": "classifiedadds_filedeleted"
152-
}
153-
},
154-
"AzureEventHub": {
155-
"ConnectionString": "Endpoint=sb://xxx.servicebus.windows.net/;SharedAccessKeyName=xxx;SharedAccessKey=xxx",
156-
"Hubs": {
157-
"FileUploadedEvent": "classifiedadds_fileuploaded",
158-
"FileDeletedEvent": "classifiedadds_filedeleted",
159-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
160-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
161-
}
162-
}
163-
},
16498
"AllowedHosts": "*",
16599
"Services": {
166100
"AuditLog": {

src/Microservices/Services.Identity/ClassifiedAds.Services.Identity/ConfigurationOptions/AppSettings.cs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,8 @@
22
using ClassifiedAds.Infrastructure.DistributedTracing;
33
using ClassifiedAds.Infrastructure.Interceptors;
44
using ClassifiedAds.Infrastructure.Logging;
5-
using ClassifiedAds.Infrastructure.MessageBrokers;
65
using ClassifiedAds.Infrastructure.Monitoring;
76
using ClassifiedAds.Infrastructure.Notification;
8-
using ClassifiedAds.Infrastructure.Storages;
97

108
namespace ClassifiedAds.Services.Identity.ConfigurationOptions
119
{
@@ -23,10 +21,6 @@ public class AppSettings
2321

2422
public IdentityServerAuthentication IdentityServerAuthentication { get; set; }
2523

26-
public StorageOptions Storage { get; set; }
27-
28-
public MessageBrokerOptions MessageBroker { get; set; }
29-
3024
public NotificationOptions Notification { get; set; }
3125

3226
public InterceptorsOptions Interceptors { get; set; }

src/Microservices/Services.Notification/ClassifiedAds.Services.Notification.Api/appsettings.json

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -31,30 +31,6 @@
3131
}
3232
},
3333
"AllowedHosts": "*",
34-
"MessageBroker": {
35-
"Provider": "Fake",
36-
"RabbitMQ": {
37-
"HostName": "localhost",
38-
"UserName": "guest",
39-
"Password": "guest",
40-
"ExchangeName": "amq.direct",
41-
"RoutingKeys": {
42-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
43-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
44-
},
45-
"QueueNames": {
46-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
47-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
48-
}
49-
},
50-
"AzureQueue": {
51-
"ConnectionString": "DefaultEndpointsProtocol=https;AccountName=xxx;AccountKey=xxx;EndpointSuffix=core.windows.net",
52-
"QueueNames": {
53-
"EmailMessageCreatedEvent": "classifiedadds-emailcreated",
54-
"SmsMessageCreatedEvent": "classifiedadds-smscreated"
55-
}
56-
}
57-
},
5834
"Notification": {
5935
"Email": {
6036
"Provider": "Fake",

src/Microservices/Services.Notification/ClassifiedAds.Services.Notification.Background/appsettings.json

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -26,30 +26,6 @@
2626
}
2727
},
2828
"AllowedHosts": "*",
29-
"MessageBroker": {
30-
"Provider": "Fake",
31-
"RabbitMQ": {
32-
"HostName": "localhost",
33-
"UserName": "guest",
34-
"Password": "guest",
35-
"ExchangeName": "amq.direct",
36-
"RoutingKeys": {
37-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
38-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
39-
},
40-
"QueueNames": {
41-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
42-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
43-
}
44-
},
45-
"AzureQueue": {
46-
"ConnectionString": "DefaultEndpointsProtocol=https;AccountName=xxx;AccountKey=xxx;EndpointSuffix=core.windows.net",
47-
"QueueNames": {
48-
"EmailMessageCreatedEvent": "classifiedadds-emailcreated",
49-
"SmsMessageCreatedEvent": "classifiedadds-smscreated"
50-
}
51-
}
52-
},
5329
"Notification": {
5430
"Email": {
5531
"Provider": "Fake",

src/Microservices/Services.Notification/ClassifiedAds.Services.Notification.Grpc/appsettings.json

Lines changed: 0 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -42,30 +42,6 @@
4242
}
4343
}
4444
},
45-
"MessageBroker": {
46-
"Provider": "Fake",
47-
"RabbitMQ": {
48-
"HostName": "localhost",
49-
"UserName": "guest",
50-
"Password": "guest",
51-
"ExchangeName": "amq.direct",
52-
"RoutingKeys": {
53-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
54-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
55-
},
56-
"QueueNames": {
57-
"EmailMessageCreatedEvent": "classifiedadds_emailcreated",
58-
"SmsMessageCreatedEvent": "classifiedadds_smscreated"
59-
}
60-
},
61-
"AzureQueue": {
62-
"ConnectionString": "DefaultEndpointsProtocol=https;AccountName=xxx;AccountKey=xxx;EndpointSuffix=core.windows.net",
63-
"QueueNames": {
64-
"EmailMessageCreatedEvent": "classifiedadds-emailcreated",
65-
"SmsMessageCreatedEvent": "classifiedadds-smscreated"
66-
}
67-
}
68-
},
6945
"Notification": {
7046
"Email": {
7147
"Provider": "Fake",

src/Microservices/Services.Notification/ClassifiedAds.Services.Notification/ConfigurationOptions/AppSettings.cs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,8 @@
22
using ClassifiedAds.Infrastructure.DistributedTracing;
33
using ClassifiedAds.Infrastructure.Interceptors;
44
using ClassifiedAds.Infrastructure.Logging;
5-
using ClassifiedAds.Infrastructure.MessageBrokers;
65
using ClassifiedAds.Infrastructure.Monitoring;
76
using ClassifiedAds.Infrastructure.Notification;
8-
using ClassifiedAds.Infrastructure.Storages;
97

108
namespace ClassifiedAds.Services.Notification.ConfigurationOptions
119
{
@@ -23,10 +21,6 @@ public class AppSettings
2321

2422
public IdentityServerAuthentication IdentityServerAuthentication { get; set; }
2523

26-
public StorageOptions Storage { get; set; }
27-
28-
public MessageBrokerOptions MessageBroker { get; set; }
29-
3024
public NotificationOptions Notification { get; set; }
3125

3226
public InterceptorsOptions Interceptors { get; set; }

src/Microservices/Services.Notification/ClassifiedAds.Services.Notification/DTOs/EmailMessageCreatedEvent.cs

Lines changed: 0 additions & 9 deletions
This file was deleted.

src/Microservices/Services.Notification/ClassifiedAds.Services.Notification/DTOs/SmsMessageCreatedEvent.cs

Lines changed: 0 additions & 9 deletions
This file was deleted.

0 commit comments

Comments
 (0)