diff options
| author | Georgios Andreadis <info@gandreadis.com> | 2020-06-29 16:05:23 +0200 |
|---|---|---|
| committer | Fabian Mastenbroek <mail.fabianm@gmail.com> | 2020-08-24 16:18:36 +0200 |
| commit | 4f9a40abdc7836345113c047f27fcc96800cb3f5 (patch) | |
| tree | e443d14e34a884b1a4d9c549f81d51202eddd5f7 /opendc/models_old/rack_state.py | |
| parent | cd5f7bf3a72913e1602cb4c575e61ac7d5519be0 (diff) | |
Prepare web-server repository for monorepo
This change prepares the web-server Git repository for the monorepo residing at
https://github.com/atlarge-research.com/opendc. To accomodate for this, we
move all files into a web-server subdirectory.
Diffstat (limited to 'opendc/models_old/rack_state.py')
| -rw-r--r-- | opendc/models_old/rack_state.py | 63 |
1 files changed, 0 insertions, 63 deletions
diff --git a/opendc/models_old/rack_state.py b/opendc/models_old/rack_state.py deleted file mode 100644 index 12e0f931..00000000 --- a/opendc/models_old/rack_state.py +++ /dev/null @@ -1,63 +0,0 @@ -from opendc.models_old.model import Model -from opendc.util import database - - -class RackState(Model): - JSON_TO_PYTHON_DICT = {'RackState': {'rackId': 'rack_id', 'loadFraction': 'load_fraction', 'tick': 'tick'}} - - @classmethod - def _from_database_row(cls, row): - """Instantiate a RackState from a database row.""" - - return cls(rack_id=row[0], load_fraction=row[1], tick=row[2]) - - @classmethod - def from_experiment_id(cls, experiment_id): - """Query RackStates by their Experiment id.""" - - rack_states = [] - - statement = ''' - SELECT racks.id, avg(machine_states.load_fraction), machine_states.tick - FROM racks - JOIN machines ON racks.id = machines.rack_id - JOIN machine_states ON machines.id = machine_states.machine_id - WHERE machine_states.experiment_id = %s - GROUP BY machine_states.tick, racks.id - ''' - results = database.fetch_all(statement, (experiment_id, )) - - for row in results: - rack_states.append(cls._from_database_row(row)) - - return rack_states - - @classmethod - def from_experiment_id_and_tick(cls, experiment_id, tick): - """Query RackStates by their Experiment id.""" - - rack_states = [] - - statement = ''' - SELECT racks.id, avg(machine_states.load_fraction), machine_states.tick - FROM racks - JOIN machines ON racks.id = machines.rack_id - JOIN machine_states ON machines.id = machine_states.machine_id - WHERE machine_states.experiment_id = %s - AND machine_states.tick = %s - GROUP BY machine_states.tick, racks.id - ''' - results = database.fetch_all(statement, (experiment_id, tick)) - - for row in results: - rack_states.append(cls._from_database_row(row)) - - return rack_states - - def google_id_has_at_least(self, google_id, authorization_level): - """Return True if the User has at least the given auth level over this RackState.""" - - if authorization_level in ['EDIT', 'OWN']: - return False - - return True |
