def path_hierarchy(self, path, strip=False): try: files = [] fileresult = [] for r, d, f in os.walk(path): for file in f: file.strip(path) files.append(os.path.join(r, file)) if len(files) > 0: for f in files: if "__init__" not in f: if "__pycache__" not in f: if "_model.py" not in f: if self.strip: if self.strip in f: ftmpfile = f.replace(self.strip, '') fileresult.append( ftmpfile.replace(path, '')) resultdata = ResponseBasic(status="success", data={ "task_result": { "templates": fileresult } }).dict() return resultdata except Exception as e: return str(e)
def remove_template(self, payload: Dict[str, str]): try: template_path = self.routing_table[payload["route_type"]][ "path"] + payload["name"] + self.routing_table[ payload["route_type"]]["extn"] os.remove(template_path) resultdata = ResponseBasic(status="success", data={ "task_result": { "removed": payload["name"] } }).dict() return resultdata except Exception as e: error = ResponseBasic(status="error", data={ "task_result": { "error": str(e) } }).dict() return error
def add_template(self, payload: Dict[str, str]): try: raw_base = base64.b64decode( payload["base64_payload"]).decode('utf-8') template_path = self.routing_table[payload["route_type"]][ "path"] + payload["name"] + self.routing_table[ payload["route_type"]]["extn"] with open(template_path, "w") as file: file.write(raw_base) resultdata = ResponseBasic(status="success", data={ "task_result": { "added": payload["name"] } }).dict() return resultdata except Exception as e: error = ResponseBasic(status="error", data={ "task_result": { "error": str(e) } }).dict() return error
def get_template(self, payload: Dict[str, str]): try: template_path = self.routing_table[payload["route_type"]][ "path"] + payload["name"] + self.routing_table[ payload["route_type"]]["extn"] result = None with open(template_path, "r") as file: result = file.read() raw_base = base64.b64encode(result.encode('utf-8')) resultdata = ResponseBasic(status="success", data={ "task_result": { "base64_payload": raw_base } }).dict() return resultdata except Exception as e: error = ResponseBasic(status="error", data={ "task_result": { "error": str(e) } }).dict() return error
def get_scheduled_jobs(self): result = [] result_data = False res = self.scheduler.get_jobs(jobstore="default") if res: for r in res: kwar = self.purge_creds(kw=r.kwargs) result.append( { "name": r.name, "id": r.id, "trigger": f"{r.trigger}", "next_run_time": f"{r.next_run_time}", "payload": kwar } ) result_data = ResponseBasic(status="success", data={ "task_result": {"scheduled_tasks": result} }).dict() return result_data