Chromium Code Reviews| Index: blimp/engine/mojo/blob_channel_service.cc |
| diff --git a/blimp/engine/mojo/blob_channel_service.cc b/blimp/engine/mojo/blob_channel_service.cc |
| index 42dfd389da53110d8e50447cb971323f34fbfe24..687ffffa56c13ac6d24f32b6be93708b325ece38 100644 |
| --- a/blimp/engine/mojo/blob_channel_service.cc |
| +++ b/blimp/engine/mojo/blob_channel_service.cc |
| @@ -4,29 +4,36 @@ |
| #include "blimp/engine/mojo/blob_channel_service.h" |
| +#include <vector> |
| + |
| +#include "blimp/net/blob_channel/blob_channel_sender.h" |
| + |
| namespace blimp { |
| namespace engine { |
| -BlobChannelService::BlobChannelService(mojom::BlobChannelRequest request) |
| - : binding_(this, std::move(request)) {} |
| +BlobChannelService::BlobChannelService(BlobChannelSender* blob_channel, |
| + mojom::BlobChannelRequest request) |
| + : binding_(this, std::move(request)), blob_channel_(blob_channel) { |
| + DCHECK(blob_channel_); |
| +} |
| BlobChannelService::~BlobChannelService() {} |
| -void BlobChannelService::Put(const mojo::String& id, |
| - mojo::Array<uint8_t> data) { |
| - NOTIMPLEMENTED(); |
| +void BlobChannelService::Put(const mojo::String& id, const mojo::String& data) { |
| + blob_channel_->PutBlob(id, new BlobData(data)); |
| } |
| void BlobChannelService::Push(const mojo::String& id) { |
| - NOTIMPLEMENTED(); |
| + blob_channel_->DeliverBlob(id); |
|
Wez
2016/05/21 01:08:04
nit: Why do the BlobChannelSender and Service have
Kevin M
2016/05/27 22:35:30
Done.
|
| } |
| // static |
| void BlobChannelService::Create( |
| + BlobChannelSender* blob_channel, |
| mojo::InterfaceRequest<mojom::BlobChannel> request) { |
| // Object lifetime is managed by BlobChannelService's StrongBinding |
| // |binding_|. |
| - new BlobChannelService(std::move(request)); |
| + new BlobChannelService(blob_channel, std::move(request)); |
| } |
| } // namespace engine |