public function getMetadata ($forceFetch = false)
    {
        if (empty($this->metadata) || $forceFetch)
        {
            $metadataUrlQuery = new UrlQuery($this->buildViewUrl(), $this->sodaClient->getToken(), $this->sodaClient->getEmail(), $this->sodaClient->getPassword());
            $metadataUrlQuery->setOAuth2Token($this->sodaClient->getOAuth2Token());

            $this->metadata = $metadataUrlQuery->sendGet("", $this->sodaClient->associativeArrayEnabled());
        }

        return $this->metadata;
    }