Bug 1103730 - Create a nfc-manager-tech-discovered system message. r=dimi

This commit is contained in:
Yoshi Huang 2014-11-17 18:00:14 +08:00
parent 95e6c95056
commit 7b3f960904
2 changed files with 24 additions and 1 deletions

View File

@ -573,5 +573,25 @@ NFCSendFileWrapper.prototype = {
QueryInterface: XPCOMUtils.generateQI([Ci.nsISystemMessagesWrapper])
};
function NFCTechDiscoveredWrapper() {
}
NFCTechDiscoveredWrapper.prototype = {
// nsISystemMessagesWrapper implementation.
wrapMessage: function wrapMessage(aMessage, aWindow) {
aMessage = Cu.cloneInto(aMessage, aWindow);
if (aMessage.techList.indexOf("P2P") != -1) {
let peerImpl = new MozNFCPeerImpl(aWindow, aMessage.sessionToken);
let peer = aWindow.MozNFCPeer._create(aWindow, peerImpl);
aMessage.peer = peer;
}
return aMessage;
},
classDescription: "NFCTechDiscoveredWrapper",
classID: Components.ID("{2e7f9285-3c72-4e1f-b985-141a00a23a75}"),
contractID: "@mozilla.org/dom/system-messages/wrapper/nfc-manager-tech-discovered;1",
QueryInterface: XPCOMUtils.generateQI([Ci.nsISystemMessagesWrapper])
};
this.NSGetFactory = XPCOMUtils.generateNSGetFactory([MozNFCTagImpl,
MozNFCPeerImpl, MozNFCImpl, NFCSendFileWrapper]);
MozNFCPeerImpl, MozNFCImpl, NFCSendFileWrapper, NFCTechDiscoveredWrapper]);

View File

@ -9,3 +9,6 @@ contract @mozilla.org/nfc/NFCPeer;1 {c1b2bcf0-35eb-11e3-aa6e-0800200c9a66}
component {c5063a5c-8cb9-41d2-baf5-56062a2e30e9} nsNfc.js
contract @mozilla.org/dom/system-messages/wrapper/nfc-manager-send-file;1 {c5063a5c-8cb9-41d2-baf5-56062a2e30e9}
component {2e7f9285-3c72-4e1f-b985-141a00a23a75} nsNfc.js
contract @mozilla.org/dom/system-messages/wrapper/nfc-manager-tech-discovered;1 {2e7f9285-3c72-4e1f-b985-141a00a23a75}