aboutsummaryrefslogtreecommitdiff
path: root/compatibility
diff options
context:
space:
mode:
authorChristopher Vogt <oss.nsp@cvogt.org>2017-03-19 19:51:38 -0400
committerChristopher Vogt <oss.nsp@cvogt.org>2017-03-20 02:56:26 -0400
commitd6245c8dc5c7b2f885d538b39f685327da252863 (patch)
tree846bdd92ad022dbe5a7a45e0b9d5e75bbf7779c8 /compatibility
parentca099eba708f3618bed75a5940a5a5ae1d10b684 (diff)
downloadcbt-d6245c8dc5c7b2f885d538b39f685327da252863.tar.gz
cbt-d6245c8dc5c7b2f885d538b39f685327da252863.tar.bz2
cbt-d6245c8dc5c7b2f885d538b39f685327da252863.zip
Unify reflectively loading builds from directories.
THis is mostly cleanup and a little bit feature. Before it was done partially in 3 places, BuildBuild, loadRoot and GitDependency. Now DirectoryDependencies also support referencing sub-builds. Also introduce scalariform for the first few files of cbt's core code :).
Diffstat (limited to 'compatibility')
-rw-r--r--compatibility/BuildInterface.java4
-rw-r--r--compatibility/Dependency.java3
2 files changed, 6 insertions, 1 deletions
diff --git a/compatibility/BuildInterface.java b/compatibility/BuildInterface.java
index d6d11db..c374d5d 100644
--- a/compatibility/BuildInterface.java
+++ b/compatibility/BuildInterface.java
@@ -12,7 +12,9 @@ public interface BuildInterface extends Dependency{
};
// deprecated methods, which clients are still allowed to implement, but not required
- public abstract BuildInterface finalBuild(); // needed to propagage through build builds. Maybe we can get rid of this.
+ public default BuildInterface finalBuild(){
+ throw new IncompatibleCbtVersionException("You need to define method classLoader.");
+ }; // needed to propagage through build builds. Maybe we can get rid of this.
public abstract BuildInterface copy(Context context);
public abstract String scalaVersion();
public abstract String[] crossScalaVersionsArray();
diff --git a/compatibility/Dependency.java b/compatibility/Dependency.java
index e23faa6..d1d05b9 100644
--- a/compatibility/Dependency.java
+++ b/compatibility/Dependency.java
@@ -9,6 +9,9 @@ public interface Dependency{
public default long lastModified(){
throw new IncompatibleCbtVersionException("You need to define method lastModified.");
};
+ public default ClassLoader classLoader(){
+ throw new IncompatibleCbtVersionException("You need to define method classLoader.");
+ };
// methods that exist for longer which every CBT version in use should have by now, no default values needed
public abstract String show();