diff options
author | San Mehat <san@google.com> | 2010-01-06 14:43:06 -0800 |
---|---|---|
committer | San Mehat <san@google.com> | 2010-01-06 14:51:15 -0800 |
commit | 4a57c55ce86e05e8cde58ff5ce945320ee23304f (patch) | |
tree | 97f2faf4a6accd77f2690f73007400346f649af1 /mount/IMountService.cpp | |
parent | 035181b8fc0267b983a026ec1f133b944f22282f (diff) | |
download | hardware_libhardware_legacy-4a57c55ce86e05e8cde58ff5ce945320ee23304f.zip hardware_libhardware_legacy-4a57c55ce86e05e8cde58ff5ce945320ee23304f.tar.gz hardware_libhardware_legacy-4a57c55ce86e05e8cde58ff5ce945320ee23304f.tar.bz2 |
legacy: Add asec binder transaction support to c++ wrappers
Signed-off-by: San Mehat <san@google.com>
Diffstat (limited to 'mount/IMountService.cpp')
-rw-r--r-- | mount/IMountService.cpp | 88 |
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"); |