public function getStreamStatistics($domain, $app, $stream, $options = array())
    {
        list($config, $startDate, $endDate, $aggregate) = $this->parseOptions(
            $options,
            'config',
            'startDate',
            'endDate',
            'aggregate'
        );

        if (empty($domain)) {
            throw new BceClientException("The parameter domain "
                . "should NOT be null or empty string");
        }
        if (empty($app)) {
            throw new BceClientException("The parameter app "
                . "should NOT be null or empty string");
        }
        if (empty($stream)) {
            throw new BceClientException("The parameter stream "
                . "should NOT be null or empty string");
        }
        if (empty($startDate)) {
            throw new BceClientException("The query parameter startDate "
                . "should NOT be null or empty string");
        }
        if (empty($endDate)) {
            throw new BceClientException("The query parameter endDate "
                . "should NOT be null or empty string");
        }


        $params = array(
            'startDate' => $startDate,
            'endDate' => $endDate,
            'aggregate' => $aggregate,
        );

        return $this->sendRequest(
            HttpMethod::GET,
            array(
                'config' => $config,
                'params' => $params,
            ),
            "/statistics/domain/$domain/app/$app/stream/$stream"
        );
    }