@@ -34,7 +34,7 @@ public class PresenceChannelImpl extends PrivateChannelImpl implements PresenceC
3434 private String myUserID ;
3535
3636 public PresenceChannelImpl (final InternalConnection connection , final String channelName ,
37- final Authorizer authorizer , final Factory factory ) {
37+ final Authorizer authorizer , final Factory factory ) {
3838 super (connection , channelName , authorizer , factory );
3939 }
4040
@@ -87,9 +87,13 @@ public void onMessage(final String event, final String message) {
8787 getFactory ().queueOnEventThread (new Runnable () {
8888 @ Override
8989 public void run () {
90- listener .onEvent (name , event , data );
90+ if (event .startsWith (CLIENT_EVENT_PREFIX )) {
91+ listener .onEventWithMetadata (name , event , data , metadata );
92+ }
93+ else {
94+ listener .onEvent (name , event , data );
95+ }
9196
92- listener .onEventWithMetadata (name , event , data , metadata );
9397 }
9498 });
9599 }
@@ -116,7 +120,7 @@ public String toSubscribeMessage() {
116120
117121 try {
118122 final Map authResponseMap = GSON .fromJson (authResponse , Map .class );
119- final String authKey = (String )authResponseMap .get ("auth" );
123+ final String authKey = (String ) authResponseMap .get ("auth" );
120124 final Object channelData = authResponseMap .get ("channel_data" );
121125
122126 storeMyUserId (channelData );
@@ -134,8 +138,7 @@ public String toSubscribeMessage() {
134138 final String json = GSON .toJson (jsonObject );
135139
136140 return json ;
137- }
138- catch (final Exception e ) {
141+ } catch (final Exception e ) {
139142 throw new AuthorizationFailureException ("Unable to parse response from Authorizer: " + authResponse , e );
140143 }
141144 }
@@ -180,15 +183,15 @@ public void unbind(final String eventName, final SubscriptionEventListener liste
180183
181184 @ Override
182185 protected String [] getDisallowedNameExpressions () {
183- return new String [] { "^(?!presence-).*" };
186+ return new String []{ "^(?!presence-).*" };
184187 }
185188
186189 @ Override
187190 public String toString () {
188191 return String .format ("[Presence Channel: name=%s]" , name );
189192 }
190193
191- @ SuppressWarnings ({ "rawtypes" , "unchecked" })
194+ @ SuppressWarnings ({"rawtypes" , "unchecked" })
192195 private void handleSubscriptionSuccessfulMessage (final String message ) {
193196
194197 // extract data from the JSON message
@@ -206,7 +209,7 @@ private void handleSubscriptionSuccessfulMessage(final String message) {
206209 }
207210 final ChannelEventListener listener = getEventListener ();
208211 if (listener != null ) {
209- final PresenceChannelEventListener presenceListener = (PresenceChannelEventListener )listener ;
212+ final PresenceChannelEventListener presenceListener = (PresenceChannelEventListener ) listener ;
210213 presenceListener .onUsersInformationReceived (getName (), getUsers ());
211214 }
212215 }
@@ -218,14 +221,14 @@ private void handleMemberAddedEvent(final String message) {
218221
219222
220223 final String id = memberData .userId ;
221- final String userData = memberData .userInfo != null ? GSON .toJson (memberData .userInfo ) : null ;
224+ final String userData = memberData .userInfo != null ? GSON .toJson (memberData .userInfo ) : null ;
222225
223226 final User user = new User (id , userData );
224227 idToUserMap .put (id , user );
225228
226229 final ChannelEventListener listener = getEventListener ();
227230 if (listener != null ) {
228- final PresenceChannelEventListener presenceListener = (PresenceChannelEventListener )listener ;
231+ final PresenceChannelEventListener presenceListener = (PresenceChannelEventListener ) listener ;
229232 presenceListener .userSubscribed (getName (), user );
230233 }
231234 }
@@ -240,7 +243,7 @@ private void handleMemberRemovedEvent(final String message) {
240243
241244 final ChannelEventListener listener = getEventListener ();
242245 if (listener != null ) {
243- final PresenceChannelEventListener presenceListener = (PresenceChannelEventListener )listener ;
246+ final PresenceChannelEventListener presenceListener = (PresenceChannelEventListener ) listener ;
244247 presenceListener .userUnsubscribed (getName (), user );
245248 }
246249 }
@@ -264,7 +267,7 @@ private static PresenceData extractPresenceDataFrom(final String message) {
264267
265268 @ SuppressWarnings ("rawtypes" )
266269 private void storeMyUserId (final Object channelData ) {
267- final Map channelDataMap = GSON .fromJson ((String )channelData , Map .class );
270+ final Map channelDataMap = GSON .fromJson ((String ) channelData , Map .class );
268271 myUserID = String .valueOf (channelDataMap .get ("user_id" ));
269272 }
270273
0 commit comments