From cb38660a3a78fa3d1f9380dba005c09991017d8f Mon Sep 17 00:00:00 2001
From: aliveoutside <53598473+aliveoutside@users.noreply.github.com>
Date: Mon, 5 Feb 2024 21:37:18 +0300
Subject: [PATCH] code reformat
---
.../lite/music/downloader/M3UDownloader.java | 43 ++++++-------------
1 file changed, 12 insertions(+), 31 deletions(-)
diff --git a/app/src/main/java/ru/vtosters/lite/music/downloader/M3UDownloader.java b/app/src/main/java/ru/vtosters/lite/music/downloader/M3UDownloader.java
index 65ad29f17..45368d1b4 100644
--- a/app/src/main/java/ru/vtosters/lite/music/downloader/M3UDownloader.java
+++ b/app/src/main/java/ru/vtosters/lite/music/downloader/M3UDownloader.java
@@ -3,6 +3,7 @@ package ru.vtosters.lite.music.downloader;
import android.net.Uri;
import android.text.TextUtils;
import android.util.Log;
+
import com.google.android.exoplayer2.source.hls.playlist.e;
import com.google.android.exoplayer2.source.hls.playlist.f;
import com.google.android.exoplayer2.source.hls.playlist.f.a;
@@ -22,8 +23,10 @@ import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
+
import java.io.File;
import java.io.IOException;
+import java.security.GeneralSecurityException;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
@@ -31,20 +34,12 @@ import java.util.Arrays;
import java.util.List;
import java.util.concurrent.atomic.AtomicInteger;
-public class M3UDownloader
- implements ITrackDownloader {
-
-
+public class M3UDownloader implements ITrackDownloader {
public static M3UDownloader getInstance() {
return Holder.INSTANCE;
}
- static void parse(
- File outDir,
- Callback callback,
- MusicTrack track,
- boolean cache)
- throws IOException {
+ static void parse(File outDir, Callback callback, MusicTrack track, boolean cache) throws IOException {
var parser = new com.google.android.exoplayer2.source.hls.playlist.h(e.a(track.D));
var baseUri = track.D.substring(0, track.D.lastIndexOf("/") + 1);
var segments = ((f) parser.a(Uri.parse(baseUri), IOUtils.openStream(track.D))).o;
@@ -53,7 +48,6 @@ public class M3UDownloader
var resultTs = getResultTsFile(track);
var resultMp3 = getResultMp3File(outDir, cache, track);
try {
-
byte[] buff = downloadTs(baseUri, segments, progress, callback);
IOUtils.writeToFile(resultTs, buff);
@@ -81,21 +75,14 @@ public class M3UDownloader
} else {
callback.onSuccess();
}
- } catch (InvalidAlgorithmParameterException | InvalidKeyException |
- IllegalBlockSizeException |
- BadPaddingException | NoSuchPaddingException |
- NoSuchAlgorithmException e) {
+ } catch (GeneralSecurityException e) {
Log.e("M3UDownloader", "Failed to download track", e.getCause());
} finally {
resultTs.delete();
}
}
- private static byte[]
- downloadTs(String baseUri, List segments,
- AtomicInteger progress, Callback callback
- ) throws IOException, InvalidAlgorithmParameterException,
- InvalidKeyException, IllegalBlockSizeException, BadPaddingException, NoSuchPaddingException, NoSuchAlgorithmException {
+ private static byte[] downloadTs(String baseUri, List segments, AtomicInteger progress, Callback callback) throws IOException, InvalidAlgorithmParameterException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException, NoSuchPaddingException, NoSuchAlgorithmException {
byte[] total = new byte[0];
int size = segments.size();
@@ -107,8 +94,7 @@ public class M3UDownloader
var cipherKey = new SecretKeySpec(IOUtils.readFully(IOUtils.openStream(segment.g)), "AES");
var cipherBytes = segment.h.getBytes();
//if IV doesn't pass, it must be created manually
- if (cipherBytes.length != 16)
- cipherBytes = new byte[16];
+ if (cipherBytes.length != 16) cipherBytes = new byte[16];
var cipherIv = new IvParameterSpec(cipherBytes);
cipher.init(Cipher.DECRYPT_MODE, cipherKey, cipherIv);
buff = cipher.doFinal(buff);
@@ -120,15 +106,14 @@ public class M3UDownloader
System.arraycopy(buff, 0, newBytes, len, n);
total = newBytes;
- callback.onProgress(10 +
- Math.round(80.0f * progress.addAndGet(1) / size));
+ callback.onProgress(10 + Math.round(80.0f * progress.addAndGet(1) / size));
}
return total;
}
public static String getTitle(MusicTrack track) {
- return track.f + (!TextUtils.isEmpty(track.g) ? + '(' + track.g + ')' : "");
+ return track.f + (!TextUtils.isEmpty(track.g) ? '(' + track.g + ')' : "");
}
static File getTsesDir(MusicTrack track) {
@@ -147,11 +132,7 @@ public class M3UDownloader
}
@Override
- public void downloadTrack(
- MusicTrack track,
- File outDir,
- Callback callback,
- boolean cache) {
+ public void downloadTrack(MusicTrack track, File outDir, Callback callback, boolean cache) {
if (track.D.isEmpty()) {
Log.d("TrackDownloader", "link error: " + track.y1() + ", title: " + M3UDownloader.getTitle(track));
callback.onFailure();
@@ -161,7 +142,7 @@ public class M3UDownloader
parse(outDir, callback, track, cache);
} catch (IOException e) {
callback.onFailure();
- Log.e("M3UDownloader", e + "");
+ Log.e("M3UDownloader", String.valueOf(e));
throw new RuntimeException(e);
}
}