refactor and tested user_connection_manager