@@ -707,59 +707,65 @@ function _getUnaryInterceptor(method_definition, channel, emitter, callback) {
707707 return function ( options ) {
708708 var call = common . getCall ( channel , method_definition . path , options ) ;
709709 var first_listener ;
710- return new InterceptingCall ( null , {
711- start : function ( metadata , listener ) {
712- var batch = {
713- [ grpc . opType . SEND_INITIAL_METADATA ] :
714- metadata . _getCoreRepresentation ( ) ,
715- } ;
716- first_listener = listener ;
717- call . startBatch ( batch , function ( ) { } ) ;
718- } ,
719- sendMessage : function ( message ) {
720- var batch = {
721- [ grpc . opType . SEND_MESSAGE ] : serialize ( message ) ,
722- } ;
723- call . startBatch ( batch , function ( ) { } ) ;
724- } ,
725- halfClose : function ( ) {
726- var batch = {
727- [ grpc . opType . SEND_CLOSE_FROM_CLIENT ] : true ,
728- [ grpc . opType . RECV_INITIAL_METADATA ] : true ,
729- [ grpc . opType . RECV_MESSAGE ] : true ,
730- [ grpc . opType . RECV_STATUS_ON_CLIENT ] : true
731- } ;
732- call . startBatch ( batch , function ( err , response ) {
733- response . status . metadata = Metadata . _fromCoreRepresentation (
734- response . status . metadata ) ;
735- var status = response . status ;
736- var deserialized ;
737- if ( status . code === constants . status . OK ) {
738- if ( err ) {
739- // Got a batch error, but OK status. Something went wrong
740- callback ( err ) ;
741- return ;
742- } else {
743- try {
744- deserialized = deserialize ( response . read ) ;
745- } catch ( e ) {
746- /* Change status to indicate bad server response. This
747- * will result in passing an error to the callback */
748- status = {
749- code : constants . status . INTERNAL ,
750- details : 'Failed to parse server response'
751- } ;
752- }
710+ var final_requester = { } ;
711+ final_requester . start = function ( metadata , listener ) {
712+ var batch = {
713+ [ grpc . opType . SEND_INITIAL_METADATA ] :
714+ metadata . _getCoreRepresentation ( ) ,
715+ } ;
716+ first_listener = listener ;
717+ call . startBatch ( batch , function ( ) { } ) ;
718+ } ;
719+ final_requester . sendMessage = function ( message ) {
720+ var batch = {
721+ [ grpc . opType . SEND_MESSAGE ] : serialize ( message ) ,
722+ } ;
723+ call . startBatch ( batch , function ( ) { } ) ;
724+ } ;
725+ final_requester . halfClose = function ( ) {
726+ var batch = {
727+ [ grpc . opType . SEND_CLOSE_FROM_CLIENT ] : true ,
728+ [ grpc . opType . RECV_INITIAL_METADATA ] : true ,
729+ [ grpc . opType . RECV_MESSAGE ] : true ,
730+ [ grpc . opType . RECV_STATUS_ON_CLIENT ] : true
731+ } ;
732+ call . startBatch ( batch , function ( err , response ) {
733+ response . status . metadata = Metadata . _fromCoreRepresentation (
734+ response . status . metadata ) ;
735+ var status = response . status ;
736+ var deserialized ;
737+ if ( status . code === constants . status . OK ) {
738+ if ( err ) {
739+ // Got a batch error, but OK status. Something went wrong
740+ callback ( err ) ;
741+ return ;
742+ } else {
743+ try {
744+ deserialized = deserialize ( response . read ) ;
745+ } catch ( e ) {
746+ /* Change status to indicate bad server response. This
747+ * will result in passing an error to the callback */
748+ status = {
749+ code : constants . status . INTERNAL ,
750+ details : 'Failed to parse server response'
751+ } ;
753752 }
754753 }
755- response . metadata =
756- Metadata . _fromCoreRepresentation ( response . metadata ) ;
757- first_listener . onReceiveMetadata ( response . metadata ) ;
758- first_listener . onReceiveMessage ( deserialized ) ;
759- first_listener . onReceiveStatus ( status ) ;
760- } ) ;
761- }
762- } ) ;
754+ }
755+ response . metadata =
756+ Metadata . _fromCoreRepresentation ( response . metadata ) ;
757+ first_listener . onReceiveMetadata ( response . metadata ) ;
758+ first_listener . onReceiveMessage ( deserialized ) ;
759+ first_listener . onReceiveStatus ( status ) ;
760+ } ) ;
761+ } ;
762+ final_requester . cancel = function ( ) {
763+ call . cancel ( ) ;
764+ } ;
765+ final_requester . getPeer = function ( ) {
766+ return call . getPeer ( ) ;
767+ } ;
768+ return new InterceptingCall ( null , final_requester ) ;
763769 } ;
764770}
765771
@@ -865,6 +871,12 @@ function _getClientStreamingInterceptor(method_definition, channel, emitter,
865871 } ;
866872 call . startBatch ( batch , function ( ) { } ) ;
867873 } ;
874+ final_requester . cancel = function ( ) {
875+ call . cancel ( ) ;
876+ } ;
877+ final_requester . getPeer = function ( ) {
878+ return call . getPeer ( ) ;
879+ } ;
868880 return new InterceptingCall ( null , final_requester ) ;
869881 } ;
870882}
@@ -944,6 +956,12 @@ function _getServerStreamingInterceptor(method_definition, channel, emitter) {
944956 call . startBatch ( recv_batch , _getStreamReadCallback ( emitter , call ,
945957 first_listener , deserialize ) ) ;
946958 } ;
959+ final_requester . cancel = function ( ) {
960+ call . cancel ( ) ;
961+ } ;
962+ final_requester . getPeer = function ( ) {
963+ return call . getPeer ( ) ;
964+ } ;
947965 return new InterceptingCall ( null , final_requester ) ;
948966 } ;
949967}
@@ -1041,6 +1059,12 @@ function _getBidiStreamingInterceptor(method_definition, channel, emitter) {
10411059 call . startBatch ( recv_batch , _getStreamReadCallback ( emitter , call ,
10421060 first_listener , deserialize ) ) ;
10431061 } ;
1062+ final_requester . cancel = function ( ) {
1063+ call . cancel ( ) ;
1064+ } ;
1065+ final_requester . getPeer = function ( ) {
1066+ return call . getPeer ( ) ;
1067+ } ;
10441068 return new InterceptingCall ( null , final_requester ) ;
10451069 } ;
10461070}
0 commit comments