public static void applyTagDiff(final TagDiff td, final Track t) { // Add the target tags if (!td.overrideTags.isEmpty()) { t.clearTags(); for (final String tag : td.overrideTags) { logger.trace("Tagging composed track with '{}'", tag); t.addTag(tag); } } else { for (final String tag : td.removeTags) { logger.trace("Remove tagging '{}' from composed track", tag); t.removeTag(tag.substring(MINUS.length())); } for (final String tag : td.addTags) { logger.trace("Add tagging '{}' to composed track", tag); t.addTag(tag.substring(PLUS.length())); } } } }