'MWTidy' => 'includes/parser/Tidy.php',
# includes/search
- 'IBM_DB2SearchResultSet' => 'includes/search/SearchIBM_DB2.php',
'MySQLSearchResultSet' => 'includes/search/SearchMySQL.php',
- 'OracleSearchResultSet' => 'includes/search/SearchOracle.php',
'PostgresSearchResult' => 'includes/search/SearchPostgres.php',
'PostgresSearchResultSet' => 'includes/search/SearchPostgres.php',
'SearchEngineDummy' => 'includes/search/SearchEngine.php',
'SearchUpdate' => 'includes/search/SearchUpdate.php',
'SearchUpdateMyISAM' => 'includes/search/SearchUpdate.php',
'SqliteSearchResultSet' => 'includes/search/SearchSqlite.php',
+ 'SqlSearchResultSet' => 'includes/search/SearchEngine.php',
# includes/specials
'SpecialAllmessages' => 'includes/specials/SpecialAllmessages.php',
}
}
+/**
+ * This class is used for different SQL-based search engines shipped with MediaWiki
+ */
+class SqlSearchResultSet extends SearchResultSet {
+ function __construct( $resultSet, $terms ) {
+ $this->mResultSet = $resultSet;
+ $this->mTerms = $terms;
+ }
+
+ function termMatches() {
+ return $this->mTerms;
+ }
+
+ function numRows() {
+ return $this->mResultSet->numRows();
+ }
+
+ function next() {
+ if ($this->mResultSet === false )
+ return false;
+
+ $row = $this->mResultSet->fetchObject();
+ if ($row === false)
+ return false;
+ return new SearchResult($row);
+ }
+
+ function free() {
+ $this->mResultSet->free();
+ }
+}
/**
* @ingroup Search
* Perform a full text search query and return a result set.
*
* @param $term String: raw search term
- * @return IBM_DB2SearchResultSet
+ * @return SqlSearchResultSet
*/
function searchText( $term ) {
$resultSet = $this->db->resultObject($this->db->query($this->getQuery($this->filter($term), true)));
- return new IBM_DB2SearchResultSet($resultSet, $this->searchTerms);
+ return new SqlSearchResultSet($resultSet, $this->searchTerms);
}
/**
* Perform a title-only search query and return a result set.
*
* @param $term String: taw search term
- * @return IBM_DB2SearchResultSet
+ * @return SqlSearchResultSet
*/
function searchTitle($term) {
$resultSet = $this->db->resultObject($this->db->query($this->getQuery($this->filter($term), false)));
- return new MySQLSearchResultSet($resultSet, $this->searchTerms);
+ return new SqlSearchResultSet($resultSet, $this->searchTerms);
}
array());
}
}
-
-/**
- * @ingroup Search
- */
-class IBM_DB2SearchResultSet extends SearchResultSet {
- function __construct($resultSet, $terms) {
- $this->mResultSet = $resultSet;
- $this->mTerms = $terms;
- }
-
- function termMatches() {
- return $this->mTerms;
- }
-
- function numRows() {
- return $this->mResultSet->numRows();
- }
-
- function next() {
- $row = $this->mResultSet->fetchObject();
- if ($row === false)
- return false;
- return new SearchResult($row);
- }
-}
/**
* @ingroup Search
*/
-class MySQLSearchResultSet extends SearchResultSet {
+class MySQLSearchResultSet extends SqlSearchResultSet {
function MySQLSearchResultSet( $resultSet, $terms, $totalHits=null ) {
- $this->mResultSet = $resultSet;
- $this->mTerms = $terms;
+ parent::__construct( $resultSet, $terms );
$this->mTotalHits = $totalHits;
}
- function termMatches() {
- return $this->mTerms;
- }
-
- function numRows() {
- return $this->mResultSet->numRows();
- }
-
- function next() {
- $row = $this->mResultSet->fetchObject();
- if( $row === false ) {
- return false;
- } else {
- return new SearchResult( $row );
- }
- }
-
- function free() {
- $this->mResultSet->free();
- }
-
-
function getTotalHits() {
return $this->mTotalHits;
}
* Perform a full text search query and return a result set.
*
* @param $term String: raw search term
- * @return OracleSearchResultSet
+ * @return SqlSearchResultSet
*/
function searchText( $term ) {
if ($term == '')
- return new OracleSearchResultSet(false, '');
+ return new SqlSearchResultSet(false, '');
$resultSet = $this->db->resultObject($this->db->query($this->getQuery($this->filter($term), true)));
- return new OracleSearchResultSet($resultSet, $this->searchTerms);
+ return new SqlSearchResultSet($resultSet, $this->searchTerms);
}
/**
* Perform a title-only search query and return a result set.
*
* @param $term String: raw search term
- * @return ORacleSearchResultSet
+ * @return SqlSearchResultSet
*/
function searchTitle($term) {
if ($term == '')
- return new OracleSearchResultSet(false, '');
+ return new SqlSearchResultSet(false, '');
$resultSet = $this->db->resultObject($this->db->query($this->getQuery($this->filter($term), false)));
return new MySQLSearchResultSet($resultSet, $this->searchTerms);
return "\"" . parent::legalSearchChars();
}
}
-
-/**
- * @ingroup Search
- */
-class OracleSearchResultSet extends SearchResultSet {
-
- function __construct($resultSet, $terms) {
- $this->mResultSet = $resultSet;
- $this->mTerms = $terms;
- }
-
- function termMatches() {
- return $this->mTerms;
- }
-
- function numRows() {
- if ($this->mResultSet === false )
- return 0;
- else
- return $this->mResultSet->numRows();
- }
-
- function next() {
- if ($this->mResultSet === false )
- return false;
-
- $row = $this->mResultSet->fetchObject();
- if ($row === false)
- return false;
- return new SearchResult($row);
- }
-}
/**
* @ingroup Search
*/
-class PostgresSearchResultSet extends SearchResultSet {
+class PostgresSearchResultSet extends SqlSearchResultSet {
function __construct( $resultSet, $terms ) {
- $this->mResultSet = $resultSet;
- $this->mTerms = $terms;
- }
-
- function termMatches() {
- return $this->mTerms;
- }
-
- function numRows() {
- return $this->mResultSet->numRows();
+ parent::__construct( $resultSet, $terms );
}
function next() {
/**
* @ingroup Search
*/
-class SqliteSearchResultSet extends SearchResultSet {
+class SqliteSearchResultSet extends SqlSearchResultSet {
function SqliteSearchResultSet( $resultSet, $terms, $totalHits=null ) {
- $this->mResultSet = $resultSet;
- $this->mTerms = $terms;
+ parent::__construct( $resultSet, $terms );
$this->mTotalHits = $totalHits;
}
- function termMatches() {
- return $this->mTerms;
- }
-
- function numRows() {
- return $this->mResultSet->numRows();
- }
-
- function next() {
- $row = $this->mResultSet->fetchObject();
- if( $row === false ) {
- return false;
- } else {
- return new SearchResult( $row );
- }
- }
-
- function free() {
- $this->mResultSet->free();
- }
-
-
function getTotalHits() {
return $this->mTotalHits;
}