private function getDomainControllerStrategy(array $domain_controller)
    {
        $protocol = $this->ssl ? $this::PROTOCOL_SSL : $this::PROTOCOL;

        if (count($domain_controller) === 1) {
            return new SingleDomainController($protocol, $domain_controller);
        }

        if ($this->backup === true) {
            return new RebindDomainController($protocol, $domain_controller);
        } else {
            return new LoadBalancingDomainController($protocol, $domain_controller);
        }
    }