summaryrefslogtreecommitdiffstats
path: root/mount/IMountService.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'mount/IMountService.cpp')
-rw-r--r--mount/IMountService.cpp88
1 files changed, 86 insertions, 2 deletions
diff --git a/mount/IMountService.cpp b/mount/IMountService.cpp
index c30ac0b..14ba940 100644
--- a/mount/IMountService.cpp
+++ b/mount/IMountService.cpp
@@ -30,8 +30,16 @@ enum {
MOUNT_MEDIA_TRANSACTION,
UNMOUNT_MEDIA_TRANSACTION,
FORMAT_MEDIA_TRANSACTION,
- SET_PLAY_NOTIFICATION_SOUNDS_TRANSACTION,
GET_PLAY_NOTIFICATION_SOUNDS_TRANSACTION,
+ SET_PLAY_NOTIFICATION_SOUNDS_TRANSACTION,
+ GET_AUTOSTART_UMS_TRANSACTION,
+ SET_AUTOSTART_UMS_TRANSACTION,
+ GET_VOLUME_STATE_TRANSACTION,
+ CREATE_SECURE_CACHE_TRANSACTION,
+ FINALIZE_SECURE_CACHE_TRANSACTION,
+ DESTROY_SECURE_CACHE_TRANSACTION,
+ MOUNT_SECURE_CACHE_TRANSACTION,
+ GET_SECURE_CACHE_PATH_TRANSACTION
};
class BpMountService : public BpInterface<IMountService>
@@ -109,7 +117,83 @@ public:
remote()->transact(SET_PLAY_NOTIFICATION_SOUNDS_TRANSACTION, data, &reply);
}
-
+ virtual bool getAutoStartUms()
+ {
+ uint32_t n;
+ Parcel data, reply;
+ data.writeInterfaceToken(IMountService::getInterfaceDescriptor());
+ remote()->transact(GET_AUTOSTART_UMS_TRANSACTION, data, &reply);
+ return reply.readInt32();
+ }
+
+ virtual void setAutoStartUms(bool enabled)
+ {
+ Parcel data, reply;
+ data.writeInterfaceToken(IMountService::getInterfaceDescriptor());
+ data.writeInt32(enabled ? 1 : 0);
+ remote()->transact(SET_AUTOSTART_UMS_TRANSACTION, data, &reply);
+ }
+
+ virtual String16 getVolumeState(String16 mountPoint)
+ {
+ uint32_t n;
+ Parcel data, reply;
+ data.writeInterfaceToken(IMountService::getInterfaceDescriptor());
+ data.writeString16(mountPoint);
+ remote()->transact(GET_VOLUME_STATE_TRANSACTION, data, &reply);
+ return reply.readString16();
+ }
+
+ virtual String16 createSecureCache(String16 id, int sizeMb, String16 fstype, String16 key, int ownerUid)
+ {
+ uint32_t n;
+ Parcel data, reply;
+ data.writeInterfaceToken(IMountService::getInterfaceDescriptor());
+ data.writeString16(id);
+ data.writeInt32(sizeMb);
+ data.writeString16(fstype);
+ data.writeString16(key);
+ data.writeInt32(ownerUid);
+ remote()->transact(CREATE_SECURE_CACHE_TRANSACTION, data, &reply);
+ return reply.readString16();
+ }
+
+ virtual void finalizeSecureCache(String16 id)
+ {
+ Parcel data, reply;
+ data.writeInterfaceToken(IMountService::getInterfaceDescriptor());
+ data.writeString16(id);
+ remote()->transact(FINALIZE_SECURE_CACHE_TRANSACTION, data, &reply);
+ }
+
+ virtual void destroySecureCache(String16 id)
+ {
+ Parcel data, reply;
+ data.writeInterfaceToken(IMountService::getInterfaceDescriptor());
+ data.writeString16(id);
+ remote()->transact(DESTROY_SECURE_CACHE_TRANSACTION, data, &reply);
+ }
+
+ virtual String16 mountSecureCache(String16 id, String16 key, int ownerUid)
+ {
+ Parcel data, reply;
+ data.writeInterfaceToken(IMountService::getInterfaceDescriptor());
+ data.writeString16(id);
+ data.writeString16(key);
+ data.writeInt32(ownerUid);
+ remote()->transact(MOUNT_SECURE_CACHE_TRANSACTION, data, &reply);
+ return reply.readString16();
+ }
+
+ virtual String16 getSecureCachePath(String16 id)
+ {
+ uint32_t n;
+ Parcel data, reply;
+ data.writeInterfaceToken(IMountService::getInterfaceDescriptor());
+ data.writeString16(id);
+ remote()->transact(GET_SECURE_CACHE_PATH_TRANSACTION, data, &reply);
+ return reply.readString16();
+ }
};
IMPLEMENT_META_INTERFACE(MountService, "android.os.IMountService");