package mediabrowser.apiinteraction.android; import mediabrowser.apiinteraction.tasks.CancellationToken; import mediabrowser.apiinteraction.tasks.IProgress; import mediabrowser.model.devices.LocalFileInfo; import java.io.FileInputStream; import java.io.IOException; public class UploadFileRunnable implements Runnable { private AndroidApiClient apiClient; private FileInputStream fileInputStream; private LocalFileInfo file; private IProgress<Double> progress; private CancellationToken cancellationToken; public UploadFileRunnable(AndroidApiClient apiClient, FileInputStream fileInputStream, LocalFileInfo file, IProgress<Double> progress, CancellationToken cancellationToken) { this.apiClient = apiClient; this.fileInputStream = fileInputStream; this.file = file; this.progress = progress; this.cancellationToken = cancellationToken; } @Override public void run() { try { apiClient.PerformUploadFile(fileInputStream, file, progress, cancellationToken); } catch (Exception e) { progress.reportError(e); } } }