broadfield-dev commited on
Commit
1a2363c
·
verified ·
1 Parent(s): 5ee4c2d

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +9 -28
app.py CHANGED
@@ -2,7 +2,6 @@ from flask import Flask, render_template, request, jsonify
2
  from processor import DatasetCommandCenter
3
  import threading
4
  import uuid
5
- import os
6
 
7
  app = Flask(__name__)
8
  jobs = {}
@@ -11,65 +10,49 @@ jobs = {}
11
  def index():
12
  return render_template('index.html')
13
 
14
- # --- Step 1: Analyze Metadata (Configs/Splits) ---
15
  @app.route('/analyze_metadata', methods=['POST'])
16
  def analyze_metadata():
17
  data = request.json
18
  center = DatasetCommandCenter(token=data.get('token'))
19
- result = center.get_dataset_metadata(data.get('dataset_id'))
20
- return jsonify(result)
21
 
22
  @app.route('/get_splits', methods=['POST'])
23
  def get_splits():
24
  data = request.json
25
  center = DatasetCommandCenter(token=data.get('token'))
26
- result = center.get_splits_for_config(data.get('dataset_id'), data.get('config'))
27
- return jsonify(result)
28
 
29
- # --- Step 2: Inspect Rows ---
30
  @app.route('/inspect_rows', methods=['POST'])
31
  def inspect_rows():
32
  data = request.json
33
  center = DatasetCommandCenter(token=data.get('token'))
34
- result = center.inspect_dataset(
35
- data.get('dataset_id'),
36
- data.get('config'),
37
- data.get('split')
38
- )
39
- return jsonify(result)
40
 
41
- # --- Step 3: Preview Transform ---
42
  @app.route('/preview', methods=['POST'])
43
  def preview():
44
  data = request.json
45
  center = DatasetCommandCenter(token=data.get('token'))
46
  try:
47
  rows = center.preview_transform(
48
- data.get('dataset_id'),
49
- data.get('config'),
50
- data.get('split'),
51
  data.get('recipe', {})
52
  )
53
  return jsonify({"status": "success", "rows": rows})
54
  except Exception as e:
55
  return jsonify({"status": "error", "message": str(e)})
56
 
57
- # --- Step 4: Execute ---
58
  @app.route('/execute', methods=['POST'])
59
  def execute():
60
  data = request.json
61
  job_id = str(uuid.uuid4())
62
-
63
  token = data.get('token')
64
  center = DatasetCommandCenter(token=token)
65
 
66
  args = (
67
- data.get('dataset_id'),
68
- data.get('config'),
69
- data.get('split'),
70
- data.get('target_id'),
71
- data.get('recipe', {}),
72
- data.get('max_rows')
73
  )
74
 
75
  def task():
@@ -80,9 +63,7 @@ def execute():
80
  except Exception as e:
81
  jobs[job_id] = {"status": "failed", "error": str(e)}
82
 
83
- thread = threading.Thread(target=task)
84
- thread.start()
85
-
86
  return jsonify({"status": "started", "job_id": job_id})
87
 
88
  @app.route('/status/<job_id>', methods=['GET'])
 
2
  from processor import DatasetCommandCenter
3
  import threading
4
  import uuid
 
5
 
6
  app = Flask(__name__)
7
  jobs = {}
 
10
  def index():
11
  return render_template('index.html')
12
 
 
13
  @app.route('/analyze_metadata', methods=['POST'])
14
  def analyze_metadata():
15
  data = request.json
16
  center = DatasetCommandCenter(token=data.get('token'))
17
+ return jsonify(center.get_dataset_metadata(data.get('dataset_id')))
 
18
 
19
  @app.route('/get_splits', methods=['POST'])
20
  def get_splits():
21
  data = request.json
22
  center = DatasetCommandCenter(token=data.get('token'))
23
+ return jsonify(center.get_splits_for_config(data.get('dataset_id'), data.get('config')))
 
24
 
 
25
  @app.route('/inspect_rows', methods=['POST'])
26
  def inspect_rows():
27
  data = request.json
28
  center = DatasetCommandCenter(token=data.get('token'))
29
+ return jsonify(center.inspect_dataset(
30
+ data.get('dataset_id'), data.get('config'), data.get('split')
31
+ ))
 
 
 
32
 
 
33
  @app.route('/preview', methods=['POST'])
34
  def preview():
35
  data = request.json
36
  center = DatasetCommandCenter(token=data.get('token'))
37
  try:
38
  rows = center.preview_transform(
39
+ data.get('dataset_id'), data.get('config'), data.get('split'),
 
 
40
  data.get('recipe', {})
41
  )
42
  return jsonify({"status": "success", "rows": rows})
43
  except Exception as e:
44
  return jsonify({"status": "error", "message": str(e)})
45
 
 
46
  @app.route('/execute', methods=['POST'])
47
  def execute():
48
  data = request.json
49
  job_id = str(uuid.uuid4())
 
50
  token = data.get('token')
51
  center = DatasetCommandCenter(token=token)
52
 
53
  args = (
54
+ data.get('dataset_id'), data.get('config'), data.get('split'),
55
+ data.get('target_id'), data.get('recipe', {}), data.get('max_rows')
 
 
 
 
56
  )
57
 
58
  def task():
 
63
  except Exception as e:
64
  jobs[job_id] = {"status": "failed", "error": str(e)}
65
 
66
+ threading.Thread(target=task).start()
 
 
67
  return jsonify({"status": "started", "job_id": job_id})
68
 
69
  @app.route('/status/<job_id>', methods=['GET'])