예제 #1
0
 internal LegalBoard(
     Member chair,
     List <Member> technicals,
     List <Member> legals,
     Registrar registrar,
     ChairChooser chairChooser)
     : base(chair, technicals, legals, registrar, chairChooser)
 {
 }
예제 #2
0
 internal static Board MakeLegalBoard(
     Member chair,
     List <Member> technicals,
     List <Member> legals,
     Registrar registrar,
     ChairChooser chairChooser)
 {
     return(new LegalBoard(chair, technicals, legals, registrar, chairChooser));
 }
예제 #3
0
        protected Board(
            Member chair,
            List <Member> technicals,
            List <Member> legals,
            Registrar registrar,
            ChairChooser chairChooser)
            : base(chair, technicals, legals)
        {
            _registrar    = registrar;
            _chairChooser = chairChooser;

            _allocationCount = new Dictionary <Member, int>();
            foreach (Member member in _members)
            {
                _allocationCount[member] = 0;
                _registrar.RegisterMember(member);
            }
        }
예제 #4
0
        private ChairChooser _makeChairChooser()
        {
            ChairChooser chooser = new ChairChooser(ChairMember);

            foreach (var technical in _technicalMembers)
            {
                if (technical.Item2 > 0)
                {
                    chooser.AddSecondaryChair(technical.Item1, technical.Item2);
                }
            }
            foreach (var legal in _legalMembers)
            {
                if (legal.Item2 > 0)
                {
                    chooser.AddSecondaryChair(legal.Item1, legal.Item2);
                }
            }

            return(chooser);
        }