]> git.argeo.org Git - gpl/argeo-slc.git/blob - org.argeo.slc.api/src/org/argeo/slc/deploy/VersioningDriver.java
Improve publishing third parties.
[gpl/argeo-slc.git] / org.argeo.slc.api / src / org / argeo / slc / deploy / VersioningDriver.java
1 package org.argeo.slc.deploy;
2
3 import java.io.File;
4 import java.io.OutputStream;
5 import java.util.List;
6
7 /** Abstracts common versioning operations */
8 public interface VersioningDriver {
9 public void getFileFromRepository(String repositoryBaseUrl,
10 String location, OutputStream out);
11
12 public List<String> getChangedPaths(File repositoryRoot, Long revision);
13
14 public String getRepositoryRoot(String repositoryUrl);
15
16 public String getRelativePath(String repositoryUrl);
17
18 public void updateToHead(File fileOrDir);
19
20 public void importFileOrDir(String repositoryUrl, File fileOrDir);
21
22 /**
23 * Checks out or update this versioned directory
24 *
25 * @return true if the content has changed, false otherwise
26 */
27 public Boolean checkout(String repositoryUrl, File destDir,
28 Boolean recursive);
29
30 public void createRepository(String filePath);
31
32 public void commit(File fileOrDir, String commitMessage);
33 }