com.github.danielflower.mavenplugins.gitlog.renderers.PlainTextRenderer Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of maven-gitlog-plugin Show documentation
Show all versions of maven-gitlog-plugin Show documentation
Generates a changelog based on commits to a git repository in text and HTML format showing the changes
that are included in each version. A possible use of this is to include these changelogs when packaging your
maven project so that you have an accurate list of commits that the current package includes.
package com.github.danielflower.mavenplugins.gitlog.renderers;
import org.apache.maven.plugin.logging.Log;
import org.eclipse.jgit.revwalk.RevCommit;
import org.eclipse.jgit.revwalk.RevTag;
import java.io.File;
import java.io.IOException;
import static com.github.danielflower.mavenplugins.gitlog.renderers.Formatter.NEW_LINE;
public class PlainTextRenderer extends FileRenderer {
private boolean previousWasTag = false;
private final boolean fullGitMessage;
public PlainTextRenderer(Log log, File targetFolder, String filename, boolean fullGitMessage) throws IOException {
super(log, targetFolder, filename);
this.fullGitMessage = fullGitMessage;
}
public void renderHeader(String reportTitle) throws IOException {
if (reportTitle != null && reportTitle.length() > 0) {
writer.write(reportTitle);
writer.write(NEW_LINE);
writer.write(NEW_LINE);
}
}
public void renderTag(RevTag tag) throws IOException {
if (!previousWasTag) {
writer.write(NEW_LINE);
}
writer.write(tag.getTagName());
writer.write(NEW_LINE);
previousWasTag = true;
}
public void renderCommit(RevCommit commit) throws IOException {
String message = null;
if (fullGitMessage){
message = commit.getFullMessage();
} else {
message = commit.getShortMessage();
}
writer.write(Formatter.formatDateTime(commit.getCommitTime()) + " " + message);
writer.write(" (" + commit.getCommitterIdent().getName() + ")");
writer.write(NEW_LINE);
previousWasTag = false;
}
public void renderFooter() throws IOException {
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy