53 lines
1.8 KiB
C#
53 lines
1.8 KiB
C#
using System.Configuration;
|
|
using Kreta.Core.MessageBroker.Azure.EventHub.Client.Configuration;
|
|
using Validators = Kreta.Core.Configuration.Validators;
|
|
|
|
namespace Kreta.MessageBroker.Configuration
|
|
{
|
|
public class EventHubClientConfigurationElement : ConfigurationElement, IAzureEventHubClientConfiguration
|
|
{
|
|
#region [Properties]
|
|
|
|
/// <summary>
|
|
/// Event hub name
|
|
/// </summary>
|
|
[ConfigurationProperty(nameof(Name), IsRequired = true, DefaultValue = Validators.StringValidator.SkipValidationForDefaultValue)]
|
|
[Validators.StringValidator(false, MaxLength = Constants.Azure.EventHub.NameMaximumLength)]
|
|
public string Name
|
|
{
|
|
get
|
|
{
|
|
return (string)this[nameof(Name)];
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Event hub entity connection string
|
|
/// </summary>
|
|
[ConfigurationProperty(nameof(ConnectionString), IsRequired = true, DefaultValue = Validators.StringValidator.SkipValidationForDefaultValue)]
|
|
[Validators.StringValidator(false, MaxLength = Constants.Azure.EventHub.ConnectionStringMaximumLength)]
|
|
public string ConnectionString
|
|
{
|
|
get
|
|
{
|
|
return (string)this[nameof(ConnectionString)];
|
|
}
|
|
}
|
|
|
|
/// <summary>
|
|
/// Event hub entity path
|
|
/// </summary>
|
|
[ConfigurationProperty(nameof(EntityPath), IsRequired = true, DefaultValue = Validators.StringValidator.SkipValidationForDefaultValue)]
|
|
[Validators.StringValidator(false, MaxLength = Constants.Azure.EventHub.EntityPathMaximumLength)]
|
|
public string EntityPath
|
|
{
|
|
get
|
|
{
|
|
return (string)this[nameof(EntityPath)];
|
|
}
|
|
}
|
|
|
|
#endregion
|
|
|
|
}
|
|
}
|