That fuck shit the fascists are using
at master 73 lines 2.2 kB view raw
1package org.tm.archive.migrations; 2 3import android.content.Context; 4 5import androidx.annotation.NonNull; 6import androidx.annotation.Nullable; 7 8import org.tm.archive.database.SignalDatabase; 9import org.tm.archive.database.StickerTable; 10import org.tm.archive.dependencies.ApplicationDependencies; 11import org.tm.archive.jobmanager.Job; 12import org.tm.archive.jobmanager.JobManager; 13import org.tm.archive.jobs.MultiDeviceStickerPackOperationJob; 14import org.tm.archive.jobs.StickerPackDownloadJob; 15import org.tm.archive.stickers.BlessedPacks; 16import org.tm.archive.util.TextSecurePreferences; 17 18public class StickerLaunchMigrationJob extends MigrationJob { 19 20 public static final String KEY = "StickerLaunchMigrationJob"; 21 22 StickerLaunchMigrationJob() { 23 this(new Parameters.Builder().build()); 24 } 25 26 private StickerLaunchMigrationJob(@NonNull Parameters parameters) { 27 super(parameters); 28 } 29 30 @Override 31 public boolean isUiBlocking() { 32 return false; 33 } 34 35 @Override 36 public @NonNull String getFactoryKey() { 37 return KEY; 38 } 39 40 @Override 41 public void performMigration() { 42 installPack(context, BlessedPacks.ZOZO); 43 installPack(context, BlessedPacks.BANDIT); 44 } 45 46 @Override 47 boolean shouldRetry(@NonNull Exception e) { 48 return false; 49 } 50 51 private static void installPack(@NonNull Context context, @NonNull BlessedPacks.Pack pack) { 52 JobManager jobManager = ApplicationDependencies.getJobManager(); 53 StickerTable stickerDatabase = SignalDatabase.stickers(); 54 55 if (stickerDatabase.isPackAvailableAsReference(pack.getPackId())) { 56 stickerDatabase.markPackAsInstalled(pack.getPackId(), false); 57 } 58 59 jobManager.add(StickerPackDownloadJob.forInstall(pack.getPackId(), pack.getPackKey(), false)); 60 61 if (TextSecurePreferences.isMultiDevice(context)) { 62 jobManager.add(new MultiDeviceStickerPackOperationJob(pack.getPackId(), pack.getPackKey(), MultiDeviceStickerPackOperationJob.Type.INSTALL)); 63 } 64 } 65 66 public static class Factory implements Job.Factory<StickerLaunchMigrationJob> { 67 @Override 68 public @NonNull 69 StickerLaunchMigrationJob create(@NonNull Parameters parameters, @Nullable byte[] serializedData) { 70 return new StickerLaunchMigrationJob(parameters); 71 } 72 } 73}