Beispiel #1
0
        static TagsContainer()
        {
            HierarchicalObjectCrutch.Register(typeof(TagsContainer));
            HierarchicalObjectCrutch.Register(typeof(TagSynonyms));

            Current = HierarchicalObject.FromFile(StringConstants.TagSynonymsFileName)[0];
        }
        public void Compare_nested_structs()
        {
            for (var i = 0; i < 10; i++)
            {
                var one = new HierarchicalObject {
                    NestedStructField            = _fixture.Create <NestedStruct>(),
                    NestedNullableStructProperty = _fixture.Create <NestedStruct>()
                };

                var other = new HierarchicalObject {
                    NestedStructField            = _fixture.Create <NestedStruct>(),
                    NestedNullableStructProperty = _fixture.Create <NestedStruct>()
                };

                var expectedHashX  = one.GetHashCode();
                var expectedHashY  = other.GetHashCode();
                var expectedEquals = one.Equals(other);

                var hashX  = _comparer.GetHashCode(one);
                var hashY  = _comparer.GetHashCode(other);
                var equals = _comparer.Equals(one, other);

                using (new AssertionScope()) {
                    equals.Should().Be(expectedEquals);
                    hashX.Should().Be(expectedHashX);
                    hashY.Should().Be(expectedHashY);
                }
            }
        }
Beispiel #3
0
        public void SaveToFile()
        {
            var filename = StringConstants.SessionsFolder + this.Id + ".xml";
            var hData    = new HierarchicalObject(filename);

            hData[0] = this;
            hData.SaveToFile();
        }
Beispiel #4
0
        private static void Save()
        {
            var hData = new HierarchicalObject(StringConstants.AdTextSettingsFileName);

            hData[0] = Interval;
            hData[1] = ValuePosition;
            hData[2] = IsAllow;
            hData.SaveToFile();
        }
Beispiel #5
0
        public static void Reload(VkApi vk)
        {
            var hData = HierarchicalObject.FromFile(StringConstants.AdTextSettingsFileName);

            Interval      = hData[0];
            ValuePosition = hData[1];
            IsAllow       = hData[2];
            AllAdTexts    = Utils.LoadStringData(StringConstants.AdTextValuesFileName);
        }
Beispiel #6
0
        private static void Save()
        {
            var hData = new HierarchicalObject(StringConstants.AdPicturesSettingsFileName);

            hData[0] = Album.Link;
            hData[1] = Interval;
            hData[2] = ImagePosition;
            hData[3] = IsAllow;
            hData.SaveToFile();
        }
Beispiel #7
0
        public static void Reload(VkApi vk)
        {
            var hData = HierarchicalObject.FromFile(StringConstants.AdPicturesSettingsFileName);

            Album = new Album()
            {
                Link = hData[0]
            };
            Interval      = hData[1];
            ImagePosition = hData[2];
            IsAllow       = hData[3];
            VkUtils.PrepareAlbumSize(vk, Album);
        }
Beispiel #8
0
        public static ApiAuthParams GetCredentials()
        {
            var hData = HierarchicalObject.FromFile(StringConstants.CredentialsFileName);
            var creds = new ApiAuthParams
            {
                ApplicationId = (ulong)hData["ApplicationId"],
                Login         = hData["Login"],
                Password      = hData["Password"],
                Settings      = Settings.All | Settings.Offline
            };

            return(creds);
        }
Beispiel #9
0
        public void Compare_nested_null_structs()
        {
            var one   = new HierarchicalObject();
            var other = new HierarchicalObject {
                NestedNullableStructProperty = _fixture.Create <NestedStruct>()
            };

            var expected = HierarchicalObject.Comparer.Compare(one, other);

            expected.Should().Be(-1);
            var actual = _comparer.Compare(one, other);

            actual.Should().Be(expected);
        }
