main
1namespace domain
2{
3 using utility;
4
5 public class EstimatedNetProductionFor<Commodity> : IValueReturningVisitor<IWell, IQuantity> where Commodity : ICommodity, new()
6 {
7 Month month;
8 IQuantity result;
9
10 public EstimatedNetProductionFor(Month month)
11 {
12 this.month = month;
13 result = new Quantity(0, new BOED());
14 }
15
16 public void Visit(IWell well)
17 {
18 result = result.Plus(well.NetProductionFor<Commodity>(month));
19 }
20
21 public IQuantity Result()
22 {
23 return this.result;
24 }
25 }
26}