Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 23d80af5 authored by Hall Liu's avatar Hall Liu
Browse files

Apply suggested edits to the file-download API

* Rename Manager -> Session
* Add Handler for callbacks in download flow
* Separate out registering a state callback into another method
* Rename dispose -> close, implement AutoClosable
* No more thrown MbmsExceptions
* Add sanity check for temp file root
* Remove the getNames method, replace with getNameForLocale

Bug: 30981736
Test: testapps
Change-Id: I1a2054d79c934bc4929464de4a644b6960db47e9
parent 1bbf2878
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -486,7 +486,7 @@ LOCAL_SRC_FILES += \
	telecomm/java/com/android/internal/telecom/IInCallService.aidl \
	telecomm/java/com/android/internal/telecom/ITelecomService.aidl \
	telecomm/java/com/android/internal/telecom/RemoteServiceCallback.aidl \
        telephony/java/android/telephony/mbms/IMbmsDownloadManagerCallback.aidl \
	telephony/java/android/telephony/mbms/IMbmsDownloadSessionCallback.aidl \
	telephony/java/android/telephony/mbms/IMbmsStreamingSessionCallback.aidl \
	telephony/java/android/telephony/mbms/IDownloadStateCallback.aidl \
        telephony/java/android/telephony/mbms/IStreamingServiceCallback.aidl \
+22 −22
Original line number Diff line number Diff line
@@ -39750,20 +39750,20 @@ package android.telephony {
    field public static final int STATUS_UNKNOWN_ERROR = 4; // 0x4
  }
  public class MbmsDownloadManager {
    method public void cancelDownload(android.telephony.mbms.DownloadRequest) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback, android.os.Handler) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback, int) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback, int, android.os.Handler) throws android.telephony.mbms.MbmsException;
    method public void dispose();
    method public void download(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback, android.os.Handler) throws android.telephony.mbms.MbmsException;
    method public int getDownloadStatus(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) throws android.telephony.mbms.MbmsException;
    method public void getFileServices(java.util.List<java.lang.String>) throws android.telephony.mbms.MbmsException;
  public class MbmsDownloadSession implements java.lang.AutoCloseable {
    method public void cancelDownload(android.telephony.mbms.DownloadRequest);
    method public void close();
    method public static android.telephony.MbmsDownloadSession create(android.content.Context, android.telephony.mbms.MbmsDownloadSessionCallback, android.os.Handler);
    method public static android.telephony.MbmsDownloadSession create(android.content.Context, android.telephony.mbms.MbmsDownloadSessionCallback, int, android.os.Handler);
    method public void download(android.telephony.mbms.DownloadRequest);
    method public int getDownloadStatus(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo);
    method public java.io.File getTempFileRootDirectory();
    method public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads() throws android.telephony.mbms.MbmsException;
    method public void resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) throws android.telephony.mbms.MbmsException;
    method public void setTempFileRootDirectory(java.io.File) throws android.telephony.mbms.MbmsException;
    method public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads();
    method public void registerStateCallback(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback, android.os.Handler);
    method public void requestUpdateFileServices(java.util.List<java.lang.String>);
    method public void resetDownloadKnowledge(android.telephony.mbms.DownloadRequest);
    method public void setTempFileRootDirectory(java.io.File);
    method public void unregisterStateCallback(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback);
    field public static final java.lang.String DEFAULT_TOP_LEVEL_TEMP_DIRECTORY = "androidMbmsTempFileRoot";
    field public static final java.lang.String EXTRA_MBMS_COMPLETED_FILE_URI = "android.telephony.extra.MBMS_COMPLETED_FILE_URI";
    field public static final java.lang.String EXTRA_MBMS_DOWNLOAD_RESULT = "android.telephony.extra.MBMS_DOWNLOAD_RESULT";
