def get_profile_id_from_active_user_session(self, user_id): session = get_session() session_ref = session.query(SessionModel.service_graph_id).filter_by(user_id = user_id).filter_by(ended = None).filter_by(error = None).first() if session_ref is None: raise sessionNotFound("Session Not Found") return session_ref.service_graph_id
def get_active_user_session_from_id(self, session_id): session = get_session() with session.begin(): user_session = session.query(SessionModel).filter_by(id=session_id).filter_by(ended = None).filter_by(error = None).first() if not user_session: raise sessionNotFound("Session Not Found") return user_session
def get_active_user_session(self, user_id): ''' returns if exists an active session of the user ''' session = get_session() session_ref = session.query(SessionModel).filter_by(user_id = user_id).filter_by(ended = None).filter_by(error = None).first() if session_ref is None: raise sessionNotFound("Session Not Found") return session_ref
def get_active_user_session_by_nf_fg_id(self, service_graph_id, error_aware=True): session = get_session() if error_aware: session_ref = session.query(SessionModel).filter_by(service_graph_id = service_graph_id).filter_by(ended = None).filter_by(error = None).first() else: session_ref = session.query(SessionModel).filter_by(service_graph_id = service_graph_id).filter_by(ended = None).order_by(desc(SessionModel.started_at)).first() if session_ref is None: raise sessionNotFound("Session Not Found, for servce graph id: "+str(service_graph_id)) return session_ref
def get_active_user_device_session(self, user_id, mac_address = None, error_aware=True): ''' returns if exists an active session of the user connected on the port of the switch passed ''' session = get_session() if error_aware is True: user_session = session.query(SessionModel).filter_by(user_id = user_id).filter_by(ended = None).filter_by(error = None).first() else: user_session = session.query(SessionModel).filter_by(user_id = user_id).filter_by(ended = None).first() if user_session is None: raise sessionNotFound("Session Not Found") if mac_address is None: return 1, user_session logging.debug("MAC address:"+str(mac_address)) devices = session.query(UserDeviceModel).filter_by(session_id = user_session.id).all() for device in devices: logging.debug("device MAC address:"+str(device.mac_address)+" MAC address:"+str(mac_address)) if device.mac_address == mac_address: return len(devices), user_session raise sessionNotFound("Device not found in the user session")