示例#1
0
 def on_app_requested(self, app_id) -> str or int:
     db = DataStore(DataStore.get_db_connection(self._db_conn_str))
     app = db.get_app(app_id)
     if app:
         return json.dumps(app.json())
     else:
         return 404
示例#2
0
 def on_config_update(self, app_id: str, config: str) -> int:
     """
     Config params: data_series_var,
     :param app_id:
     :param config:
     :return:
     """
     db = DataStore(DataStore.get_db_connection(self._db_conn_str))
     db.apply_config(app_id, json.loads(config))
     return 201
示例#3
0
    def on_data_received(self, app_id: str, payload: str, accept_type: str, created: str = None) -> int:

        if created:
            try:
                created = float(created)
            except ValueError:
                return 400

        db = DataStore(DataStore.get_db_connection(self._db_conn_str))
        app_obj = db.get_app(app_id)
        entry_data = payload
        if not entry_data:
            return 400

        if not app_obj:
            db.create_app(app_id)

        # Either its binary or its text, we don't care for anything else when it comes to storage
        if accept_type == self._BINARY:
            return 501
        else:
            db.add_app_entry(app_id, entry_data, datetime.utcfromtimestamp(created) if created else created)
            return 200
示例#4
0
 def on_app_delete(self, app_id: str) -> int:
     db = DataStore(DataStore.get_db_connection(self._db_conn_str))
     db.delete_app(app_id)
     return 204
示例#5
0
 def on_entries_requested_limit_min(self, app_id: str, limit_min: int) -> str:
     db = DataStore(DataStore.get_db_connection(self._db_conn_str))
     return json.dumps(list(map(lambda x: x.json(), db.get_app_entries_limit_time(app_id, limit_min))))
示例#6
0
 def on_all_entries_requested(self, app_id: str) -> str:
     db = DataStore(DataStore.get_db_connection(self._db_conn_str))
     return json.dumps(list(map(lambda x: x.json(), db.get_all_app_entries(app_id))))
示例#7
0
 def on_apps_requested(self) -> str:
     db = DataStore(DataStore.get_db_connection(self._db_conn_str))
     return json.dumps(list(map(lambda x: x.json(), db.get_apps())))