Spaces:
Sleeping
Sleeping
Create scheduler.py
Browse files- modules/scheduler.py +22 -0
modules/scheduler.py
ADDED
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
from datetime import datetime, timedelta
|
2 |
+
import pandas as pd
|
3 |
+
from modules.simulator import simulate_data
|
4 |
+
|
5 |
+
class DataScheduler:
|
6 |
+
def __init__(self):
|
7 |
+
self.last_update = datetime.now() - timedelta(hours=7) # Force initial update
|
8 |
+
self.data = None
|
9 |
+
|
10 |
+
def get_latest_data(self, num_poles, faults):
|
11 |
+
current_time = datetime.now()
|
12 |
+
# Update data every 6 hours
|
13 |
+
if current_time >= self.last_update + timedelta(hours=6):
|
14 |
+
self.data = simulate_data(num_poles, faults)
|
15 |
+
self.last_update = current_time
|
16 |
+
return self.data, self.last_update
|
17 |
+
|
18 |
+
# Singleton instance
|
19 |
+
scheduler = DataScheduler()
|
20 |
+
|
21 |
+
def get_latest_data(num_poles, faults):
|
22 |
+
return scheduler.get_latest_data(num_poles, faults)
|