public function addDefaultScope(IScope $scope)
    {
        if (!$this->defaultScopes->contains($scope)) {
            $this->defaultScopes->attach($scope);
        } else {
            throw new \InvalidArgumentException("Scope '{$scope->getId()}' is already registered as default scope.");
        }
    }