diff options
Diffstat (limited to 'src/backend/tau/api/search.clj')
-rw-r--r-- | src/backend/tau/api/search.clj | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/src/backend/tau/api/search.clj b/src/backend/tau/api/search.clj deleted file mode 100644 index 9f3132f..0000000 --- a/src/backend/tau/api/search.clj +++ /dev/null @@ -1,39 +0,0 @@ -(ns tau.api.search - (:require - [clojure.java.data :as j] - [ring.util.codec :refer [url-encode url-decode]] - [tau.api.result :as result]) - (:import - org.schabi.newpipe.extractor.search.SearchInfo - org.schabi.newpipe.extractor.InfoItem - org.schabi.newpipe.extractor.NewPipe - org.schabi.newpipe.extractor.Page)) - -(defrecord SearchResult - [items next-page search-suggestion corrected-search?]) - -(defrecord SearchResultPage - [items next-page]) - -(defn get-info - ([service-id query content-filters sort-filter] - (let [service (NewPipe/getService service-id) - query-handler (.. service - (getSearchQHFactory) - (fromQuery query (or content-filters '()) (or sort-filter ""))) - info (SearchInfo/getInfo service query-handler)] - (map->SearchResult - {:items (result/get-results (.getRelatedItems info)) - :next-page (j/from-java (.getNextPage info)) - :search-suggestion (.getSearchSuggestion info) - :corrected-search? (.isCorrectedSearch info)}))) - ([service-id query content-filters sort-filter page-url] - (let [service (NewPipe/getService service-id) - url (url-decode page-url) - query-handler (.. service - (getSearchQHFactory) - (fromQuery query (or content-filters '()) (or sort-filter ""))) - info (SearchInfo/getMoreItems service query-handler (Page. url))] - (map->SearchResultPage - {:items (result/get-results (.getItems info)) - :next-page (j/from-java (.getNextPage info))})))) |