/// <summary>
        /// Initializes a new instance of the <see cref="InfobipSmsAdapter"/> class using configuration settings.
        /// </summary>
        /// <param name="infobipSmsOptions">Adapter options. Typically created via appsettings loaded into an IConfiguration.</param>
        /// <param name="infobipSmsClient">Client/Proxy used to communicate with Infobip.</param>
        /// <param name="logger">Logger.</param>
        public InfobipSmsAdapter(InfobipSmsAdapterOptions infobipSmsOptions, IInfobipSmsClient infobipSmsClient, ILogger <InfobipSmsAdapter> logger)
        {
            _smsAdapterOptions = infobipSmsOptions ?? throw new ArgumentNullException(nameof(infobipSmsOptions));
            _infobipSmsClient  = infobipSmsClient ?? throw new ArgumentNullException(nameof(infobipSmsClient));
            _logger            = logger ?? NullLogger <InfobipSmsAdapter> .Instance;

            _toSmsActivityConverter = new ToSmsActivityConverter(_smsAdapterOptions, _logger);
            _authorizationHelper    = new AuthorizationHelper();
        }
 public InfobipSmsClient(InfobipSmsAdapterOptions infobipSmsAdapterOptions) : base(infobipSmsAdapterOptions)
 {
 }