Skip to content

Commit 3845a96

Browse files
committed
Fix event ack
Change-Id: I4ea3f10d261b3422ec98400359be3a2a7b3a4ab5
1 parent 81a5c68 commit 3845a96

File tree

2 files changed

+32
-2
lines changed

2 files changed

+32
-2
lines changed

AndroidAsync/src/com/koushikdutta/async/http/socketio/SocketIOConnection.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -293,10 +293,12 @@ public void onSelect(SocketIOClient client) {
293293
});
294294
}
295295

296-
private Acknowledge acknowledge(final String messageId) {
297-
if (TextUtils.isEmpty(messageId))
296+
private Acknowledge acknowledge(final String _messageId) {
297+
if (TextUtils.isEmpty(_messageId))
298298
return null;
299299

300+
final String messageId = _messageId.replaceAll("\\+$", "");
301+
300302
return new Acknowledge() {
301303
@Override
302304
public void acknowledge(JSONArray arguments) {

AndroidAsyncTest/src/com/koushikdutta/async/test/SocketIOTests.java

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -169,4 +169,32 @@ public void run() {
169169
assertTrue(disconnectTrigger.get(TIMEOUT, TimeUnit.MILLISECONDS));
170170
assertTrue(reconnectTrigger.get(TIMEOUT, TimeUnit.MILLISECONDS));
171171
}
172+
173+
public void testEventAck() throws Exception {
174+
final TriggerFuture trigger = new TriggerFuture();
175+
SocketIOClient client = SocketIOClient.connect(AsyncHttpClient.getDefaultInstance(), "http://192.168.1.2:3000/", null).get();
176+
177+
final JSONArray args = new JSONArray();
178+
args.put("echo");
179+
180+
client.on("scoop", new EventCallback() {
181+
@Override
182+
public void onEvent(JSONArray argument, Acknowledge acknowledge) {
183+
acknowledge.acknowledge(args);
184+
185+
}
186+
});
187+
188+
client.on("ack", new EventCallback() {
189+
@Override
190+
public void onEvent(JSONArray argument, Acknowledge acknowledge) {
191+
192+
trigger.trigger(args.optString(0, null).equals("echo"));
193+
}
194+
});
195+
196+
client.emit("poop", args);
197+
198+
assertTrue(trigger.get(TIMEOUT, TimeUnit.MILLISECONDS));
199+
}
172200
}

0 commit comments

Comments
 (0)