diff options
author | Dierk König <dierk.koenig@canoo.com> | 2015-11-21 10:09:31 +0100 |
---|---|---|
committer | Dierk König <dierk.koenig@canoo.com> | 2015-11-21 10:09:31 +0100 |
commit | f0807811f48c50b6a5fe7816ef48c148be9f9903 (patch) | |
tree | c61df925b637d26c95086510ee471ac861a36731 /src/main/groovy/frege/gradle/plugins/FregeJarFile.java | |
parent | fa6dce676590c83bc84d130e1241cf585f88a469 (diff) | |
parent | 73dd702743a5b4d8816e495e55c19f391669fc25 (diff) | |
download | frege-gradle-plugin-f0807811f48c50b6a5fe7816ef48c148be9f9903.tar.gz frege-gradle-plugin-f0807811f48c50b6a5fe7816ef48c148be9f9903.tar.bz2 frege-gradle-plugin-f0807811f48c50b6a5fe7816ef48c148be9f9903.zip |
Merge pull request #28 from breskeby/base-plugin
Base plugin
Diffstat (limited to 'src/main/groovy/frege/gradle/plugins/FregeJarFile.java')
-rw-r--r-- | src/main/groovy/frege/gradle/plugins/FregeJarFile.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/main/groovy/frege/gradle/plugins/FregeJarFile.java b/src/main/groovy/frege/gradle/plugins/FregeJarFile.java new file mode 100644 index 0000000..eaf7d8f --- /dev/null +++ b/src/main/groovy/frege/gradle/plugins/FregeJarFile.java @@ -0,0 +1,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)); + } +} |