}
// Delete a tag
public void expungeTag(String guid, boolean needsSync) {
boolean check;
Tag t = getTag(guid);
NSqlQuery query = new NSqlQuery(db.getConnection());
check = query.prepare("delete from Tag "
+"where guid=:guid");
if (!check) {
logger.log(logger.EXTREME, "Tag SQL delete prepare has failed.");
logger.log(logger.EXTREME, query.lastError());
}
query.bindValue(":guid", guid);
check = query.exec();
if (!check)
logger.log(logger.MEDIUM, "Tag delete failed.");
check = query.prepare("delete from NoteTags "
+"where tagGuid=:guid");
if (!check) {
logger.log(logger.EXTREME, "NoteTags SQL delete prepare has failed.");
logger.log(logger.EXTREME, query.lastError());
}
query.bindValue(":guid", guid);
check = query.exec();
if (!check)
logger.log(logger.MEDIUM, "NoteTags delete failed.");
// Add the work to the parent queue
if (needsSync && t!= null && t.getUpdateSequenceNum() > 0) {
DeletedTable del = new DeletedTable(logger, db);
del.addDeletedItem(guid, "Tag");
}
}