perfsonar-dev - [pS-dev] [GEANT/SA2/ps-java-services] r5856 - trunk/perfsonar-java-sql-ma/src/main/java/org/perfsonar/se rvice/measurementArchive/sqlType/fetch
Subject: perfsonar development work
List archive
[pS-dev] [GEANT/SA2/ps-java-services] r5856 - trunk/perfsonar-java-sql-ma/src/main/java/org/perfsonar/se rvice/measurementArchive/sqlType/fetch
Chronological Thread
- From:
- To:
- Subject: [pS-dev] [GEANT/SA2/ps-java-services] r5856 - trunk/perfsonar-java-sql-ma/src/main/java/org/perfsonar/se rvice/measurementArchive/sqlType/fetch
- Date: Wed, 5 Oct 2011 14:37:50 +0100 (BST)
Author: psnc.pikusa
Date: 2011-10-05 14:37:50 +0100 (Wed, 05 Oct 2011)
New Revision: 5856
Modified:
trunk/perfsonar-java-sql-ma/src/main/java/org/perfsonar/service/measurementArchive/sqlType/fetch/OwampResponseGenerator.java
Log:
Implementation of service two Datum class, one from NMWG and one added by
pikusa to service OWAMP MP aggregation functionality
Modified:
trunk/perfsonar-java-sql-ma/src/main/java/org/perfsonar/service/measurementArchive/sqlType/fetch/OwampResponseGenerator.java
===================================================================
---
trunk/perfsonar-java-sql-ma/src/main/java/org/perfsonar/service/measurementArchive/sqlType/fetch/OwampResponseGenerator.java
2011-10-05 12:24:15 UTC (rev 5855)
+++
trunk/perfsonar-java-sql-ma/src/main/java/org/perfsonar/service/measurementArchive/sqlType/fetch/OwampResponseGenerator.java
2011-10-05 13:37:50 UTC (rev 5856)
@@ -1,6 +1,5 @@
package org.perfsonar.service.measurementArchive.sqlType.fetch;
-
import java.util.Collection;
import java.util.Date;
import java.util.List;
@@ -9,93 +8,210 @@
import org.ggf.ns.nmwg.base.v2_0.Data;
import org.ggf.ns.nmwg.tools.owamp.v2_0.Datum;
import org.perfsonar.base.exceptions.PerfSONARException;
+import
org.perfsonar.service.measurementArchive.sqlType.nmwg.OwampAggregationDatum;
/**
- * Creates the response of service for owamp data.
- *
- * @author fernandes
+ * Creates the response of service for owamp data.
+ *
+ * @author fernandes
+ * @author <a
href="mailto:">Piotr
Pikusa</a>
*/
public class OwampResponseGenerator extends ResponseGenerator {
+ // -------------------------------------- constructors
+ public OwampResponseGenerator() throws PerfSONARException {
- // -------------------------------------- constructors
+ super();
+ }
+
+ /**
+ * Constructor only for test purposes
+ * @param t
+ */
+ public OwampResponseGenerator(String t){
+ super(t);
- public OwampResponseGenerator() throws PerfSONARException {
+ }
- super();
- }
+ // -------------------------------------- public methods
+ public Data getResponse(List resultList) throws Exception {
+ Data data = new Data();
- // -------------------------------------- public methods
+ // This is true when resultList contains data from owamp
table and is
+ // false when it contains data from owamp_agg
+ boolean owamp = true;
+ // First check if results are for ordinary OWAMP (owamp
table) or OWAMP
+ // Aggregate (owamp_agg) table
+ if (resultList.size() > 0) {
+ Collection<String> kCollection = ((Map)
resultList.get(0)).keySet();
+ for (String columnName : kCollection) {
+ if (columnName.equals("seqNum")
+ ||
columnName.equals("sendTime")
+ ||
columnName.equals("sendSynchronized")
+ ||
columnName.equals("sendTimeError")
+ ||
columnName.equals("receiveTime")
+ ||
columnName.equals("receiveSynchronized")
+ ||
columnName.equals("receiveTimeError")
+ || columnName.equals("ttl")) {
+ owamp = true;
+ }
+ else if(columnName.equals("sender")
+ ||
columnName.equals("receiver")
+ || columnName.equals("sent")
+ || columnName.equals("loss")
+ ||
columnName.equals("lostPercent")
+ ||
columnName.equals("duplicates")
+ ||
columnName.equals("minDelay")
+ ||
columnName.equals("medDelay")
+ ||
columnName.equals("maxDelay")
+ ||
columnName.equals("delayUnits")
+ || columnName.equals("error")
+ ||
columnName.equals("errorUnits")
+ || columnName.equals("jitter")
+ ||
columnName.equals("jitterUnits")
+ || columnName.equals("hops")){
+ owamp = false;
+ }
+ }
+ }
+ System.out.println("Here 1");
+ for (int i = 0; i < resultList.size(); i++) {
+ System.out.println("Here 2");
- public Data getResponse(List resultList) throws Exception {
+ Map resultMap = (Map) resultList.get(i);
+ Collection<String> kCollection = ((Map)
resultList.get(i)).keySet();
+ if (owamp) {
+ Datum datum = new Datum();
+
+ for (String column : kCollection) {
+ System.out.println("Here 3");
+ Object value = resultMap.get(column);
+ String className =
value.getClass().getName();
+ String strValue = null;
- Data data = new Data();
+ if
(className.equals("java.lang.Float"))
+ strValue =
Float.toString((Float) value);
+ if
(className.equals("java.lang.Double"))
+ strValue =
Double.toString((Double) value);
+ else if
(className.equals("java.lang.Integer"))
+ strValue =
Integer.toString((Integer) value);
+ else if
(className.equals("java.lang.Long"))
+ strValue =
Long.toString((Long) value);
+ else if
(className.equals("java.lang.Date"))
+ strValue = ((Date)
value).toString();
+ else if
(className.equals("java.lang.String"))
+ strValue = (String) value;
-
- for (int i = 0; i < resultList.size(); i++) {
+ if (strValue != null) {
+ System.out.println("Here 4");
+ if (column.equals("seqNum"))
+
datum.setSeqNum(strValue);
+ else if
(column.equals("sendTime"))
+
datum.setSendTime(strValue);
+ else if
(column.equals("sendSynchronized"))
+
datum.setSendSynchronized(strValue);
+ else if
(column.equals("sendTimeError"))
+
datum.setSendTimeError(strValue);
+ else if
(column.equals("receiveTime"))
+
datum.setReceiveTime(strValue);
+ else if
(column.equals("receiveSynchronized"))
+
datum.setReceiveSynchronized(strValue);
+ else if
(column.equals("receiveTimeError"))
+
datum.setReceiveTimeError(strValue);
+ else if (column.equals("ttl"))
+
datum.setTTL(strValue);
+ // else if
(column.equals("timeType"))
+ //
datum.setTimeType(strValue);
+ // else if
(column.equals("timeValue"))
+ //
datum.setTimeValue(strValue);
- Datum datum = new Datum();
+ //
logger.debug("SQLStorageManager.fetch: "
+ } // + "column: " + column + ",
value: " + strValue );
- Map resultMap = (Map) resultList.get(i);
- Collection<String> kCollection =
((Map)resultList.get(i)).keySet();
+ }
+ data.addChild(datum);
- for (String column : kCollection) {
+ } else {
+ OwampAggregationDatum datum = new
OwampAggregationDatum();
+
+
+ for (String column : kCollection) {
+ System.out.println("Here 3");
+ Object value = resultMap.get(column);
+ String className =
value.getClass().getName();
+ String strValue = null;
- Object value = resultMap.get(column);
- String className = value.getClass().getName();
- String strValue = null;
+ if
(className.equals("java.lang.Float"))
+ strValue =
Float.toString((Float) value);
+ if
(className.equals("java.lang.Double"))
+ strValue =
Double.toString((Double) value);
+ else if
(className.equals("java.lang.Integer"))
+ strValue =
Integer.toString((Integer) value);
+ else if
(className.equals("java.lang.Long"))
+ strValue =
Long.toString((Long) value);
+ else if
(className.equals("java.lang.Date"))
+ strValue = ((Date)
value).toString();
+ else if
(className.equals("java.lang.String"))
+ strValue = (String) value;
- if (className.equals("java.lang.Float"))
- strValue = Float.toString((Float) value);
- if (className.equals("java.lang.Double"))
- strValue = Double.toString((Double) value);
- else if (className.equals("java.lang.Integer"))
- strValue = Integer.toString((Integer) value);
- else if (className.equals("java.lang.Long"))
- strValue = Long.toString((Long) value);
- else if (className.equals("java.lang.Date"))
- strValue = ((Date) value).toString();
- else if (className.equals("java.lang.String"))
- strValue = (String) value;
+ if (strValue != null) {
+ System.out.println("Here 4");
+ if (column.equals("sender"))
+
datum.setSender(strValue);
+ else if
(column.equals("receiver"))
+
datum.setReceiver(strValue);
+ else if
(column.equals("sent"))
+
datum.setSent(strValue);
+ else if
(column.equals("loss"))
+
datum.setLoss(strValue);
+ else if
(column.equals("lostPercent"))
+
datum.setLostPercent(strValue);
+ else if
(column.equals("duplicates"))
+
datum.setDuplicates(strValue);
+ else if
(column.equals("minDelay"))
+
datum.setMinDelay(strValue);
+ else if
(column.equals("medDelay"))
+
datum.setMedDelay(strValue);
+ else if
(column.equals("maxDelay"))
+
datum.setMaxDelay(strValue);
+ else if
(column.equals("error"))
+
datum.setError(strValue);
+ else if
(column.equals("delayUnits"))
+
datum.setDelayUnits(strValue);
+ else if
(column.equals("errorUnits"))
+
datum.setErrorUnits(strValue);
+ else if
(column.equals("jitter"))
+
datum.setJitter(strValue);
+ else if
(column.equals("jitterUnits"))
+
datum.setJitterUnits(strValue);
+ else if
(column.equals("hops"))
+
datum.setHops(strValue);
+ // else if
(column.equals("timeType"))
+ //
datum.setTimeType(strValue);
+ // else if
(column.equals("timeValue"))
+ //
datum.setTimeValue(strValue);
- if (strValue != null) {
+ //
logger.debug("SQLStorageManager.fetch: "
+ } // + "column: " + column + ",
value: " + strValue );
- if (column.equals("seqNum")) datum.setSeqNum(strValue);
- else if (column.equals("sendTime"))
datum.setSendTime(strValue);
- else if (column.equals("sendSynchronized"))
datum.setSendSynchronized(strValue);
- else if (column.equals("sendTimeError"))
datum.setSendTimeError(strValue);
- else if (column.equals("receiveTime"))
datum.setReceiveTime(strValue);
- else if (column.equals("receiveSynchronized"))
datum.setReceiveSynchronized(strValue);
- else if (column.equals("receiveTimeError"))
datum.setReceiveTimeError(strValue);
- else if (column.equals("ttl")) datum.setTTL(strValue);
- else if (column.equals("timeType"))
datum.setTimeType(strValue);
- else if (column.equals("timeValue"))
datum.setTimeValue(strValue);
-
- //logger.debug("SQLStorageManager.fetch: "
- // + "column: " + column + ", value: " + strValue );
+ }
+ System.out.println("DATUM!!! "
+datum.toString());
+ logger.info("DATUM!!!!!!!!!: " +
datum.toString());
+ data.addChild(datum);
+ }
- }
-
- }
-
- data.addChild(datum);
-
- }
-
- return data;
-
- }
-
-
-
-} //OwampResponseGenerator
+ }
+ System.out.println("Here 6");
+ return data;
+ }
+} // OwampResponseGenerator
- [pS-dev] [GEANT/SA2/ps-java-services] r5856 - trunk/perfsonar-java-sql-ma/src/main/java/org/perfsonar/se rvice/measurementArchive/sqlType/fetch, svn-noreply, 10/05/2011
Archive powered by MHonArc 2.6.16.