/// <summary> /// Gets the default tax provider. /// </summary> /// <returns></returns> public static ITaxProvider GetDefaultTaxProvider() { DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); TaxServiceSettings taxServiceSettings = databaseConfigurationProvider.FetchConfigurationByName(TaxServiceSettings.SECTION_NAME) as TaxServiceSettings; string defaultTaxProviderName = taxServiceSettings.DefaultProvider; if (String.IsNullOrEmpty(defaultTaxProviderName)) return null; ProviderSettings ps = taxServiceSettings.ProviderSettingsCollection[defaultTaxProviderName]; ITaxProvider taxProvider = Activator.CreateInstance(Type.GetType(ps.Type), ps.Arguments) as ITaxProvider; Validator.ValidateObjectIsNotNull(taxProvider, TAX_PROVIDER); return taxProvider; }
/// <summary> /// Removes the shipping provider. /// </summary> /// <param name="providerName">Name of the provider.</param> public static void RemoveShippingProvider(string providerName, string userName) { Validator.ValidateStringArgumentIsNotNullOrEmptyString(providerName, PROVIDER_NAME); DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); ShippingServiceSettings shippingServiceSettings = databaseConfigurationProvider.FetchConfigurationByName(ShippingServiceSettings.SECTION_NAME) as ShippingServiceSettings; if(providerName == shippingServiceSettings.DefaultProvider) { throw new InvalidOperationException(Strings.ResourceManager.GetString("UnableToDeleteDefaultProvider")); } ProviderSettings providerSettings = shippingServiceSettings.ProviderSettingsCollection.Find(delegate(ProviderSettings theProviderSettings) {return theProviderSettings.Name == providerName;}); if(providerSettings != null) { shippingServiceSettings.ProviderSettingsCollection.Remove(providerSettings); databaseConfigurationProvider.SaveConfiguration(ShippingServiceSettings.SECTION_NAME, shippingServiceSettings, userName); } }
/// <summary> /// Loads the providers. /// </summary> private void LoadProviders() { DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); ShippingServiceSettings shippingServiceSettings = databaseConfigurationProvider.FetchConfigurationByName(ShippingServiceSettings.SECTION_NAME) as ShippingServiceSettings; IShippingProvider shippingProvider = null; Type type = null; foreach (ProviderSettings providerSettings in shippingServiceSettings.ProviderSettingsCollection) { type = Type.GetType(providerSettings.Type); shippingProvider = Activator.CreateInstance(type, providerSettings.Arguments) as IShippingProvider; Validator.ValidateObjectIsNotNull(shippingProvider, SHIPPING_PROVIDER); _shippingProviderCollection.Add(shippingProvider); } }
/// <summary> /// Fetches the shipping service settings. /// </summary> /// <returns></returns> private static ShippingServiceSettings FetchShippingServiceSettings() { DatabaseConfigurationProvider _databaseConfigurationProvider = new DatabaseConfigurationProvider(); ShippingServiceSettings shippingServiceSettings = _databaseConfigurationProvider.FetchConfigurationByName(ShippingServiceSettings.SECTION_NAME) as ShippingServiceSettings; return shippingServiceSettings; }
/// <summary> /// Sets the default shipping provider. /// </summary> /// <param name="defaultTaxProvider">The default tax provider.</param> /// <returns></returns> public static int SetDefaultShippingProvider(string defaultShippingProvider, string userName) { Validator.ValidateStringArgumentIsNotNullOrEmptyString(defaultShippingProvider, DEFAULT_SHIPPING_PROVIDER); DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); ShippingServiceSettings shippingServiceSettings = databaseConfigurationProvider.FetchConfigurationByName(ShippingServiceSettings.SECTION_NAME) as ShippingServiceSettings; shippingServiceSettings.DefaultProvider = defaultShippingProvider; int id = databaseConfigurationProvider.SaveConfiguration(ShippingServiceSettings.SECTION_NAME, shippingServiceSettings, userName); return id; }
/// <summary> /// Loads this instance. /// </summary> /// <returns></returns> public static SiteSettings Load() { try { DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); SiteSettings siteSettings = databaseConfigurationProvider.FetchConfigurationByName(SiteSettings.SECTION_NAME) as SiteSettings; return siteSettings; } catch(Exception ex) { throw new Exception("Please make sure that you setup the Database, and the Connection String in the connectionString.config file."); } }
/// <summary> /// Fetches the payment service settings. /// </summary> /// <returns></returns> private static PaymentServiceSettings FetchPaymentServiceSettings() { DatabaseConfigurationProvider _databaseConfigurationProvider = new DatabaseConfigurationProvider(); PaymentServiceSettings paymentServiceSettings = _databaseConfigurationProvider.FetchConfigurationByName(PaymentServiceSettings.SECTION_NAME) as PaymentServiceSettings; return paymentServiceSettings; }
/// <summary> /// Sets the default payment provider. /// </summary> /// <param name="defaultPaymentProvider">The default payment provider.</param> /// <returns></returns> public static int SetDefaultPaymentProvider(string defaultPaymentProvider, string userName) { Validator.ValidateStringArgumentIsNotNullOrEmptyString(defaultPaymentProvider, DEFAULT_PAYMENT_PROVIDER); DatabaseConfigurationProvider _databaseConfigurationProvider = new DatabaseConfigurationProvider(); PaymentServiceSettings paymentServiceSettings = _databaseConfigurationProvider.FetchConfigurationByName(PaymentServiceSettings.SECTION_NAME) as PaymentServiceSettings; paymentServiceSettings.DefaultProvider = defaultPaymentProvider; int id = _databaseConfigurationProvider.SaveConfiguration(PaymentServiceSettings.SECTION_NAME, paymentServiceSettings, userName); return id; }
/// <summary> /// Loads this instance. /// </summary> /// <returns></returns> public static MailSettings Load() { DatabaseConfigurationProvider databaseConfigurationprovider = new DatabaseConfigurationProvider(); MailSettings mailSettings = databaseConfigurationprovider.FetchConfigurationByName(MailSettings.SECTION_NAME) as MailSettings; return mailSettings; }
/// <summary> /// Loads the providers. /// </summary> private void LoadProviders() { DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); TaxServiceSettings taxServiceSettings = databaseConfigurationProvider.FetchConfigurationByName(TaxServiceSettings.SECTION_NAME) as TaxServiceSettings; ITaxProvider taxProvider = null; Type type = null; foreach (ProviderSettings providerSettings in taxServiceSettings.ProviderSettingsCollection) { //We only want to load the defaultProvider if (taxServiceSettings.DefaultProvider == providerSettings.Name) { type = Type.GetType(providerSettings.Type); taxProvider = Activator.CreateInstance(type, providerSettings.Arguments) as ITaxProvider; Validator.ValidateObjectIsNotNull(taxProvider, TAX_PROVIDER); _taxProviderCollection.Add(taxProvider); } } }
/// <summary> /// Fetches the tax service settings. /// </summary> /// <returns></returns> private static TaxServiceSettings FetchTaxServiceSettings() { DatabaseConfigurationProvider _databaseConfigurationProvider = new DatabaseConfigurationProvider(); TaxServiceSettings taxServiceSettings = _databaseConfigurationProvider.FetchConfigurationByName(TaxServiceSettings.SECTION_NAME) as TaxServiceSettings; return taxServiceSettings; }
/// <summary> /// Sets the default tax provider. /// </summary> /// <param name="defaultTaxProvider">The default tax provider.</param> /// <returns></returns> public static int SetDefaultTaxProvider(string defaultTaxProvider, string userName) { Validator.ValidateStringArgumentIsNotNullOrEmptyString(defaultTaxProvider, DEFAULT_TAX_PROVIDER); DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); TaxServiceSettings taxServiceSettings = databaseConfigurationProvider.FetchConfigurationByName(TaxServiceSettings.SECTION_NAME) as TaxServiceSettings; taxServiceSettings.DefaultProvider = defaultTaxProvider; int id = databaseConfigurationProvider.SaveConfiguration(TaxServiceSettings.SECTION_NAME, taxServiceSettings, userName); return id; }