diff --git a/core/API/Proxy.php b/core/API/Proxy.php index 9964406ea07c1f749f24a8a9acca9c65b45a64c3..1c382865ab7f2e218d8b6cff10a3b9323b62e25d 100644 --- a/core/API/Proxy.php +++ b/core/API/Proxy.php @@ -35,7 +35,7 @@ class Piwik_API_Proxy protected $alreadyRegistered = array(); private $metadataArray = array(); - public $hideIgnoredFunctions = true; + private $hideIgnoredFunctions = true; // when a parameter doesn't have a default value we use this private $noDefaultValue; @@ -252,6 +252,20 @@ class Piwik_API_Proxy { return str_replace(array('Piwik_', '_API'), '', $className); } + + /** + * Sets whether to hide '@ignore'd functions from method metadata or not. + * + * @param bool $hideIgnoredFunctions + */ + public function setHideIgnoredFunctions( $hideIgnoredFunctions ) + { + $this->hideIgnoredFunctions = $hideIgnoredFunctions; + + // make sure metadata gets reloaded + $this->alreadyRegistered = array(); + $this->metadataArray = array(); + } /** * Returns an array containing the values of the parameters to pass to the method to call diff --git a/tests/PHPUnit/Integration/ApiGetReportMetadataTest.php b/tests/PHPUnit/Integration/ApiGetReportMetadataTest.php index b70e6d23e070f336c777a43fad1c30d21ff04401..71883a520110fa4ccac0690075d85fed35219d1b 100755 --- a/tests/PHPUnit/Integration/ApiGetReportMetadataTest.php +++ b/tests/PHPUnit/Integration/ApiGetReportMetadataTest.php @@ -48,7 +48,7 @@ class Test_Piwik_Integration_ApiGetReportMetadata extends IntegrationTestCase // From Piwik 1.5, we hide Goals.getConversions and other get* methods via @ignore, but we ensure that they still work // This hack allows the API proxy to let us generate example URLs for the ignored functions - Piwik_API_Proxy::getInstance()->hideIgnoredFunctions = false; + Piwik_API_Proxy::getInstance()->setHideIgnoredFunctions(false); } public function tearDown() @@ -56,7 +56,7 @@ class Test_Piwik_Integration_ApiGetReportMetadata extends IntegrationTestCase parent::tearDown(); // reset that value after the test - Piwik_API_Proxy::getInstance()->hideIgnoredFunctions = true; + Piwik_API_Proxy::getInstance()->setHideIgnoredFunctions(true); } public function getOutputPrefix()