class Rental


1 class Rental {
2     private Movie _movie;
3     private int _daysRented;
4 
5     public Rental(Movie movie, int daysRented) 
6     {
7 	_movie = movie;
8 	_daysRented = daysRented;
9     }
10 
11     public int getDaysRented() 
12     {
13 	return _daysRented;
14     }
15 
16     public Movie getMovie() 
17     {
18 	return _movie;
19     }
20 
21     public int getFrequentRenterPoints()
22     {
23 	if((getMovie().getPriceCode() == Movie.NEW_RELEASE) &&
24 	   getDaysRented() > 1)
25 	    return 2;
26 	else
27 	    return 1;
28     }
29 
30     public double getCharge() 
31     {
32 	double result = 0;
33 	switch (_movie.getPriceCode()) {
34 	case Movie.REGULAR:         
35 	    result += 2;         
36 	    if (getDaysRented() > 2)
37 		result += (getDaysRented() - 2) * 1.5;
38 	    break;     
39 	case Movie.NEW_RELEASE:    
40 	    result += getDaysRented() * 3;     
41 	    break;     
42 	case Movie.CHILDRENS: 
43 	    result += 1.5;  
44 	    if (getDaysRented() > 3)   
45 		result += (getDaysRented() - 3) * 1.5;   
46 	    break; 
47 	}
48 	return result;
49     }
50 }
51