package org.wyona.yarep.core.impl.svn;
import java.util.ArrayList;
import java.util.Date;
import org.tmatesoft.svn.core.ISVNLogEntryHandler;
import org.tmatesoft.svn.core.SVNException;
import org.tmatesoft.svn.core.SVNLogEntry;
/**
* Used to collect revision information (numbers, dates, messages) of a given file.
*/
public class RevisionLogEntryHandler implements ISVNLogEntryHandler {
protected ArrayList revisions = new ArrayList();
protected ArrayList messages = new ArrayList();
protected ArrayList dates = new ArrayList();
public void handleLogEntry(SVNLogEntry logEntry) throws SVNException {
long revision = logEntry.getRevision();
String message = logEntry.getMessage();
Date date = logEntry.getDate();
revisions.add(new Long(revision));
messages.add(message);
dates.add(date);
}
public long[] getRevisions() {
long[] revs = new long[revisions.size()];
for (int i=0; i<revisions.size(); i++) {
revs[i] = ((Long)revisions.get(i)).longValue();
}
return revs;
}
public String[] getMessages() {
return (String[])messages.toArray(new String[messages.size()]);
}
public Date[] getDates() {
return (Date[])dates.toArray(new Date[dates.size()]);
}
}