Bill and BillEntry
authorProdromos Gerakios <pgerakios@grnet.gr>
Thu, 23 Aug 2012 14:10:41 +0000 (17:10 +0300)
committerProdromos Gerakios <pgerakios@grnet.gr>
Thu, 23 Aug 2012 14:10:41 +0000 (17:10 +0300)
bill.sh
src/main/scala/gr/grnet/aquarium/charging/bill/BillEntry.scala

diff --git a/bill.sh b/bill.sh
index 371b038..f9471b3 100755 (executable)
--- a/bill.sh
+++ b/bill.sh
@@ -2,7 +2,7 @@
 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\",
@@ -13,8 +13,8 @@ USERCREATE="{
     \"eventType\": \"create\", 
     \"eventVersion\": \"1\", 
     \"isActive\": false, 
-    \"occurredMillis\":  1342731600000, 
-    \"receivedMillis\": 1342731600000, 
+    \"occurredMillis\":  1343772000000, 
+    \"receivedMillis\":  1343772000000, 
     \"role\": \"default\", 
     \"userID\": \"loverdos@grnet.gr\"
 }"
@@ -28,16 +28,34 @@ ADDCREDITS="{
  \"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\",
@@ -57,8 +75,12 @@ RESOURCE1="{
 #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
index a449e13..4fcddc8 100644 (file)
@@ -180,12 +180,12 @@ object AbstractBillEntry {
     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)
@@ -232,7 +232,7 @@ object AbstractBillEntry {
 
   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)
@@ -249,7 +249,7 @@ object AbstractBillEntry {
   }
 
   //
-  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))