/** * @param Member $member * @param Channel $channel * @param Campaign $campaign * @return Member */ protected function findExistingMember(Member $member, Channel $channel, Campaign $campaign) { $searchCondition = ['channel' => $channel, 'subscribersList' => $campaign->getSubscribersList()]; if ($originId = $member->getOriginId()) { $searchCondition['originId'] = $originId; } else { $searchCondition['email'] = $member->getEmail(); } return $this->findEntityByIdentityValues(ClassUtils::getClass($member), $searchCondition); }