@@ -41,11 +41,11 @@ GCM.prototype.send = function(data, devices) {
4141 memo . push ( promise ) ;
4242 return memo ;
4343 } , [ ] )
44- return Parse . Promise . when ( promises ) . then ( ( results ) => {
44+ return Promise . all ( promises ) . then ( ( results ) => {
4545 let allResults = results . reduce ( ( memo , result ) => {
4646 return memo . concat ( result ) ;
4747 } , [ ] ) ;
48- return Parse . Promise . as ( allResults ) ;
48+ return Promise . resolve ( allResults ) ;
4949 } ) ;
5050 }
5151 // get the devices back...
@@ -70,8 +70,9 @@ GCM.prototype.send = function(data, devices) {
7070 } , { } ) ;
7171
7272 let deviceTokens = Object . keys ( devicesMap ) ;
73-
74- let promises = deviceTokens . map ( ( ) => new Parse . Promise ( ) ) ;
73+
74+ const resolvers = [ ] ;
75+ const promises = deviceTokens . map ( ( ) => new Promise ( resolve => resolvers . push ( resolve ) ) ) ;
7576 let registrationTokens = deviceTokens ;
7677 let length = registrationTokens . length ;
7778 log . verbose ( LOG_PREFIX , `sending to ${ length } ${ length > 1 ? 'devices' : 'device' } ` ) ;
@@ -94,7 +95,7 @@ GCM.prototype.send = function(data, devices) {
9495 }
9596 let { results, multicast_id } = response || { } ;
9697 registrationTokens . forEach ( ( token , index ) => {
97- let promise = promises [ index ] ;
98+ let resolve = resolvers [ index ] ;
9899 let result = results ? results [ index ] : undefined ;
99100 let device = devicesMap [ token ] ;
100101 device . deviceType = 'android' ;
@@ -108,10 +109,10 @@ GCM.prototype.send = function(data, devices) {
108109 } else {
109110 resolution . transmitted = true ;
110111 }
111- promise . resolve ( resolution ) ;
112+ resolve ( resolution ) ;
112113 } ) ;
113114 } ) ;
114- return Parse . Promise . when ( promises ) ;
115+ return Promise . all ( promises ) ;
115116}
116117
117118/**
0 commit comments