blob: eaf7d8f5f5cead9a0c3dabcba650431272da6f5b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
package frege.gradle.plugins;
import org.gradle.util.VersionNumber;
import java.io.File;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class FregeJarFile {
private static final Pattern FILE_NAME_PATTERN = Pattern.compile("(frege(?:-all)?)-(\\d.*?)(-indy)?.jar");
private final File file;
private final Matcher matcher;
private String version;
private FregeJarFile(File file, Matcher matcher) {
this.file = file;
this.matcher = matcher;
}
public static FregeJarFile parse(File file) {
Matcher matcher = FILE_NAME_PATTERN.matcher(file.getName());
return matcher.matches() ? new FregeJarFile(file, matcher) : null;
}
public String getDependencyNotation() {
return "org.frege-lang:frege:" + getVersion();
}
public VersionNumber getVersion() {
return VersionNumber.parse(matcher.group(2));
}
}
|