params = $params; } /** * Fetch data from given external store URL * * @param string $url An external store URL * @return string|bool The text stored or false on error * @throws MWException */ abstract public function fetchFromURL( $url ); /** * Fetch data from given external store URLs. * * @param array $urls A list of external store URLs * @return array Map from the url to the text stored. Unfound data is not represented */ public function batchFetchFromURLs( array $urls ) { $retval = []; foreach ( $urls as $url ) { $data = $this->fetchFromURL( $url ); // Dont return when false to allow for simpler implementations. // errored urls are handled in ExternalStore::batchFetchFromURLs if ( $data !== false ) { $retval[$url] = $data; } } return $retval; } /** * Insert a data item into a given location * * @param string $location The location name * @param string $data The data item * @return string|bool The URL of the stored data item, or false on error * @throws MWException */ abstract public function store( $location, $data ); /** * Check if a given location is read-only * * @param string $location The location name * @return bool Whether this location is read-only * @since 1.31 */ public function isReadOnly( $location ) { return false; } }