コード例 #1
0
ファイル: mialb_view.py プロジェクト: yonioren/Mia
 def farm_instance_api(self, farm_id):
     if request.method == 'GET':
         pass
     elif request.method == 'POST':
         args = self.request_data(request)
         return json.dumps(self.model.create_farm_instance(farm_id, args))
     else:
         logger.debug("unknown method: {}".format(
             request.method.to_string()))
         raise ("in MiaLBView.farm_instance_api, unknown method: {}".format(
             request.method.to_string()))
コード例 #2
0
ファイル: mialb_view.py プロジェクト: yonioren/Mia
 def farm_member_api(self, farm_id, member_id):
     if request.method == 'GET':
         return json.dumps(
             self.model.get_farm_member(farm_id, member_id).__dict__)
     elif request.method == 'DELETE':
         return json.dumps(self.model.delete_farm_member(
             farm_id, member_id))
     else:
         logger.debug("unknown method: {}".format(
             request.method.to_string()))
         raise ("in MiaLBView.farm_member_api, unknown method: {}".format(
             request.method.to_string()))
コード例 #3
0
ファイル: mialb_view.py プロジェクト: yonioren/Mia
 def farms_api(self):
     if request.method == 'GET':
         farms_list = []
         for farm in self.model.get_farms():
             farms_list.append(json.dumps(str(farm)))
         return json.dumps(farms_list)
     elif request.method == 'POST':
         args = self.request_data(request)
         res = make_response(self.model.create_farm(args))
         return res.data
     else:
         logger.debug("unknown method: %s" % request.method.to_string())
         raise ("in MiaLBView.farms_api, unknown method: %s" %
                request.method.to_string())
コード例 #4
0
ファイル: mialb_view.py プロジェクト: yonioren/Mia
 def request_data(request):
     if request.headers['Content-Type'] == 'application/json':
         return json.loads(request.data)
     elif request.headers['Content-Type'] == 'text/plain':
         try:
             return json.loads(request.data)
         except Exception:
             raise Exception("couldn't parse request {} as json".format(
                 str(request.data)))
     else:
         logger.debug("unknown content type: %s" %
                      request.headers['Content-Type'])
         raise Exception("unknown content type: {}".format(
             request.headers['Content-Type']))
コード例 #5
0
ファイル: mialb_view.py プロジェクト: yonioren/Mia
    def farm_api(self, farm_id):
        if request.method == 'GET':
            if self.model.get_farm(farm_id):
                response = self.model.get_farm(farm_id).to_json()
            else:
                response = json.dumps({"error": "farm not found"}), 404
        elif request.method == 'PUT':
            args = self.request_data(request)
            response = make_response(self.model.update_farm(farm_id, args))
        elif request.method == 'DELETE':
            response = make_response(self.model.delete_farm(farm_id))
        else:
            logger.debug("unknown method: %s" % request.method.to_string())
            raise ("in MiaLBView.farm_api, unknown method: %s" %
                   request.method.to_string())

        return response
コード例 #6
0
ファイル: mialb_view.py プロジェクト: yonioren/Mia
    def farm_members_api(self, farm_id):
        if request.method == 'GET':
            members_json = []
            for member in self.model.get_farm_members(farm_id):
                members_json.append(json.dumps(member))
            return json.dumps(members_json)

        elif request.method == 'POST':
            kwargs = self.request_data(request)
            if 'Client-IP' in request.headers:
                kwargs['ip'] = request.headers['Client-IP']
            if 'Client-Port' in request.headers:
                kwargs['port'] = request.headers['Client-Port']
            return make_response(
                self.model.create_farm_member(farm_id, **kwargs))
        else:
            logger.debug("unknown method: %s" % request.method.to_string())
            raise ("in MiaLBView.farm_members_api, unknown method: %s" %
                   request.method.to_string())