X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=multivimbroker%2Fmultivimbroker%2Fforwarder%2Fviews.py;h=e0980658c39d99ed353313f6baf90844b55184aa;hb=3288950ae32c9476539933d92774757fea1c6f55;hp=82759e56b21af44d85cae415d2c806fe95e1e85c;hpb=0aeb8d832d2e8142083edef1d2dee2f6fc4f1ddc;p=multicloud%2Fframework.git diff --git a/multivimbroker/multivimbroker/forwarder/views.py b/multivimbroker/multivimbroker/forwarder/views.py index 82759e5..e098065 100644 --- a/multivimbroker/multivimbroker/forwarder/views.py +++ b/multivimbroker/multivimbroker/forwarder/views.py @@ -12,68 +12,111 @@ # See the License for the specific language governing permissions and # limitations under the License. -from rest_framework.views import APIView +import os +import json + +from rest_framework.views import APIView +from rest_framework.views import Response +from rest_framework.views import status from multivimbroker.forwarder.base import BaseHandler # -class BaseServer(BaseHandler,APIView): - def get(self,request,vimid): +class BaseServer(BaseHandler, APIView): + + def get(self, request, vimid): raise NotImplementedError() - def post(self,request,vimid): + def post(self, request, vimid): raise NotImplementedError() - def put(self,request,vimid): + def put(self, request, vimid): raise NotImplementedError() - def delete(self,request,vimid): + def delete(self, request, vimid): raise NotImplementedError() - def head(self,request,vimid): + def head(self, request, vimid): raise NotImplementedError() - def patch(self,request,vimid): + def patch(self, request, vimid): raise NotImplementedError() -# vio proxy handler +# proxy handler class Identity(BaseServer): - def get(self,request,vimid): + def get(self, request, vimid): + + return self.send(vimid, request.get_full_path(), request.body, "GET") + + def post(self, request, vimid): + + return self.send(vimid, request.get_full_path(), request.body, "POST") + + +class Registry(BaseServer): + + def post(self, request, vimid): + + return self.send(vimid, request.get_full_path(), request.body, "POST") - return self.send(vimid,request.get_full_path(),request.body,"GET") - def post(self,request,vimid): +class UnRegistry(BaseServer): - return self.send(vimid,request.get_full_path(),request.body,"POST") + def delete(self, request, vimid): + + return self.send(vimid, request.get_full_path(), request.body, + "DELETE") + + +class Extension(BaseServer): + + def get(self, request, vimid): + + return self.send(vimid, request.get_full_path(), request.body, "GET") + + +class VIMTypes(BaseServer): + + def get(self, request): + # Fix here unless we have plugin registry + json_file = os.path.join(os.path.dirname(__file__), + '../pub/config/provider-plugin.json') + with open(json_file, "r") as f: + plugins = json.load(f) + data = {"vim_types": plugins} + return Response(data=data, status=status.HTTP_200_OK) # forward handler class Forward(BaseServer): - def get(self,request,vimid): - - return self.send(vimid,request.get_full_path(),request.body,"GET") + def get(self, request, vimid): - def post(self,request,vimid): + return self.send(vimid, request.get_full_path(), request.body, "GET") - return self.send(vimid,request.get_full_path(),request.body,"POST",headers=None) + def post(self, request, vimid): - def patch(self,request,vimid): + return self.send(vimid, request.get_full_path(), request.body, "POST", + headers=None) - return self.send(vimid,request.get_full_path(),request.body,"PATCH",headers=None) + def patch(self, request, vimid): - def delete(self,request,vimid): + return self.send(vimid, request.get_full_path(), request.body, "PATCH", + headers=None) - return self.send(vimid,request.get_full_path(),request.body,"DELETE",headers=None) + def delete(self, request, vimid): - def head(self,request,vimid): + return self.send(vimid, request.get_full_path(), request.body, + "DELETE", headers=None) - return self.send(vimid,request.get_full_path(),request.body,"HEAD") + def head(self, request, vimid): - def put(self,request,vimid): + return self.send(vimid, request.get_full_path(), request.body, "HEAD") - return self.send(vimid,request.get_full_path(),request.body,"PUT",headers=None) + def put(self, request, vimid): + return self.send(vimid, request.get_full_path(), request.body, "PUT", + headers=None)