| /* |
| * This file is auto-generated. DO NOT MODIFY. |
| * Using: out/host/linux-x86/bin/aidl --lang=java -Weverything -Wno-missing-permission-annotation --min_sdk_version 28 --ninja -d out/soong/.intermediates/system/apex/apexd/apex_aidl_interface-java-source/gen/android/apex/IApexService.java.d -o out/soong/.intermediates/system/apex/apexd/apex_aidl_interface-java-source/gen -Nsystem/apex/apexd/aidl system/apex/apexd/aidl/android/apex/IApexService.aidl |
| */ |
| package android.apex; |
| public interface IApexService extends android.os.IInterface |
| { |
| /** Default implementation for IApexService. */ |
| public static class Default implements android.apex.IApexService |
| { |
| @Override public void submitStagedSession(android.apex.ApexSessionParams params, android.apex.ApexInfoList packages) throws android.os.RemoteException |
| { |
| } |
| @Override public void markStagedSessionReady(int session_id) throws android.os.RemoteException |
| { |
| } |
| @Override public void markStagedSessionSuccessful(int session_id) throws android.os.RemoteException |
| { |
| } |
| @Override public android.apex.ApexSessionInfo[] getSessions() throws android.os.RemoteException |
| { |
| return null; |
| } |
| @Override public android.apex.ApexSessionInfo getStagedSessionInfo(int session_id) throws android.os.RemoteException |
| { |
| return null; |
| } |
| @Override public android.apex.ApexInfo[] getStagedApexInfos(android.apex.ApexSessionParams params) throws android.os.RemoteException |
| { |
| return null; |
| } |
| @Override public android.apex.ApexInfo[] getActivePackages() throws android.os.RemoteException |
| { |
| return null; |
| } |
| @Override public android.apex.ApexInfo[] getAllPackages() throws android.os.RemoteException |
| { |
| return null; |
| } |
| @Override public void abortStagedSession(int session_id) throws android.os.RemoteException |
| { |
| } |
| @Override public void revertActiveSessions() throws android.os.RemoteException |
| { |
| } |
| /** |
| * Copies the CE apex data directory for the given user to the backup |
| * location. |
| */ |
| @Override public void snapshotCeData(int user_id, int rollback_id, java.lang.String apex_name) throws android.os.RemoteException |
| { |
| } |
| /** |
| * Restores the snapshot of the CE apex data directory for the given user and |
| * apex. Note the snapshot will be deleted after restoration succeeded. |
| */ |
| @Override public void restoreCeData(int user_id, int rollback_id, java.lang.String apex_name) throws android.os.RemoteException |
| { |
| } |
| /** Deletes device-encrypted snapshots for the given rollback id. */ |
| @Override public void destroyDeSnapshots(int rollback_id) throws android.os.RemoteException |
| { |
| } |
| /** Deletes credential-encrypted snapshots for the given user, for the given rollback id. */ |
| @Override public void destroyCeSnapshots(int user_id, int rollback_id) throws android.os.RemoteException |
| { |
| } |
| /** |
| * Deletes all credential-encrypted snapshots for the given user, except for |
| * those listed in retain_rollback_ids. |
| */ |
| @Override public void destroyCeSnapshotsNotSpecified(int user_id, int[] retain_rollback_ids) throws android.os.RemoteException |
| { |
| } |
| @Override public void unstagePackages(java.util.List<java.lang.String> active_package_paths) throws android.os.RemoteException |
| { |
| } |
| /** |
| * Returns the active package corresponding to |package_name| and null |
| * if none exists. |
| */ |
| @Override public android.apex.ApexInfo getActivePackage(java.lang.String package_name) throws android.os.RemoteException |
| { |
| return null; |
| } |
| /** |
| * Not meant for use outside of testing. The call will not be |
| * functional on user builds. |
| */ |
| @Override public void stagePackages(java.util.List<java.lang.String> package_tmp_paths) throws android.os.RemoteException |
| { |
| } |
| /** |
| * Not meant for use outside of testing. The call will not be |
| * functional on user builds. |
| */ |
| @Override public void resumeRevertIfNeeded() throws android.os.RemoteException |
| { |
| } |
| /** |
| * Forces apexd to remount all active packages. |
| * |
| * This call is mostly useful for speeding up development of APEXes. |
| * Instead of going through a full APEX installation that requires a reboot, |
| * developers can incorporate this method in much faster `adb sync` based |
| * workflow: |
| * |
| * 1. adb shell stop |
| * 2. adb sync |
| * 3. adb shell cmd -w apexservice remountPackages |
| * 4. adb shell start |
| * |
| * Note, that for an APEX package will be successfully remounted only if |
| * there are no alive processes holding a reference to it. |
| * |
| * Not meant for use outside of testing. This call will not be functional |
| * on user builds. Only root is allowed to call this method. |
| */ |
| @Override public void remountPackages() throws android.os.RemoteException |
| { |
| } |
| /** |
| * Forces apexd to recollect pre-installed data from the given |paths|. |
| * |
| * Not meant for use outside of testing. This call will not be functional |
| * on user builds. Only root is allowed to call this method. |
| */ |
| @Override public void recollectPreinstalledData(java.util.List<java.lang.String> paths) throws android.os.RemoteException |
| { |
| } |
| /** |
| * Forces apexd to recollect data apex from the given |path|. |
| * |
| * Not meant for use outside of testing. This call will not be functional |
| * on user builds. Only root is allowed to call this method. |
| */ |
| @Override public void recollectDataApex(java.lang.String path, java.lang.String decompression_dir) throws android.os.RemoteException |
| { |
| } |
| /** Informs apexd that the boot has completed. */ |
| @Override public void markBootCompleted() throws android.os.RemoteException |
| { |
| } |
| /** |
| * Assuming the provided compressed APEX will be installed on next boot, |
| * calculate how much space will be required for decompression |
| */ |
| @Override public long calculateSizeForCompressedApex(android.apex.CompressedApexInfoList compressed_apex_info_list) throws android.os.RemoteException |
| { |
| return 0L; |
| } |
| /** |
| * Reserve space on /data partition for compressed APEX decompression. Returns error if |
| * reservation fails. If empty list is passed, then reserved space is deallocated. |
| */ |
| @Override public void reserveSpaceForCompressedApex(android.apex.CompressedApexInfoList compressed_apex_info_list) throws android.os.RemoteException |
| { |
| } |
| /** Performs a non-staged install of the given APEX. */ |
| @Override public android.apex.ApexInfo installAndActivatePackage(java.lang.String packagePath, boolean force) throws android.os.RemoteException |
| { |
| return null; |
| } |
| @Override |
| public android.os.IBinder asBinder() { |
| return null; |
| } |
| } |
| /** Local-side IPC implementation stub class. */ |
| public static abstract class Stub extends android.os.Binder implements android.apex.IApexService |
| { |
| /** Construct the stub at attach it to the interface. */ |
| @SuppressWarnings("this-escape") |
| public Stub() |
| { |
| this.attachInterface(this, DESCRIPTOR); |
| } |
| /** |
| * Cast an IBinder object into an android.apex.IApexService interface, |
| * generating a proxy if needed. |
| */ |
| public static android.apex.IApexService asInterface(android.os.IBinder obj) |
| { |
| if ((obj==null)) { |
| return null; |
| } |
| android.os.IInterface iin = obj.queryLocalInterface(DESCRIPTOR); |
| if (((iin!=null)&&(iin instanceof android.apex.IApexService))) { |
| return ((android.apex.IApexService)iin); |
| } |
| return new android.apex.IApexService.Stub.Proxy(obj); |
| } |
| @Override public android.os.IBinder asBinder() |
| { |
| return this; |
| } |
| @Override public boolean onTransact(int code, android.os.Parcel data, android.os.Parcel reply, int flags) throws android.os.RemoteException |
| { |
| java.lang.String descriptor = DESCRIPTOR; |
| if (code >= android.os.IBinder.FIRST_CALL_TRANSACTION && code <= android.os.IBinder.LAST_CALL_TRANSACTION) { |
| data.enforceInterface(descriptor); |
| } |
| if (code == INTERFACE_TRANSACTION) { |
| reply.writeString(descriptor); |
| return true; |
| } |
| switch (code) |
| { |
| case TRANSACTION_submitStagedSession: |
| { |
| android.apex.ApexSessionParams _arg0; |
| _arg0 = data.readTypedObject(android.apex.ApexSessionParams.CREATOR); |
| android.apex.ApexInfoList _arg1; |
| _arg1 = new android.apex.ApexInfoList(); |
| this.submitStagedSession(_arg0, _arg1); |
| reply.writeNoException(); |
| reply.writeTypedObject(_arg1, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); |
| break; |
| } |
| case TRANSACTION_markStagedSessionReady: |
| { |
| int _arg0; |
| _arg0 = data.readInt(); |
| this.markStagedSessionReady(_arg0); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_markStagedSessionSuccessful: |
| { |
| int _arg0; |
| _arg0 = data.readInt(); |
| this.markStagedSessionSuccessful(_arg0); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_getSessions: |
| { |
| android.apex.ApexSessionInfo[] _result = this.getSessions(); |
| reply.writeNoException(); |
| reply.writeTypedArray(_result, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); |
| break; |
| } |
| case TRANSACTION_getStagedSessionInfo: |
| { |
| int _arg0; |
| _arg0 = data.readInt(); |
| android.apex.ApexSessionInfo _result = this.getStagedSessionInfo(_arg0); |
| reply.writeNoException(); |
| reply.writeTypedObject(_result, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); |
| break; |
| } |
| case TRANSACTION_getStagedApexInfos: |
| { |
| android.apex.ApexSessionParams _arg0; |
| _arg0 = data.readTypedObject(android.apex.ApexSessionParams.CREATOR); |
| android.apex.ApexInfo[] _result = this.getStagedApexInfos(_arg0); |
| reply.writeNoException(); |
| reply.writeTypedArray(_result, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); |
| break; |
| } |
| case TRANSACTION_getActivePackages: |
| { |
| android.apex.ApexInfo[] _result = this.getActivePackages(); |
| reply.writeNoException(); |
| reply.writeTypedArray(_result, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); |
| break; |
| } |
| case TRANSACTION_getAllPackages: |
| { |
| android.apex.ApexInfo[] _result = this.getAllPackages(); |
| reply.writeNoException(); |
| reply.writeTypedArray(_result, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); |
| break; |
| } |
| case TRANSACTION_abortStagedSession: |
| { |
| int _arg0; |
| _arg0 = data.readInt(); |
| this.abortStagedSession(_arg0); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_revertActiveSessions: |
| { |
| this.revertActiveSessions(); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_snapshotCeData: |
| { |
| int _arg0; |
| _arg0 = data.readInt(); |
| int _arg1; |
| _arg1 = data.readInt(); |
| java.lang.String _arg2; |
| _arg2 = data.readString(); |
| this.snapshotCeData(_arg0, _arg1, _arg2); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_restoreCeData: |
| { |
| int _arg0; |
| _arg0 = data.readInt(); |
| int _arg1; |
| _arg1 = data.readInt(); |
| java.lang.String _arg2; |
| _arg2 = data.readString(); |
| this.restoreCeData(_arg0, _arg1, _arg2); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_destroyDeSnapshots: |
| { |
| int _arg0; |
| _arg0 = data.readInt(); |
| this.destroyDeSnapshots(_arg0); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_destroyCeSnapshots: |
| { |
| int _arg0; |
| _arg0 = data.readInt(); |
| int _arg1; |
| _arg1 = data.readInt(); |
| this.destroyCeSnapshots(_arg0, _arg1); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_destroyCeSnapshotsNotSpecified: |
| { |
| int _arg0; |
| _arg0 = data.readInt(); |
| int[] _arg1; |
| _arg1 = data.createIntArray(); |
| this.destroyCeSnapshotsNotSpecified(_arg0, _arg1); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_unstagePackages: |
| { |
| java.util.List<java.lang.String> _arg0; |
| _arg0 = data.createStringArrayList(); |
| this.unstagePackages(_arg0); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_getActivePackage: |
| { |
| java.lang.String _arg0; |
| _arg0 = data.readString(); |
| android.apex.ApexInfo _result = this.getActivePackage(_arg0); |
| reply.writeNoException(); |
| reply.writeTypedObject(_result, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); |
| break; |
| } |
| case TRANSACTION_stagePackages: |
| { |
| java.util.List<java.lang.String> _arg0; |
| _arg0 = data.createStringArrayList(); |
| this.stagePackages(_arg0); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_resumeRevertIfNeeded: |
| { |
| this.resumeRevertIfNeeded(); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_remountPackages: |
| { |
| this.remountPackages(); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_recollectPreinstalledData: |
| { |
| java.util.List<java.lang.String> _arg0; |
| _arg0 = data.createStringArrayList(); |
| this.recollectPreinstalledData(_arg0); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_recollectDataApex: |
| { |
| java.lang.String _arg0; |
| _arg0 = data.readString(); |
| java.lang.String _arg1; |
| _arg1 = data.readString(); |
| this.recollectDataApex(_arg0, _arg1); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_markBootCompleted: |
| { |
| this.markBootCompleted(); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_calculateSizeForCompressedApex: |
| { |
| android.apex.CompressedApexInfoList _arg0; |
| _arg0 = data.readTypedObject(android.apex.CompressedApexInfoList.CREATOR); |
| long _result = this.calculateSizeForCompressedApex(_arg0); |
| reply.writeNoException(); |
| reply.writeLong(_result); |
| break; |
| } |
| case TRANSACTION_reserveSpaceForCompressedApex: |
| { |
| android.apex.CompressedApexInfoList _arg0; |
| _arg0 = data.readTypedObject(android.apex.CompressedApexInfoList.CREATOR); |
| this.reserveSpaceForCompressedApex(_arg0); |
| reply.writeNoException(); |
| break; |
| } |
| case TRANSACTION_installAndActivatePackage: |
| { |
| java.lang.String _arg0; |
| _arg0 = data.readString(); |
| boolean _arg1; |
| _arg1 = (0!=data.readInt()); |
| android.apex.ApexInfo _result = this.installAndActivatePackage(_arg0, _arg1); |
| reply.writeNoException(); |
| reply.writeTypedObject(_result, android.os.Parcelable.PARCELABLE_WRITE_RETURN_VALUE); |
| break; |
| } |
| default: |
| { |
| return super.onTransact(code, data, reply, flags); |
| } |
| } |
| return true; |
| } |
| private static class Proxy implements android.apex.IApexService |
| { |
| private android.os.IBinder mRemote; |
| Proxy(android.os.IBinder remote) |
| { |
| mRemote = remote; |
| } |
| @Override public android.os.IBinder asBinder() |
| { |
| return mRemote; |
| } |
| public java.lang.String getInterfaceDescriptor() |
| { |
| return DESCRIPTOR; |
| } |
| @Override public void submitStagedSession(android.apex.ApexSessionParams params, android.apex.ApexInfoList packages) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeTypedObject(params, 0); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_submitStagedSession, _data, _reply, 0); |
| _reply.readException(); |
| if ((0!=_reply.readInt())) { |
| packages.readFromParcel(_reply); |
| } |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| @Override public void markStagedSessionReady(int session_id) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeInt(session_id); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_markStagedSessionReady, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| @Override public void markStagedSessionSuccessful(int session_id) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeInt(session_id); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_markStagedSessionSuccessful, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| @Override public android.apex.ApexSessionInfo[] getSessions() throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| android.apex.ApexSessionInfo[] _result; |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_getSessions, _data, _reply, 0); |
| _reply.readException(); |
| _result = _reply.createTypedArray(android.apex.ApexSessionInfo.CREATOR); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| return _result; |
| } |
| @Override public android.apex.ApexSessionInfo getStagedSessionInfo(int session_id) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| android.apex.ApexSessionInfo _result; |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeInt(session_id); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_getStagedSessionInfo, _data, _reply, 0); |
| _reply.readException(); |
| _result = _reply.readTypedObject(android.apex.ApexSessionInfo.CREATOR); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| return _result; |
| } |
| @Override public android.apex.ApexInfo[] getStagedApexInfos(android.apex.ApexSessionParams params) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| android.apex.ApexInfo[] _result; |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeTypedObject(params, 0); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_getStagedApexInfos, _data, _reply, 0); |
| _reply.readException(); |
| _result = _reply.createTypedArray(android.apex.ApexInfo.CREATOR); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| return _result; |
| } |
| @Override public android.apex.ApexInfo[] getActivePackages() throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| android.apex.ApexInfo[] _result; |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_getActivePackages, _data, _reply, 0); |
| _reply.readException(); |
| _result = _reply.createTypedArray(android.apex.ApexInfo.CREATOR); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| return _result; |
| } |
| @Override public android.apex.ApexInfo[] getAllPackages() throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| android.apex.ApexInfo[] _result; |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_getAllPackages, _data, _reply, 0); |
| _reply.readException(); |
| _result = _reply.createTypedArray(android.apex.ApexInfo.CREATOR); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| return _result; |
| } |
| @Override public void abortStagedSession(int session_id) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeInt(session_id); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_abortStagedSession, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| @Override public void revertActiveSessions() throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_revertActiveSessions, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** |
| * Copies the CE apex data directory for the given user to the backup |
| * location. |
| */ |
| @Override public void snapshotCeData(int user_id, int rollback_id, java.lang.String apex_name) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeInt(user_id); |
| _data.writeInt(rollback_id); |
| _data.writeString(apex_name); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_snapshotCeData, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** |
| * Restores the snapshot of the CE apex data directory for the given user and |
| * apex. Note the snapshot will be deleted after restoration succeeded. |
| */ |
| @Override public void restoreCeData(int user_id, int rollback_id, java.lang.String apex_name) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeInt(user_id); |
| _data.writeInt(rollback_id); |
| _data.writeString(apex_name); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_restoreCeData, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** Deletes device-encrypted snapshots for the given rollback id. */ |
| @Override public void destroyDeSnapshots(int rollback_id) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeInt(rollback_id); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_destroyDeSnapshots, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** Deletes credential-encrypted snapshots for the given user, for the given rollback id. */ |
| @Override public void destroyCeSnapshots(int user_id, int rollback_id) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeInt(user_id); |
| _data.writeInt(rollback_id); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_destroyCeSnapshots, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** |
| * Deletes all credential-encrypted snapshots for the given user, except for |
| * those listed in retain_rollback_ids. |
| */ |
| @Override public void destroyCeSnapshotsNotSpecified(int user_id, int[] retain_rollback_ids) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeInt(user_id); |
| _data.writeIntArray(retain_rollback_ids); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_destroyCeSnapshotsNotSpecified, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| @Override public void unstagePackages(java.util.List<java.lang.String> active_package_paths) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeStringList(active_package_paths); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_unstagePackages, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** |
| * Returns the active package corresponding to |package_name| and null |
| * if none exists. |
| */ |
| @Override public android.apex.ApexInfo getActivePackage(java.lang.String package_name) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| android.apex.ApexInfo _result; |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeString(package_name); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_getActivePackage, _data, _reply, 0); |
| _reply.readException(); |
| _result = _reply.readTypedObject(android.apex.ApexInfo.CREATOR); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| return _result; |
| } |
| /** |
| * Not meant for use outside of testing. The call will not be |
| * functional on user builds. |
| */ |
| @Override public void stagePackages(java.util.List<java.lang.String> package_tmp_paths) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeStringList(package_tmp_paths); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_stagePackages, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** |
| * Not meant for use outside of testing. The call will not be |
| * functional on user builds. |
| */ |
| @Override public void resumeRevertIfNeeded() throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_resumeRevertIfNeeded, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** |
| * Forces apexd to remount all active packages. |
| * |
| * This call is mostly useful for speeding up development of APEXes. |
| * Instead of going through a full APEX installation that requires a reboot, |
| * developers can incorporate this method in much faster `adb sync` based |
| * workflow: |
| * |
| * 1. adb shell stop |
| * 2. adb sync |
| * 3. adb shell cmd -w apexservice remountPackages |
| * 4. adb shell start |
| * |
| * Note, that for an APEX package will be successfully remounted only if |
| * there are no alive processes holding a reference to it. |
| * |
| * Not meant for use outside of testing. This call will not be functional |
| * on user builds. Only root is allowed to call this method. |
| */ |
| @Override public void remountPackages() throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_remountPackages, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** |
| * Forces apexd to recollect pre-installed data from the given |paths|. |
| * |
| * Not meant for use outside of testing. This call will not be functional |
| * on user builds. Only root is allowed to call this method. |
| */ |
| @Override public void recollectPreinstalledData(java.util.List<java.lang.String> paths) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeStringList(paths); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_recollectPreinstalledData, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** |
| * Forces apexd to recollect data apex from the given |path|. |
| * |
| * Not meant for use outside of testing. This call will not be functional |
| * on user builds. Only root is allowed to call this method. |
| */ |
| @Override public void recollectDataApex(java.lang.String path, java.lang.String decompression_dir) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeString(path); |
| _data.writeString(decompression_dir); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_recollectDataApex, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** Informs apexd that the boot has completed. */ |
| @Override public void markBootCompleted() throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_markBootCompleted, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** |
| * Assuming the provided compressed APEX will be installed on next boot, |
| * calculate how much space will be required for decompression |
| */ |
| @Override public long calculateSizeForCompressedApex(android.apex.CompressedApexInfoList compressed_apex_info_list) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| long _result; |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeTypedObject(compressed_apex_info_list, 0); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_calculateSizeForCompressedApex, _data, _reply, 0); |
| _reply.readException(); |
| _result = _reply.readLong(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| return _result; |
| } |
| /** |
| * Reserve space on /data partition for compressed APEX decompression. Returns error if |
| * reservation fails. If empty list is passed, then reserved space is deallocated. |
| */ |
| @Override public void reserveSpaceForCompressedApex(android.apex.CompressedApexInfoList compressed_apex_info_list) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeTypedObject(compressed_apex_info_list, 0); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_reserveSpaceForCompressedApex, _data, _reply, 0); |
| _reply.readException(); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| } |
| /** Performs a non-staged install of the given APEX. */ |
| @Override public android.apex.ApexInfo installAndActivatePackage(java.lang.String packagePath, boolean force) throws android.os.RemoteException |
| { |
| android.os.Parcel _data = android.os.Parcel.obtain(); |
| android.os.Parcel _reply = android.os.Parcel.obtain(); |
| android.apex.ApexInfo _result; |
| try { |
| _data.writeInterfaceToken(DESCRIPTOR); |
| _data.writeString(packagePath); |
| _data.writeInt(((force)?(1):(0))); |
| boolean _status = mRemote.transact(Stub.TRANSACTION_installAndActivatePackage, _data, _reply, 0); |
| _reply.readException(); |
| _result = _reply.readTypedObject(android.apex.ApexInfo.CREATOR); |
| } |
| finally { |
| _reply.recycle(); |
| _data.recycle(); |
| } |
| return _result; |
| } |
| } |
| static final int TRANSACTION_submitStagedSession = (android.os.IBinder.FIRST_CALL_TRANSACTION + 0); |
| static final int TRANSACTION_markStagedSessionReady = (android.os.IBinder.FIRST_CALL_TRANSACTION + 1); |
| static final int TRANSACTION_markStagedSessionSuccessful = (android.os.IBinder.FIRST_CALL_TRANSACTION + 2); |
| static final int TRANSACTION_getSessions = (android.os.IBinder.FIRST_CALL_TRANSACTION + 3); |
| static final int TRANSACTION_getStagedSessionInfo = (android.os.IBinder.FIRST_CALL_TRANSACTION + 4); |
| static final int TRANSACTION_getStagedApexInfos = (android.os.IBinder.FIRST_CALL_TRANSACTION + 5); |
| static final int TRANSACTION_getActivePackages = (android.os.IBinder.FIRST_CALL_TRANSACTION + 6); |
| static final int TRANSACTION_getAllPackages = (android.os.IBinder.FIRST_CALL_TRANSACTION + 7); |
| static final int TRANSACTION_abortStagedSession = (android.os.IBinder.FIRST_CALL_TRANSACTION + 8); |
| static final int TRANSACTION_revertActiveSessions = (android.os.IBinder.FIRST_CALL_TRANSACTION + 9); |
| static final int TRANSACTION_snapshotCeData = (android.os.IBinder.FIRST_CALL_TRANSACTION + 10); |
| static final int TRANSACTION_restoreCeData = (android.os.IBinder.FIRST_CALL_TRANSACTION + 11); |
| static final int TRANSACTION_destroyDeSnapshots = (android.os.IBinder.FIRST_CALL_TRANSACTION + 12); |
| static final int TRANSACTION_destroyCeSnapshots = (android.os.IBinder.FIRST_CALL_TRANSACTION + 13); |
| static final int TRANSACTION_destroyCeSnapshotsNotSpecified = (android.os.IBinder.FIRST_CALL_TRANSACTION + 14); |
| static final int TRANSACTION_unstagePackages = (android.os.IBinder.FIRST_CALL_TRANSACTION + 15); |
| static final int TRANSACTION_getActivePackage = (android.os.IBinder.FIRST_CALL_TRANSACTION + 16); |
| static final int TRANSACTION_stagePackages = (android.os.IBinder.FIRST_CALL_TRANSACTION + 17); |
| static final int TRANSACTION_resumeRevertIfNeeded = (android.os.IBinder.FIRST_CALL_TRANSACTION + 18); |
| static final int TRANSACTION_remountPackages = (android.os.IBinder.FIRST_CALL_TRANSACTION + 19); |
| static final int TRANSACTION_recollectPreinstalledData = (android.os.IBinder.FIRST_CALL_TRANSACTION + 20); |
| static final int TRANSACTION_recollectDataApex = (android.os.IBinder.FIRST_CALL_TRANSACTION + 21); |
| static final int TRANSACTION_markBootCompleted = (android.os.IBinder.FIRST_CALL_TRANSACTION + 22); |
| static final int TRANSACTION_calculateSizeForCompressedApex = (android.os.IBinder.FIRST_CALL_TRANSACTION + 23); |
| static final int TRANSACTION_reserveSpaceForCompressedApex = (android.os.IBinder.FIRST_CALL_TRANSACTION + 24); |
| static final int TRANSACTION_installAndActivatePackage = (android.os.IBinder.FIRST_CALL_TRANSACTION + 25); |
| } |
| /** @hide */ |
| public static final java.lang.String DESCRIPTOR = "android.apex.IApexService"; |
| public void submitStagedSession(android.apex.ApexSessionParams params, android.apex.ApexInfoList packages) throws android.os.RemoteException; |
| public void markStagedSessionReady(int session_id) throws android.os.RemoteException; |
| public void markStagedSessionSuccessful(int session_id) throws android.os.RemoteException; |
| public android.apex.ApexSessionInfo[] getSessions() throws android.os.RemoteException; |
| public android.apex.ApexSessionInfo getStagedSessionInfo(int session_id) throws android.os.RemoteException; |
| public android.apex.ApexInfo[] getStagedApexInfos(android.apex.ApexSessionParams params) throws android.os.RemoteException; |
| public android.apex.ApexInfo[] getActivePackages() throws android.os.RemoteException; |
| public android.apex.ApexInfo[] getAllPackages() throws android.os.RemoteException; |
| public void abortStagedSession(int session_id) throws android.os.RemoteException; |
| public void revertActiveSessions() throws android.os.RemoteException; |
| /** |
| * Copies the CE apex data directory for the given user to the backup |
| * location. |
| */ |
| public void snapshotCeData(int user_id, int rollback_id, java.lang.String apex_name) throws android.os.RemoteException; |
| /** |
| * Restores the snapshot of the CE apex data directory for the given user and |
| * apex. Note the snapshot will be deleted after restoration succeeded. |
| */ |
| public void restoreCeData(int user_id, int rollback_id, java.lang.String apex_name) throws android.os.RemoteException; |
| /** Deletes device-encrypted snapshots for the given rollback id. */ |
| public void destroyDeSnapshots(int rollback_id) throws android.os.RemoteException; |
| /** Deletes credential-encrypted snapshots for the given user, for the given rollback id. */ |
| public void destroyCeSnapshots(int user_id, int rollback_id) throws android.os.RemoteException; |
| /** |
| * Deletes all credential-encrypted snapshots for the given user, except for |
| * those listed in retain_rollback_ids. |
| */ |
| public void destroyCeSnapshotsNotSpecified(int user_id, int[] retain_rollback_ids) throws android.os.RemoteException; |
| public void unstagePackages(java.util.List<java.lang.String> active_package_paths) throws android.os.RemoteException; |
| /** |
| * Returns the active package corresponding to |package_name| and null |
| * if none exists. |
| */ |
| public android.apex.ApexInfo getActivePackage(java.lang.String package_name) throws android.os.RemoteException; |
| /** |
| * Not meant for use outside of testing. The call will not be |
| * functional on user builds. |
| */ |
| public void stagePackages(java.util.List<java.lang.String> package_tmp_paths) throws android.os.RemoteException; |
| /** |
| * Not meant for use outside of testing. The call will not be |
| * functional on user builds. |
| */ |
| public void resumeRevertIfNeeded() throws android.os.RemoteException; |
| /** |
| * Forces apexd to remount all active packages. |
| * |
| * This call is mostly useful for speeding up development of APEXes. |
| * Instead of going through a full APEX installation that requires a reboot, |
| * developers can incorporate this method in much faster `adb sync` based |
| * workflow: |
| * |
| * 1. adb shell stop |
| * 2. adb sync |
| * 3. adb shell cmd -w apexservice remountPackages |
| * 4. adb shell start |
| * |
| * Note, that for an APEX package will be successfully remounted only if |
| * there are no alive processes holding a reference to it. |
| * |
| * Not meant for use outside of testing. This call will not be functional |
| * on user builds. Only root is allowed to call this method. |
| */ |
| public void remountPackages() throws android.os.RemoteException; |
| /** |
| * Forces apexd to recollect pre-installed data from the given |paths|. |
| * |
| * Not meant for use outside of testing. This call will not be functional |
| * on user builds. Only root is allowed to call this method. |
| */ |
| public void recollectPreinstalledData(java.util.List<java.lang.String> paths) throws android.os.RemoteException; |
| /** |
| * Forces apexd to recollect data apex from the given |path|. |
| * |
| * Not meant for use outside of testing. This call will not be functional |
| * on user builds. Only root is allowed to call this method. |
| */ |
| public void recollectDataApex(java.lang.String path, java.lang.String decompression_dir) throws android.os.RemoteException; |
| /** Informs apexd that the boot has completed. */ |
| public void markBootCompleted() throws android.os.RemoteException; |
| /** |
| * Assuming the provided compressed APEX will be installed on next boot, |
| * calculate how much space will be required for decompression |
| */ |
| public long calculateSizeForCompressedApex(android.apex.CompressedApexInfoList compressed_apex_info_list) throws android.os.RemoteException; |
| /** |
| * Reserve space on /data partition for compressed APEX decompression. Returns error if |
| * reservation fails. If empty list is passed, then reserved space is deallocated. |
| */ |
| public void reserveSpaceForCompressedApex(android.apex.CompressedApexInfoList compressed_apex_info_list) throws android.os.RemoteException; |
| /** Performs a non-staged install of the given APEX. */ |
| public android.apex.ApexInfo installAndActivatePackage(java.lang.String packagePath, boolean force) throws android.os.RemoteException; |
| } |