@@ -40444,7 +40444,7 @@ package android.telephony.mbms {
  public class DownloadStateCallback {
    ctor public DownloadStateCallback();
    method public void onProgressUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int, int, int, int);
    method public void onStateChanged(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int);
    method public void onStateUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int);
  }
  public final class FileInfo implements android.os.Parcelable {
@@ -40462,18 +40462,18 @@ package android.telephony.mbms {
    field public static final android.os.Parcelable.Creator<android.telephony.mbms.FileServiceInfo> CREATOR;
  }
  public class MbmsDownloadManagerCallback {
    ctor public MbmsDownloadManagerCallback();
    method public void onError(int, java.lang.String);
    method public void onFileServicesUpdated(java.util.List<android.telephony.mbms.FileServiceInfo>);
    method public void onMiddlewareReady();
  }
  public class MbmsDownloadReceiver extends android.content.BroadcastReceiver {
    ctor public MbmsDownloadReceiver();
    method public void onReceive(android.content.Context, android.content.Intent);
  }
  public class MbmsDownloadSessionCallback {
    ctor public MbmsDownloadSessionCallback();
    method public void onError(int, java.lang.String);
    method public void onFileServicesUpdated(java.util.List<android.telephony.mbms.FileServiceInfo>);
    method public void onMiddlewareReady();
  }
  public class MbmsException extends java.lang.Exception {
    method public int getErrorCode();
    field public static final int ERROR_MIDDLEWARE_LOST = 3; // 0x3
@@ -40518,7 +40518,7 @@ package android.telephony.mbms {
  public class ServiceInfo {
    method public java.util.List<java.util.Locale> getLocales();
    method public java.util.Map<java.util.Locale, java.lang.String> getNames();
    method public java.lang.CharSequence getNameForLocale(java.util.Locale);
    method public java.lang.String getServiceClassName();
    method public java.lang.String getServiceId();
    method public java.util.Date getSessionEndTime();
+27 −25
Original line number Diff line number Diff line
@@ -43179,20 +43179,20 @@ package android.telephony {
    field public static final int STATUS_UNKNOWN_ERROR = 4; // 0x4
  }
  public class MbmsDownloadManager {
    method public void cancelDownload(android.telephony.mbms.DownloadRequest) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback, android.os.Handler) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback, int) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback, int, android.os.Handler) throws android.telephony.mbms.MbmsException;
    method public void dispose();
    method public void download(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback, android.os.Handler) throws android.telephony.mbms.MbmsException;
    method public int getDownloadStatus(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) throws android.telephony.mbms.MbmsException;
    method public void getFileServices(java.util.List<java.lang.String>) throws android.telephony.mbms.MbmsException;
  public class MbmsDownloadSession implements java.lang.AutoCloseable {
    method public void cancelDownload(android.telephony.mbms.DownloadRequest);
    method public void close();
    method public static android.telephony.MbmsDownloadSession create(android.content.Context, android.telephony.mbms.MbmsDownloadSessionCallback, android.os.Handler);
    method public static android.telephony.MbmsDownloadSession create(android.content.Context, android.telephony.mbms.MbmsDownloadSessionCallback, int, android.os.Handler);
    method public void download(android.telephony.mbms.DownloadRequest);
    method public int getDownloadStatus(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo);
    method public java.io.File getTempFileRootDirectory();
    method public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads() throws android.telephony.mbms.MbmsException;
    method public void resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) throws android.telephony.mbms.MbmsException;
    method public void setTempFileRootDirectory(java.io.File) throws android.telephony.mbms.MbmsException;
    method public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads();
    method public void registerStateCallback(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback, android.os.Handler);
    method public void requestUpdateFileServices(java.util.List<java.lang.String>);
    method public void resetDownloadKnowledge(android.telephony.mbms.DownloadRequest);
    method public void setTempFileRootDirectory(java.io.File);
    method public void unregisterStateCallback(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback);
    field public static final java.lang.String DEFAULT_TOP_LEVEL_TEMP_DIRECTORY = "androidMbmsTempFileRoot";
    field public static final java.lang.String EXTRA_MBMS_COMPLETED_FILE_URI = "android.telephony.extra.MBMS_COMPLETED_FILE_URI";
    field public static final java.lang.String EXTRA_MBMS_DOWNLOAD_RESULT = "android.telephony.extra.MBMS_DOWNLOAD_RESULT";
@@ -43961,7 +43961,7 @@ package android.telephony.mbms {
  public class DownloadStateCallback {
    ctor public DownloadStateCallback();
    method public void onProgressUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int, int, int, int);
    method public void onStateChanged(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int);
    method public void onStateUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int);
  }
  public final class FileInfo implements android.os.Parcelable {
@@ -43981,13 +43981,6 @@ package android.telephony.mbms {
    field public static final android.os.Parcelable.Creator<android.telephony.mbms.FileServiceInfo> CREATOR;
  }
  public class MbmsDownloadManagerCallback {
    ctor public MbmsDownloadManagerCallback();
    method public void onError(int, java.lang.String);
    method public void onFileServicesUpdated(java.util.List<android.telephony.mbms.FileServiceInfo>);
    method public void onMiddlewareReady();
  }
  public class MbmsDownloadReceiver extends android.content.BroadcastReceiver {
    ctor public MbmsDownloadReceiver();
    method public void onReceive(android.content.Context, android.content.Intent);
@@ -43999,6 +43992,13 @@ package android.telephony.mbms {
    field public static final int RESULT_TEMP_FILE_GENERATION_ERROR = 5; // 0x5
  }
  public class MbmsDownloadSessionCallback {
    ctor public MbmsDownloadSessionCallback();
    method public void onError(int, java.lang.String);
    method public void onFileServicesUpdated(java.util.List<android.telephony.mbms.FileServiceInfo>);
    method public void onMiddlewareReady();
  }
  public class MbmsException extends java.lang.Exception {
    method public int getErrorCode();
    field public static final int ERROR_MIDDLEWARE_LOST = 3; // 0x3
@@ -44043,7 +44043,7 @@ package android.telephony.mbms {
  public class ServiceInfo {
    method public java.util.List<java.util.Locale> getLocales();
    method public java.util.Map<java.util.Locale, java.lang.String> getNames();
    method public java.lang.CharSequence getNameForLocale(java.util.Locale);
    method public java.lang.String getServiceClassName();
    method public java.lang.String getServiceId();
    method public java.util.Date getSessionEndTime();
@@ -44101,14 +44101,16 @@ package android.telephony.mbms.vendor {
    ctor public MbmsDownloadServiceBase();
    method public int cancelDownload(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
    method public void dispose(int) throws android.os.RemoteException;
    method public int download(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback);
    method public int download(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
    method public int getDownloadStatus(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) throws android.os.RemoteException;
    method public int getFileServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
    method public int initialize(int, android.telephony.mbms.MbmsDownloadManagerCallback) throws android.os.RemoteException;
    method public int initialize(int, android.telephony.mbms.MbmsDownloadSessionCallback) throws android.os.RemoteException;
    method public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads(int) throws android.os.RemoteException;
    method public void onAppCallbackDied(int, int);
    method public int registerStateCallback(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback) throws android.os.RemoteException;
    method public int requestUpdateFileServices(int, java.util.List<java.lang.String>) throws android.os.RemoteException;
    method public int resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) throws android.os.RemoteException;
    method public int setTempFileRootDirectory(int, java.lang.String) throws android.os.RemoteException;
    method public int unregisterStateCallback(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback) throws android.os.RemoteException;
  }
  public class MbmsStreamingServiceBase extends android.os.Binder {
+22 −22
Original line number Diff line number Diff line
@@ -39972,20 +39972,20 @@ package android.telephony {
    field public static final int STATUS_UNKNOWN_ERROR = 4; // 0x4
  }
  public class MbmsDownloadManager {
    method public void cancelDownload(android.telephony.mbms.DownloadRequest) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback, android.os.Handler) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback, int) throws android.telephony.mbms.MbmsException;
    method public static android.telephony.MbmsDownloadManager create(android.content.Context, android.telephony.mbms.MbmsDownloadManagerCallback, int, android.os.Handler) throws android.telephony.mbms.MbmsException;
    method public void dispose();
    method public void download(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback, android.os.Handler) throws android.telephony.mbms.MbmsException;
    method public int getDownloadStatus(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo) throws android.telephony.mbms.MbmsException;
    method public void getFileServices(java.util.List<java.lang.String>) throws android.telephony.mbms.MbmsException;
  public class MbmsDownloadSession implements java.lang.AutoCloseable {
    method public void cancelDownload(android.telephony.mbms.DownloadRequest);
    method public void close();
    method public static android.telephony.MbmsDownloadSession create(android.content.Context, android.telephony.mbms.MbmsDownloadSessionCallback, android.os.Handler);
    method public static android.telephony.MbmsDownloadSession create(android.content.Context, android.telephony.mbms.MbmsDownloadSessionCallback, int, android.os.Handler);
    method public void download(android.telephony.mbms.DownloadRequest);
    method public int getDownloadStatus(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo);
    method public java.io.File getTempFileRootDirectory();
    method public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads() throws android.telephony.mbms.MbmsException;
    method public void resetDownloadKnowledge(android.telephony.mbms.DownloadRequest) throws android.telephony.mbms.MbmsException;
    method public void setTempFileRootDirectory(java.io.File) throws android.telephony.mbms.MbmsException;
    method public java.util.List<android.telephony.mbms.DownloadRequest> listPendingDownloads();
    method public void registerStateCallback(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback, android.os.Handler);
    method public void requestUpdateFileServices(java.util.List<java.lang.String>);
    method public void resetDownloadKnowledge(android.telephony.mbms.DownloadRequest);
    method public void setTempFileRootDirectory(java.io.File);
    method public void unregisterStateCallback(android.telephony.mbms.DownloadRequest, android.telephony.mbms.DownloadStateCallback);
    field public static final java.lang.String DEFAULT_TOP_LEVEL_TEMP_DIRECTORY = "androidMbmsTempFileRoot";
    field public static final java.lang.String EXTRA_MBMS_COMPLETED_FILE_URI = "android.telephony.extra.MBMS_COMPLETED_FILE_URI";
    field public static final java.lang.String EXTRA_MBMS_DOWNLOAD_RESULT = "android.telephony.extra.MBMS_DOWNLOAD_RESULT";
@@ -40666,7 +40666,7 @@ package android.telephony.mbms {
  public class DownloadStateCallback {
    ctor public DownloadStateCallback();
    method public void onProgressUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int, int, int, int);
    method public void onStateChanged(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int);
    method public void onStateUpdated(android.telephony.mbms.DownloadRequest, android.telephony.mbms.FileInfo, int);
  }
  public final class FileInfo implements android.os.Parcelable {
@@ -40684,18 +40684,18 @@ package android.telephony.mbms {
    field public static final android.os.Parcelable.Creator<android.telephony.mbms.FileServiceInfo> CREATOR;
  }
  public class MbmsDownloadManagerCallback {
    ctor public MbmsDownloadManagerCallback();
    method public void onError(int, java.lang.String);
    method public void onFileServicesUpdated(java.util.List<android.telephony.mbms.FileServiceInfo>);
    method public void onMiddlewareReady();
  }
  public class MbmsDownloadReceiver extends android.content.BroadcastReceiver {
    ctor public MbmsDownloadReceiver();
    method public void onReceive(android.content.Context, android.content.Intent);
  }
  public class MbmsDownloadSessionCallback {
    ctor public MbmsDownloadSessionCallback();
    method public void onError(int, java.lang.String);
    method public void onFileServicesUpdated(java.util.List<android.telephony.mbms.FileServiceInfo>);
    method public void onMiddlewareReady();
  }
  public class MbmsException extends java.lang.Exception {
    method public int getErrorCode();
    field public static final int ERROR_MIDDLEWARE_LOST = 3; // 0x3
@@ -40740,7 +40740,7 @@ package android.telephony.mbms {
  public class ServiceInfo {
    method public java.util.List<java.util.Locale> getLocales();
    method public java.util.Map<java.util.Locale, java.lang.String> getNames();
    method public java.lang.CharSequence getNameForLocale(java.util.Locale);
    method public java.lang.String getServiceClassName();
    method public java.lang.String getServiceId();
    method public java.util.Date getSessionEndTime();
Loading