Exemplo n.º 1
0
        public static RentalChargeService GetInstance()
        {
            if (_singleton == null)
            {
                _singleton = new RentalChargeService();
            }

            return(_singleton);
        }
Exemplo n.º 2
0
        public Rental RentABikePerWeek(Bike bike, Person person, int weeks)
        {
            var rental = new Rental(bike, person, weeks * 168);

            rental.Charge = RentalChargeService.GetInstance().CalculateCharge(rental);

            Rentals.Add(rental);

            return(rental);
        }
Exemplo n.º 3
0
        public Rental RentABikePerDay(Bike bike, Person person, int days)
        {
            if (days > 23)
            {
                throw new Exception("Cannot rent a bike per day for more than 6 days");
            }

            var rental = new Rental(bike, person, days * 24);

            rental.Charge = RentalChargeService.GetInstance().CalculateCharge(rental);

            Rentals.Add(rental);

            return(rental);
        }
Exemplo n.º 4
0
        public Rental RentABikePerHour(Bike bike, Person person, int hours)
        {
            if (hours > 23)
            {
                throw new Exception("Cannot rent a bike per hour for more than 23 hours");
            }

            var rental = new Rental(bike, person, hours);

            rental.Charge = RentalChargeService.GetInstance().CalculateCharge(rental);

            Rentals.Add(rental);

            return(rental);
        }