Files
vrpmdv-web/vrpmdvserver/vrpmdvmonitoringschema.py

43 lines
1.3 KiB
Python

import uuid
import datetime as dt
from marshmallow import Schema, fields, post_load, post_dump
from vrpmdvmonitoring import VRPMDV_Monitoring
from vrpmdvmonitoringState import VRPMDVMonitoringStateSchema
class VRPMDV_MonitoringSchema(Schema):
id = fields.UUID()
created_at = fields.DateTime("%m/%d/%Y, %H:%M")
name = fields.String()
samplerate = fields.Integer()
sampleperiod = fields.Integer()
downtime = fields.Integer()
owner = fields.String()
status = fields.String()
#monstate = fields.Enum(VRPMDVMonitoringState)
# def get_envelope_key(self, many):
# """Helper to get the envelope key."""
# key = self.__envelope__["many"] if many else self.__envelope__["single"]
# assert key is not None, "Envelope key undefined"
# return key
# @post_dump(pass_many=True)
# def wrap_with_envelope(self, data, many, **kwargs):
# key = self.get_envelope_key(many)
# return {key: data}
@post_load
def make_vrpmdv_Monitoring(self, data, **kwargs):
mon = VRPMDV_Monitoring(**data)
#create the monitoring on the realtime side
mon.createMonitoring()
return mon