コード例 #1
0
        public void WriteSettingsTest()
        {
            var srv = new UserSettingsService();

            var setts1 = new SettsMock1()
            {
                Field1 = "AAA",
                Field2 = 10
            };

            var setts2 = new SettsMock2()
            {
                Field1 = "BBB",
                Field3 = 12.5,
                Field4 = true
            };

            var res1 = new StringBuilder();
            var res2 = new StringBuilder();

            srv.StoreSettings(setts1, new StringWriter(res1));
            srv.StoreSettings(setts2, new StringWriter(res2));

            Assert.AreEqual("{\"Field1\":\"AAA\",\"Field2\":10.0}", res1.ToString());
            Assert.AreEqual("{\"Field1\":\"BBB\",\"Field3\":12.5,\"Field4\":true,\"__version\":\"2.1.0\"}", res2.ToString());
        }
コード例 #2
0
        public void WriteSettingsTest()
        {
            var srv = new UserSettingsService(m_ServHelper.WorkingDir,
                                              new UserSettingsAttribute("SettsStorage", true));

            var setts1 = new SettsMock1()
            {
                Field1 = "AAA",
                Field2 = 10
            };

            var setts2 = new SettsMock2()
            {
                Field1 = "BBB",
                Field3 = 12.5,
                Field4 = true
            };

            var settsFile1 = Path.Combine(m_ServHelper.WorkingDir, "SettsStorage", "mock1.setts");
            var settsFile2 = Path.Combine(m_ServHelper.WorkingDir, "SettsStorage", "mock2.setts");

            srv.StoreSettings(setts1, "mock1");
            srv.StoreSettings(setts2, "mock2");

            Assert.IsTrue(File.Exists(settsFile1));
            Assert.IsTrue(File.Exists(settsFile2));
            Assert.AreEqual("{\"Field1\":\"AAA\",\"Field2\":10.0,\"__version\":\"0.0\"}", File.ReadAllText(settsFile1));
            Assert.AreEqual("{\"Field1\":\"BBB\",\"Field3\":12.5,\"Field4\":true,\"__version\":\"2.1.0\"}", File.ReadAllText(settsFile2));
        }
コード例 #3
0
        public void CustomConverterDerivedTypeTest()
        {
            var srv = new UserSettingsService();

            var setts = new SettsMock4()
            {
                Obj = new ObjectType2()
                {
                    Value = "XYZ"
                }
            };

            var res1 = new StringBuilder();

            var ser = new BaseValueSerializer <IObjectType>(x => x.Value, x => new ObjectType2()
            {
                Value = x
            });

            srv.StoreSettings(setts, new StringWriter(res1), ser);
            var res2 = srv.ReadSettings <SettsMock4>(new StringReader("{\"Obj\":\"ABC\"}"), ser);

            Assert.AreEqual("{\"Obj\":\"XYZ\"}", res1.ToString());
            Assert.AreEqual("ABC", res2.Obj.Value);
        }
コード例 #4
0
        private void OnStreamWriteAvailable(IXDocument doc)
        {
            if (m_HasChanges)
            {
                m_Logger.Log("Storing QR code data", LoggerMessageSeverity_e.Debug);

                try
                {
                    using (var stream = m_Drawing.OpenStream(STREAM_NAME, AccessType_e.Write))
                    {
                        using (var writer = new StreamWriter(stream))
                        {
                            m_Serializer.StoreSettings(QrCodes,
                                                       writer, new PictureValueSerializer(m_Logger, m_Drawing));
                        }
                    }

                    m_HasChanges = false;
                }
                catch (Exception ex)
                {
                    m_Logger.Log(ex);
                }
            }
        }
コード例 #5
0
        public void SaveJobToFile(BatchJob job, string filePath)
        {
            var svc = new UserSettingsService();

            svc.StoreSettings(job, filePath);

            AppendRecentFiles(filePath);
        }
コード例 #6
0
        //---

        public static void StoreSettings()
        {
            //--- store
            var svc = new UserSettingsService();

            var userSetts = new UserSettings();

            svc.StoreSettings(userSetts,
                              Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData),
                                           "my-app-settings.json"));

            //---
        }
コード例 #7
0
        public void CustomConverterAndVersionTest()
        {
            var srv = new UserSettingsService();

            var setts = new SettsMock2()
            {
                Field1 = ""
            };

            var res1 = new StringBuilder();

            var ser = new BaseValueSerializer <string>(x => "ABC", x => "XYZ");

            srv.StoreSettings(setts, new StringWriter(res1), ser);
            var res2 = srv.ReadSettings <SettsMock2>(new StringReader("{\"Field1\":\"ABC\",\"Field3\":0.0,\"Field4\":false,\"__version\":\"2.1.0\"}"), ser);

            Assert.AreEqual("{\"Field1\":\"ABC\",\"Field3\":0.0,\"Field4\":false,\"__version\":\"2.1.0\"}", res1.ToString());
            Assert.AreEqual("XYZ", res2.Field1);
        }
コード例 #8
0
ファイル: SettingsProvider.cs プロジェクト: reikus/cad-plus
 public void SaveSettings(ToolbarSettings setts)
 {
     m_UserSettsSrv.StoreSettings(setts,
                                  Path.Combine(Locations.AppDirectoryPath, Settings.Default.XToolbarSettingsFile));
 }
コード例 #9
0
 public void SaveToolbar(CustomToolbarInfo toolbar, string toolbarSpecFilePath)
 {
     m_UserSettsSrv.StoreSettings(toolbar, toolbarSpecFilePath);
 }