/// <summary> /// Initializes a new instance of the <see cref="FixedRateTaxationGatewayProvider"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The gateway provider service. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="runtimeCacheProvider"> /// The runtime cache provider. /// </param> public FixedRateTaxationGatewayProvider( IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
/// <summary> /// Initializes a new instance of the <see cref="FixedRateTaxationGatewayProvider"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The gateway provider service. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="runtimeCacheProvider"> /// The runtime cache provider. /// </param> public FixedRateTaxationGatewayProvider( IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
public FedExShippingGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProvider, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProvider, runtimeCacheProvider) { _settings = new FedExProcessorSettings(); _runtimeCache = runtimeCacheProvider; }
/// <summary> /// Initializes a new instance of the <see cref="CashPaymentGatewayProvider"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The gateway provider service. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="runtimeCacheProvider"> /// The runtime cache provider. /// </param> public CashPaymentGatewayProvider( IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
/// <summary> /// Initializes a new instance of the <see cref="FoaShippingGatewayMethod"/> class. /// </summary> /// <param name="gatewayResource"> /// The gateway resource. /// </param> /// <param name="shipMethod"> /// The ship method. /// </param> /// <param name="shipCountry"> /// The ship country. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> public FoaShippingGatewayMethod(IGatewayResource gatewayResource, IShipMethod shipMethod, IShipCountry shipCountry, IGatewayProviderSettings gatewayProviderSettings) : base(gatewayResource, shipMethod, shipCountry) { _processorSettings = gatewayProviderSettings.ExtendedData.GetProcessorSettings(); _shipMethod = shipMethod; }
/// <summary> /// Initializes a new instance of the <see cref="TaxationGatewayProviderBase"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The gateway provider service. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="runtimeCacheProvider"> /// The runtime cache provider. /// </param> protected TaxationGatewayProviderBase( IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
/// <summary> /// Initializes a new instance of the <see cref="CashPaymentGatewayProvider"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The gateway provider service. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="runtimeCacheProvider"> /// The runtime cache provider. /// </param> public CashPaymentGatewayProvider( IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
public SmtpNotificationGatewayProvider( IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
public FedExShippingGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProvider, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProvider, runtimeCacheProvider) { _settings = new FedExProcessorSettings(); _runtimeCache = runtimeCacheProvider; }
/// <summary> /// Initializes a new instance of the <see cref="PaymentGatewayProviderBase"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The gateway provider service. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="runtimeCacheProvider"> /// The runtime cache provider. /// </param> protected PaymentGatewayProviderBase( IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
public FedExShippingGatewayMethod(IGatewayResource gatewayResource, IShipMethod shipMethod, IShipCountry shipCountry, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayResource, shipMethod, shipCountry) { _processor = new FedExShippingProcessor(gatewayProviderSettings.ExtendedData.GetProcessorSettings()); _gatewayProviderSettings = gatewayProviderSettings; _shipMethod = shipMethod; _runtimeCache = runtimeCacheProvider; }
/// <summary> /// The create instance. /// </summary> /// <param name="providerSettings"> /// The provider settings. /// </param> /// <returns> /// The <see cref="Attempt"/>. /// </returns> private Attempt <GatewayProviderBase> CreateInstance(IGatewayProviderSettings providerSettings) { var providerType = InstanceTypes.FirstOrDefault(x => x.GetCustomAttribute <GatewayProviderActivationAttribute>(false).Key == providerSettings.Key); return(providerSettings == null ? Attempt <GatewayProviderBase> .Fail(new Exception(string.Format("Failed to find type for provider {0}", providerSettings.Name))) : ActivatorHelper.CreateInstance <GatewayProviderBase>(providerType, new object[] { _gatewayProviderService, providerSettings, _runtimeCache })); }
public FedExShippingGatewayMethod(IGatewayResource gatewayResource, IShipMethod shipMethod, IShipCountry shipCountry, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayResource, shipMethod, shipCountry) { _processor = new FedExShippingProcessor(gatewayProviderSettings.ExtendedData.GetProcessorSettings()); _gatewayProviderSettings = gatewayProviderSettings; _shipMethod = shipMethod; _runtimeCache = runtimeCacheProvider; }
public SmtpNotificationGatewayProvider( IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
/// <summary> /// Deletes a <see cref="IGatewayProviderSettings"/> /// </summary> /// <param name="gatewayProviderSettings"></param> /// <param name="raiseEvents">Optional boolean indicating whether or not to raise events</param> public void Delete(IGatewayProviderSettings gatewayProviderSettings, bool raiseEvents = true) { if (raiseEvents) { Deleting.RaiseEvent(new DeleteEventArgs <IGatewayProviderSettings>(gatewayProviderSettings), this); } // delete associated methods switch (gatewayProviderSettings.GatewayProviderType) { case GatewayProviderType.Payment: var paymentMethods = _paymentMethodService.GetPaymentMethodsByProviderKey(gatewayProviderSettings.Key).ToArray(); if (paymentMethods.Any()) { _paymentMethodService.Delete(paymentMethods); } break; case GatewayProviderType.Shipping: var shippingMethods = _shipMethodService.GetShipMethodsByProviderKey(gatewayProviderSettings.Key).ToArray(); if (shippingMethods.Any()) { _shipMethodService.Delete(shippingMethods); } break; case GatewayProviderType.Taxation: var taxMethods = _taxMethodService.GetTaxMethodsByProviderKey(gatewayProviderSettings.Key).ToArray(); if (taxMethods.Any()) { _taxMethodService.Delete(taxMethods); } break; case GatewayProviderType.Notification: var notificationMethods = _notificationMethodService.GetNotifcationMethodsByProviderKey(gatewayProviderSettings.Key).ToArray(); if (notificationMethods.Any()) { _notificationMethodService.Delete(notificationMethods); } break; } using (new WriteLock(Locker)) { var uow = UowProvider.GetUnitOfWork(); using (var repository = RepositoryFactory.CreateGatewayProviderRepository(uow)) { repository.Delete(gatewayProviderSettings); uow.Commit(); } } if (raiseEvents) { Deleted.RaiseEvent(new DeleteEventArgs <IGatewayProviderSettings>(gatewayProviderSettings), this); } }
/// <summary> /// Deactivates a <see cref="IGatewayProviderSettings"/> /// </summary> /// <param name="gatewayProviderSettings">The <see cref="IGatewayProviderSettings"/> to be deactivated</param> public void DeactivateProvider(IGatewayProviderSettings gatewayProviderSettings) { if (!gatewayProviderSettings.Activated) { return; } GatewayProviderService.Delete(gatewayProviderSettings); GatewayProviderResolver.RefreshCache(); }
public void FixtureSetup() { SqlSyntaxProviderTestHelper.EstablishSqlSyntax(); var cacheProvider = new Mock <IRuntimeCacheProvider>(); GatewayProviderService = new GatewayProviderService(); var providers = GatewayProviderService.GetAllGatewayProviders() .Where(x => x.GatewayProviderType == GatewayProviderType.Payment); GatewayProviderSettings = providers.FirstOrDefault(x => x.Key == new Guid("15C87B6F-7987-49D9-8444-A2B4406941A8")); if (GatewayProviderSettings != null) { GatewayProviderService.Delete(GatewayProviderSettings); } var petaPoco = new PetaPocoUnitOfWorkProvider(); var xLogin = ConfigurationManager.AppSettings["xlogin"]; var xtrankey = ConfigurationManager.AppSettings["xtrankey"]; var sql = new Sql(); var dto = new GatewayProviderSettingsDto() { Key = new Guid("15C87B6F-7987-49D9-8444-A2B4406941A8"), Name = "Stripe", Description = "Stripe", ExtendedData = "<extendedData />", EncryptExtendedData = false, ProviderTfKey = Constants.TypeFieldKeys.GatewayProvider.PaymentProviderKey, CreateDate = DateTime.Now, UpdateDate = DateTime.Now }; petaPoco.GetUnitOfWork().Database.Insert(dto); GatewayProviderSettings = GatewayProviderService.GetGatewayProviderByKey(new Guid("15C87B6F-7987-49D9-8444-A2B4406941A8")); var providerSettings = new StripeProcessorSettings() { // TODO //LoginId = xLogin, //TransactionKey = xtrankey }; GatewayProviderSettings.ExtendedData.SaveProcessorSettings(providerSettings); Provider = new StripePaymentGatewayProvider(GatewayProviderService, GatewayProviderSettings, cacheProvider.Object); }
public void FixtureSetup() { SqlSyntaxProviderTestHelper.EstablishSqlSyntax(); var cacheProvider = new Mock<IRuntimeCacheProvider>(); GatewayProviderService = new GatewayProviderService(); var providers = GatewayProviderService.GetAllGatewayProviders() .Where(x => x.GatewayProviderType == GatewayProviderType.Payment); GatewayProviderSettings = providers.FirstOrDefault(x => x.Key == new Guid("15C87B6F-7987-49D9-8444-A2B4406941A8")); if (GatewayProviderSettings != null) { GatewayProviderService.Delete(GatewayProviderSettings); } var petaPoco = new PetaPocoUnitOfWorkProvider(); var xLogin = ConfigurationManager.AppSettings["xlogin"]; var xtrankey = ConfigurationManager.AppSettings["xtrankey"]; var sql = new Sql(); var dto = new GatewayProviderSettingsDto() { Key = new Guid("15C87B6F-7987-49D9-8444-A2B4406941A8"), Name = "Stripe", Description = "Stripe", ExtendedData = "<extendedData />", EncryptExtendedData = false, ProviderTfKey = Constants.TypeFieldKeys.GatewayProvider.PaymentProviderKey, CreateDate = DateTime.Now, UpdateDate = DateTime.Now }; petaPoco.GetUnitOfWork().Database.Insert(dto); GatewayProviderSettings = GatewayProviderService.GetGatewayProviderByKey(new Guid("15C87B6F-7987-49D9-8444-A2B4406941A8")); var providerSettings = new StripeProcessorSettings() { // TODO //LoginId = xLogin, //TransactionKey = xtrankey }; GatewayProviderSettings.ExtendedData.SaveProcessorSettings(providerSettings); Provider = new StripePaymentGatewayProvider(GatewayProviderService, GatewayProviderSettings, cacheProvider.Object); }
/// <summary> /// Initializes a new instance of the <see cref="GatewayProviderBase"/> class. /// </summary> /// <param name="gatewayProviderService">The <see cref="IGatewayProviderService"/></param> /// <param name="gatewayProviderSettings">The <see cref="IGatewayProviderSettings"/></param> /// <param name="runtimeCacheProvider">Umbraco's <see cref="IRuntimeCacheProvider"/></param> protected GatewayProviderBase(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) { Mandate.ParameterNotNull(gatewayProviderService, "gatewayProviderService"); Mandate.ParameterNotNull(gatewayProviderSettings, "gatewayProvider"); Mandate.ParameterNotNull(runtimeCacheProvider, "runtimeCacheProvider"); _gatewayProviderService = gatewayProviderService; _gatewayProviderSettings = gatewayProviderSettings; _runtimeCache = runtimeCacheProvider; }
/// <summary> /// Initializes a new instance of the <see cref="GatewayProviderBase"/> class. /// </summary> /// <param name="gatewayProviderService">The <see cref="IGatewayProviderService"/></param> /// <param name="gatewayProviderSettings">The <see cref="IGatewayProviderSettings"/></param> /// <param name="runtimeCacheProvider">Umbraco's <see cref="IRuntimeCacheProvider"/></param> protected GatewayProviderBase(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) { Mandate.ParameterNotNull(gatewayProviderService, "gatewayProviderService"); Mandate.ParameterNotNull(gatewayProviderSettings, "gatewayProvider"); Mandate.ParameterNotNull(runtimeCacheProvider, "runtimeCacheProvider"); _gatewayProviderService = gatewayProviderService; _gatewayProviderSettings = gatewayProviderSettings; _runtimeCache = runtimeCacheProvider; }
internal static IGatewayProviderSettings ToGatewayProvider(this GatewayProviderDisplay gatewayProvider, IGatewayProviderSettings destination) { if (gatewayProvider.Key != Guid.Empty) destination.Key = gatewayProvider.Key; // type key and typeFullName should be handled by the resolver destination.Name = gatewayProvider.Name; destination.Description = gatewayProvider.Description; destination.EncryptExtendedData = gatewayProvider.EncryptExtendedData; ((GatewayProviderSettings)destination).ExtendedData = gatewayProvider.ExtendedData.AsExtendedDataCollection(); return destination; }
public UspsShippingGatewayMethod(IGatewayResource gatewayResource, IShipMethod shipMethod, IShipCountry shipCountry, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCache) : base(gatewayResource, shipMethod, shipCountry) { _processorSettings = gatewayProviderSettings.ExtendedData.GetProcessorSettings(); _shipMethod = shipMethod; _runtimeCache = runtimeCache; _gatewayProviderSettings = gatewayProviderSettings; // Express Mail Hold For Pickup ServiceLookup[2] = new[] { new UspsDeliveryOption(2, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Express Mail Flat-Rate Envelope Hold For Pickup ServiceLookup[27] = new[] { new UspsDeliveryOption(27, 12.5M, 9.5M, 0.75M, Decimal.MaxValue, 70) }; // Express Mail ServiceLookup[3] = new[] { new UspsDeliveryOption(3, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Express Mail Flat-Rate Envelope ServiceLookup[13] = new[] { new UspsDeliveryOption(13, 12.5M, 9.5M, 0.75M, Decimal.MaxValue, 70) }; // Priority Mail ServiceLookup[1] = new[] { new UspsDeliveryOption(1, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Priority Mail Flat-Rate Envelope ServiceLookup[16] = new[] { new UspsDeliveryOption(16, 12.5M, 9.5M, 0.75M, Decimal.MaxValue, 70) }; // Priority Mail Small Flat-Rate Box ServiceLookup[28] = new[] { new UspsDeliveryOption(28, 5.375M, 8.625M, 1.675M, Decimal.MaxValue, 70) }; // Priority Mail Regular/Medium Flat-Rate Boxes ServiceLookup[17] = new[] { new UspsDeliveryOption(17, 11.875M, 13.625M, 3.375M, Decimal.MaxValue, 70), new UspsDeliveryOption(17, 11M, 8.5M, 5.5M, Decimal.MaxValue, 70) }; // Priority Mail Large Flat-Rate Box ServiceLookup[22] = new[] { new UspsDeliveryOption(22, 12, 12, 5.5M, Decimal.MaxValue, 70) }; // Parcel Post ServiceLookup[4] = new[] { new UspsDeliveryOption(4, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Bound Printed Matter ServiceLookup[5] = new[] { new UspsDeliveryOption(5, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Media Mail ServiceLookup[6] = new[] { new UspsDeliveryOption(6, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Library Mail ServiceLookup[7] = new[] { new UspsDeliveryOption(7, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; }
public UspsShippingGatewayMethod(IGatewayResource gatewayResource, IShipMethod shipMethod, IShipCountry shipCountry, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCache) : base(gatewayResource, shipMethod, shipCountry) { _processorSettings = gatewayProviderSettings.ExtendedData.GetProcessorSettings(); _shipMethod = shipMethod; _runtimeCache = runtimeCache; _gatewayProviderSettings = gatewayProviderSettings; // Express Mail Hold For Pickup ServiceLookup[2] = new[] { new UspsDeliveryOption(2, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Express Mail Flat-Rate Envelope Hold For Pickup ServiceLookup[27] = new[] { new UspsDeliveryOption(27, 12.5M, 9.5M, 0.75M, Decimal.MaxValue, 70) }; // Express Mail ServiceLookup[3] = new[] { new UspsDeliveryOption(3, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Express Mail Flat-Rate Envelope ServiceLookup[13] = new[] { new UspsDeliveryOption(13, 12.5M, 9.5M, 0.75M, Decimal.MaxValue, 70) }; // Priority Mail ServiceLookup[1] = new[] { new UspsDeliveryOption(1, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Priority Mail Flat-Rate Envelope ServiceLookup[16] = new[] { new UspsDeliveryOption(16, 12.5M, 9.5M, 0.75M, Decimal.MaxValue, 70) }; // Priority Mail Small Flat-Rate Box ServiceLookup[28] = new[] { new UspsDeliveryOption(28, 5.375M, 8.625M, 1.675M, Decimal.MaxValue, 70) }; // Priority Mail Regular/Medium Flat-Rate Boxes ServiceLookup[17] = new[] { new UspsDeliveryOption(17, 11.875M, 13.625M, 3.375M, Decimal.MaxValue, 70), new UspsDeliveryOption(17, 11M, 8.5M, 5.5M, Decimal.MaxValue, 70) }; // Priority Mail Large Flat-Rate Box ServiceLookup[22] = new[] { new UspsDeliveryOption(22, 12, 12, 5.5M, Decimal.MaxValue, 70) }; // Parcel Post ServiceLookup[4] = new[] { new UspsDeliveryOption(4, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Bound Printed Matter ServiceLookup[5] = new[] { new UspsDeliveryOption(5, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Media Mail ServiceLookup[6] = new[] { new UspsDeliveryOption(6, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; // Library Mail ServiceLookup[7] = new[] { new UspsDeliveryOption(7, Decimal.MaxValue, Decimal.MaxValue, Decimal.MaxValue, 108, 70) }; }
// TODO refactor this /// <summary> /// The toggle provider activation. /// </summary> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="gatewayProviderType"> /// The gateway provider type. /// </param> private void ToggleProviderActivation(IGatewayProviderSettings gatewayProviderSettings, GatewayProviderType gatewayProviderType) { switch (gatewayProviderType) { case GatewayProviderType.Notification: if (gatewayProviderSettings.Activated) { _gatewayContext.Notification.DeactivateProvider(gatewayProviderSettings); } else { _gatewayContext.Notification.ActivateProvider(gatewayProviderSettings); } break; case GatewayProviderType.Payment: if (gatewayProviderSettings.Activated) { _gatewayContext.Payment.DeactivateProvider(gatewayProviderSettings); } else { _gatewayContext.Payment.ActivateProvider(gatewayProviderSettings); } break; case GatewayProviderType.Shipping: if (gatewayProviderSettings.Activated) { _gatewayContext.Shipping.DeactivateProvider(gatewayProviderSettings); } else { _gatewayContext.Shipping.ActivateProvider(gatewayProviderSettings); } break; case GatewayProviderType.Taxation: if (gatewayProviderSettings.Activated) { _gatewayContext.Taxation.DeactivateProvider(gatewayProviderSettings); } else { _gatewayContext.Taxation.ActivateProvider(gatewayProviderSettings); } break; } }
/// <summary> /// Saves the provider settings. /// </summary> /// <param name="record"> /// The record. /// </param> /// <param name="provider"> /// The provider. /// </param> /// <param name="settings"> /// The settings. /// </param> internal static void SaveProviderSettings(this IGatewayProviderSettings record, PaymentGatewayProviderBase provider, IPaymentProviderSettings settings) { var att = provider.ProviderSettingsMapping(); if (att == null) { return; } if (settings.GetType() == att.SettingsType) { var jsonSerializerSettings = new JsonSerializerSettings { ContractResolver = new CamelCasePropertyNamesContractResolver() }; var json = JsonConvert.SerializeObject(settings, Formatting.None, jsonSerializerSettings); record.ExtendedData.SetValue(att.Key, json); } }
/// <summary> /// Saves a single instance of a <see cref="IGatewayProviderSettings"/> /// </summary> /// <param name="gatewayProviderSettings"></param> /// <param name="raiseEvents">Optional boolean indicating whether or not to raise events</param> public void Save(IGatewayProviderSettings gatewayProviderSettings, bool raiseEvents = true) { if (raiseEvents) { Saving.RaiseEvent(new SaveEventArgs <IGatewayProviderSettings>(gatewayProviderSettings), this); } using (new WriteLock(Locker)) { var uow = UowProvider.GetUnitOfWork(); using (var repository = RepositoryFactory.CreateGatewayProviderRepository(uow)) { repository.AddOrUpdate(gatewayProviderSettings); uow.Commit(); } if (raiseEvents) { Saved.RaiseEvent(new SaveEventArgs <IGatewayProviderSettings>(gatewayProviderSettings), this); } } }
public StripePaymentGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, Umbraco.Core.Cache.IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
public UPSShippingGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProvider, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProvider, runtimeCacheProvider) { _processorSettings = base.GatewayProviderSettings.ExtendedData.GetProcessorSettings(); }
/// <summary> /// Initializes a new instance of the <see cref="SampleShippingGatewayProvider"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The <see cref="IGatewayProviderService"/>. /// </param> /// <param name="gatewayProviderSettings"> /// The <see cref="IGatewayProviderSettings"/>. /// </param> /// <param name="runtimeCacheProvider"> /// Umbraco's <see cref="IRuntimeCacheProvider"/>. /// </param> public SampleShippingGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
/// <summary> /// Saves a single instance of a <see cref="IGatewayProviderSettings"/> /// </summary> /// <param name="gatewayProviderSettings"></param> /// <param name="raiseEvents">Optional boolean indicating whether or not to raise events</param> public void Save(IGatewayProviderSettings gatewayProviderSettings, bool raiseEvents = true) { if (raiseEvents) Saving.RaiseEvent(new SaveEventArgs<IGatewayProviderSettings>(gatewayProviderSettings), this); using (new WriteLock(Locker)) { var uow = _uowProvider.GetUnitOfWork(); using (var repository = _repositoryFactory.CreateGatewayProviderRepository(uow)) { repository.AddOrUpdate(gatewayProviderSettings); uow.Commit(); } if (raiseEvents) Saved.RaiseEvent(new SaveEventArgs<IGatewayProviderSettings>(gatewayProviderSettings), this); } }
public void TestFixtureSetup() { SqlSyntaxProviderTestHelper.EstablishSqlSyntax(); var cacheProvider = new Mock <IRuntimeCacheProvider>(); GatewayProviderService = new GatewayProviderService(); var providers = GatewayProviderService.GetAllGatewayProviders() .Where(x => x.GatewayProviderType == GatewayProviderType.Payment); GatewayProviderSettings = providers.FirstOrDefault(x => x.Key == new Guid("D584F356-454B-4D14-BE44-13D9D25D6A74")); if (GatewayProviderSettings != null) { GatewayProviderService.Delete(GatewayProviderSettings); } var petaPoco = new PetaPocoUnitOfWorkProvider(); var merchantId = ConfigurationManager.AppSettings["merchantId"]; var bin = ConfigurationManager.AppSettings["bin"]; var username = ConfigurationManager.AppSettings["username"]; var password = ConfigurationManager.AppSettings["password"]; var sql = new Sql(); var dto = new GatewayProviderSettingsDto() { Key = new Guid("D584F356-454B-4D14-BE44-13D9D25D6A74"), Name = "Chase", Description = "Chase", ExtendedData = "<extendedData />", EncryptExtendedData = false, ProviderTfKey = Constants.TypeFieldKeys.GatewayProvider.PaymentProviderKey, CreateDate = DateTime.Now, UpdateDate = DateTime.Now }; petaPoco.GetUnitOfWork().Database.Insert(dto); GatewayProviderSettings = GatewayProviderService.GetGatewayProviderByKey(new Guid("D584F356-454B-4D14-BE44-13D9D25D6A74")); var providerSettings = new ChaseProcessorSettings() { MerchantId = merchantId, Bin = bin, Username = username, Password = password }; GatewayProviderSettings.ExtendedData.SaveProcessorSettings(providerSettings); Provider = new ChasePaymentGatewayProvider(GatewayProviderService, GatewayProviderSettings, cacheProvider.Object); //TestCustomer = MerchelloContext.Current.Services.CustomerService.CreateCustomerWithKey( // Guid.NewGuid().ToString(), // "debug", // "debug", // "*****@*****.**"); }
/// <summary> /// Initializes a new instance of the <see cref="BraintreePaymentGatewayProvider"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The gateway provider service. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="runtimeCacheProvider"> /// The runtime cache provider. /// </param> public BraintreePaymentGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, Umbraco.Core.Cache.IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
/// <summary> /// Initializes a new instance of the <see cref="FoaShippingGatewayMethod"/> class. /// </summary> /// <param name="gatewayResource"> /// The gateway resource. /// </param> /// <param name="shipMethod"> /// The ship method. /// </param> /// <param name="shipCountry"> /// The ship country. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> public FoaShippingGatewayMethod(IGatewayResource gatewayResource, IShipMethod shipMethod, IShipCountry shipCountry, IGatewayProviderSettings gatewayProviderSettings) : base(gatewayResource, shipMethod, shipCountry) { _processorSettings = gatewayProviderSettings.ExtendedData.GetProcessorSettings(); _shipMethod = shipMethod; }
// TODO refactor this private void ToggleProviderActivation(IGatewayProviderSettings gatewayProviderSettings, GatewayProviderType gatewayProviderType) { switch (gatewayProviderType) { case GatewayProviderType.Payment: if (gatewayProviderSettings.Activated) _gatewayContext.Payment.DeactivateProvider(gatewayProviderSettings); else _gatewayContext.Payment.ActivateProvider(gatewayProviderSettings); break; case GatewayProviderType.Shipping: if (gatewayProviderSettings.Activated) _gatewayContext.Shipping.DeactivateProvider(gatewayProviderSettings); else _gatewayContext.Shipping.ActivateProvider(gatewayProviderSettings); break; case GatewayProviderType.Taxation: if (gatewayProviderSettings.Activated) _gatewayContext.Taxation.DeactivateProvider(gatewayProviderSettings); else _gatewayContext.Taxation.ActivateProvider(gatewayProviderSettings); break; } }
/// <summary> /// Initializes a new instance of the <see cref="BraintreePaymentGatewayProvider"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The gateway provider service. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="runtimeCacheProvider"> /// The runtime cache provider. /// </param> public BraintreePaymentGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, Umbraco.Core.Cache.IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { _braintreeApiService = new BraintreeApiService(gatewayProviderSettings.ExtendedData.GetBrainTreeProviderSettings()); }
/// <summary> /// Initializes a new instance of the <see cref="BraintreePaymentGatewayProvider"/> class. /// </summary> /// <param name="gatewayProviderService"> /// The gateway provider service. /// </param> /// <param name="gatewayProviderSettings"> /// The gateway provider settings. /// </param> /// <param name="runtimeCacheProvider"> /// The runtime cache provider. /// </param> public BraintreePaymentGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, Umbraco.Core.Cache.IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { _braintreeApiService = new BraintreeApiService(gatewayProviderSettings.ExtendedData.GetBrainTreeProviderSettings()); }
public UspsShippingGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { _runtimeCache = runtimeCacheProvider; }
public UPSShippingGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProvider, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProvider, runtimeCacheProvider) { _processorSettings = base.GatewayProviderSettings.ExtendedData.GetProcessorSettings(); }
public void TestFixtureSetup() { SqlSyntaxProviderTestHelper.EstablishSqlSyntax(); var cacheProvider = new Mock<IRuntimeCacheProvider>(); GatewayProviderService = new GatewayProviderService(); var providers = GatewayProviderService.GetAllGatewayProviders() .Where(x => x.GatewayProviderType == GatewayProviderType.Payment); GatewayProviderSettings = providers.FirstOrDefault(x => x.Key == new Guid("D584F356-454B-4D14-BE44-13D9D25D6A74")); if (GatewayProviderSettings != null) { GatewayProviderService.Delete(GatewayProviderSettings); } var petaPoco = new PetaPocoUnitOfWorkProvider(); var merchantId = ConfigurationManager.AppSettings["merchantId"]; var bin = ConfigurationManager.AppSettings["bin"]; var username = ConfigurationManager.AppSettings["username"]; var password = ConfigurationManager.AppSettings["password"]; var sql = new Sql(); var dto = new GatewayProviderSettingsDto() { Key = new Guid("D584F356-454B-4D14-BE44-13D9D25D6A74"), Name = "Chase", Description = "Chase", ExtendedData = "<extendedData />", EncryptExtendedData = false, ProviderTfKey = Constants.TypeFieldKeys.GatewayProvider.PaymentProviderKey, CreateDate = DateTime.Now, UpdateDate = DateTime.Now }; petaPoco.GetUnitOfWork().Database.Insert(dto); GatewayProviderSettings = GatewayProviderService.GetGatewayProviderByKey(new Guid("D584F356-454B-4D14-BE44-13D9D25D6A74")); var providerSettings = new ChaseProcessorSettings() { MerchantId = merchantId, Bin = bin, Username = username, Password = password }; GatewayProviderSettings.ExtendedData.SaveProcessorSettings(providerSettings); Provider = new ChasePaymentGatewayProvider(GatewayProviderService, GatewayProviderSettings, cacheProvider.Object); //TestCustomer = MerchelloContext.Current.Services.CustomerService.CreateCustomerWithKey( // Guid.NewGuid().ToString(), // "debug", // "debug", // "*****@*****.**"); }
/// <summary> /// Deletes a <see cref="IGatewayProviderSettings"/> /// </summary> /// <param name="gatewayProviderSettings"></param> /// <param name="raiseEvents">Optional boolean indicating whether or not to raise events</param> public void Delete(IGatewayProviderSettings gatewayProviderSettings, bool raiseEvents = true) { if (raiseEvents) Deleting.RaiseEvent(new DeleteEventArgs<IGatewayProviderSettings>(gatewayProviderSettings), this); // delete associated methods switch (gatewayProviderSettings.GatewayProviderType) { case GatewayProviderType.Payment: var paymentMethods = _paymentMethodService.GetPaymentMethodsByProviderKey(gatewayProviderSettings.Key).ToArray(); if(paymentMethods.Any()) _paymentMethodService.Delete(paymentMethods); break; case GatewayProviderType.Shipping: var shippingMethods = _shipMethodService.GetShipMethodsByProviderKey(gatewayProviderSettings.Key).ToArray(); if(shippingMethods.Any()) _shipMethodService.Delete(shippingMethods); break; case GatewayProviderType.Taxation: var taxMethods = _taxMethodService.GetTaxMethodsByProviderKey(gatewayProviderSettings.Key).ToArray(); if(taxMethods.Any()) _taxMethodService.Delete(taxMethods); break; } using (new WriteLock(Locker)) { var uow = _uowProvider.GetUnitOfWork(); using (var repository = _repositoryFactory.CreateGatewayProviderRepository(uow)) { repository.Delete(gatewayProviderSettings); uow.Commit(); } } if (raiseEvents) Deleted.RaiseEvent(new DeleteEventArgs<IGatewayProviderSettings>(gatewayProviderSettings), this); }
internal static GatewayProviderDisplay ToGatewayProviderDisplay(this IGatewayProviderSettings gatewayProviderSettings) { return(AutoMapper.Mapper.Map <GatewayProviderDisplay>(gatewayProviderSettings)); }
protected NotificationGatewayProviderBase(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
public FoaShippingGatewayProvider(IGatewayProviderService gatewayProviderService, IGatewayProviderSettings gatewayProviderSettings, IRuntimeCacheProvider runtimeCacheProvider) : base(gatewayProviderService, gatewayProviderSettings, runtimeCacheProvider) { }
internal static IGatewayProviderSettings ToGatewayProvider(this GatewayProviderDisplay gatewayProvider, IGatewayProviderSettings destination) { if (gatewayProvider.Key != Guid.Empty) { destination.Key = gatewayProvider.Key; } // type key and typeFullName should be handled by the resolver destination.Name = gatewayProvider.Name; destination.Description = gatewayProvider.Description; destination.EncryptExtendedData = gatewayProvider.EncryptExtendedData; ((GatewayProviderSettings)destination).ExtendedData = gatewayProvider.ExtendedData.AsExtendedDataCollection(); return(destination); }