getOption(Role::DOMAIN_SPECIFIC->paramName()); $author = $input->getOption(Role::AUTHORED_SHORT_URLS->paramName()); if ($author) { yield RoleDefinition::forAuthoredShortUrls(); } if (is_string($domainAuthority)) { yield $this->resolveRoleForAuthority($domainAuthority); } } private function resolveRoleForAuthority(string $domainAuthority): RoleDefinition { if ($domainAuthority === $this->defaultDomain) { throw InvalidRoleConfigException::forDomainOnlyWithDefaultDomain(); } $domain = $this->domainService->getOrCreate($domainAuthority); return RoleDefinition::forDomain($domain); } }