+ /**
+ * @param string $term
+ * @return SearchResultSet|Status|null
+ */
+ final public function doSearchText( $term ) {
+ return $this->doSearchTextInDB( $this->extractNamespacePrefix( $term ) );
+ }
+
+ /**
+ * Perform a full text search query and return a result set.
+ *
+ * @param string $term Raw search term
+ * @return SqlSearchResultSet
+ */
+ abstract protected function doSearchTextInDB( $term );
+
+ /**
+ * @param string $term
+ * @return SearchResultSet|null
+ */
+ final public function doSearchTitle( $term ) {
+ return $this->doSearchTitleInDB( $this->extractNamespacePrefix( $term ) );
+ }
+
+ /**
+ * Perform a title-only search query and return a result set.
+ *
+ * @param string $term Raw search term
+ * @return SqlSearchResultSet
+ */
+ abstract protected function doSearchTitleInDB( $term );
+