1 import gr.grnet.aquarium.charging.{OnceChargingBehavior, ContinuousChargingBehavior, OnOffChargingBehavior, DiscreteChargingBehavior}
2 import gr.grnet.aquarium.policy.{EffectiveUnitPrice, EffectivePriceTable, FullPriceTable, ResourceType, StdPolicy}
3 import gr.grnet.aquarium.Timespan
5 // Definition of our standard policy in plain Scala
6 // This will be dynamically interpreted during Aquarium startup
12 validityTimespan = Timespan(0),
15 ResourceType("bandwidth", "MB/Hr", classOf[DiscreteChargingBehavior].getName),
16 ResourceType("vmtime", "Hr", classOf[OnOffChargingBehavior].getName),
17 ResourceType("diskspace", "MB/Hr", classOf[ContinuousChargingBehavior].getName)
20 chargingBehaviors = Set(
21 classOf[DiscreteChargingBehavior].getName,
22 classOf[OnOffChargingBehavior].getName,
23 classOf[ContinuousChargingBehavior].getName,
24 classOf[OnceChargingBehavior].getName
28 "default" -> FullPriceTable(Map(
29 "bandwidth" -> EffectivePriceTable(EffectiveUnitPrice(0.01, None) :: Nil),
30 "vmtime" -> EffectivePriceTable(EffectiveUnitPrice(0.01, None) :: Nil),
31 "diskspace" -> EffectivePriceTable(EffectiveUnitPrice(0.01, None) :: Nil)