@@ -24,13 +24,14 @@ import {SecurityManager} from '../security/SecurityManager';
2424export class DataFlowService extends CommonServiceBase {
2525
2626
27- constructor ( url , options , callback ) {
27+ constructor ( url , options ) {
2828 options = options || { } ;
2929 /*
3030 * @constant EVENT_TYPES
3131 * {Array.<string>}
3232 * 此类支持的事件类型
3333 */
34+ options . EVENT_TYPES = [ "broadcastSocketConnected" , "broadcastSocketClosed" , "broadcastSocketError" , "broadcastFailed" , "broadcastSucceeded" , "subscribeSocketConnected" , "subscribeSocketClosed" , "subscribeSocketError" , "messageSucceeded" , "setFilterParamSucceeded" ]
3435 super ( url , options ) ;
3536
3637 /**
@@ -51,8 +52,6 @@ export class DataFlowService extends CommonServiceBase {
5152 */
5253 this . excludeField = null ;
5354
54- this . callback = callback ;
55-
5655 Util . extend ( this , options ) ;
5756
5857 this . CLASS_NAME = "SuperMap.DataFlowService" ;
@@ -69,18 +68,18 @@ export class DataFlowService extends CommonServiceBase {
6968 this . broadcastWebSocket . onopen = function ( e ) {
7069 me . broadcastWebSocket . isOpen = true ;
7170 e . eventType = 'broadcastSocketConnected' ;
72- me . callback ( e ) ;
71+ me . events . triggerEvent ( 'broadcastSocketConnected' , e ) ;
7372 } ;
7473 this . broadcastWebSocket . onclose = function ( e ) {
7574 if ( me . broadcastWebSocket ) {
7675 me . broadcastWebSocket . isOpen = false ;
7776 }
7877 e . eventType = 'broadcastSocketClosed' ;
79- me . callback ( e ) ;
78+ me . events . triggerEvent ( 'broadcastSocketClosed' , e ) ;
8079 } ;
8180 this . broadcastWebSocket . onerror = function ( e ) {
8281 e . eventType = 'broadcastSocketError' ;
83- me . callback ( e ) ;
82+ me . events . triggerEvent ( 'broadcastSocketError' , e ) ;
8483 } ;
8584 return this ;
8685 }
@@ -92,11 +91,11 @@ export class DataFlowService extends CommonServiceBase {
9291 */
9392 broadcast ( geoJSONFeature ) {
9493 if ( ! this . broadcastWebSocket || ! this . broadcastWebSocket . isOpen ) {
95- this . callback ( { eventType : 'broadcastFailed' } ) ;
94+ this . events . triggerEvent ( 'broadcastFailed' ) ;
9695 return ;
9796 }
9897 this . broadcastWebSocket . send ( JSON . stringify ( geoJSONFeature ) ) ;
99- this . callback ( { eventType : 'broadcastSucceeded' } ) ;
98+ this . events . triggerEvent ( 'broadcastSucceeded' ) ;
10099 }
101100
102101 /**
@@ -110,15 +109,15 @@ export class DataFlowService extends CommonServiceBase {
110109 this . subscribeWebSocket . onopen = function ( e ) {
111110 me . subscribeWebSocket . send ( me . _getFilterParams ( ) ) ;
112111 e . eventType = 'subscribeSocketConnected' ;
113- me . callback ( e ) ;
112+ me . events . triggerEvent ( 'subscribeSocketConnected' , e ) ;
114113 } ;
115114 this . subscribeWebSocket . onclose = function ( e ) {
116115 e . eventType = 'subscribeWebSocketClosed' ;
117- me . callback ( e ) ;
116+ me . events . triggerEvent ( 'subscribeWebSocketClosed' , e ) ;
118117 } ;
119118 this . subscribeWebSocket . onerror = function ( e ) {
120119 e . eventType = 'subscribeSocketError' ;
121- me . callback ( e ) ;
120+ me . events . triggerEvent ( 'subscribeSocketError' , e ) ;
122121 } ;
123122 this . subscribeWebSocket . onmessage = function ( e ) {
124123 me . _onMessage ( e ) ;
@@ -135,7 +134,7 @@ export class DataFlowService extends CommonServiceBase {
135134 */
136135 setExcludeField ( excludeField ) {
137136 this . excludeField = excludeField ;
138- this . subscribeWebSocket && this . subscribeWebSocket . send ( this . _getFilterParams ( ) ) ;
137+ this . subscribeWebSocket . send ( this . _getFilterParams ( ) ) ;
139138 return this ;
140139 }
141140
@@ -147,7 +146,7 @@ export class DataFlowService extends CommonServiceBase {
147146 */
148147 setGeometry ( geometry ) {
149148 this . geometry = geometry ;
150- this . subscribeWebSocket && this . subscribeWebSocket . send ( this . _getFilterParams ( ) ) ;
149+ this . subscribeWebSocket . send ( this . _getFilterParams ( ) ) ;
151150 return this ;
152151 }
153152
@@ -208,13 +207,13 @@ export class DataFlowService extends CommonServiceBase {
208207 var filterParam = JSON . parse ( e . data ) ;
209208 e . filterParam = filterParam ;
210209 e . eventType = 'setFilterParamSucceeded' ;
211- this . callback ( e ) ;
210+ this . events . triggerEvent ( 'setFilterParamSucceeded' , e ) ;
212211 return ;
213212 }
214213 var feature = JSON . parse ( e . data ) ;
215214 e . featureResult = feature ;
216215 e . eventType = 'messageSucceeded' ;
217- this . callback ( e ) ;
216+ this . events . triggerEvent ( 'messageSucceeded' , e ) ;
218217 }
219218
220219
0 commit comments