diff options
Diffstat (limited to 'media/libmedia/IMediaHTTPConnection.cpp')
-rw-r--r-- | media/libmedia/IMediaHTTPConnection.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/media/libmedia/IMediaHTTPConnection.cpp b/media/libmedia/IMediaHTTPConnection.cpp index 622d9cf..22c470a 100644 --- a/media/libmedia/IMediaHTTPConnection.cpp +++ b/media/libmedia/IMediaHTTPConnection.cpp @@ -33,6 +33,7 @@ enum { READ_AT, GET_SIZE, GET_MIME_TYPE, + GET_URI }; struct BpMediaHTTPConnection : public BpInterface<IMediaHTTPConnection> { @@ -147,6 +148,26 @@ struct BpMediaHTTPConnection : public BpInterface<IMediaHTTPConnection> { return OK; } + virtual status_t getUri(String8 *uri) { + *uri = String8(""); + + Parcel data, reply; + data.writeInterfaceToken( + IMediaHTTPConnection::getInterfaceDescriptor()); + + remote()->transact(GET_URI, data, &reply); + + int32_t exceptionCode = reply.readExceptionCode(); + + if (exceptionCode) { + return UNKNOWN_ERROR; + } + + *uri = String8(reply.readString16()); + + return OK; + } + private: sp<IMemory> mMemory; }; |