From 8627c1de373491331f30e3be2ebd79a3934a298d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20P=C3=A9ters?= Date: Wed, 29 Jun 2022 12:07:19 +0200 Subject: [PATCH] remove obsolete/python2 getTest endpoint --- grandlyon_iodas/models.py | 105 -------------------------------------- 1 file changed, 105 deletions(-) diff --git a/grandlyon_iodas/models.py b/grandlyon_iodas/models.py index 1748230..a30cc08 100644 --- a/grandlyon_iodas/models.py +++ b/grandlyon_iodas/models.py @@ -135,108 +135,3 @@ class grandlyonIodas(BaseResource): 'procedures': procedures, #'etapes': sorted(data['procedurespa']['procedurespa']['procedurepa'][nbProc]['etapes']['etape'], key=lambda x: x['id'], reverse=True) if 'procedures' in data else '', 'found': 1 if 'procedurespa' in data else 0} - - @endpoint(perm='can_access') - def getTest(self, request, container): - import urllib2 - import base64 - import dateutil.parser - from collections import defaultdict - from xml.etree import cElementTree as ET - - # Convert XML to dict - def etree_to_dict(t): - d = {t.tag: {} if t.attrib else None} - children = list(t) - if children: - dd = defaultdict(list) - for dc in map(etree_to_dict, children): - for k, v in dc.items(): - dd[k.replace('{http://www.opengroup.org/xsd/omi/1.0/}','').replace('{http://www.opengroup.org/xsd/odf/1.0/}','')].append(v) - d = {t.tag: {k: v[0] if len(v) == 1 else v for k, v in dd.items()}} - if t.attrib: - d[t.tag].update((k, v) for k, v in t.attrib.items()) - if t.text: - text = t.text.strip() - if children or t.attrib: - if text: - d[t.tag]['text'] = text - else: - d[t.tag] = text - return d - - url = 'https://biotope-omi.alpha.grandlyon.com' - - # Get container and sensor from csv file with ID from data.grandlyon.com - reqContainer = requests.get('https://passerelle.guichet-dev.grandlyon.com/csvdatasource/biotope/data?q='+container) - container = reqContainer.json() - - # Get container - containerDict={} - if container['data'][0]['id'] and container['data'][0]['id'] != '' and len(container['data'][0]['id']) > 14 : - payload='' - payload+='' - payload+='' - payload+='' - payload+='' - payload+='Organization:Mineris-V1.0.0' - payload+='' - payload+='Deployment:Bottle_Bank' - payload+='' - payload+=''+container['data'][0]['id']+'' - payload+='' - payload+='' - payload+='' - payload+='' - payload+='' - payload+='' - payload+='' - head = {"Content-type": "application/xml"} - req = requests.post(url, headers=head, data=payload) - # XML result to dict - containerRes = ET.XML(req.text.encode('utf8')) - containerDict = etree_to_dict(containerRes) - - # Get sensor - sensorDict={} - if container['data'][0]['sensor'] and container['data'][0]['sensor'] != '' : - payloadSensor='' - payloadSensor+='' - payloadSensor+='' - payloadSensor+='' - payloadSensor+='' - payloadSensor+='Organization:SigrenEa-V1.1.0' - payloadSensor+='' - payloadSensor+='Deployment:Bottle_Bank:1edd171c-5f2d-11e8-a6ab-10604b7fb2e7' - payloadSensor+='' - payloadSensor+=''+container['data'][0]['sensor']+'' - payloadSensor+='' - payloadSensor+='' - payloadSensor+='' - payloadSensor+='' - payloadSensor+='' - payloadSensor+='' - payloadSensor+='' - headSensor = {"Content-type": "application/xml"} - reqSensor = requests.post(url, headers=headSensor, data=payloadSensor) - # XML result to dict - sensRes = ET.XML(reqSensor.text.encode('utf8')) - sensorDict = etree_to_dict(sensRes) - - # Build result dict - result = {} - if containerDict : - # Container info - for item in containerDict["{http://www.opengroup.org/xsd/omi/1.0/}omiEnvelope"]["response"]["result"]["msg"]["Objects"]["Object"]["Object"]["Object"]["InfoItem"] : - result.update({ item["name"].replace('schema:','') : dateutil.parser.parse(item["value"]["text"]).strftime("%d/%m/%Y") if "date" in item["name"] else item["value"]["text"] }) - if sensorDict : - # Id Container - result.update({'idContainer':sensorDict["{http://www.opengroup.org/xsd/omi/1.0/}omiEnvelope"]["response"]["result"]["msg"]["Objects"]["Object"]["Object"]["Object"]["Object"]["Object"]['id']}) - # Sensor info - for item in sensorDict["{http://www.opengroup.org/xsd/omi/1.0/}omiEnvelope"]["response"]["result"]["msg"]["Objects"]["Object"]["Object"]["Object"]["Object"]["Object"]["InfoItem"] : - result.update({ item["name"].replace('schema:','').replace('FIWARE:','') : item["value"]["text"] }) - for subItem in sensorDict["{http://www.opengroup.org/xsd/omi/1.0/}omiEnvelope"]["response"]["result"]["msg"]["Objects"]["Object"]["Object"]["Object"]["Object"]["Object"]["Object"] : - if 'InfoItem' in subItem : - result.update({subItem['id'].replace('Container:',''):subItem['InfoItem']}) - - return result