|
@@ -1,5 +1,6 @@
|
|
from socketio import Server
|
|
from socketio import Server
|
|
|
|
|
|
|
|
+from pycs import app
|
|
from pycs.database.File import File
|
|
from pycs.database.File import File
|
|
from pycs.database.Label import Label
|
|
from pycs.database.Label import Label
|
|
from pycs.database.Model import Model
|
|
from pycs.database.Model import Model
|
|
@@ -18,7 +19,16 @@ class NotificationManager:
|
|
self.sio = sio
|
|
self.sio = sio
|
|
self.json = JSONEncoder()
|
|
self.json = JSONEncoder()
|
|
|
|
|
|
- def __emit(self, name, obj):
|
|
|
|
|
|
+ def __emit(self, name, obj_id, cls=None):
|
|
|
|
+ if cls is not None:
|
|
|
|
+ assert isinstance(obj_id, int), "Object ID must be an integer!"
|
|
|
|
+ obj = cls.query.get(obj_id)
|
|
|
|
+
|
|
|
|
+ else:
|
|
|
|
+ obj = obj_id
|
|
|
|
+
|
|
|
|
+ app.logger.debug(name, obj)
|
|
|
|
+
|
|
enc = self.json.default(obj)
|
|
enc = self.json.default(obj)
|
|
self.sio.emit(name, enc)
|
|
self.sio.emit(name, enc)
|
|
|
|
|
|
@@ -29,7 +39,6 @@ class NotificationManager:
|
|
:param created_job:
|
|
:param created_job:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('create_job', created_job)
|
|
|
|
self.__emit('create-job', created_job)
|
|
self.__emit('create-job', created_job)
|
|
|
|
|
|
def edit_job(self, edited_job: Job):
|
|
def edit_job(self, edited_job: Job):
|
|
@@ -39,7 +48,6 @@ class NotificationManager:
|
|
:param edited_job:
|
|
:param edited_job:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('edit_job', edited_job)
|
|
|
|
self.__emit('edit-job', edited_job)
|
|
self.__emit('edit-job', edited_job)
|
|
|
|
|
|
def remove_job(self, removed_job: Job):
|
|
def remove_job(self, removed_job: Job):
|
|
@@ -49,145 +57,130 @@ class NotificationManager:
|
|
:param removed_job:
|
|
:param removed_job:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('remove_job', removed_job)
|
|
|
|
self.__emit('remove-job', removed_job)
|
|
self.__emit('remove-job', removed_job)
|
|
|
|
|
|
- def create_model(self, created_model: Model):
|
|
|
|
|
|
+ def create_model(self, created_model_id: int):
|
|
"""
|
|
"""
|
|
fire create-model event
|
|
fire create-model event
|
|
|
|
|
|
:param created_model:
|
|
:param created_model:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('create_model', created_model)
|
|
|
|
- self.__emit('create-model', created_model)
|
|
|
|
|
|
+ self.__emit('create-model', created_model_id, Model)
|
|
|
|
|
|
- def remove_model(self, removed_model: Model):
|
|
|
|
|
|
+ def remove_model(self, removed_model_id: int):
|
|
"""
|
|
"""
|
|
fire remove-model event
|
|
fire remove-model event
|
|
|
|
|
|
:param removed_model:
|
|
:param removed_model:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('remove_model', removed_model)
|
|
|
|
- self.__emit('remove-model', removed_model)
|
|
|
|
|
|
+ self.__emit('remove-model', removed_model_id, Model)
|
|
|
|
|
|
- def create_project(self, created_project: Project):
|
|
|
|
|
|
+ def create_project(self, created_project_id: int):
|
|
"""
|
|
"""
|
|
fire create-project event
|
|
fire create-project event
|
|
|
|
|
|
:param created_project:
|
|
:param created_project:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('create_project', created_project)
|
|
|
|
- self.__emit('create-project', created_project)
|
|
|
|
|
|
+ self.__emit('create-project', created_project_id, Project)
|
|
|
|
|
|
- def remove_project(self, removed_project: Project):
|
|
|
|
|
|
+ def remove_project(self, removed_project_id: int):
|
|
"""
|
|
"""
|
|
fire remove-project event
|
|
fire remove-project event
|
|
|
|
|
|
:param removed_project:
|
|
:param removed_project:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('remove_project', removed_project)
|
|
|
|
- self.__emit('remove-project', removed_project)
|
|
|
|
|
|
+ self.__emit('remove-project', removed_project_id, Project)
|
|
|
|
|
|
- def edit_project(self, edited_project: Project):
|
|
|
|
|
|
+ def edit_project(self, edited_project_id: int):
|
|
"""
|
|
"""
|
|
fire edit-project event
|
|
fire edit-project event
|
|
|
|
|
|
:param edited_project:
|
|
:param edited_project:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('edit_project', edited_project)
|
|
|
|
- self.__emit('edit-project', edited_project)
|
|
|
|
|
|
+ self.__emit('edit-project', edited_project_id, Project)
|
|
|
|
|
|
- def create_label(self, created_label: Label):
|
|
|
|
|
|
+ def create_label(self, created_label_id: int):
|
|
"""
|
|
"""
|
|
fire create-label event
|
|
fire create-label event
|
|
|
|
|
|
:param created_label:
|
|
:param created_label:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('create_label', created_label)
|
|
|
|
- self.__emit('create-label', created_label)
|
|
|
|
|
|
+ self.__emit('create-label', created_label_id, Label)
|
|
|
|
|
|
- def edit_label(self, edited_label: Label):
|
|
|
|
|
|
+ def edit_label(self, edited_label_id: int):
|
|
"""
|
|
"""
|
|
fire edit-label event
|
|
fire edit-label event
|
|
|
|
|
|
:param edited_label:
|
|
:param edited_label:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('edit_label', edited_label)
|
|
|
|
- self.__emit('edit-label', edited_label)
|
|
|
|
|
|
+ self.__emit('edit-label', edited_label_id, Label)
|
|
|
|
|
|
- def remove_label(self, removed_label: Label):
|
|
|
|
|
|
+ def remove_label(self, removed_label_id: int):
|
|
"""
|
|
"""
|
|
fire remove-label event
|
|
fire remove-label event
|
|
|
|
|
|
:param removed_label:
|
|
:param removed_label:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('remove_label', removed_label)
|
|
|
|
- self.__emit('remove-label', removed_label)
|
|
|
|
|
|
+ self.__emit('remove-label', removed_label_id, Label)
|
|
|
|
|
|
- def create_file(self, created_file: File):
|
|
|
|
|
|
+ def create_file(self, created_file_id: int):
|
|
"""
|
|
"""
|
|
fire create-file event
|
|
fire create-file event
|
|
|
|
|
|
:param created_file:
|
|
:param created_file:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('create_file', created_file)
|
|
|
|
- self.__emit('create-file', created_file)
|
|
|
|
|
|
+ self.__emit('create-file', created_file_id, File)
|
|
|
|
|
|
- def edit_file(self, edited_file: File):
|
|
|
|
|
|
+ def edit_file(self, edited_file_id: int):
|
|
"""
|
|
"""
|
|
fire edit-file event
|
|
fire edit-file event
|
|
|
|
|
|
:param edited_file:
|
|
:param edited_file:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('edit_file', edited_file)
|
|
|
|
- self.__emit('edit-file', edited_file)
|
|
|
|
|
|
+ self.__emit('edit-file', edited_file_id, File)
|
|
|
|
|
|
- def remove_file(self, removed_file: File):
|
|
|
|
|
|
+ def remove_file(self, removed_file_id: int):
|
|
"""
|
|
"""
|
|
fire remove-file event
|
|
fire remove-file event
|
|
|
|
|
|
:param removed_file:
|
|
:param removed_file:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('remove_file', removed_file)
|
|
|
|
- self.__emit('remove-file', removed_file)
|
|
|
|
|
|
+ self.__emit('remove-file', removed_file_id, File)
|
|
|
|
|
|
- def create_result(self, created_result: Result):
|
|
|
|
|
|
+ def create_result(self, created_result_id: int):
|
|
"""
|
|
"""
|
|
fire create-result event
|
|
fire create-result event
|
|
|
|
|
|
:param created_result:
|
|
:param created_result:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('create_result', created_result)
|
|
|
|
- self.__emit('create-result', created_result)
|
|
|
|
|
|
+ self.__emit('create-result', created_result_id, Result)
|
|
|
|
|
|
- def edit_result(self, edited_result: Result):
|
|
|
|
|
|
+ def edit_result(self, edited_result_id: int):
|
|
"""
|
|
"""
|
|
fire edit-result event
|
|
fire edit-result event
|
|
|
|
|
|
:param edited_result:
|
|
:param edited_result:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('edit_result', edited_result)
|
|
|
|
- self.__emit('edit-result', edited_result)
|
|
|
|
|
|
+ self.__emit('edit-result', edited_result_id, Result)
|
|
|
|
|
|
- def remove_result(self, removed_result: Result):
|
|
|
|
|
|
+ def remove_result(self, removed_result_id: int):
|
|
"""
|
|
"""
|
|
fire remove-result event
|
|
fire remove-result event
|
|
|
|
|
|
:param removed_result:
|
|
:param removed_result:
|
|
:return:
|
|
:return:
|
|
"""
|
|
"""
|
|
- print('remove_result', removed_result)
|
|
|
|
- self.__emit('remove-result', removed_result)
|
|
|
|
|
|
+ self.__emit('remove-result', removed_result_id, Result)
|