Beispiel #1
0
        /// <summary>
        /// Constructs a new instance of <see cref="NFigSettingsWithStore{TSettings,TTier,TDataCenter}"/>.
        /// </summary>
        /// <param name="settings">Settings used by the application.</param>
        /// <param name="store"><see cref="NFigStore{TSettings,TTier,TDataCenter}"/> used by the application.</param>
        public NFigSettingsWithStore(TSettings settings, NFigStore <TSettings, TTier, TDataCenter> store)
        {
            Settings = settings;
            Store    = store;

            _changeToken = new NFigChangeToken();
        }
        public static string GetSettingsJson <TSettings, TTier, TDataCenter>(
            this NFigStore <TSettings, TTier, TDataCenter> store,
            string applicationName,
            TTier currentTier,
            TDataCenter currentDataCenter,
            IList <TDataCenter> availableDataCenters)
            where TTier : struct
            where TDataCenter : struct
            where TSettings : class, INFigSettings <TTier, TDataCenter>, new()
        {
            if (store == null)
            {
                throw new ArgumentNullException(nameof(store));
            }

            var infos = store.GetAllSettingInfos(applicationName);

            return(JSON.Serialize(
                       new SettingsJsonModel <TTier, TDataCenter>(
                           currentTier,
                           currentDataCenter,
                           infos,
                           availableDataCenters),
                       s_jsonOptions));
        }
 public static string GetSettingJson <TSettings, TTier, TDataCenter>(
     this NFigStore <TSettings, TTier, TDataCenter> store,
     string applicationName,
     string settingName,
     TTier tier,
     TDataCenter dataCenter,
     IList <TDataCenter> availableDataCenters)
     where TTier : struct
     where TDataCenter : struct
     where TSettings : class, INFigSettings <TTier, TDataCenter>, new()
 {
     return(JSON.Serialize(
                new SettingsJsonModel <TTier, TDataCenter> .Setting(
                    tier,
                    dataCenter,
                    store.GetSettingInfo(applicationName, settingName),
                    availableDataCenters),
                s_jsonOptions));
 }