class MyUsers(db.Document, UserMixin): name = db.StringField(max_length=20) email = db.EmailField(max_length=50) picture = db.StringField() permission = db.StringField(default='user') access_date = db.DateTimeField(default=datetime.now()) last_access = db.DateTimeField(default=datetime.now())
class ComputeNodes(db.Document): name = db.StringField(max_length=50) owner = db.StringField(max_length=50) cpu = db.EmbeddedDocumentField('CPUUsage', required=True, default=CPUUsage()) memory = db.EmbeddedDocumentField('MemoryUsage', required=True, default=MemoryUsage()) disk = db.EmbeddedDocumentField('DiskUsage', required=True, default=DiskUsage()) create_date = db.DateTimeField(default=datetime.now()) update_date = db.DateTimeField(default=datetime.now()) online = db.StringField(max_length=50) key = db.StringField(max_length=10)
class Cameras(db.Document): owner = db.StringField(max_length=50) group_name = db.StringField(max_length=50) name = db.StringField(max_length=12) description = db.StringField(max_length=50) uri = db.StringField(max_length=200) refresh = db.StringField(max_length=10) # port = db.StringField(max_length = 50) # username = db.StringField(max_length = 50) # password = db.StringField(max_length = 50) create_date = db.DateTimeField(default=datetime.now()) compute_id = db.StringField(max_length=50, default="None") shared = db.StringField(max_length=50) update_date = db.DateTimeField(default=datetime.now())
class PermissionList(db.Document): permission = db.StringField(max_length=20)
class CameraInComputeNodes(db.Document): camera_name = db.StringField(max_length=50) compute_name = db.StringField(max_length=50) owner = db.StringField(max_length=50)
class GroupOfCameras(db.Document): group_name = db.StringField(max_length=50) owner = db.StringField(max_length=50) create_date = db.DateTimeField(default=datetime.now()) c_lat = db.StringField(max_length=50) c_long = db.StringField(max_length=50)
class SharedCameras(db.Document): camera_id = db.StringField(max_length=50) shared = db.StringField(max_length=50)