Displaying differences for changeset
 
display as  

src/java/python_Scripts/erosionServiceCall.py

@@ -264,8 +264,12 @@
             logging.warning(f"{service_name} | Attempt #{attempt} failed: {e} |{latitude}|{longitude}|{multipolygon}")
             resq_erosion = erosion_service_call(latitude, longitude, multipolygon, attempt+1)
         else:
-            logging.info(f"{service_name} | Attempt #{attempt} succeded: {resq_erosion.data} |{latitude}|{longitude}|{multipolygon}")
-            return resq_erosion
+            logging.info(f"{service_name} | Attempt #{attempt} succeded |{latitude}|{longitude}|{multipolygon}")
+            if resq_erosion != None:
+                logging.debug(f"Erosion data {resq_erosion.data} |{latitude}|{longitude}|{multipolygon}")
+                return resq_erosion.data
+            else:
+                raise TypeError(f"Response from the erosion service is None |{latitude}|{longitude}|{multipolygon}")
 
 def execute(arg):
 
@@ -279,18 +283,14 @@
         resq_Centroid, multipolygon = centroid_service_call(latitude, longitude)
         # logging.info(resq_Centroid.data)
 
-        resq_erosion = erosion_service_call(latitude, longitude, multipolygon)
-        logging.info(resq_erosion)
+        resq_erosion_data = erosion_service_call(latitude, longitude, multipolygon)
         
-        if resq_erosion is None:
-            raise TypeError()
-
         c_res = Results(idx, latitude, longitude)
         c_res.add_mupolygonkey(multipolygon)
-        c_res.add_state(resq_erosion.data['state']['value'])
-        c_res.add_county(resq_erosion.data['county']['value'])
+        c_res.add_state(resq_erosion_data['state']['value'])
+        c_res.add_county(resq_erosion_data['county']['value'])
 
-        jl_all = [ s for s in resq_erosion.data['detailed_output']['value'] if s[0]['value'] == True ]
+        jl_all = [ s for s in resq_erosion_data['detailed_output']['value'] if s[0]['value'] == True ]
 
         if len(jl_all) > 1:
             ## check which is the main component
@@ -318,13 +318,13 @@
         # wilting point
         c_res.add_weps_wp(extract_json_key_value(jl, key='ifc_weps_surface_wilting_point'))
 
-        c_res.add_WtAvgWaterSoilLoss(resq_erosion.data["WtAvgWaterSoilLoss"]['value'])
-        c_res.add_WtAvgWindSoilLoss(resq_erosion.data["WtAvgWindSoilLoss"]['value'])
-        c_res.add_WtAvgTotalSoilLoss(resq_erosion.data["WtAvgTotalSoilLoss"]['value'])
-        c_res.add_WtAvgWaterEI(resq_erosion.data["WtAvgWaterEI"]['value'])
-        c_res.add_WtAvgWindEI(resq_erosion.data["WtAvgWindEI"]['value'])
+        c_res.add_WtAvgWaterSoilLoss(resq_erosion_data["WtAvgWaterSoilLoss"]['value'])
+        c_res.add_WtAvgWindSoilLoss(resq_erosion_data["WtAvgWindSoilLoss"]['value'])
+        c_res.add_WtAvgTotalSoilLoss(resq_erosion_data["WtAvgTotalSoilLoss"]['value'])
+        c_res.add_WtAvgWaterEI(resq_erosion_data["WtAvgWaterEI"]['value'])
+        c_res.add_WtAvgWindEI(resq_erosion_data["WtAvgWindEI"]['value'])
         
-        legacy_arr = resq_erosion.data["legacy_data_by_mapunit"]['value'][0]
+        legacy_arr = resq_erosion_data["legacy_data_by_mapunit"]['value'][0]
         
         soil_slope = [el['value'] for el in legacy_arr if el['name']=='soil_slp_lgth_fctr'][0]
         soil_loss = [el['value'] for el in legacy_arr if el['name']=='soil_loss_tolr_fctr'][0]
@@ -349,7 +349,7 @@
 
         results.append(c_res)
         logging.info("List of results length: " + str(len(results)))
-        del [c_res]
+        # del [c_res]
 
     except MaxAttemptsException as e:
         # Handle the "max attempts" exception
@@ -360,13 +360,10 @@
         logging.error(f"Failed to perform overall operation after maximum number of failures ({acceptable_failure_num}): {e}")
     
     except TypeError as ex:
-        try:
-            logging.error(f"Failed to extract data |{latitude}|{longitude}|{multipolygon}")
-        except:
-            logging.error(f"Failed to extract data: {ex} ")
+        logging.error(f"TypeError | Failed to extract data: {ex} ")
 
-    except Exception as ex:
-        logging.error(f"Failed to extract data: {ex}")
+    # except Exception as ex:
+    #     logging.error(f"Failed to extract data: {ex}")
 
 # STATIC URLs
 centroidLookup = 'http://csip.engr.colostate.edu:8092/csip-crp1lw/m/centroidlookup/1.0'