WIP integrating Avro-style policy messages
[aquarium] / src / main / resources / policy.json
1 {
2   "originalID":"default-policy",
3   "inStoreID":null,
4   "parentID":null,
5   "validFromMillis":"0",
6   "validToMillis":"9223372036854775807",
7
8   "resourceTypes":[
9     {
10       "name":"diskspace",
11       "unit":"MB/Hr",
12       "chargingBehaviorClass":"gr.grnet.aquarium.charging.ContinuousChargingBehavior"
13     },
14     {
15       "name":"vmtime",
16       "unit":"Hr",
17       "chargingBehaviorClass":"gr.grnet.aquarium.charging.VMChargingBehavior"
18     },
19     {
20       "name":"addcredits",
21       "unit":"Credits",
22       "chargingBehaviorClass":"gr.grnet.aquarium.charging.OnceChargingBehavior"
23     }
24   ],
25
26   "chargingBehaviors":[
27     "gr.grnet.aquarium.charging.VMChargingBehavior",
28     "gr.grnet.aquarium.charging.ContinuousChargingBehavior",
29     "gr.grnet.aquarium.charging.OnceChargingBehavior" ],
30
31   "roleMapping":{
32     "default":{
33       "perResource":{
34         "diskspace":{
35           "default":{
36             "selectorValue":{
37               "gr.grnet.aquarium.message.avro.gen.EffectivePriceTableMsg":{
38                 "priceOverrides":[
39                   {
40                     "unitPrice":"0.01",
41                     "when":null
42                   }
43                 ]
44               }
45             }
46           }
47         },
48
49         "vmtime":{
50           "powerOff":{
51             "selectorValue":{
52               "gr.grnet.aquarium.message.avro.gen.EffectivePriceTableMsg":{
53                 "priceOverrides":[
54                   {
55                     "unitPrice":"0.0010",
56                     "when":null
57                   }
58                 ]
59               }
60             }
61           },
62           "powerOn":{
63             "selectorValue":{
64               "gr.grnet.aquarium.message.avro.gen.EffectivePriceTableMsg":{
65                 "priceOverrides":[
66                   {
67                     "unitPrice":"0.01",
68                     "when":null
69                   }
70                 ]
71               }
72             }
73           }
74         },
75
76         "addcredits":{
77           "default":{
78             "selectorValue":{
79               "gr.grnet.aquarium.message.avro.gen.EffectivePriceTableMsg":{
80                 "priceOverrides":[
81                   {
82                     "unitPrice":"-1.0",
83                     "when":null
84                   }
85                 ]
86               }
87             }
88           }
89         }
90       }
91     }
92   }
93 }