示例#1
0
        public ITrueDialogConfig GetConfig()
        {
            try
            {
                var config = TrueDialogConfigSection.GetConfig();
                if (config == null)
                {
                    return(null);
                }

                return(new TrueDialogConfig
                {
                    AccountId = config.Authorization.AccountId,
                    ApiKey = config.Authorization.ApiKey,
                    ApiSecret = config.Authorization.ApiSecret,
                    UserAgent = config.UserAgent,
                    BaseUrl = config.BaseUrl,
                    Username = config.Authorization.UserName,
                    Password = config.Authorization.Password,
                    Timeout = (int)config.Timeout.TotalMilliseconds
                });
            }
            catch
            {
                return(null);
            }
        }
        public InternalClient(IConfiguration configuration, IAuthConfig authConfig)
        {
            Config    = configuration ?? TrueDialogConfigSection.GetConfig();
            AccountId = authConfig.AccountId;

            if (AccountId == 0)
            {
                throw new ArgumentException("Account ID is missing.");
            }

            var strategy = GetRetryStrategy();

            RetryPolicy = new RetryPolicy <RestErrorDetectionStrategy>(strategy);

            RestClient = CreateClient(Config, authConfig);
        }
        public InternalClient(IConfiguration configuration = null, int accountId = 0, string username = null, string password = null, bool throwOnAccountMissing = true)
        {
            Config    = configuration ?? TrueDialogConfigSection.GetConfig();
            AccountId = accountId;

            if (AccountId == 0)
            {
                AccountId = Config.Authorization.AccountId;
            }

            if (AccountId == 0 && throwOnAccountMissing)
            {
                throw new ArgumentException("Account ID is missing.");
            }

            var strategy = GetRetryStrategy();

            RetryPolicy = new RetryPolicy <RestErrorDetectionStrategy>(strategy);

            RestClient = CreateClient(Config, username, password);
        }