aboutsummaryrefslogtreecommitdiff
path: root/src/backend/tau/api/playlist.clj
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/tau/api/playlist.clj')
-rw-r--r--src/backend/tau/api/playlist.clj39
1 files changed, 0 insertions, 39 deletions
diff --git a/src/backend/tau/api/playlist.clj b/src/backend/tau/api/playlist.clj
deleted file mode 100644
index 8f2b22c..0000000
--- a/src/backend/tau/api/playlist.clj
+++ /dev/null
@@ -1,39 +0,0 @@
-(ns tau.api.playlist
- (:require
- [clojure.java.data :as j]
- [ring.util.codec :refer [url-decode]]
- [tau.api.result :as result])
- (:import
- org.schabi.newpipe.extractor.playlist.PlaylistInfo
- org.schabi.newpipe.extractor.Page
- org.schabi.newpipe.extractor.NewPipe))
-
-(defrecord Playlist
- [id name playlist-type thumbnail-url uploader-name uploader-url
- uploader-avatar banner-url next-page stream-count related-streams])
-
-(defrecord PlaylistPage
- [next-page related-streams])
-
-(defn get-info
- ([url]
- (let [service (NewPipe/getServiceByUrl (url-decode url))
- info (PlaylistInfo/getInfo service (url-decode url))]
- (map->Playlist
- {:id (.getId info)
- :name (.getName info)
- :playlist-type (j/from-java (.getPlaylistType info))
- :thumbnail-url (.getThumbnailUrl info)
- :banner-url (.getBannerUrl info)
- :uploader-name (.getUploaderName info)
- :uploader-url (.getUploaderUrl info)
- :uploader-avatar (.getUploaderAvatarUrl info)
- :stream-count (.getStreamCount info)
- :next-page (j/from-java (.getNextPage info))
- :related-streams (result/get-results (.getRelatedItems info))})))
- ([url page-url]
- (let [service (NewPipe/getServiceByUrl (url-decode url))
- info (PlaylistInfo/getMoreItems service url (Page. (url-decode page-url)))]
- (map->PlaylistPage
- {:next-page (j/from-java (.getNextPage info))
- :related-streams (result/get-results (.getItems info))}))))