Beispiel #10
0
        public static void InitializeUsersIds(VkApi vk)
        {
            var hObject  = HierarchicalObject.FromFile(Constants.UsersToSendFilePath);
            var usersIds = new List <long>();

            for (int i = 0; hObject[i] is string; i++)
            {
                var userId = VkUtils.GetUserIdByUriName(vk, (string)hObject[i]);
                usersIds.Add(userId.Value);
            }

            Current = new UsersSolvers()
            {
                UsersIds = usersIds.ToArray()
            };
        }
 internal static DataTable[] GetUpdateOrder(DataSet ds)
 {
     HierarchicalObject[] array = new HierarchicalObject[ds.Tables.Count];
     for (int i = 0; i < ds.Tables.Count; i++)
     {
         DataTable theObject = ds.Tables[i];
         array[i] = new HierarchicalObject(theObject);
     }
     for (int j = 0; j < array.Length; j++)
     {
         DataTable objB = array[j].TheObject as DataTable;
         foreach (Constraint constraint in objB.Constraints)
         {
             ForeignKeyConstraint constraint2 = constraint as ForeignKeyConstraint;
             if ((constraint2 != null) && !object.ReferenceEquals(constraint2.RelatedTable, objB))
             {
                 int index = ds.Tables.IndexOf(constraint2.RelatedTable);
                 array[j].AddUniqueParent(array[index]);
             }
         }
         foreach (DataRelation relation in objB.ParentRelations)
         {
             if (!object.ReferenceEquals(relation.ParentTable, objB))
             {
                 int num4 = ds.Tables.IndexOf(relation.ParentTable);
                 array[j].AddUniqueParent(array[num4]);
             }
         }
     }
     for (int k = 0; k < array.Length; k++)
     {
         HierarchicalObject obj3 = array[k];
         if (obj3.HasParent)
         {
             obj3.CheckParents();
         }
     }
     DataTable[] tableArray = new DataTable[array.Length];
     Array.Sort <HierarchicalObject>(array);
     for (int m = 0; m < array.Length; m++)
     {
         HierarchicalObject obj4 = array[m];
         tableArray[m] = (DataTable)obj4.TheObject;
     }
     return(tableArray);
 }
Beispiel #12
0
 public static void LoadSessions()
 {
     foreach (var filename in Directory.GetFiles(StringConstants.SessionsFolder))
     {
         if (!filename.EndsWith(StringConstants.ExceptSessionFilename))
         {
             var            hData  = HierarchicalObject.FromFile(filename);
             DialogSettings dialog = hData[0];
             dialog.Message = NeedMessage(dialog.Id);
             if (dialog.Message != null)
             {
                 dialog.Vk = NeedApi();
                 Sessions.Add(dialog.Id, dialog);
                 dialog.Initialize();
             }
         }
     }
 }
Beispiel #13
0
        public static void Reload()
        {
            var hData = HierarchicalObject.FromFile(StringConstants.AlbumsFileName);

            Repository = hData[0];
            TagsAlbums = new Dictionary <string, List <Album> >();

            //разворачивание тегов и их синонимов
            foreach (var album in Repository.Albums)
            {
                if (album.Tags != null)
                {
                    foreach (var albumTag in album.Tags)
                    {
                        var tag = albumTag.ToLower().Trim();

                        if (!TagsAlbums.ContainsKey(tag))
                        {
                            TagsAlbums.Add(tag, new List <Album>());
                        }

                        TagsAlbums[tag].Add(album);

                        if (TagsContainer.Current.Dictionary.ContainsKey(tag))
                        {
                            foreach (var tagSynonym in TagsContainer.Current.Dictionary[tag])
                            {
                                if (!tagSynonym.Equals("#"))
                                {
                                    if (!TagsAlbums.ContainsKey(tagSynonym))
                                    {
                                        TagsAlbums.Add(tagSynonym, new List <Album>());
                                    }

                                    TagsAlbums[tagSynonym].Add(album);
                                }
                            }
                        }
                    }
                }
            }
        }
Beispiel #14
0
        public void Compare_nested_structs()
        {
            for (var i = 0; i < 10; i++)
            {
                var one = new HierarchicalObject {
                    NestedStructField            = _fixture.Create <NestedStruct>(),
                    NestedNullableStructProperty = _fixture.Create <NestedStruct>()
                };

                var other = new HierarchicalObject {
                    NestedStructField            = _fixture.Create <NestedStruct>(),
                    NestedNullableStructProperty = _fixture.Create <NestedStruct>()
                };

                var expected = HierarchicalObject.Comparer.Compare(one, other);
                var actual   = _comparer.Compare(one, other);

                actual.Should().Be(expected);
            }
        }
Beispiel #15
0
 static Settings()
 {
     HierarchicalObjectCrutch.Register(typeof(Settings));
     Current = HierarchicalObject.FromFile(Constants.SettingsFilePath)[0];
 }
Beispiel #16
0
        public static string[] LoadStringData(string file)
        {
            var hData = HierarchicalObject.FromFile(file);

            return(hData.Values.Cast <string>().ToArray());
        }