aboutsummaryrefslogtreecommitdiff
path: root/compatibility/Context.java
blob: 1ec0f5497455a33edcefddf1d6c339c195cc731a (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package cbt;
import java.io.*;
import java.util.concurrent.ConcurrentHashMap;

// TODO: try to reduce the number of members
public abstract class Context{
  public abstract File projectDirectory();
  public abstract File cwd(); // REPLACE by something that allows to run cbt on some other directly
  public abstract String[] argsArray(); // replace this by https://github.com/cvogt/cbt/issues/172 ?
  public abstract String[] enabledLoggersArray();
  public abstract Long startCompat();
  public abstract Boolean cbtHasChangedCompat();
  public abstract String scalaVersionOrNull(); // needed to propagate scalaVersion to dependendee builds
  public abstract ConcurrentHashMap<String,Object> permanentKeys();
  public abstract ConcurrentHashMap<Object,ClassLoader> permanentClassLoaders();
  public abstract ConcurrentHashMap<Object,Object> taskCache();
  public abstract File cache();
  public abstract File cbtHome();
  public abstract File cbtRootHome(); // REMOVE
  public abstract File compatibilityTarget(); // maybe replace this with search in the classloader for it?
  public abstract BuildInterface parentBuildOrNull();
}