perfsonar-dev - perfsonar: r5190 - branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm
Subject: perfsonar development work
List archive
- From:
- To:
- Subject: perfsonar: r5190 - branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm
- Date: Wed, 17 Jun 2009 14:14:55 -0400
Author: nina
Date: 2009-06-17 14:14:54 -0400 (Wed, 17 Jun 2009)
New Revision: 5190
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm/IPPMRequest.java
Log:
Improved support for error messages in Hades schema.
Fix for Bug 779 (when data item with error message is parsed , the
time/value series is cleared and the previously read data from the same
message is lost)
Modified:
branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm/IPPMRequest.java
===================================================================
--- branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm/IPPMRequest.java
2009-06-17 14:01:51 UTC (rev 5189)
+++ branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm/IPPMRequest.java
2009-06-17 18:14:54 UTC (rev 5190)
@@ -197,7 +197,16 @@
Element param2 = document.createElementNS(URI_nmwg[version][1],
E_PARAMETER);
param2.setAttribute("name",E_ENDTIME);
- param2.setTextContent(userData.getEndTime());
+ try {
+ long time = 1000* Long.parseLong(userData.getEndTime());
+ if (time > System.currentTimeMillis())
+
param2.setTextContent(Long.toString(System.currentTimeMillis()));
+ else
+ param2.setTextContent(userData.getEndTime());
+ } catch (Exception x) {
+ param2.setTextContent(userData.getEndTime());
+ }
+
param2.setPrefix(URI_nmwg[version][0]);
Element eventtype1=
document.createElementNS(URI_nmwg[version][1],"eventType" );
@@ -397,16 +406,17 @@
@Override
public void process(org.w3c.dom.Element data,
ArrayList<org.w3c.dom.Element> metadataChain) throws Exception {
IPPMUserData udata = new IPPMUserData();
- response.setUserData(udata);
+
for (int i=0; i < metadataChain.size();i++) {
processMetadata(udata,metadataChain.get(i));
String status = processNode(metadataChain.get(i));
- if (status.equals("error.ma.data")) {
+ if (status.startsWith("error")) {
String description = processNode(data) + "\nPossible
cause: No measurements for the selected date. \nTry to select different
date.";
responseListener.callException(new
PerfsonarResponseEvent(null,udata,
new
PSErrorCodeException(getActive_endpoint(),status,description)));
}
}
+ response.setUserData(udata);
NodeList values =
data.getElementsByTagNameNS("http://ggf.org/ns/nwmg/tools/hades/aggregated",
IPPMUserData.NMWG_DATUM);
for (int j=0; j < values.getLength();j++)
if (Node.ELEMENT_NODE == values.item(j).getNodeType())
@@ -422,6 +432,7 @@
PSDatum datum =
(PSDatum)Class.forName(type_classes[m]).newInstance();
datum.setValue(value);
response.setDatum(data.getAttribute(E_ID), measurements[m][k],time,datum);
+
}
} catch (Exception x) {
logger.error(x);
- perfsonar: r5190 - branches/perfsonarui/src/org/perfsonar/perfsonarui/ippm, svnlog, 06/17/2009
Archive powered by MHonArc 2.6.16.