function testGetUrl() { $pubRuleTypes = array(); $filterRules = array(); $publisher = new Services_Gnip_Publisher('name', $pubRuleTypes); $filter = new Services_Gnip_Filter("myFilter", 'false', '', $filterRules); $expected_url = "/publishers/" . $publisher->name . "/filters/" . $filter->name . ".xml"; $this->assertEquals($expected_url, $filter->getUrl($publisher->name)); }
/** * Get Filter. * * @access public * @param string $publisher name of publisher (e.g. "digg") * @param string $name name of filter * @return XMLElement Requested publisher XML data */ function getFilter($publisher, $name) { $filter = new Services_Gnip_Filter($name); $xml = $this->helper->doHttpGet($filter->getUrl($publisher) . ".xml"); return Services_Gnip_Filter::fromXML(new SimpleXMLElement($xml)); }
/** * Retrieves a given filter from a given publisher. You must be the filter * owner to retrieve the filter. * * @param string $publisherName name of the publisher that contains the filter * @param string $filterName name of filter * @param string $scope publisher scope (my or gnip) default is gnip * @return array of filter objects */ function getFilter($publisherName, $filterName, $scope = "gnip") { $scope = $this->_scopeprep($scope); $filter = new Services_Gnip_Filter($filterName); try { $xml = $this->helper->doHttpGet($scope . $filter->getUrl($publisherName)); return Services_Gnip_Filter::fromXML($xml); } catch (Exception $e) { $message = "There was a problem when calling getFilter on publisher {$publisherName}. Status message: "; $this->_handleDebug($message, $this->debug, $e); } }