use of hudson.scm.ChangeLogSet.AffectedFile in project jenkins-hipchat-plugin by jlewallen.
the class ActiveNotifier method getChanges.
String getChanges(AbstractBuild r) {
if (!r.hasChangeSetComputed()) {
logger.info("No change set computed...");
return null;
}
ChangeLogSet changeSet = r.getChangeSet();
List<Entry> entries = new LinkedList<Entry>();
Set<AffectedFile> files = new HashSet<AffectedFile>();
for (Object o : changeSet.getItems()) {
Entry entry = (Entry) o;
logger.info("Entry " + o);
entries.add(entry);
files.addAll(entry.getAffectedFiles());
}
if (entries.isEmpty()) {
logger.info("Empty change...");
return null;
}
Set<String> authors = new HashSet<String>();
for (Entry entry : entries) {
authors.add(entry.getAuthor().getDisplayName());
}
MessageBuilder message = new MessageBuilder(notifier, r);
message.append("Started by changes from ");
message.append(StringUtils.join(authors, ", "));
message.append(" (");
message.append(files.size());
message.append(" file(s) changed)");
return message.appendOpenLink().toString();
}
Aggregations