def subdevices_put(db, deviceid, sid): body= request.body ddict = body.read() try: deviceinfo = json.loads(ddict)['device'] ip = deviceinfo['ip'] port = deviceinfo['port'] username = deviceinfo['username'] passwd = deviceinfo['passwd'] if (ip == '' or username ==''or port==''): response.status = HTTP_SERVER_ERROR return dict(error='must have the following data (ip, port, username)') device_db = DevicesMgt(db) bret = device_db.update_subdevice( sid, ip, port, username, passwd) if (not bret): response.status = HTTP_SERVER_ERROR return dict(error='can not find the subdevice , detail: id=%s and ip=%s' %(sid, ip)) else: response.status = HTTP_RESPONSE_OK network_devices.modifySubDevice(deviceid, sid, deviceinfo) return dict(ok=True) except Exception as e: response.status = HTTP_SERVER_ERROR return dict(error='%s' % e)
def subdevices_put(db, deviceid, sid): body= request.body ddict = body.read() try: deviceinfo = json.loads(ddict)['device'] ip = deviceinfo['ip'] port = deviceinfo['port'] username = deviceinfo['username'] passwd = deviceinfo['passwd'] if (ip == '' or username ==''or port==''): response.status = HTTP_SERVER_ERROR return dict(error='must have the following data (ip, port, username)') device_db = DevicesMgt(db) bret = device_db.update_subdevice( sid, ip, port, username, passwd) if (not bret): response.status = HTTP_SERVER_ERROR return dict(error='can not find the subdevice , detail: id=%s and ip=%s' %(sid, ip)) else: response.status = HTTP_RESPONSE_OK network_devices.modifySubDevice(deviceid, sid, deviceinfo) return dict(ok=True) except Exception as e: response.status = HTTP_SERVER_ERROR return dict(error='%s' % e)
def devices_config_put(db): body= request.body ddict = body.read() try: deviceinfo = json.loads(ddict)['device'] device_db = DevicesMgt(db) devicename = deviceinfo['devicename'] deviceid = str(deviceinfo['id']) ip = deviceinfo['ip'] username = deviceinfo['username'] passwd = deviceinfo['passwd'] productType = deviceinfo['productType'] version = deviceinfo['version'] port = deviceinfo.get('port') subdevices = deviceinfo.get('subdevices') if (ip == '' or username =='' or productType=='' or devicename==''): response.status = HTTP_SERVER_ERROR return dict(error='must have the following data (ip, devicename, username, productType)') if (subdevices is not None): for sudevice in subdevices: if (sudevice.get('id') == '' or sudevice.get('id') is None or sudevice.get('ip') == '' or sudevice.get('ip') is None or sudevice.get('username') =='' or sudevice.get('username') is None or sudevice.get('port')=='' or sudevice.get('port') is None): response.status = HTTP_SERVER_ERROR return dict(error='subdevices must have the following data (ip, port, username)') drivername = getDrivername(productType, version) if (drivername == None or drivername == ''): response.status = HTTP_SERVER_ERROR return dict(error='can not find the driver , detail: producttype=%s and version=%s' %(productType, version)) # update device ret = device_db.update_device(deviceid, devicename, ip, port, username, passwd, productType, version) if ret == False: response.status = HTTP_SERVER_ERROR return dict(error='id %s , device %s does not exist or devicename is repeat' % (deviceid, devicename)) response.status = HTTP_RESPONSE_OK deviceinfo['driver']= drivername deviceinfo['subdevices'] = None network_devices.modifyDevice(deviceinfo) # update sudevice if (subdevices is not None): for sudevice in subdevices: sid = sudevice.get('id') ip = sudevice.get('ip') username = sudevice.get('username') passwd = sudevice.get('passwd') port = sudevice.get('port') bret = device_db.update_subdevice( sid, ip, port, username, passwd) if (not bret): response.status = HTTP_SERVER_ERROR return dict(error='can not find the subdevice , detail: id=%s and ip=%s' %(sid, ip)) else: response.status = HTTP_RESPONSE_OK network_devices.modifySubDevice(deviceid, sid, sudevice) return dict(ok=True) except Exception as e: response.status = HTTP_SERVER_ERROR return dict(error='%s' % e)
def devices_config_put(db): body= request.body ddict = body.read() try: deviceinfo = json.loads(ddict)['device'] device_db = DevicesMgt(db) devicename = deviceinfo['devicename'] deviceid = str(deviceinfo['id']) ip = deviceinfo['ip'] username = deviceinfo['username'] passwd = deviceinfo['passwd'] productType = deviceinfo['productType'] version = deviceinfo['version'] port = deviceinfo.get('port') subdevices = deviceinfo.get('subdevices') if (ip == '' or username =='' or productType=='' or devicename==''): response.status = HTTP_SERVER_ERROR return dict(error='must have the following data (ip, devicename, username, productType)') if (subdevices is not None): for sudevice in subdevices: if (sudevice.get('id') == '' or sudevice.get('id') is None or sudevice.get('ip') == '' or sudevice.get('ip') is None or sudevice.get('username') =='' or sudevice.get('username') is None or sudevice.get('port')=='' or sudevice.get('port') is None): response.status = HTTP_SERVER_ERROR return dict(error='subdevices must have the following data (ip, port, username)') drivername = getDrivername(productType, version) if (drivername == None or drivername == ''): response.status = HTTP_SERVER_ERROR return dict(error='can not find the driver , detail: producttype=%s and version=%s' %(productType, version)) # update device ret = device_db.update_device(deviceid, devicename, ip, port, username, passwd, productType, version) if ret == False: response.status = HTTP_SERVER_ERROR return dict(error='id %s , device %s does not exist or devicename is repeat' % (deviceid, devicename)) response.status = HTTP_RESPONSE_OK deviceinfo['driver']= drivername deviceinfo['subdevices'] = None network_devices.modifyDevice(deviceinfo) # update sudevice if (subdevices is not None): for sudevice in subdevices: sid = sudevice.get('id') ip = sudevice.get('ip') username = sudevice.get('username') passwd = sudevice.get('passwd') port = sudevice.get('port') bret = device_db.update_subdevice( sid, ip, port, username, passwd) if (not bret): response.status = HTTP_SERVER_ERROR return dict(error='can not find the subdevice , detail: id=%s and ip=%s' %(sid, ip)) else: response.status = HTTP_RESPONSE_OK network_devices.modifySubDevice(deviceid, sid, sudevice) return dict(ok=True) except Exception as e: response.status = HTTP_SERVER_ERROR return dict(error='%s' % e)