Line data Source code
1 : #region Copyright
2 : // // -----------------------------------------------------------------------
3 : // // <copyright company="Chinchilla Software Limited">
4 : // // Copyright Chinchilla Software Limited. All rights reserved.
5 : // // </copyright>
6 : // // -----------------------------------------------------------------------
7 : #endregion
8 :
9 : using System;
10 : using Cqrs.Authentication;
11 : using Cqrs.Configuration;
12 : using cdmdotnet.Logging;
13 :
14 : namespace Cqrs.Azure.ServiceBus
15 : {
16 : /// <summary>
17 : /// A event bus based on <see cref="AzureEventHub{TAuthenticationToken}"/>.
18 : /// </summary>
19 : /// <typeparam name="TAuthenticationToken">The <see cref="Type"/> of the authentication token.</typeparam>
20 : public abstract class AzureEventHubBus<TAuthenticationToken> : AzureEventHub<TAuthenticationToken>
21 1 : {
22 : /// <summary>
23 : /// The configuration key for the event hub connection string as used by <see cref="IConfigurationManager"/>.
24 : /// </summary>
25 : protected override string EventHubConnectionStringNameConfigurationKey
26 : {
27 : get { return "Cqrs.Azure.EventHub.EventBus.ConnectionStringName"; }
28 : }
29 :
30 : /// <summary>
31 : /// The configuration key for the event hub storage connection string as used by <see cref="IConfigurationManager"/>.
32 : /// </summary>
33 : protected override string EventHubStorageConnectionStringNameConfigurationKey
34 : {
35 : get { return "Cqrs.Azure.EventHub.EventBus.StorageConnectionStringName"; }
36 : }
37 :
38 : /// <summary>
39 : /// The configuration key for the name of the private event hub as used by <see cref="IConfigurationManager"/>.
40 : /// </summary>
41 : protected override string PrivateEventHubNameConfigurationKey
42 : {
43 : get { return "Cqrs.Azure.EventHub.EventBus.PrivateEvent.EventHubName"; }
44 : }
45 :
46 : /// <summary>
47 : /// The configuration key for the name of the public event hub as used by <see cref="IConfigurationManager"/>.
48 : /// </summary>
49 : protected override string PublicEventHubNameConfigurationKey
50 : {
51 : get { return "Cqrs.Azure.EventHub.EventBus.PublicEvent.EventHubName"; }
52 : }
53 :
54 : /// <summary>
55 : /// The configuration key for the name of the consumer group name of the private event hub as used by <see cref="IConfigurationManager"/>.
56 : /// </summary>
57 : protected override string PrivateEventHubConsumerGroupNameConfigurationKey
58 : {
59 : get { return "Cqrs.Azure.EventHub.EventBus.PrivateEvent.EventHubName.ConsumerGroupName"; }
60 : }
61 :
62 : /// <summary>
63 : /// The configuration key for the name of the consumer group name of the public event hub as used by <see cref="IConfigurationManager"/>.
64 : /// </summary>
65 : protected override string PublicEventHubConsumerGroupNameConfigurationKey
66 : {
67 : get { return "Cqrs.Azure.EventHub.EventBus.PublicEvent.EventHubName.ConsumerGroupName"; }
68 : }
69 :
70 : /// <summary>
71 : /// The default name of the private event hub if no <see cref="IConfigurationManager"/> value is set.
72 : /// </summary>
73 : protected override string DefaultPrivateEventHubName
74 : {
75 : get { return "Cqrs.EventHub.EventBus.Private"; }
76 : }
77 :
78 : /// <summary>
79 : /// The default name of the public event hub if no <see cref="IConfigurationManager"/> value is set.
80 : /// </summary>
81 : protected override string DefaultPublicEventHubName
82 : {
83 : get { return "Cqrs.EventHub.EventBus"; }
84 : }
85 :
86 : /// <summary>
87 : /// Gets the <see cref="IAzureBusHelper{TAuthenticationToken}"/>.
88 : /// </summary>
89 : protected IAzureBusHelper<TAuthenticationToken> AzureBusHelper { get; private set; }
90 :
91 : /// <summary>
92 : /// Instantiate a new instance of <see cref="AzureEventHubBus{TAuthenticationToken}"/>.
93 : /// </summary>
94 1 : protected AzureEventHubBus(IConfigurationManager configurationManager, IMessageSerialiser<TAuthenticationToken> messageSerialiser, IAuthenticationTokenHelper<TAuthenticationToken> authenticationTokenHelper, ICorrelationIdHelper correlationIdHelper, ILogger logger, IAzureBusHelper<TAuthenticationToken> azureBusHelper, bool isAPublisher)
95 : : base(configurationManager, messageSerialiser, authenticationTokenHelper, correlationIdHelper, logger, isAPublisher)
96 : {
97 : AzureBusHelper = azureBusHelper;
98 : }
99 : }
100 : }
|