Merge "NAN: add message ID to correlate message callbacks to original message" into mm-wireless-dev
This commit is contained in:
@@ -43,7 +43,8 @@ interface IWifiNanManager
|
||||
void publish(int sessionId, in PublishData publishData, in PublishSettings publishSettings);
|
||||
void subscribe(int sessionId, in SubscribeData subscribeData,
|
||||
in SubscribeSettings subscribeSettings);
|
||||
void sendMessage(int sessionId, int peerId, in byte[] message, int messageLength);
|
||||
void sendMessage(int sessionId, int peerId, in byte[] message, int messageLength,
|
||||
int messageId);
|
||||
void stopSession(int sessionId);
|
||||
void destroySession(int sessionId);
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ oneway interface IWifiNanSessionListener
|
||||
void onMatch(int peerId, in byte[] serviceSpecificInfo,
|
||||
int serviceSpecificInfoLength, in byte[] matchFilter, int matchFilterLength);
|
||||
|
||||
void onMessageSendSuccess();
|
||||
void onMessageSendFail(int reason);
|
||||
void onMessageSendSuccess(int messageId);
|
||||
void onMessageSendFail(int messageId, int reason);
|
||||
void onMessageReceived(int peerId, in byte[] message, int messageLength);
|
||||
}
|
||||
|
||||
@@ -319,13 +319,14 @@ public class WifiNanManager {
|
||||
/**
|
||||
* {@hide}
|
||||
*/
|
||||
public void sendMessage(int sessionId, int peerId, byte[] message, int messageLength) {
|
||||
public void sendMessage(int sessionId, int peerId, byte[] message, int messageLength,
|
||||
int messageId) {
|
||||
try {
|
||||
if (VDBG) {
|
||||
Log.v(TAG, "sendMessage(): sessionId=" + sessionId + ", peerId=" + peerId
|
||||
+ ", messageLength=" + messageLength);
|
||||
+ ", messageLength=" + messageLength + ", messageId=" + messageId);
|
||||
}
|
||||
mService.sendMessage(sessionId, peerId, message, messageLength);
|
||||
mService.sendMessage(sessionId, peerId, message, messageLength, messageId);
|
||||
} catch (RemoteException e) {
|
||||
Log.w(TAG, "subscribe RemoteException (FYI - ignoring): " + e);
|
||||
}
|
||||
|
||||
@@ -103,8 +103,11 @@ public class WifiNanSession {
|
||||
* @param message The message to be transmitted.
|
||||
* @param messageLength The number of bytes from the {@code message} to be
|
||||
* transmitted.
|
||||
* @param messageId An arbitrary integer used by the caller to identify the
|
||||
* message. The same integer ID will be returned in the callbacks
|
||||
* indicated message send success or failure.
|
||||
*/
|
||||
public void sendMessage(int peerId, byte[] message, int messageLength) {
|
||||
mManager.sendMessage(mSessionId, peerId, message, messageLength);
|
||||
public void sendMessage(int peerId, byte[] message, int messageLength, int messageId) {
|
||||
mManager.sendMessage(mSessionId, peerId, message, messageLength, messageId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -210,10 +210,10 @@ public class WifiNanSessionListener {
|
||||
msg.getData().getByteArray(MESSAGE_BUNDLE_KEY_MESSAGE2), msg.arg2);
|
||||
break;
|
||||
case LISTEN_MESSAGE_SEND_SUCCESS:
|
||||
WifiNanSessionListener.this.onMessageSendSuccess();
|
||||
WifiNanSessionListener.this.onMessageSendSuccess(msg.arg1);
|
||||
break;
|
||||
case LISTEN_MESSAGE_SEND_FAIL:
|
||||
WifiNanSessionListener.this.onMessageSendFail(msg.arg1);
|
||||
WifiNanSessionListener.this.onMessageSendFail(msg.arg1, msg.arg2);
|
||||
break;
|
||||
case LISTEN_MESSAGE_RECEIVED:
|
||||
WifiNanSessionListener.this.onMessageReceived(msg.arg2,
|
||||
@@ -306,7 +306,7 @@ public class WifiNanSessionListener {
|
||||
* {@link WifiNanSessionListener#onMessageSendFail(int)} will be received -
|
||||
* never both.
|
||||
*/
|
||||
public void onMessageSendSuccess() {
|
||||
public void onMessageSendSuccess(int messageId) {
|
||||
if (VDBG) Log.v(TAG, "onMessageSendSuccess: called in stub - override if interested");
|
||||
}
|
||||
|
||||
@@ -325,7 +325,7 @@ public class WifiNanSessionListener {
|
||||
* @param reason The failure reason using {@code NanSessionListener.FAIL_*}
|
||||
* codes.
|
||||
*/
|
||||
public void onMessageSendFail(int reason) {
|
||||
public void onMessageSendFail(int messageId, int reason) {
|
||||
if (VDBG) Log.v(TAG, "onMessageSendFail: called in stub - override if interested");
|
||||
}
|
||||
|
||||
@@ -401,19 +401,21 @@ public class WifiNanSessionListener {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onMessageSendSuccess() {
|
||||
public void onMessageSendSuccess(int messageId) {
|
||||
if (VDBG) Log.v(TAG, "onMessageSendSuccess");
|
||||
|
||||
Message msg = mHandler.obtainMessage(LISTEN_MESSAGE_SEND_SUCCESS);
|
||||
msg.arg1 = messageId;
|
||||
mHandler.sendMessage(msg);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onMessageSendFail(int reason) {
|
||||
public void onMessageSendFail(int messageId, int reason) {
|
||||
if (VDBG) Log.v(TAG, "onMessageSendFail: reason=" + reason);
|
||||
|
||||
Message msg = mHandler.obtainMessage(LISTEN_MESSAGE_SEND_FAIL);
|
||||
msg.arg1 = reason;
|
||||
msg.arg1 = messageId;
|
||||
msg.arg2 = reason;
|
||||
mHandler.sendMessage(msg);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user