init
This commit is contained in:
commit
e124a47765
19374 changed files with 9806149 additions and 0 deletions
|
@ -0,0 +1,18 @@
|
|||
using Kreta.Core.MessageBroker.Azure.EventHub.Client.Configuration;
|
||||
using Microsoft.Azure.EventHubs;
|
||||
|
||||
namespace Kreta.MessageBroker.ClientFactory
|
||||
{
|
||||
/// <summary>
|
||||
/// Event hub message client factory
|
||||
/// </summary>
|
||||
class AzureEventHubMessageClientFactory : Core.MessageBroker.Azure.EventHub.Client.AzureEventHubMessageClientFactory
|
||||
{
|
||||
/// <summary>
|
||||
/// Constructor
|
||||
/// </summary>
|
||||
/// <param name="configuration">Configuration</param>
|
||||
public AzureEventHubMessageClientFactory(IAzureEventHubClientsConfiguration configuration) : base(configuration, RetryPolicy.NoRetry)
|
||||
{ }
|
||||
}
|
||||
}
|
|
@ -0,0 +1,7 @@
|
|||
using Kreta.Core.MessageBroker;
|
||||
|
||||
namespace Kreta.MessageBroker.ClientFactory
|
||||
{
|
||||
internal interface IJsonMessageClientFactory<T> : IMessageClientFactory<T> where T : class
|
||||
{ }
|
||||
}
|
|
@ -0,0 +1,34 @@
|
|||
using System;
|
||||
using Kreta.Core.MessageBroker;
|
||||
using Kreta.Core.MessageBroker.Client.Implementations;
|
||||
|
||||
namespace Kreta.MessageBroker.ClientFactory
|
||||
{
|
||||
internal abstract class JsonMessageClientFactory<T> : IJsonMessageClientFactory<T>
|
||||
where T : class
|
||||
{
|
||||
#region [Properties]
|
||||
|
||||
private IMessageClientFactory<string> NativeMessageClientFactory { get; }
|
||||
|
||||
#endregion
|
||||
|
||||
#region [Public methods]
|
||||
|
||||
public IMessageClient<T> Create(string name)
|
||||
{
|
||||
return new JsonMessageClient<T>(this.NativeMessageClientFactory.Create(name));
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region [Constructors]
|
||||
|
||||
public JsonMessageClientFactory(IMessageClientFactory<string> nativeMessageClientFactory)
|
||||
{
|
||||
this.NativeMessageClientFactory = nativeMessageClientFactory ?? throw new ArgumentNullException(nameof(nativeMessageClientFactory));
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
|
@ -0,0 +1,11 @@
|
|||
using Kreta.Core.MessageBroker;
|
||||
using Kreta.Core.MessageBroker.Contract.MobileNotification;
|
||||
|
||||
namespace Kreta.MessageBroker.ClientFactory
|
||||
{
|
||||
internal class MobileNotificationJsonMessageClientFactory : JsonMessageClientFactory<MobileNotificationMessage>
|
||||
{
|
||||
public MobileNotificationJsonMessageClientFactory(IMessageClientFactory<string> messageClientFactory) : base(messageClientFactory)
|
||||
{ }
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue