Esempio n. 1
0
        private void AnswerBox_TextChanged(object sender, TextChangedEventArgs e)
        {
            switch (answerFlag)
            {
            case 1:
                AskLabel.Content = "Корень из 225?";
                if (AnswerBox.Text == "15")
                {
                    answerFlag     = 2;
                    AnswerBox.Text = "";
                }
                break;

            case 2:
                AskLabel.Content = "Сколько ног у сороконожки?";
                if (AnswerBox.Text == "много")
                {
                    answerFlag     = 3;
                    AnswerBox.Text = "";
                }
                break;

            case 3:
                AskLabel.Content = "Сколько лет длилась столетняя война?";
                if (AnswerBox.Text == "116")
                {
                    Level3 lvl3 = new Level3();
                    lvl3.Show();
                    LevelTwo.Close();
                    AnswerBox.Text = "";
                }
                break;
            }
        }
Esempio n. 2
0
        public void Init(Game theGame, SpriteBatch spriteBatchToUse)
        {
            Levels         = new List <ILevel>();
            TheGame        = theGame;
            TheSpriteBatch = spriteBatchToUse;
            CurLevelNR     = 0;

            ILevel levelOne   = new LevelOne();
            ILevel levelTwo   = new LevelTwo();
            ILevel levelThree = new LevelThree();

            Levels.Add(levelOne);
            Levels.Add(levelTwo);
            Levels.Add(levelThree);
        }
Esempio n. 3
0
    static void CreateDefaultObjects()
    {
        using (UnitOfWork uow = GetNewUnitOfWork()) {
            LevelOne parent1 = new LevelOne(uow);
            parent1.Text = "Nokia";

            LevelOne parent2 = new LevelOne(uow);
            parent2.Text = "Samsung";

            LevelTwo child11 = new LevelTwo(uow);
            child11.Text   = "Cellphone";
            child11.Parent = parent1;

            LevelThree grand111 = new LevelThree(uow);
            grand111.Text  = "N91";
            grand111.Owner = child11;

            LevelThree grand112 = new LevelThree(uow);
            grand112.Text  = "N8";
            grand112.Owner = child11;


            LevelTwo child21 = new LevelTwo(uow);
            child21.Text   = "Cellphone";
            child21.Parent = parent2;

            LevelThree grand211 = new LevelThree(uow);
            grand211.Text  = "Galaxy";
            grand211.Owner = child21;

            LevelThree grand212 = new LevelThree(uow);
            grand212.Text  = "Wave";
            grand212.Owner = child21;


            LevelTwo child22 = new LevelTwo(uow);
            child22.Text   = "Display";
            child22.Parent = parent2;

            LevelThree grand221 = new LevelThree(uow);
            grand221.Text  = "SyncMaster";
            grand221.Owner = child22;

            uow.CommitChanges();
        }
    }
Esempio n. 4
0
        /// <summary>
        /// Initializes the game manager and sets all the levels.
        /// </summary>
        public void Initialize()
        {
            LevelOne   levelOne   = new LevelOne();
            LevelTwo   levelTwo   = new LevelTwo();
            LevelThree levelThree = new LevelThree();

            levelOne.EndOfLevel   += onEndOfLevel;
            levelTwo.EndOfLevel   += onEndOfLevel;
            levelThree.EndOfLevel += onEndOfLevel;
            levelOne.Initialize();
            levelTwo.Initialize();
            levelThree.Initialize();
            m_levels.Add(levelOne);
            m_levels.Add(levelTwo);
            m_levels.Add(levelThree);
            m_currentStage     = Stage.Introduction;
            m_oldKeyboardState = Keyboard.GetState();
        }
    void Start()
    {
        fl = GameObject.FindObjectOfType(typeof(LevelTwo)) as LevelTwo;

        //hide tutorial box
        tutorialBox.GetComponent <MeshRenderer>().enabled    = false;
        tutorialBoxTwo.GetComponent <MeshRenderer>().enabled = false;

        tutorialTitle.GetComponent <Text>().enabled     = false;
        tutorialUnderline.GetComponent <Text>().enabled = false;
        tutorialMessage.GetComponent <Text>().enabled   = false;

        //hide tutorial elements
        dismissTutorialButton.GetComponent <Image>().enabled    = false;
        dismissTutorialButtonText.GetComponent <Text>().enabled = false;

        hintButton.onClick.AddListener(onHintClick);
        dismissTutorialButton.onClick.AddListener(onDismissTutorialClick);

        tutorialMessage.text = "";
    }
Esempio n. 6
0
File: repo.cs Progetto: isencher/oio
        /// <summary>
        /// get operation list for specific user
        /// </summary>
        public List <Operation> GetActionButtonText(User user, SetofBook set, LevelTwo leveltwo)
        {
            try
            {
                using (var sc = new sysContext())
                {
                    var roleids = sc.Users.Include(u => u.Partners)
                                  .FirstOrDefault(u => u.Id == user.Id).Partners.Select(r => r.Id);
                    var rightids = sc.Rights.Where(r => roleids.Contains(r.RoleId) &&
                                                   r.SetofBookId == set.Id &&
                                                   r.Enabled == true &&
                                                   r.LevelTwoId == leveltwo.Id)
                                   .Select(r => r.Id).ToList();
                    var ops = sc.Accredits.Where(a => rightids.Contains(a.RightId) &&
                                                 a.Enabled == true).Select(a => a.Operation).ToList();
                    return(ops);

                    #region waive
                    //var roles = sc.Users.Where(u => u.Id == user.Id).Select(u => u.Partners).ToList();
                    //var roleids = sc.Roles.Select(r => r.Id);
                    //var rights = sc.Rights
                    //    .Where(r => r.LevelTwoId == leveltwo.Id && r.SetofBooksId == set.Id).ToList();
                    //var rightids = rights.Select(r => r.Id);
                    //var opids = sc.Accredits
                    //    .Where(a => roleids.Contains(a.RoleId) && rightids.Contains(a.RightId))
                    //    .Select(a => a.OperationId).ToList();
                    //var ops = sc.Operations.Where(o => opids.Contains(o.Id)).ToList();

                    //return ops;
                    #endregion
                }
            }
            catch (Exception ex)
            {
                return(null);

                throw;
            }
        }
Esempio n. 7
0
 public LevelOne(LevelTwo levelTwo)
 {
     this._levelTwo = levelTwo;
 }
Esempio n. 8
0
        public TopMenu GetMenuForUser(int UserId)
        {
            var result = new TopMenu {
                Id          = 0,
                DivCssClass = "navbar",
                Divisions   = new List <TopMenuDivision>()
            };
            var userObjects  = UserAccessMenuList(UserId);
            var menu1        = _context.MENU_L1.Where(m => userObjects.Any(k => k == m.object_auto) && m.active).OrderBy(m => m.sorder);
            var menu2        = _context.MENU_L2.Where(m => m.active && userObjects.Any(k => k == m.object_auto) && menu1.Any(k => k.menu_L1_auto == m.menu_L1_auto)).OrderBy(m => m.sorder);
            var menu3        = _context.MENU_L3.Where(m => m.active && userObjects.Any(k => k == m.object_auto) && menu2.Any(k => k.menu_L2_auto == m.menu_L2_auto)).OrderBy(m => m.sorder);
            var leftDivision = new TopMenuDivision {
                Id           = 1,
                DivCssClass  = "navbar-left",
                UlCssClass   = "menu-container",
                OrderIndex   = 1,
                levelOneList = new List <LevelOne>()
            };
            var rightDivision = new TopMenuDivision
            {
                Id           = 2,
                DivCssClass  = "navbar-right",
                UlCssClass   = "menu-container",
                OrderIndex   = 1,
                levelOneList = new List <LevelOne>()
            };

            foreach (var level1Menu in menu1.ToList())
            {
                var levelOne = new LevelOne
                {
                    Id            = level1Menu.menu_L1_auto,
                    isMenuNotLink = false,
                    LiCssClass    = "menu-item",
                    OrderIndex    = 0,
                    Span          = new TopMenuSpan
                    {
                        IconCssClass = "material-icons arrow",
                        IconText     = "&#xE313;",
                        OrderIndex   = level1Menu.sorder == null ? 99 : (int)level1Menu.sorder,
                        SpanText     = level1Menu.label
                    },
                    levelTwoList = new List <LevelTwo>(),
                    Link         = new TopMenuLink()
                };
                if (HasSubMenu(level1Menu.menu_L1_auto, menu2.Select(m => m.menu_L1_auto).ToList()))
                {
                    levelOne.isMenuNotLink = true;
                    foreach (var level2Menu in menu2.Where(m => m.menu_L1_auto == level1Menu.menu_L1_auto).ToList())
                    {
                        var levelTwo = new LevelTwo
                        {
                            Id            = level2Menu.menu_L2_auto,
                            isMenuNotLink = false,
                            ParentId      = level1Menu.menu_L1_auto,
                            UlCssClass    = "sub-menu-container",
                            LiCssClass    = "sub-menu-item",
                            Span          = new TopMenuSpan {
                                IconCssClass = "material-icons arrow",
                                IconText     = "&#xE313;",
                                OrderIndex   = level2Menu.sorder == null ? 99 : (int)level2Menu.sorder,
                                SpanText     = level2Menu.label
                            },
                            levelThreeList = new List <LevelThree>(),
                            Link           = new TopMenuLink()
                        };
                        if (HasSubMenu(level2Menu.menu_L2_auto, menu3.Select(m => m.menu_L2_auto).ToList()))
                        { //Level3 Links
                            levelTwo.isMenuNotLink = true;
                            foreach (var level3Menu in menu3.Where(m => m.menu_L2_auto == level2Menu.menu_L2_auto).ToList())
                            {
                                var levelThree = new LevelThree
                                {
                                    Id         = level3Menu.menu_L3_auto,
                                    ParentId   = level2Menu.menu_L2_auto,
                                    UlCssClass = "sub-menu-container",
                                    LiCssClass = "sub-menu-item",
                                    Span       = new TopMenuSpan
                                    {
                                        IconCssClass = "material-icons arrow",
                                        IconText     = "&#xE313;",
                                        OrderIndex   = level2Menu.sorder == null ? 99 : (int)level2Menu.sorder,
                                        SpanText     = level2Menu.label
                                    },
                                    Link = new TopMenuLink {
                                        Id              = level3Menu.menu_L3_auto,
                                        Text            = level3Menu.label,
                                        Href            = level3Menu.targetpath,
                                        OrderIndex      = level3Menu.sorder == null ? 99 : (int)level3Menu.sorder,
                                        OpenInNewWindow = level3Menu.new_window
                                    }
                                };
                                levelTwo.levelThreeList.Add(levelThree);
                            }
                        }
                        else //Level2 Links
                        {
                            levelTwo.Link = new TopMenuLink {
                                Id              = level2Menu.menu_L2_auto,
                                Text            = level2Menu.label,
                                Href            = level2Menu.targetpath,
                                OrderIndex      = level2Menu.sorder == null ? 99 : (int)level2Menu.sorder,
                                OpenInNewWindow = level2Menu.new_window
                            };
                        }
                        levelOne.levelTwoList.Add(levelTwo);
                    }
                }
                else //Level1 Links
                {
                    levelOne.Link = new TopMenuLink
                    {
                        Id              = level1Menu.menu_L1_auto,
                        Text            = level1Menu.label,
                        Href            = level1Menu.targetpath,
                        OrderIndex      = level1Menu.sorder == null ? 99 : (int)level1Menu.sorder,
                        OpenInNewWindow = true
                    };
                }
                if (levelOne.Id == 7 || levelOne.Id == 8)
                {
                    rightDivision.levelOneList.Add(levelOne);
                }
                else
                {
                    leftDivision.levelOneList.Add(levelOne);
                }
            }

            result.Divisions.Add(leftDivision);
            result.Divisions.Add(rightDivision);
            return(result);
        }
Esempio n. 9
0
 /// <summary>
 /// Returns/sets the value with the <paramref name="key1"/>, <paramref name="key2"/>, <paramref name="key3"/>, <paramref name="key4"/> provided.
 /// </summary>
 /// <param name="key1">The <typeparamref name="TKey1"/> which
 /// is the first key of the element to set/retrieve.</param>
 /// <param name="key2">The <typeparamref name="TKey2"/> which
 /// is the second key of the element to set/retrieve.</param>
 /// <param name="key3">The <typeparamref name="TKey3"/> which
 /// is the third key of the element to set/retrieve.</param>
 /// <param name="key4">The <typeparamref name="TKey4"/> which
 /// is the fourth key of the element to set/retrieve.</param>
 public TValue this[TKey1 key1, TKey2 key2, TKey3 key3, TKey4 key4]
 {
     get
     {
         LevelOne   levelOne;
         LevelTwo   levelTwo;
         LevelThree levelThree;
         if (((object)(key1)) == null)
         {
             throw new ArgumentNullException("key1");
         }
         bool topLevelLock = false;
         Monitor.Enter(this.dataCopy, ref topLevelLock);
         if (this.dataCopy.TryGetValue(key1, out levelOne))
         {
             if (topLevelLock)
             {
                 Monitor.Exit(this.dataCopy);
             }
             if (((object)(key2)) == null)
             {
                 throw new ArgumentNullException("key2");
             }
             bool levelOneLock = false;
             Monitor.Enter(levelOne, ref levelOneLock);
             if (levelOne.TryGetValue(key2, out levelTwo))
             {
                 if (levelOneLock)
                 {
                     Monitor.Exit(levelOne);
                 }
                 if (((object)(key3)) == null)
                 {
                     throw new ArgumentNullException("key3");
                 }
                 bool levelTwoLock = false;
                 Monitor.Enter(levelTwo, ref levelTwoLock);
                 if (levelTwo.TryGetValue(key3, out levelThree))
                 {
                     TValue value;
                     if (levelTwoLock)
                     {
                         Monitor.Exit(levelTwo);
                     }
                     if (((object)(key4)) == null)
                     {
                         throw new ArgumentNullException("key4");
                     }
                     bool levelThreeLock = false;
                     Monitor.Enter(levelThree, ref levelThreeLock);
                     if (levelThree.TryGetValue(key4, out value))
                     {
                         if (levelThreeLock)
                         {
                             Monitor.Exit(levelThree);
                         }
                         return(value);
                     }
                     else
                     {
                         if (levelThreeLock)
                         {
                             Monitor.Exit(levelThree);
                         }
                         throw new SubKeyNotFoundException("key4");
                     }
                 }
                 else
                 {
                     if (levelTwoLock)
                     {
                         Monitor.Exit(levelTwo);
                     }
                     throw new SubKeyNotFoundException("key3");
                 }
             }
             else
             {
                 if (levelOneLock)
                 {
                     Monitor.Exit(levelOne);
                 }
                 throw new SubKeyNotFoundException("key2");
             }
         }
         else
         {
             if (topLevelLock)
             {
                 Monitor.Exit(this.dataCopy);
             }
             throw new SubKeyNotFoundException("key1");
         }
     }
     set
     {
         LevelOne   levelOne;
         LevelTwo   levelTwo;
         LevelThree levelThree;
         if (((object)(key1)) == null)
         {
             throw new ArgumentNullException("key1");
         }
         bool topLevelLock = false;
         Monitor.Enter(this.dataCopy, ref topLevelLock);
         if (this.dataCopy.TryGetValue(key1, out levelOne))
         {
             if (topLevelLock)
             {
                 Monitor.Exit(this.dataCopy);
             }
             if (((object)(key2)) == null)
             {
                 throw new ArgumentNullException("key2");
             }
             bool levelOneLock = false;
             Monitor.Enter(levelOne, ref levelOneLock);
             if (levelOne.TryGetValue(key2, out levelTwo))
             {
                 if (levelOneLock)
                 {
                     Monitor.Exit(levelOne);
                 }
                 if (((object)(key3)) == null)
                 {
                     throw new ArgumentNullException("key3");
                 }
                 bool levelTwoLock = false;
                 Monitor.Enter(levelTwo, ref levelTwoLock);
                 if (levelTwo.TryGetValue(key3, out levelThree))
                 {
                     if (levelTwoLock)
                     {
                         Monitor.Exit(levelTwo);
                     }
                     if (((object)(key4)) == null)
                     {
                         throw new ArgumentNullException("key4");
                     }
                     bool levelThreeLock = false;
                     Monitor.Enter(levelThree, ref levelThreeLock);
                     if (levelThree.ContainsKey(key4))
                     {
                         if (levelThreeLock)
                         {
                             Monitor.Exit(levelThree);
                         }
                         levelThree[key4] = value;
                     }
                     else
                     {
                         levelThree.Add(key4, value);
                         if (levelThreeLock)
                         {
                             Monitor.Exit(levelThree);
                         }
                     }
                 }
                 else
                 {
                     levelTwo.Add(key3, (levelThree = new LevelThree()));
                     levelThree.Add(key4, value);
                     if (levelTwoLock)
                     {
                         Monitor.Exit(levelTwo);
                     }
                 }
             }
             else
             {
                 levelOne.Add(key2, (levelTwo = new LevelTwo()));
                 levelTwo.Add(key3, (levelThree = new LevelThree()));
                 levelThree.Add(key4, value);
                 if (levelOneLock)
                 {
                     Monitor.Exit(levelOne);
                 }
             }
         }
         else
         {
             this.dataCopy.Add(key1, (levelOne = new LevelOne()));
             levelOne.Add(key2, (levelTwo = new LevelTwo()));
             levelTwo.Add(key3, (levelThree = new LevelThree()));
             levelThree.Add(key4, value);
             if (topLevelLock)
             {
                 Monitor.Exit(this.dataCopy);
             }
         }
     }
 }
Esempio n. 10
0
        /// <summary>
        /// Attempts to add the <paramref name="value"/> with the keys
        /// <paramref name="key1"/>, <paramref name="key2"/>, <paramref name="key3"/>, <paramref name="key4"/>.
        /// </summary>
        /// <param name="key1">The <typeparamref name="TKey1"/> which
        /// is the first key of the <paramref name="value"/>
        ///  to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/>.</param>
        /// <param name="key2">The <typeparamref name="TKey2"/> which
        /// is the second key of the <paramref name="value"/>
        ///  to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/>.</param>
        /// <param name="key3">The <typeparamref name="TKey3"/> which
        /// is the third key of the <paramref name="value"/>
        ///  to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/>.</param>
        /// <param name="key4">The <typeparamref name="TKey4"/> which
        /// is the fourth key of the <paramref name="value"/>
        ///  to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/>.</param>
        /// <param name="value">The <typeparamref name="TValue"/> to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/></param>
        public bool TryAdd(TKey1 key1, TKey2 key2, TKey3 key3, TKey4 key4, TValue value)
        {
            // Declare the locals relative to the different levels.
            LevelOne   levelOne;
            LevelTwo   levelTwo;
            LevelThree levelThree;

            /* ------------------------------------------------------\
            |  Check each level individually, if the key set is      |
            |  already present, indicate that nothing was done, and  |
            |  yield; otherwise note that it was inserted.           |
            \------------------------------------------------------ */
            if (((object)(key1)) == null)
            {
                throw new ArgumentNullException("key1");
            }
            bool topLevelLock = false;

            Monitor.Enter(this.dataCopy, ref topLevelLock);
            if (this.dataCopy.TryGetValue(key1, out levelOne))
            {
                if (topLevelLock)
                {
                    Monitor.Exit(this.dataCopy);
                }
                if (((object)(key2)) == null)
                {
                    throw new ArgumentNullException("key2");
                }
                bool levelOneLock = false;
                Monitor.Enter(levelOne, ref levelOneLock);
                if (levelOne.TryGetValue(key2, out levelTwo))
                {
                    if (levelOneLock)
                    {
                        Monitor.Exit(levelOne);
                    }
                    if (((object)(key3)) == null)
                    {
                        throw new ArgumentNullException("key3");
                    }
                    bool levelTwoLock = false;
                    Monitor.Enter(levelTwo, ref levelTwoLock);
                    if (levelTwo.TryGetValue(key3, out levelThree))
                    {
                        if (levelTwoLock)
                        {
                            Monitor.Exit(levelTwo);
                        }
                        if (((object)(key4)) == null)
                        {
                            throw new ArgumentNullException("key4");
                        }
                        bool levelThreeLock = false;
                        Monitor.Enter(levelThree, ref levelThreeLock);
                        if (levelThree.ContainsKey(key4))
                        {
                            if (levelThreeLock)
                            {
                                Monitor.Exit(levelThree);
                            }
                            return(false);
                        }
                        else
                        {
                            levelThree.Add(key4, value);
                            if (levelThreeLock)
                            {
                                Monitor.Exit(levelThree);
                            }
                        }
                    }
                    else
                    {
                        levelTwo.Add(key3, (levelThree = new LevelThree()));
                        levelThree.Add(key4, value);
                        if (levelTwoLock)
                        {
                            Monitor.Exit(levelTwo);
                        }
                    }
                }
                else
                {
                    levelOne.Add(key2, (levelTwo = new LevelTwo()));
                    levelTwo.Add(key3, (levelThree = new LevelThree()));
                    levelThree.Add(key4, value);
                    if (levelOneLock)
                    {
                        Monitor.Exit(levelOne);
                    }
                }
            }
            else
            {
                this.dataCopy.Add(key1, (levelOne = new LevelOne()));
                levelOne.Add(key2, (levelTwo = new LevelTwo()));
                levelTwo.Add(key3, (levelThree = new LevelThree()));
                levelThree.Add(key4, value);
                if (topLevelLock)
                {
                    Monitor.Exit(this.dataCopy);
                }
            }
            return(true);
        }
Esempio n. 11
0
        /// <summary>
        /// Adds the <paramref name="value"/> with the keys
        /// <paramref name="key1"/>, <paramref name="key2"/>, <paramref name="key3"/>, <paramref name="key4"/>.
        /// </summary>
        /// <param name="key1">The <typeparamref name="TKey1"/> which
        /// is the first key of the <paramref name="value"/>
        /// to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/>.</param>
        /// <param name="key2">The <typeparamref name="TKey2"/> which
        /// is the second key of the <paramref name="value"/>
        /// to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/>.</param>
        /// <param name="key3">The <typeparamref name="TKey3"/> which
        /// is the third key of the <paramref name="value"/>
        /// to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/>.</param>
        /// <param name="key4">The <typeparamref name="TKey4"/> which
        /// is the fourth key of the <paramref name="value"/>
        /// to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/>.</param>
        /// <param name="value">The <typeparamref name="TValue"/> to add to the <see cref="MultikeyedDictionary{TKey1, TKey2, TKey3, TKey4, TValue}"/>.</param>
        public void Add(TKey1 key1, TKey2 key2, TKey3 key3, TKey4 key4, TValue value)
        {
            // Declare the locals relative to the different levels.
            LevelOne   levelOne;
            LevelTwo   levelTwo;
            LevelThree levelThree;

            /* ------------------------------------------------------\
            |  Check each level individually, if the key set is      |
            |  already present, throw an the appropriate exception.  |
            \------------------------------------------------------ */
            if (((object)(key1)) == null)
            {
                throw new ArgumentNullException("key1");
            }
            bool topLevelLock = false;

            Monitor.Enter(this.dataCopy, ref topLevelLock);
            if (this.dataCopy.TryGetValue(key1, out levelOne))
            {
                if (topLevelLock)
                {
                    Monitor.Exit(this.dataCopy);
                }
                if (((object)(key2)) == null)
                {
                    throw new ArgumentNullException("key2");
                }
                bool levelOneLock = false;
                Monitor.Enter(levelOne, ref levelOneLock);
                if (levelOne.TryGetValue(key2, out levelTwo))
                {
                    if (levelOneLock)
                    {
                        Monitor.Exit(levelOne);
                    }
                    if (((object)(key3)) == null)
                    {
                        throw new ArgumentNullException("key3");
                    }
                    bool levelTwoLock = false;
                    Monitor.Enter(levelTwo, ref levelTwoLock);
                    if (levelTwo.TryGetValue(key3, out levelThree))
                    {
                        if (levelTwoLock)
                        {
                            Monitor.Exit(levelTwo);
                        }
                        if (((object)(key4)) == null)
                        {
                            throw new ArgumentNullException("key4");
                        }
                        bool levelThreeLock = false;
                        Monitor.Enter(levelThree, ref levelThreeLock);
                        if (levelThree.ContainsKey(key4))
                        {
                            if (levelThreeLock)
                            {
                                Monitor.Exit(levelThree);
                            }
                            throw new InvalidOperationException();
                        }
                        else
                        {
                            levelThree.Add(key4, value);
                            if (levelThreeLock)
                            {
                                Monitor.Exit(levelThree);
                            }
                        }
                    }
                    else
                    {
                        levelTwo.Add(key3, (levelThree = new LevelThree()));
                        levelThree.Add(key4, value);
                        if (levelTwoLock)
                        {
                            Monitor.Exit(levelTwo);
                        }
                    }
                }
                else
                {
                    levelOne.Add(key2, (levelTwo = new LevelTwo()));
                    levelTwo.Add(key3, (levelThree = new LevelThree()));
                    levelThree.Add(key4, value);
                    if (levelOneLock)
                    {
                        Monitor.Exit(levelOne);
                    }
                }
            }
            else
            {
                this.dataCopy.Add(key1, (levelOne = new LevelOne()));
                levelOne.Add(key2, (levelTwo = new LevelTwo()));
                levelTwo.Add(key3, (levelThree = new LevelThree()));
                levelThree.Add(key4, value);
                if (topLevelLock)
                {
                    Monitor.Exit(this.dataCopy);
                }
            }
        }
Esempio n. 12
0
        //        GET http://fb.oddsportal.com/ajax-sport-country-tournament-archive/3/d2rfLrG8/X0/1/0/1/?_=1497962834158 HTTP/1.1
        //Host: fb.oddsportal.com
        //Connection: keep-alive
        //User-Agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.104 Safari/537.36
        //Accept: */*
        //Referer: http://www.oddsportal.com/basketball/africa/african-championship/results/
        //Accept-Encoding: gzip, deflate
        //Accept-Language: en-US,en;q=0.8
        //Cookie: _ga=GA1.2.734757002.1497182252; _gid=GA1.2.1090293299.1497597665



        static void Main(string[] args)
        {
            List <string> links = new List <string>();
            Dictionary <string, string> dateDict;
            UrlScrapping scrapping = new UrlScrapping();

            UrlScrapping.LevelOne();
            List <Package> listofPackages;
            LevelTwo       two;
            string         champ_id;
            string         country_id;

            using (StreamReader reader = new StreamReader("urlResults.txt"))
            {
                var link = reader.ReadLine();
                links.Add(link);
            }
            Parallel.ForEach(links, new ParallelOptions {
                MaxDegreeOfParallelism = 2
            }, champ =>
                             //foreach(var champ in links)
            {
                two        = new LevelTwo(champ);
                country_id = two.writeToCountry();
                champ_id   = two.getChampionshipId();

                dateDict = scrapping.LevelTwo(links[0], champ_id);
                foreach (var date in dateDict)
                {
                    listofPackages = scrapping.getResults(date.Key, date.Value, champ_id);
                    if (listofPackages != null)
                    {
                        foreach (var pack in listofPackages)
                        {
                            if (pack != null)
                            {
                                var a     = scrapping.sendForProcessingPackage(pack, champ_id);
                                var count = a.Count;


                                Parallel.ForEach(a, new ParallelOptions {
                                    MaxDegreeOfParallelism = 2
                                }, aa =>
                                {
                                    try
                                    {
                                        Task t2 = Task.Factory.StartNew(() => runDriver(aa));


                                        Task.WaitAll(t2);
                                    }
                                    catch (Exception e)
                                    {
                                    }
                                });
                            }
                        }
                    }
                }
            });
        }
Esempio n. 13
0
 // save level 2 state to file
 public static void SaveLevelTwo(LevelTwo level) => Save(level.CurrentState,
                                                         Path.Combine(Application.persistentDataPath, LEVEL_TWO_SAVE_FILE));
 public LevelThree(LevelTwo levelTwo, string text) : base(text) => LevelTwo = levelTwo;
Esempio n. 15
0
 public LevelOne(LevelTwo levelTwo)
 {
     LevelTwo = levelTwo;
 }
Esempio n. 16
0
 // Start is called before the first frame update
 void Start()
 {
     myLevelTwo = GameObject.Find("GM").GetComponent <LevelTwo>();
     myLevelTwo.ButtonsClose();
     StartQuestion();
 }