diff gnv-artifacts/src/main/java/de/intevation/gnv/chart/ChartFactory.java @ 82:5eb62df21f9a

Added Support for Vertical Profiles Marnet, STAUN, IMIS gnv-artifacts/trunk@111 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Tim Englich <tim.englich@intevation.de>
date Tue, 22 Sep 2009 13:20:30 +0000
parents d117fd4b82e5
children 5d4f5d26bb7a
line wrap: on
line diff
--- a/gnv-artifacts/src/main/java/de/intevation/gnv/chart/ChartFactory.java	Mon Sep 21 11:50:47 2009 +0000
+++ b/gnv-artifacts/src/main/java/de/intevation/gnv/chart/ChartFactory.java	Tue Sep 22 13:20:30 2009 +0000
@@ -244,9 +244,9 @@
             			if (sDebug)
             				sLogger.debug("MaxGap : "+maxGap/1000+" Länge : "+(dEnd.getTime() - dStart.getTime())/1000+
             						      "Intervall "+(dEnd.getTime() - dStart.getTime())/(pEnd-pStart)/1000);
-            			lDate = lRow0.getDate("TIMEVALUE");
+            			lDate = lRow0.getDate("XORDINATE");
             			lDate0 = lDate;
-            			lValue = lRow0.getDouble("DATAVALUE");
+            			lValue = lRow0.getDouble("YORDINATE");
             			if (lValue > lLowerCut && lValue < lUpperCut){
             				//lTimeseries.addOrUpdate(new Minute(lDate), lValue);
             				lTimeseries.add(new Minute(lDate), lValue);
@@ -254,8 +254,8 @@
                 	}
 				//for (int i = pStart+1; i <= pEnd; i++) {
 					lRow1 =lRow;
-					lDate = lRow1.getDate("TIMEVALUE");
-					lValue = lRow1.getDouble("DATAVALUE");
+					lDate = lRow1.getDate("XORDINATE");
+					lValue = lRow1.getDouble("YORDINATE");
 					lDateDiff = lDate.getTime() - lDate0.getTime();
 					if (lDateDiff > maxGap) {
 						// add 1 minute in millisecs to left hand side Date
@@ -298,7 +298,7 @@
 		TimeSeriesCollection lTimeSeriesCollection = new TimeSeriesCollection();
 		try{
 			Date dStart = null, dEnd= null;
-			int break1, break2, break3;
+			String break1, break2, break3;
 			int mStart = 0;
 			int mEnd = 0;
 			
@@ -308,31 +308,31 @@
     //			Row row = new Row(sArrayStrLine);
     			Result row = resultIterator.next();
     			
-    			break1 = row.getInteger("PARAMETERID").intValue(); // 2
-    			break2 = row.getInteger("MEASUREMENTID").intValue();  //3
-    			break3 = row.getInteger("TIMESERIESID").intValue(); // 4
-    			dStart = row.getDate("TIMEVALUE");
+    			break1 = row.getString("GROUP1"); // 2
+    			break2 = row.getString("GROUP2");  //3
+    			break3 = row.getString("GROUP3"); // 4
+    			dStart = row.getDate("XORDINATE");
     			int i = 1;
     			while (resultIterator.hasNext()) {
     			    row = resultIterator.next();
-    				if (break1 != row.getInteger("PARAMETERID").intValue()
-    						|| break2 != row.getInteger("MEASUREMENTID").intValue()
-    					    || break3 != row.getInteger("TIMESERIESID").intValue()){
+    				if (!break1.equals(row.getString("GROUP1"))
+    						|| !break2 .equals(row.getString("GROUP2"))
+    					    || !break3.equals(row.getString("GROUP3"))){
     					String mTimeSeriesName = findValueTitle(parameters,break1)+" "+
     					                         findValueTitle(measurements,break2)+"m";
     					
     					lTimeSeriesCollection.addSeries(createTimeSeries(mTimeSeriesName,
     							resultSet, lUpperCut, lLowerCut, mStart, mEnd, dStart, dEnd));
     					mStart = i;
-    					dStart = row.getDate("TIMEVALUE");
-    					break1 = row.getInteger("PARAMETERID").intValue();
-    					break2 = row.getInteger("MEASUREMENTID").intValue();  //3
-    					break3 = row.getInteger("TIMESERIESID").intValue(); // 4
+    					dStart = row.getDate("XORDINATE");
+    					break1 = row.getString("GROUP1");
+    					break2 = row.getString("GROUP2");  //3
+    					break3 = row.getString("GROUP3"); // 4
     	
     				}
     				mEnd = i;
     				//mEnd ++;
-    				dEnd = row.getDate("TIMEVALUE");
+    				dEnd = row.getDate("XORDINATE");
     				i = i + 1;
     			}
 			
@@ -369,11 +369,19 @@
 	
 }
 
-    private String findValueTitle(Collection<KeyValueDescibeData> values,int pMmtId){
-    	Iterator<KeyValueDescibeData> it = values.iterator();
+    private String findValueTitle(Collection<KeyValueDescibeData> values, String pMmtId){
+    	int id = 0;
+    	try {
+            id = Integer.parseInt(pMmtId);
+        } catch (NumberFormatException e) {
+            sLogger.warn(e,e);
+            return pMmtId;
+        }
+        
+        Iterator<KeyValueDescibeData> it = values.iterator();
     	while(it.hasNext()){
     	    KeyValueDescibeData data = it.next();
-    		if ((long) pMmtId ==data.getKey()){
+    		if (id  ==Integer.parseInt(data.getKey())){ // TODO just a hack
     		    return data.getValue();
     		}
     	}

http://dive4elements.wald.intevation.org