use of hudson.scm.ChangeLogSet in project blueocean-plugin by jenkinsci.
the class PipelineRunImpl method getChangeSet.
@Override
public Container<BlueChangeSetEntry> getChangeSet() {
Map<String, BlueChangeSetEntry> m = new LinkedHashMap<>();
int cnt = 0;
for (ChangeLogSet<? extends Entry> cs : run.getChangeSets()) {
for (ChangeLogSet.Entry e : cs) {
cnt++;
String id = e.getCommitId();
if (id == null)
id = String.valueOf(cnt);
m.put(id, new ChangeSetResource(e, this));
}
}
return Containers.fromResourceMap(getLink(), m);
}
use of hudson.scm.ChangeLogSet 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