| Index: mojo/dart/packages/mojo_services/lib/tracing/tracing.mojom.dart
|
| diff --git a/mojo/dart/packages/mojo_services/lib/tracing/tracing.mojom.dart b/mojo/dart/packages/mojo_services/lib/tracing/tracing.mojom.dart
|
| index 3dd1142b38618244a035b6c11e1e2d1cd0c69786..24cdc67355e3f16a2c6f90ff8ed171b1c61a093f 100644
|
| --- a/mojo/dart/packages/mojo_services/lib/tracing/tracing.mojom.dart
|
| +++ b/mojo/dart/packages/mojo_services/lib/tracing/tracing.mojom.dart
|
| @@ -15,7 +15,7 @@ class _TraceProviderStartTracingParams extends bindings.Struct {
|
| const bindings.StructDataHeader(24, 0)
|
| ];
|
| String categories = null;
|
| - Object recorder = null;
|
| + TraceRecorderInterface recorder = null;
|
|
|
| _TraceProviderStartTracingParams() : super(kVersions.last.size);
|
|
|
| @@ -381,13 +381,51 @@ class _TraceProviderServiceDescription implements service_describer.ServiceDescr
|
|
|
| abstract class TraceProvider {
|
| static const String serviceName = "tracing::TraceProvider";
|
| - void startTracing(String categories, Object recorder);
|
| +
|
| + static service_describer.ServiceDescription _cachedServiceDescription;
|
| + static service_describer.ServiceDescription get serviceDescription {
|
| + if (_cachedServiceDescription == null) {
|
| + _cachedServiceDescription = new _TraceProviderServiceDescription();
|
| + }
|
| + return _cachedServiceDescription;
|
| + }
|
| +
|
| + static TraceProviderProxy connectToService(
|
| + bindings.ServiceConnector s, String url, [String serviceName]) {
|
| + TraceProviderProxy p = new TraceProviderProxy.unbound();
|
| + String name = serviceName ?? TraceProvider.serviceName;
|
| + if ((name == null) || name.isEmpty) {
|
| + throw new core.MojoApiError(
|
| + "If an interface has no ServiceName, then one must be provided.");
|
| + }
|
| + s.connectToService(url, p, name);
|
| + return p;
|
| + }
|
| + void startTracing(String categories, TraceRecorderInterface recorder);
|
| void stopTracing();
|
| }
|
|
|
| +abstract class TraceProviderInterface
|
| + implements bindings.MojoInterface<TraceProvider>,
|
| + TraceProvider {
|
| + factory TraceProviderInterface([TraceProvider impl]) =>
|
| + new TraceProviderStub.unbound(impl);
|
| + factory TraceProviderInterface.fromEndpoint(
|
| + core.MojoMessagePipeEndpoint endpoint,
|
| + [TraceProvider impl]) =>
|
| + new TraceProviderStub.fromEndpoint(endpoint, impl);
|
| +}
|
| +
|
| +abstract class TraceProviderInterfaceRequest
|
| + implements bindings.MojoInterface<TraceProvider>,
|
| + TraceProvider {
|
| + factory TraceProviderInterfaceRequest() =>
|
| + new TraceProviderProxy.unbound();
|
| +}
|
| +
|
| class _TraceProviderProxyControl
|
| extends bindings.ProxyMessageHandler
|
| - implements bindings.ProxyControl {
|
| + implements bindings.ProxyControl<TraceProvider> {
|
| _TraceProviderProxyControl.fromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint);
|
|
|
| @@ -396,9 +434,6 @@ class _TraceProviderProxyControl
|
|
|
| _TraceProviderProxyControl.unbound() : super.unbound();
|
|
|
| - service_describer.ServiceDescription get serviceDescription =>
|
| - new _TraceProviderServiceDescription();
|
| -
|
| String get serviceName => TraceProvider.serviceName;
|
|
|
| void handleResponse(bindings.ServiceMessage message) {
|
| @@ -410,6 +445,11 @@ class _TraceProviderProxyControl
|
| }
|
| }
|
|
|
| + TraceProvider get impl => null;
|
| + set impl(TraceProvider _) {
|
| + throw new core.MojoApiError("The impl of a Proxy cannot be set.");
|
| + }
|
| +
|
| @override
|
| String toString() {
|
| var superString = super.toString();
|
| @@ -418,8 +458,10 @@ class _TraceProviderProxyControl
|
| }
|
|
|
| class TraceProviderProxy
|
| - extends bindings.Proxy
|
| - implements TraceProvider {
|
| + extends bindings.Proxy<TraceProvider>
|
| + implements TraceProvider,
|
| + TraceProviderInterface,
|
| + TraceProviderInterfaceRequest {
|
| TraceProviderProxy.fromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint)
|
| : super(new _TraceProviderProxyControl.fromEndpoint(endpoint));
|
| @@ -436,15 +478,8 @@ class TraceProviderProxy
|
| return new TraceProviderProxy.fromEndpoint(endpoint);
|
| }
|
|
|
| - factory TraceProviderProxy.connectToService(
|
| - bindings.ServiceConnector s, String url, [String serviceName]) {
|
| - TraceProviderProxy p = new TraceProviderProxy.unbound();
|
| - s.connectToService(url, p, serviceName);
|
| - return p;
|
| - }
|
| -
|
|
|
| - void startTracing(String categories, Object recorder) {
|
| + void startTracing(String categories, TraceRecorderInterface recorder) {
|
| if (!ctrl.isBound) {
|
| ctrl.proxyError("The Proxy is closed.");
|
| return;
|
| @@ -485,6 +520,8 @@ class _TraceProviderStubControl
|
|
|
| _TraceProviderStubControl.unbound([this._impl]) : super.unbound();
|
|
|
| + String get serviceName => TraceProvider.serviceName;
|
| +
|
|
|
|
|
| dynamic handleMessage(bindings.ServiceMessage message) {
|
| @@ -538,19 +575,16 @@ class _TraceProviderStubControl
|
| }
|
|
|
| int get version => 0;
|
| -
|
| - static service_describer.ServiceDescription _cachedServiceDescription;
|
| - static service_describer.ServiceDescription get serviceDescription {
|
| - if (_cachedServiceDescription == null) {
|
| - _cachedServiceDescription = new _TraceProviderServiceDescription();
|
| - }
|
| - return _cachedServiceDescription;
|
| - }
|
| }
|
|
|
| class TraceProviderStub
|
| extends bindings.Stub<TraceProvider>
|
| - implements TraceProvider {
|
| + implements TraceProvider,
|
| + TraceProviderInterface,
|
| + TraceProviderInterfaceRequest {
|
| + TraceProviderStub.unbound([TraceProvider impl])
|
| + : super(new _TraceProviderStubControl.unbound(impl));
|
| +
|
| TraceProviderStub.fromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint, [TraceProvider impl])
|
| : super(new _TraceProviderStubControl.fromEndpoint(endpoint, impl));
|
| @@ -559,20 +593,14 @@ class TraceProviderStub
|
| core.MojoHandle handle, [TraceProvider impl])
|
| : super(new _TraceProviderStubControl.fromHandle(handle, impl));
|
|
|
| - TraceProviderStub.unbound([TraceProvider impl])
|
| - : super(new _TraceProviderStubControl.unbound(impl));
|
| -
|
| static TraceProviderStub newFromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint) {
|
| assert(endpoint.setDescription("For TraceProviderStub"));
|
| return new TraceProviderStub.fromEndpoint(endpoint);
|
| }
|
|
|
| - static service_describer.ServiceDescription get serviceDescription =>
|
| - _TraceProviderStubControl.serviceDescription;
|
| -
|
|
|
| - void startTracing(String categories, Object recorder) {
|
| + void startTracing(String categories, TraceRecorderInterface recorder) {
|
| return impl.startTracing(categories, recorder);
|
| }
|
| void stopTracing() {
|
| @@ -595,12 +623,50 @@ class _TraceRecorderServiceDescription implements service_describer.ServiceDescr
|
|
|
| abstract class TraceRecorder {
|
| static const String serviceName = null;
|
| +
|
| + static service_describer.ServiceDescription _cachedServiceDescription;
|
| + static service_describer.ServiceDescription get serviceDescription {
|
| + if (_cachedServiceDescription == null) {
|
| + _cachedServiceDescription = new _TraceRecorderServiceDescription();
|
| + }
|
| + return _cachedServiceDescription;
|
| + }
|
| +
|
| + static TraceRecorderProxy connectToService(
|
| + bindings.ServiceConnector s, String url, [String serviceName]) {
|
| + TraceRecorderProxy p = new TraceRecorderProxy.unbound();
|
| + String name = serviceName ?? TraceRecorder.serviceName;
|
| + if ((name == null) || name.isEmpty) {
|
| + throw new core.MojoApiError(
|
| + "If an interface has no ServiceName, then one must be provided.");
|
| + }
|
| + s.connectToService(url, p, name);
|
| + return p;
|
| + }
|
| void record(String json);
|
| }
|
|
|
| +abstract class TraceRecorderInterface
|
| + implements bindings.MojoInterface<TraceRecorder>,
|
| + TraceRecorder {
|
| + factory TraceRecorderInterface([TraceRecorder impl]) =>
|
| + new TraceRecorderStub.unbound(impl);
|
| + factory TraceRecorderInterface.fromEndpoint(
|
| + core.MojoMessagePipeEndpoint endpoint,
|
| + [TraceRecorder impl]) =>
|
| + new TraceRecorderStub.fromEndpoint(endpoint, impl);
|
| +}
|
| +
|
| +abstract class TraceRecorderInterfaceRequest
|
| + implements bindings.MojoInterface<TraceRecorder>,
|
| + TraceRecorder {
|
| + factory TraceRecorderInterfaceRequest() =>
|
| + new TraceRecorderProxy.unbound();
|
| +}
|
| +
|
| class _TraceRecorderProxyControl
|
| extends bindings.ProxyMessageHandler
|
| - implements bindings.ProxyControl {
|
| + implements bindings.ProxyControl<TraceRecorder> {
|
| _TraceRecorderProxyControl.fromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint);
|
|
|
| @@ -609,9 +675,6 @@ class _TraceRecorderProxyControl
|
|
|
| _TraceRecorderProxyControl.unbound() : super.unbound();
|
|
|
| - service_describer.ServiceDescription get serviceDescription =>
|
| - new _TraceRecorderServiceDescription();
|
| -
|
| String get serviceName => TraceRecorder.serviceName;
|
|
|
| void handleResponse(bindings.ServiceMessage message) {
|
| @@ -623,6 +686,11 @@ class _TraceRecorderProxyControl
|
| }
|
| }
|
|
|
| + TraceRecorder get impl => null;
|
| + set impl(TraceRecorder _) {
|
| + throw new core.MojoApiError("The impl of a Proxy cannot be set.");
|
| + }
|
| +
|
| @override
|
| String toString() {
|
| var superString = super.toString();
|
| @@ -631,8 +699,10 @@ class _TraceRecorderProxyControl
|
| }
|
|
|
| class TraceRecorderProxy
|
| - extends bindings.Proxy
|
| - implements TraceRecorder {
|
| + extends bindings.Proxy<TraceRecorder>
|
| + implements TraceRecorder,
|
| + TraceRecorderInterface,
|
| + TraceRecorderInterfaceRequest {
|
| TraceRecorderProxy.fromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint)
|
| : super(new _TraceRecorderProxyControl.fromEndpoint(endpoint));
|
| @@ -649,13 +719,6 @@ class TraceRecorderProxy
|
| return new TraceRecorderProxy.fromEndpoint(endpoint);
|
| }
|
|
|
| - factory TraceRecorderProxy.connectToService(
|
| - bindings.ServiceConnector s, String url, [String serviceName]) {
|
| - TraceRecorderProxy p = new TraceRecorderProxy.unbound();
|
| - s.connectToService(url, p, serviceName);
|
| - return p;
|
| - }
|
| -
|
|
|
| void record(String json) {
|
| if (!ctrl.isBound) {
|
| @@ -688,6 +751,8 @@ class _TraceRecorderStubControl
|
|
|
| _TraceRecorderStubControl.unbound([this._impl]) : super.unbound();
|
|
|
| + String get serviceName => TraceRecorder.serviceName;
|
| +
|
|
|
|
|
| dynamic handleMessage(bindings.ServiceMessage message) {
|
| @@ -738,19 +803,16 @@ class _TraceRecorderStubControl
|
| }
|
|
|
| int get version => 0;
|
| -
|
| - static service_describer.ServiceDescription _cachedServiceDescription;
|
| - static service_describer.ServiceDescription get serviceDescription {
|
| - if (_cachedServiceDescription == null) {
|
| - _cachedServiceDescription = new _TraceRecorderServiceDescription();
|
| - }
|
| - return _cachedServiceDescription;
|
| - }
|
| }
|
|
|
| class TraceRecorderStub
|
| extends bindings.Stub<TraceRecorder>
|
| - implements TraceRecorder {
|
| + implements TraceRecorder,
|
| + TraceRecorderInterface,
|
| + TraceRecorderInterfaceRequest {
|
| + TraceRecorderStub.unbound([TraceRecorder impl])
|
| + : super(new _TraceRecorderStubControl.unbound(impl));
|
| +
|
| TraceRecorderStub.fromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint, [TraceRecorder impl])
|
| : super(new _TraceRecorderStubControl.fromEndpoint(endpoint, impl));
|
| @@ -759,18 +821,12 @@ class TraceRecorderStub
|
| core.MojoHandle handle, [TraceRecorder impl])
|
| : super(new _TraceRecorderStubControl.fromHandle(handle, impl));
|
|
|
| - TraceRecorderStub.unbound([TraceRecorder impl])
|
| - : super(new _TraceRecorderStubControl.unbound(impl));
|
| -
|
| static TraceRecorderStub newFromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint) {
|
| assert(endpoint.setDescription("For TraceRecorderStub"));
|
| return new TraceRecorderStub.fromEndpoint(endpoint);
|
| }
|
|
|
| - static service_describer.ServiceDescription get serviceDescription =>
|
| - _TraceRecorderStubControl.serviceDescription;
|
| -
|
|
|
| void record(String json) {
|
| return impl.record(json);
|
| @@ -793,13 +849,51 @@ class _TraceCollectorServiceDescription implements service_describer.ServiceDesc
|
|
|
| abstract class TraceCollector {
|
| static const String serviceName = "tracing::TraceCollector";
|
| +
|
| + static service_describer.ServiceDescription _cachedServiceDescription;
|
| + static service_describer.ServiceDescription get serviceDescription {
|
| + if (_cachedServiceDescription == null) {
|
| + _cachedServiceDescription = new _TraceCollectorServiceDescription();
|
| + }
|
| + return _cachedServiceDescription;
|
| + }
|
| +
|
| + static TraceCollectorProxy connectToService(
|
| + bindings.ServiceConnector s, String url, [String serviceName]) {
|
| + TraceCollectorProxy p = new TraceCollectorProxy.unbound();
|
| + String name = serviceName ?? TraceCollector.serviceName;
|
| + if ((name == null) || name.isEmpty) {
|
| + throw new core.MojoApiError(
|
| + "If an interface has no ServiceName, then one must be provided.");
|
| + }
|
| + s.connectToService(url, p, name);
|
| + return p;
|
| + }
|
| void start(core.MojoDataPipeProducer stream, String categories);
|
| void stopAndFlush();
|
| }
|
|
|
| +abstract class TraceCollectorInterface
|
| + implements bindings.MojoInterface<TraceCollector>,
|
| + TraceCollector {
|
| + factory TraceCollectorInterface([TraceCollector impl]) =>
|
| + new TraceCollectorStub.unbound(impl);
|
| + factory TraceCollectorInterface.fromEndpoint(
|
| + core.MojoMessagePipeEndpoint endpoint,
|
| + [TraceCollector impl]) =>
|
| + new TraceCollectorStub.fromEndpoint(endpoint, impl);
|
| +}
|
| +
|
| +abstract class TraceCollectorInterfaceRequest
|
| + implements bindings.MojoInterface<TraceCollector>,
|
| + TraceCollector {
|
| + factory TraceCollectorInterfaceRequest() =>
|
| + new TraceCollectorProxy.unbound();
|
| +}
|
| +
|
| class _TraceCollectorProxyControl
|
| extends bindings.ProxyMessageHandler
|
| - implements bindings.ProxyControl {
|
| + implements bindings.ProxyControl<TraceCollector> {
|
| _TraceCollectorProxyControl.fromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint);
|
|
|
| @@ -808,9 +902,6 @@ class _TraceCollectorProxyControl
|
|
|
| _TraceCollectorProxyControl.unbound() : super.unbound();
|
|
|
| - service_describer.ServiceDescription get serviceDescription =>
|
| - new _TraceCollectorServiceDescription();
|
| -
|
| String get serviceName => TraceCollector.serviceName;
|
|
|
| void handleResponse(bindings.ServiceMessage message) {
|
| @@ -822,6 +913,11 @@ class _TraceCollectorProxyControl
|
| }
|
| }
|
|
|
| + TraceCollector get impl => null;
|
| + set impl(TraceCollector _) {
|
| + throw new core.MojoApiError("The impl of a Proxy cannot be set.");
|
| + }
|
| +
|
| @override
|
| String toString() {
|
| var superString = super.toString();
|
| @@ -830,8 +926,10 @@ class _TraceCollectorProxyControl
|
| }
|
|
|
| class TraceCollectorProxy
|
| - extends bindings.Proxy
|
| - implements TraceCollector {
|
| + extends bindings.Proxy<TraceCollector>
|
| + implements TraceCollector,
|
| + TraceCollectorInterface,
|
| + TraceCollectorInterfaceRequest {
|
| TraceCollectorProxy.fromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint)
|
| : super(new _TraceCollectorProxyControl.fromEndpoint(endpoint));
|
| @@ -848,13 +946,6 @@ class TraceCollectorProxy
|
| return new TraceCollectorProxy.fromEndpoint(endpoint);
|
| }
|
|
|
| - factory TraceCollectorProxy.connectToService(
|
| - bindings.ServiceConnector s, String url, [String serviceName]) {
|
| - TraceCollectorProxy p = new TraceCollectorProxy.unbound();
|
| - s.connectToService(url, p, serviceName);
|
| - return p;
|
| - }
|
| -
|
|
|
| void start(core.MojoDataPipeProducer stream, String categories) {
|
| if (!ctrl.isBound) {
|
| @@ -897,6 +988,8 @@ class _TraceCollectorStubControl
|
|
|
| _TraceCollectorStubControl.unbound([this._impl]) : super.unbound();
|
|
|
| + String get serviceName => TraceCollector.serviceName;
|
| +
|
|
|
|
|
| dynamic handleMessage(bindings.ServiceMessage message) {
|
| @@ -950,19 +1043,16 @@ class _TraceCollectorStubControl
|
| }
|
|
|
| int get version => 0;
|
| -
|
| - static service_describer.ServiceDescription _cachedServiceDescription;
|
| - static service_describer.ServiceDescription get serviceDescription {
|
| - if (_cachedServiceDescription == null) {
|
| - _cachedServiceDescription = new _TraceCollectorServiceDescription();
|
| - }
|
| - return _cachedServiceDescription;
|
| - }
|
| }
|
|
|
| class TraceCollectorStub
|
| extends bindings.Stub<TraceCollector>
|
| - implements TraceCollector {
|
| + implements TraceCollector,
|
| + TraceCollectorInterface,
|
| + TraceCollectorInterfaceRequest {
|
| + TraceCollectorStub.unbound([TraceCollector impl])
|
| + : super(new _TraceCollectorStubControl.unbound(impl));
|
| +
|
| TraceCollectorStub.fromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint, [TraceCollector impl])
|
| : super(new _TraceCollectorStubControl.fromEndpoint(endpoint, impl));
|
| @@ -971,18 +1061,12 @@ class TraceCollectorStub
|
| core.MojoHandle handle, [TraceCollector impl])
|
| : super(new _TraceCollectorStubControl.fromHandle(handle, impl));
|
|
|
| - TraceCollectorStub.unbound([TraceCollector impl])
|
| - : super(new _TraceCollectorStubControl.unbound(impl));
|
| -
|
| static TraceCollectorStub newFromEndpoint(
|
| core.MojoMessagePipeEndpoint endpoint) {
|
| assert(endpoint.setDescription("For TraceCollectorStub"));
|
| return new TraceCollectorStub.fromEndpoint(endpoint);
|
| }
|
|
|
| - static service_describer.ServiceDescription get serviceDescription =>
|
| - _TraceCollectorStubControl.serviceDescription;
|
| -
|
|
|
| void start(core.MojoDataPipeProducer stream, String categories) {
|
| return impl.start(stream, categories);
|
|
|