public Set<Label> setLabels(final Long issueId, final Long customFieldId, final Set<String> labels)
{
notNull("issueId", issueId);
notNull("labels", labels);
ofBizDelegator.removeByAnd(TABLE, MapBuilder.<String, Object>newBuilder().
add(ISSUE_ID, issueId).add(CUSTOM_FIELD_ID, customFieldId).toMap());
final List<GenericValue> createdGvs = new ArrayList<GenericValue>();
for (String label : labels)
{
if (StringUtils.isNotBlank(label))
{
createdGvs.add(ofBizDelegator.createValue(TABLE, MapBuilder.<String, Object>newBuilder().
add(ISSUE_ID, issueId).add(CUSTOM_FIELD_ID, customFieldId).
add(LABEL, StringUtils.trim(label)).toMap()));
}
else
{
log.error("Blank label cannot be stored!");
}
}
return getSortedLabelSet(createdGvs);
}