Example #1
0
 def post(self, request):
     user_id = self.request.user.id
     postdata = json.loads(request.body)
     # logger.debug("BundleSearch: user_id=%s; search_string=%s.", user_id, search_string)
     service = BundleService(self.request.user)
     try:
         #TODO CHECKING
         command = postdata['data'][-1].strip("'")
         items = postdata['data'][:-1]
         targets = {}
         for item in items:
             (key, target) = item.split(':', 1)
             if key == '':
                 key = target  # Set default key to be same as target
             targets[key] = [target, ''] # TODO PATH
         #     targets[key] = self.parse_target(client, worksheet_uuid, target)
         new_bundle_uuid = service.derive_bundle('run', targets, postdata['worksheet_uuid'], command)
         return Response({'uuid': new_bundle_uuid}, content_type="application/json")
     except Exception as e:
         logging.error(self.__str__())
         logging.error(smart_str(e))
         logging.error('')
         logging.debug('-------------------------')
         tb = traceback.format_exc()
         logging.error(tb)
         logging.debug('-------------------------')
         return Response(status=service.http_status_from_exception(e))