- # if vim type is openstack, use latest "newton" version as default
- if vim["type"] == "openstack":
- vim["type"] = "multivim-newton"
+ except Exception as e:
+ logger.error("get_vim_by_id, exception: %s" % e)
+ return HttpResponse("Not a valid VIM instance", status=status.HTTP_404_NOT_FOUND)
+
+ try:
+ if vim and vim["type"] == "openstack":
+ if vim["version"] == "kilo":
+ multivimdriver = "multivim-kilo"
+ elif vim["version"] == "newton":
+ multivimdriver = "multivim-newton"
+ else:
+ # if vim type is openstack, use latest "newton" version as default
+ multivimdriver = "multivim-newton"
+ elif vim and vim["type"] == "vmware":
+ multivimdriver = "multivim-vio"
+ else:
+ logger.error("wrong vim id: %s, return from extsys:%s" %
+ vimid, vim)
+ return HttpResponse("Not support VIM type", status=status.HTTP_404_NOT_FOUND)
+
+ route_uri = re.sub('multivim', multivimdriver, request.get_full_path())