rm -f logs/aquarium.log aquarium.home_IS_UNDEFINED/logs/aquarium.log
mongo aquarium --eval "db.resevents.remove(); db.imevents.remove() ; db.policies.remove() ; db.userstates.remove()"
-BILLREQUEST="http://localhost:8888/user/loverdos@grnet.gr/bill/1341090000000/1343768399999"
+BILLREQUEST="http://localhost:8888/user/loverdos@grnet.gr/bill/1343768400000/1346446799000"
USERCREATE="{
\"id\": \"im.1.create.loverdos\",
\"eventType\": \"create\",
\"eventVersion\": \"1\",
\"isActive\": false,
- \"occurredMillis\": 1342731600000,
- \"receivedMillis\": 1342731600000,
+ \"occurredMillis\": 1343772000000,
+ \"receivedMillis\": 1343772000000,
\"role\": \"default\",
\"userID\": \"loverdos@grnet.gr\"
}"
\"eventType\": \"addcredits\",
\"eventVersion\": \"1\",
\"isActive\": false,
- \"occurredMillis\": 1344345437000,
- \"receivedMillis\": 1344345437000,
+ \"occurredMillis\": 1343858400000,
+ \"receivedMillis\": 1343858400000,
\"role\": \"default\",
\"userID\": \"loverdos@grnet.gr\"
}"
RESOURCE1="{
\"id\": \"rc.1.loverdos\",
- \"occurredMillis\": 1342735200000,
- \"receivedMillis\": 1342735200000,
+ \"occurredMillis\": 1343858400000,
+ \"receivedMillis\": 1343858400000,
+ \"userID\": \"loverdos@grnet.gr\",
+ \"clientID\": \"pithos\",
+ \"resource\": \"diskspace\",
+ \"instanceID\": \"1\",
+ \"value\": 1000.0,
+ \"eventVersion\": \"1.0\",
+ \"details\": {
+ \"action\": \"object update\",
+ \"total\": \"1000.0\",
+ \"user\": \"loverdos@grnet.gr\",
+ \"path\": \"/Papers/GOTO_HARMFUL.PDF\"
+ }
+}"
+
+RESOURCE2="{
+ \"id\": \"rc.2.loverdos\",
+ \"occurredMillis\": 1345413600000,
+ \"receivedMillis\": 1345413600000,
\"userID\": \"loverdos@grnet.gr\",
\"clientID\": \"pithos\",
\"resource\": \"diskspace\",
#rabbitmqadmin -H dev82.dev.grnet.gr -P 55672 -u rabbit -p r@bb1t publish routing_key=pithos.resource.diskspace exchange=pithos < __rc.1.loverdos.json
echo $USERCREATE | rabbitmqadmin -H dev82.dev.grnet.gr -P 55672 -u rabbit -p r@bb1t publish routing_key=astakos.user exchange=astakos
+# sleep 1
echo $ADDCREDITS | rabbitmqadmin -H dev82.dev.grnet.gr -P 55672 -u rabbit -p r@bb1t publish routing_key=astakos.user exchange=astakos
+# sleep 1
echo $RESOURCE1 | rabbitmqadmin -H dev82.dev.grnet.gr -P 55672 -u rabbit -p r@bb1t publish routing_key=pithos.resource.diskspace exchange=pithos
+# sleep 1
+ echo $RESOURCE2 | rabbitmqadmin -H dev82.dev.grnet.gr -P 55672 -u rabbit -p r@bb1t publish routing_key=pithos.resource.diskspace exchange=pithos
#read
MAINCLASS=gr.grnet.aquarium.charging.bill.BillEntry
val walletEntries = w.walletEntries
for { i <- walletEntries} {
if(t.contains(i.referenceTimeslot) && i.sumOfCreditsToSubtract != 0.0){
- //Console.err.println("i.sumOfCreditsToSubtract : " + i.sumOfCreditsToSubtract)
+ Console.err.println("i.sumOfCreditsToSubtract : " + i.sumOfCreditsToSubtract)
sum += i.sumOfCreditsToSubtract
ret += toResourceEntry(i)
} else {
- //Console.err.println("WALLET ENTERY : " + i + "\n" +
- // t + " does not contain " + i.referenceTimeslot + " !!!!")
+ Console.err.println("WALLET ENTERY : " + i + "\n" +
+ t + " does not contain " + i.referenceTimeslot + " !!!!")
}
}
(ret.toList,sum)
val jsonSample = "{\n \"id\":\"2\",\n \"userID\":\"loverdos@grnet.gr\",\n \"status\":\"ok\",\n \"remainingCredits\":\"3130.0000027777783\",\n \"deductedCredits\":\"5739.9999944444435\",\n \"startTime\":\"1341090000000\",\n \"endTime\":\"1343768399999\",\n \"bill\":[{\n \"resourceName\":\"diskspace\",\n \"resourceType\":\"diskspace\",\n \"unitName\":\"MB/Hr\",\n \"totalCredits\":\"2869.9999972222217\",\n \"eventType\":\"object update@/Papers/GOTO_HARMFUL.PDF\",\n\t \"details\":[\n\t {\"totalCredits\":\"2869.9999972222217\",\n\t \"details\":[{\n\t \"id\":\"0\",\n\t \"unitPrice\":\"0.01\",\n\t \"startTime\":\"1342735200000\",\n\t \"endTime\":\"1343768399999\",\n\t \"ellapsedTime\":\"1033199999\",\n\t \"credits\":\"2869.9999972222217\"\n\t \t}]\n\t }\n\t ]\n },{\n \"resourceName\":\"diskspace\",\n \"resourceType\":\"diskspace\",\n \"unitName\":\"MB/Hr\",\n \"totalCredits\":\"2869.9999972222217\",\n \"eventType\":\"object update@/Papers/GOTO_HARMFUL.PDF\",\n \"details\":[\t {\"totalCredits\":\"2869.9999972222217\",\n\t \"details\":[{\n\t \"id\":\"0\",\n\t \"unitPrice\":\"0.01\",\n\t \"startTime\":\"1342735200000\",\n\t \"endTime\":\"1343768399999\",\n\t \"ellapsedTime\":\"1033199999\",\n\t \"credits\":\"2869.9999972222217\"\n\t \t}]\n\t }\n\t]\n }]\n}"
- def main(args: Array[String]) = {
+ def main0(args: Array[String]) = {
val b : BillEntry = StdConverters.AllConverters.convertEx[BillEntry](CompactJsonTextFormat(jsonSample))
val l0 = b.bill
val l1 = aggregateResourceEntries(l0)
}
//
- def main0(args: Array[String]) = {
+ def main(args: Array[String]) = {
//Console.err.println("JSON: " + (new BillEntry).toJsonString)
val propsfile = new FileStreamResource(new File("aquarium.properties"))
var _props: Props = Props(propsfile)(StdConverters.AllConverters).getOr(Props()(StdConverters.AllConverters))