Index: mojo/dart/packages/mojo/lib/mojo/service_provider.mojom.dart |
diff --git a/mojo/dart/packages/mojo/lib/mojo/service_provider.mojom.dart b/mojo/dart/packages/mojo/lib/mojo/service_provider.mojom.dart |
index 3b0f8733d6d07b58e0f0aa2f6fa174748768fce5..133beb513acb129a4d17a0b4da69dcc68831dc27 100644 |
--- a/mojo/dart/packages/mojo/lib/mojo/service_provider.mojom.dart |
+++ b/mojo/dart/packages/mojo/lib/mojo/service_provider.mojom.dart |
@@ -104,11 +104,14 @@ const int _ServiceProvider_connectToServiceName = 0; |
class _ServiceProviderServiceDescription implements service_describer.ServiceDescription { |
- dynamic getTopLevelInterface([Function responseFactory]) => null; |
+ dynamic getTopLevelInterface([Function responseFactory]) => |
+ responseFactory(null); |
- dynamic getTypeDefinition(String typeKey, [Function responseFactory]) => null; |
+ dynamic getTypeDefinition(String typeKey, [Function responseFactory]) => |
+ responseFactory(null); |
- dynamic getAllTypeDefinitions([Function responseFactory]) => null; |
+ dynamic getAllTypeDefinitions([Function responseFactory]) => |
+ responseFactory(null); |
} |
abstract class ServiceProvider { |
@@ -280,8 +283,13 @@ class ServiceProviderStub extends bindings.Stub { |
int get version => 0; |
- service_describer.ServiceDescription get serviceDescription => |
- new _ServiceProviderServiceDescription(); |
+ static service_describer.ServiceDescription _cachedServiceDescription; |
+ static service_describer.ServiceDescription get serviceDescription { |
+ if (_cachedServiceDescription == null) { |
+ _cachedServiceDescription = new _ServiceProviderServiceDescription(); |
+ } |
+ return _cachedServiceDescription; |
+ } |
} |