예제 #1
0
파일: api.py 프로젝트: MarioCarrilloA/fault
    def alarm_update(self, id, values):
        with _session_for_write() as session:
            query = model_query(models.Alarm, session=session)
            query = query.filter_by(id=id)

            count = query.update(values, synchronize_session='fetch')
            if count != 1:
                raise exceptions.AlarmNotFound(alarm=id)
            return query.one()
예제 #2
0
파일: api.py 프로젝트: MarioCarrilloA/fault
 def alarm_destroy(self, id):
     with _session_for_write() as session:
         query = model_query(models.Alarm, session=session)
         query = query.filter_by(uuid=id)
         try:
             query.one()
         except NoResultFound:
             raise exceptions.AlarmNotFound(alarm=id)
         query.delete()
예제 #3
0
파일: api.py 프로젝트: MarioCarrilloA/fault
 def alarm_destroy_by_ids(self, alarm_id, entity_instance_id):
     with _session_for_write() as session:
         query = model_query(models.Alarm, session=session)
         if alarm_id and entity_instance_id:
             query = query.filter_by(alarm_id=alarm_id)
             query = query.filter_by(entity_instance_id=entity_instance_id)
         try:
             query.one()
         except NoResultFound:
             raise exceptions.AlarmNotFound(alarm=alarm_id)
         query.delete()
예제 #4
0
    def alarm_get(self, uuid):
        query = model_query(models.Alarm)

        if uuid:
            query = query.filter_by(uuid=uuid)

        query = add_alarm_filter_by_event_suppression(query, include_suppress=True)
        query = add_alarm_mgmt_affecting_by_event_suppression(query)
        query = add_alarm_degrade_affecting_by_event_suppression(query)

        try:
            result = query.one()
        except NoResultFound:
            raise exceptions.AlarmNotFound(alarm=uuid)

        return result