Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(158)

Side by Side Diff: mojo/dart/packages/mojo_services/lib/mojo/gfx/composition/hit_tests.mojom.dart

Issue 1964193002: Dart: Refactors Proxies (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Address comments Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 library hit_tests_mojom; 5 library hit_tests_mojom;
6 import 'dart:async'; 6 import 'dart:async';
7 import 'package:mojo/bindings.dart' as bindings; 7 import 'package:mojo/bindings.dart' as bindings;
8 import 'package:mojo/core.dart' as core; 8 import 'package:mojo/core.dart' as core;
9 import 'package:mojo/mojo/bindings/types/service_describer.mojom.dart' as servic e_describer; 9 import 'package:mojo/mojo/bindings/types/service_describer.mojom.dart' as servic e_describer;
10 import 'package:mojo_services/mojo/geometry.mojom.dart' as geometry_mojom; 10 import 'package:mojo_services/mojo/geometry.mojom.dart' as geometry_mojom;
(...skipping 707 matching lines...) Expand 10 before | Expand all | Expand 10 after
718 dynamic getAllTypeDefinitions([Function responseFactory]) => 718 dynamic getAllTypeDefinitions([Function responseFactory]) =>
719 responseFactory(null); 719 responseFactory(null);
720 } 720 }
721 721
722 abstract class HitTester { 722 abstract class HitTester {
723 static const String serviceName = null; 723 static const String serviceName = null;
724 dynamic hitTest(geometry_mojom.PointF point,[Function responseFactory = null]) ; 724 dynamic hitTest(geometry_mojom.PointF point,[Function responseFactory = null]) ;
725 } 725 }
726 726
727 727
728 class _HitTesterProxyImpl extends bindings.Proxy { 728 class _HitTesterProxyControl extends bindings.ProxyMessageHandler
729 _HitTesterProxyImpl.fromEndpoint( 729 implements bindings.ProxyControl {
730 _HitTesterProxyControl.fromEndpoint(
730 core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint); 731 core.MojoMessagePipeEndpoint endpoint) : super.fromEndpoint(endpoint);
731 732
732 _HitTesterProxyImpl.fromHandle(core.MojoHandle handle) : 733 _HitTesterProxyControl.fromHandle(
733 super.fromHandle(handle); 734 core.MojoHandle handle) : super.fromHandle(handle);
734 735
735 _HitTesterProxyImpl.unbound() : super.unbound(); 736 _HitTesterProxyControl.unbound() : super.unbound();
736
737 static _HitTesterProxyImpl newFromEndpoint(
738 core.MojoMessagePipeEndpoint endpoint) {
739 assert(endpoint.setDescription("For _HitTesterProxyImpl"));
740 return new _HitTesterProxyImpl.fromEndpoint(endpoint);
741 }
742 737
743 service_describer.ServiceDescription get serviceDescription => 738 service_describer.ServiceDescription get serviceDescription =>
744 new _HitTesterServiceDescription(); 739 new _HitTesterServiceDescription();
745 740
741 String get serviceName => HitTester.serviceName;
742
743 @override
746 void handleResponse(bindings.ServiceMessage message) { 744 void handleResponse(bindings.ServiceMessage message) {
747 switch (message.header.type) { 745 switch (message.header.type) {
748 case _hitTesterMethodHitTestName: 746 case _hitTesterMethodHitTestName:
749 var r = HitTesterHitTestResponseParams.deserialize( 747 var r = HitTesterHitTestResponseParams.deserialize(
750 message.payload); 748 message.payload);
751 if (!message.header.hasRequestId) { 749 if (!message.header.hasRequestId) {
752 proxyError("Expected a message with a valid request Id."); 750 proxyError("Expected a message with a valid request Id.");
753 return; 751 return;
754 } 752 }
755 Completer c = completerMap[message.header.requestId]; 753 Completer c = completerMap[message.header.requestId];
756 if (c == null) { 754 if (c == null) {
757 proxyError( 755 proxyError(
758 "Message had unknown request Id: ${message.header.requestId}"); 756 "Message had unknown request Id: ${message.header.requestId}");
759 return; 757 return;
760 } 758 }
761 completerMap.remove(message.header.requestId); 759 completerMap.remove(message.header.requestId);
762 if (c.isCompleted) { 760 if (c.isCompleted) {
763 proxyError("Response completer already completed"); 761 proxyError("Response completer already completed");
764 return; 762 return;
765 } 763 }
766 c.complete(r); 764 c.complete(r);
767 break; 765 break;
768 default: 766 default:
769 proxyError("Unexpected message type: ${message.header.type}"); 767 proxyError("Unexpected message type: ${message.header.type}");
770 close(immediate: true); 768 close(immediate: true);
771 break; 769 break;
772 } 770 }
773 } 771 }
774 772
773 @override
775 String toString() { 774 String toString() {
776 var superString = super.toString(); 775 var superString = super.toString();
777 return "_HitTesterProxyImpl($superString)"; 776 return "_HitTesterProxyControl($superString)";
778 } 777 }
779 } 778 }
780 779
781 780
782 class _HitTesterProxyCalls implements HitTester { 781 class HitTesterProxy extends bindings.Proxy
783 _HitTesterProxyImpl _proxyImpl; 782 implements HitTester {
783 HitTesterProxy.fromEndpoint(
784 core.MojoMessagePipeEndpoint endpoint)
785 : super(new _HitTesterProxyControl.fromEndpoint(endpoint));
784 786
785 _HitTesterProxyCalls(this._proxyImpl); 787 HitTesterProxy.fromHandle(core.MojoHandle handle)
786 dynamic hitTest(geometry_mojom.PointF point,[Function responseFactory = null ]) { 788 : super(new _HitTesterProxyControl.fromHandle(handle));
787 var params = new _HitTesterHitTestParams();
788 params.point = point;
789 return _proxyImpl.sendMessageWithRequestId(
790 params,
791 _hitTesterMethodHitTestName,
792 -1,
793 bindings.MessageHeader.kMessageExpectsResponse);
794 }
795 }
796 789
790 HitTesterProxy.unbound()
791 : super(new _HitTesterProxyControl.unbound());
797 792
798 class HitTesterProxy implements bindings.ProxyBase { 793 static HitTesterProxy newFromEndpoint(
799 final bindings.Proxy impl; 794 core.MojoMessagePipeEndpoint endpoint) {
800 HitTester ptr; 795 assert(endpoint.setDescription("For HitTesterProxy"));
801 796 return new HitTesterProxy.fromEndpoint(endpoint);
802 HitTesterProxy(_HitTesterProxyImpl proxyImpl) :
803 impl = proxyImpl,
804 ptr = new _HitTesterProxyCalls(proxyImpl);
805
806 HitTesterProxy.fromEndpoint(
807 core.MojoMessagePipeEndpoint endpoint) :
808 impl = new _HitTesterProxyImpl.fromEndpoint(endpoint) {
809 ptr = new _HitTesterProxyCalls(impl);
810 }
811
812 HitTesterProxy.fromHandle(core.MojoHandle handle) :
813 impl = new _HitTesterProxyImpl.fromHandle(handle) {
814 ptr = new _HitTesterProxyCalls(impl);
815 }
816
817 HitTesterProxy.unbound() :
818 impl = new _HitTesterProxyImpl.unbound() {
819 ptr = new _HitTesterProxyCalls(impl);
820 } 797 }
821 798
822 factory HitTesterProxy.connectToService( 799 factory HitTesterProxy.connectToService(
823 bindings.ServiceConnector s, String url, [String serviceName]) { 800 bindings.ServiceConnector s, String url, [String serviceName]) {
824 HitTesterProxy p = new HitTesterProxy.unbound(); 801 HitTesterProxy p = new HitTesterProxy.unbound();
825 s.connectToService(url, p, serviceName); 802 s.connectToService(url, p, serviceName);
826 return p; 803 return p;
827 } 804 }
828 805
829 static HitTesterProxy newFromEndpoint(
830 core.MojoMessagePipeEndpoint endpoint) {
831 assert(endpoint.setDescription("For HitTesterProxy"));
832 return new HitTesterProxy.fromEndpoint(endpoint);
833 }
834 806
835 String get serviceName => HitTester.serviceName; 807 dynamic hitTest(geometry_mojom.PointF point,[Function responseFactory = null]) {
836 808 var params = new _HitTesterHitTestParams();
837 Future close({bool immediate: false}) => impl.close(immediate: immediate); 809 params.point = point;
838 810 return ctrl.sendMessageWithRequestId(
839 Future responseOrError(Future f) => impl.responseOrError(f); 811 params,
840 812 _hitTesterMethodHitTestName,
841 Future get errorFuture => impl.errorFuture; 813 -1,
842 814 bindings.MessageHeader.kMessageExpectsResponse);
843 int get version => impl.version;
844
845 Future<int> queryVersion() => impl.queryVersion();
846
847 void requireVersion(int requiredVersion) {
848 impl.requireVersion(requiredVersion);
849 }
850
851 String toString() {
852 return "HitTesterProxy($impl)";
853 } 815 }
854 } 816 }
855 817
856 818
857 class HitTesterStub extends bindings.Stub { 819 class HitTesterStub extends bindings.Stub {
858 HitTester _impl; 820 HitTester _impl;
859 821
860 HitTesterStub.fromEndpoint( 822 HitTesterStub.fromEndpoint(
861 core.MojoMessagePipeEndpoint endpoint, [HitTester impl]) 823 core.MojoMessagePipeEndpoint endpoint, [HitTester impl])
862 : super.fromEndpoint(endpoint, autoBegin: impl != null) { 824 : super.fromEndpoint(endpoint, autoBegin: impl != null) {
(...skipping 90 matching lines...) Expand 10 before | Expand all | Expand 10 after
953 static service_describer.ServiceDescription get serviceDescription { 915 static service_describer.ServiceDescription get serviceDescription {
954 if (_cachedServiceDescription == null) { 916 if (_cachedServiceDescription == null) {
955 _cachedServiceDescription = new _HitTesterServiceDescription(); 917 _cachedServiceDescription = new _HitTesterServiceDescription();
956 } 918 }
957 return _cachedServiceDescription; 919 return _cachedServiceDescription;
958 } 920 }
959 } 921 }
960 922
961 923
962 924
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698