1 /*
2 * LICENSE
3 *
4 * "THE BEER-WARE LICENSE" (Revision 42):
5 * "Sven Strittmatter" <ich@weltraumschaf.de> wrote this file.
6 * As long as you retain this notice you can do whatever you want with
7 * this stuff. If we meet some day, and you think this stuff is worth it,
8 * you can buy me a beer in return.
9 */
10 package org.jenkinsci.plugins.darcs.browsers;
11
12 import org.jenkinsci.plugins.darcs.DarcsChangeSet;
13 import java.io.IOException;
14 import java.net.URL;
15 import hudson.scm.RepositoryBrowser;
16
17 /**
18 * Abstract implementation for Darcs repository browsers.
19 *
20 * @author Sven Strittmatter <ich@weltraumschaf.de>
21 */
22 public abstract class DarcsRepositoryBrowser extends RepositoryBrowser<DarcsChangeSet> {
23
24 /**
25 * Serial version UID.
26 */
27 private static final long serialVersionUID = 1L;
28
29 /**
30 * Determines the link to a single file under Perforce.
31 *
32 * This page should display all the past revisions of this file, etc.
33 *
34 * @param changeSet
35 * @param file
36 * @return null if the browser doesn't have any suitable URL
37 * @throws IOException
38 */
39 public abstract URL getFileDiffLink(DarcsChangeSet changeSet, String file) throws IOException;
40 }