Skip to content

Commit

Permalink
Improve error handling of stream resolvers
Browse files Browse the repository at this point in the history
  • Loading branch information
rubengees committed Feb 26, 2017
1 parent be45d77 commit 82a4e60
Show file tree
Hide file tree
Showing 8 changed files with 12 additions and 14 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,11 @@ class ClipfishResolver : StreamResolver() {
private val regex = Regex("video/(\\d+)?")

override fun resolve(url: String): StreamResolutionResult {
val id = regex.find(url)?.groupValues?.get(1)
?: throw StreamResolutionException()
val id = regex.find(url)?.groupValues?.get(1) ?: throw StreamResolutionException()

return StreamResolutionResult(Intent(Intent.ACTION_VIEW,
Uri.parse("clipfish://video/$id?ref=proxer")), {
AppRequiredDialog.show(it, "Clipfish", "com.rtli.clipfish")
})
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,12 +19,11 @@ class CrunchyrollResolver : StreamResolver() {
private val regex = Regex("media_id=(\\d+)")

override fun resolve(url: String): StreamResolutionResult {
val id = regex.find(url)?.groupValues?.get(1)
?: throw StreamResolutionException()
val id = regex.find(url)?.groupValues?.get(1) ?: throw StreamResolutionException()

return StreamResolutionResult(Intent(Intent.ACTION_VIEW,
Uri.parse("crunchyroll://media/$id")), {
AppRequiredDialog.show(it, "Crunchyroll", "com.crunchyroll.crunchyroid")
})
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ class DailyMotionStreamResolver : StreamResolver() {
}
}?.flatten()?.sortedByDescending { it.first }

val result = Uri.parse(mp4Links?.firstOrNull()?.second)
?: throw StreamResolutionException()
val result = Uri.parse(mp4Links?.firstOrNull()?.second
?: throw StreamResolutionException())

return StreamResolutionResult(result, "video/mp4")
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ class Mp4UploadResolver : StreamResolver() {
.url(url)
.build()).execute()

val result = Uri.parse(regex.find(validateAndGetResult(response))?.groupValues?.get(1))
?: throw StreamResolutionException()
val result = Uri.parse(regex.find(validateAndGetResult(response))?.groupValues?.get(1)
?: throw StreamResolutionException())

return StreamResolutionResult(result, "video/mp4")
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ class NovamovStreamResolver : StreamResolver() {
.build()).execute()

val result = Uri.parse(urlRegex.find(validateAndGetResult(apiResponse))
?.groupValues?.get(1)) ?: throw StreamResolutionException()
?.groupValues?.get(1) ?: throw StreamResolutionException())

return StreamResolutionResult(result, "video/x-flv")
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ class StreamcloudResolver : StreamResolver() {
.execute()

val result = Uri.parse(fileRegex.find(validateAndGetResult(response))
?.groupValues?.get(1)) ?: throw StreamResolutionException()
?.groupValues?.get(1) ?: throw StreamResolutionException())

return StreamResolutionResult(result, "video/mp4")
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ class VideoWeedStreamResolver : StreamResolver() {
.build()).execute()

val result = Uri.parse(urlRegex.find(validateAndGetResult(apiResponse))
?.groupValues?.get(1)) ?: throw StreamResolutionException()
?.groupValues?.get(1) ?: throw StreamResolutionException())

return StreamResolutionResult(result, "video/x-flv")
}
Expand Down
2 changes: 1 addition & 1 deletion app/src/main/res/values/strings.xml
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@
<string name="error_resolve">Dieser Hoster konnte nicht verarbeitet werden</string>
<string name="error_topten_removal">Der Eintrag konnte nicht gelöscht werden: %s</string>
<string name="error_reminder_removal">Das Lesezeichen konnte nicht gelöscht werden: %s</string>
<string name="error_stream_resolution">Fehler beim Laden des Streams</string>
<string name="error_stream_resolution">Fehler beim Laden des Streams. Das Video ist eventuell nicht mehr verfügbar</string>
<string name="error_timeout">Der Server hat nicht rechtzeitig geantwortet. Versuche es später
noch einmal
</string>
Expand Down

0 comments on commit 82a4e60

Please sign in to comment.