Это должно сработать:
def getIntegrationOption(predicate: IntegrationOption => Boolean) =
availableOptions.find(predicate)
Теперь вы можете использовать его следующим образом:
getIntegrationOption(_.iconUrl == "dsaadsf.png")
Обратите внимание, что, поскольку IntegrationOption
уже является классом дел, вы можете заняться чем-то более сложнымпоиск с сопоставлением с шаблоном и частично примененными функциями:
availableOptions.collectFirst{
case IntegrationOption(Some(1), name, _) => name
}
или:
availableOptions.collectFirst{
case io@IntegrationOption(_, "blah2", _) => io
}