getOption(self::DOMAIN_ONLY_PARAM); $author = $input->getOption(self::AUTHOR_ONLY_PARAM); $roleDefinitions = []; if ($author) { $roleDefinitions[] = RoleDefinition::forAuthoredShortUrls(); } if (is_string($domainAuthority)) { $roleDefinitions[] = $this->resolveRoleForAuthority($domainAuthority); } return $roleDefinitions; } private function resolveRoleForAuthority(string $domainAuthority): RoleDefinition { if ($domainAuthority === $this->defaultDomain) { throw InvalidRoleConfigException::forDomainOnlyWithDefaultDomain(); } $domain = $this->domainService->getOrCreate($domainAuthority); return RoleDefinition::forDomain($domain); } }