in app/model/AWSCost.scala [49:58]
def reservationsFor(costType: EC2CostingType) = reservations.getOrElse(costType, Seq())
def reservations = reservationsAgent()
val typeCounts = ScheduledAgent[Map[EC2CostingType, Int]](0.seconds, 5.minutes, Map()) {
for {
reservations <- AWS.futureOf(awsConnection.ec2.describeInstancesAsync, new DescribeInstancesRequest())
instances = reservations.getReservations.asScala flatMap (_.getInstances.asScala)
} yield instances.groupBy(i => EC2CostingType(i.getInstanceType, i.getPlacement.getAvailabilityZone)).view.mapValues(_.size).toMap
}