Example #1
0
        public void Dispense()
        {
            _gumballMachine.ReleaseBall();
            _gumballMachine.GetQuartersController().UseQuarter();
            if (_gumballMachine.GetBallCount() == 0)
            {
                Console.WriteLine("Oops, out of gumballs");
                if (_gumballMachine.GetQuartersController().HasQuarters())
                {
                    Console.WriteLine("returning unused quarters");
                    _gumballMachine.GetQuartersController().EjectQuarters();
                }

                _gumballMachine.SetSoldOutState();
            }
            else
            {
                if (_gumballMachine.GetQuartersController().HasQuarters())
                {
                    _gumballMachine.SetHasQuarterState();
                }
                else
                {
                    _gumballMachine.SetNoQuarterState();
                }
            }
        }
Example #2
0
 public void Refill(uint ballsCount)
 {
     _gumballMachine.AddBalls(ballsCount);
     if (_gumballMachine.GetBallCount() > 0)
     {
         _gumballMachine.SetNoQuarterState();
     }
 }
Example #3
0
 public void Refill(uint numBalls)
 {
     _gumballMachine.RefillBalls(numBalls);
     if (_gumballMachine.GetQuartersCount() == 0)
     {
         _gumballMachine.SetNoQuarterState();
     }
     else
     {
         _gumballMachine.SetHasQuarterState();
     }
 }
Example #4
0
 public void Dispense()
 {
     _gumballMachine.ReleaseBall();
     if (_gumballMachine.GetBallCount() == 0)
     {
         Console.WriteLine("Oops, out of gumballs");
         _gumballMachine.SetSoldOutState();
     }
     else
     {
         _gumballMachine.SetNoQuarterState();
     }
 }
Example #5
0
 public void EjectQuarter()
 {
     Console.WriteLine("Quarter returned");
     _gumballMachine.SetNoQuarterState();
 }
Example #6
0
 public void EjectQuarter()
 {
     _gumballMachine.ReturnQuarters();
     _gumballMachine.SetNoQuarterState();
 }
Example #7
0
 public void EjectQuarters()
 {
     _gumballMachine.GetQuartersController().EjectQuarters();
     Console.WriteLine("Quarter returned");
     _gumballMachine.SetNoQuarterState();
 }