Ну почему же? Take — находит по некоему критерию (по урлу, в данном случае)
какой-то элемент, удаляет его из коллекции и возвращает его. Я бы скорее
ожидал, что findAndDelete найдет и, собственно, удалит (включая
уничтожение) объект, и ничего не будет возвращать.