if(message){
int result = nfc_tag_write_ndef(m_last_tag_handle, message, NULL, NULL);
- // Message is no more needed - can be removed
- // TODO: uncomment line below after merging commit
- // that adds this function
- //NFCMessageUtils::removeMessageHandle(message)
+ NFCMessageUtils::RemoveMessageHandle(message);
if (NFC_ERROR_NONE != result){
// for permission related error throw exception
},
{
name : 'tagType',
- type : types_.STRING,
+ type : types_.ARRAY,
+ values : types_.STRING,
optional : true,
nullable : true
}
]);
- // TODO: NFCTag type value validation needed here
+ if(!types_.isNullOrUndefined(args.tagType)) {
+ for (var i = 0; i < args.tagType.length; i++) {
+ if (NFCTagType[args.tagType[i]] === undefined) {
+ throw new tizen.WebAPIException(
+ tizen.WebAPIException.TYPE_MISMATCH_ERR, 'Invalid tag type.');
+ }
+ }
+ }
// Listener object creation
var listenerCallback = function(message) {
if('onattach' === message.action) {
tagObject = new NFCTag(message.id);
- if(!types_.isNullOrUndefined(args.tagType)) {
- // If filter set for listener then check tag type
- if(tagObject.type !== args.tagType) {
- return;
- }
+ // If filter is set for listener but tag type is not searched one
+ if(!types_.isNullOrUndefined(args.tagType) &&
+ args.tagType.indexOf(tagObject.type) < 0) {
+ return;
}
}
args.listener[message.action](tagObject);