Index: sky/shell/ui/internals.h |
diff --git a/sky/shell/ui/internals.h b/sky/shell/ui/internals.h |
index c0efac913a49f200dedbe910abe7f3d276002506..7077e3e28b770be2e63fb6557a26db88ec013b19 100644 |
--- a/sky/shell/ui/internals.h |
+++ b/sky/shell/ui/internals.h |
@@ -7,24 +7,40 @@ |
#include "base/supports_user_data.h" |
#include "dart/runtime/include/dart_api.h" |
+#include "mojo/public/cpp/application/interface_factory.h" |
+#include "mojo/public/cpp/application/service_provider_impl.h" |
#include "mojo/public/interfaces/application/service_provider.mojom.h" |
+#include "mojo/services/asset_bundle/public/interfaces/asset_bundle.mojom.h" |
+ |
+namespace mojo { |
+class ApplicationConnection; |
+} |
namespace sky { |
namespace shell { |
-class Internals : public base::SupportsUserData::Data { |
+class Internals |
+ : public base::SupportsUserData::Data, |
+ public mojo::InterfaceFactory<mojo::asset_bundle::AssetUnpacker> { |
public: |
virtual ~Internals(); |
static void Create(Dart_Isolate isolate, |
- mojo::ServiceProviderPtr service_provider); |
+ mojo::ServiceProviderPtr platform_service_provider); |
mojo::Handle TakeServicesProvidedByEmbedder(); |
private: |
- explicit Internals(mojo::ServiceProviderPtr service_provider); |
+ explicit Internals(mojo::ServiceProviderPtr platform_service_provider); |
+ |
+ // |mojo::InterfaceFactory<mojo::asset_bundle::AssetUnpacker>| implementation: |
+ void Create( |
+ mojo::ApplicationConnection* connection, |
+ mojo::InterfaceRequest<mojo::asset_bundle::AssetUnpacker>) override; |
mojo::ServiceProviderPtr service_provider_; |
+ mojo::ServiceProviderImpl service_provider_impl_; |
+ mojo::ServiceProviderPtr platform_service_provider_; |
MOJO_DISALLOW_COPY_AND_ASSIGN(Internals); |
}; |