forked from mahays0/CSSE376Mocking
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathServiceLocator.cs
More file actions
71 lines (59 loc) · 1.12 KB
/
ServiceLocator.cs
File metadata and controls
71 lines (59 loc) · 1.12 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
using System;
using System.Collections.Generic;
namespace Expedia
{
public class ServiceLocator
{
private static ServiceLocator _instance = null;
public static ServiceLocator Instance
{
get
{
if(_instance == null)
_instance = new ServiceLocator();
return _instance;
}
}
private List<Discount> discounts;
private List<Flight> flights;
private List<Car> cars;
public ServiceLocator ()
{
discounts = new List<Discount>();
flights = new List<Flight>();
cars = new List<Car>();
}
public List<Flight> AvailableFlights
{
get { return flights; }
}
public List<Discount> AvailableDiscounts
{
get { return discounts; }
}
public List<Car> AvailableCars
{
get { return cars; }
}
public void AddDiscount(Discount aDiscount)
{
discounts.Add(aDiscount);
}
public void AddFlight(Flight aFlight)
{
flights.Add(aFlight);
}
public void RemoveFlight(Flight aFlight)
{
flights.Remove(aFlight);
}
public void AddCar(Car aCar)
{
cars.Add(aCar);
}
public void RemoveCar(Car aCar)
{
cars.Remove(aCar);
}
}
}