Esempio n. 1
0
def process_add(uuid, session, mods):
    room = RoomMdl.get_room_with_uuid(uuid=UUID(uuid), session=session)
    for item in mods:
        dev = DeviceMdl.get_device_with_uuid(uuid=UUID(item), session=session)
        room.devices.append(dev)
        session.add(room)
    session.flush()
Esempio n. 2
0
def delete_room(uuid, session):
    room = RoomMdl.get_room_with_uuid(uuid=uuid, session=session)
    if room is None:
        raise ApiOperationError("Room with this uuid is not found", uuid)
    else:
        session.delete(room)
        session.commit()
Esempio n. 3
0
def delete_room(item, session):
    room = RoomMdl.get_room_with_uuid(item)
    session.delete(room)
    session.flush()
    return room
Esempio n. 4
0
def get_room_devices(uuid, acl, session):
    room = RoomMdl.get_room_with_uuid(uuid=uuid, session=session)

    devices = [x for x in room.devices if x.interface is not None and x.interface.read_acl <= acl]
    return devices
Esempio n. 5
0
def process_delete(uuid, session, mods):
    room = RoomMdl.get_room_with_uuid(uuid=UUID(uuid), session=session)
    room.devices = [x for x in room.devices if str(x.uuid) not in mods]
    session.flush()
Esempio n. 6
0
def get_room_devices(uuid, session):
    room = RoomMdl.get_room_with_uuid(uuid=UUID(uuid), session=session)
    devices = room.get_devices(session=session)
    return devices
Esempio n. 7
0
def get_room(uuid, session):
    room = RoomMdl.get_room_with_uuid(uuid=uuid, session=session)
    if room is None:
        raise IncorrectTargetException(uuid, RoomMdl)
    return RoomMdl.get_room_with_uuid(uuid=uuid, session=session)