// make sure that programmatic call to offline method is always preserved
private Boolean programmaticOffline;
public MavenWorkingSessionImpl() {
this.system = new MavenRepositorySystem();
this.settings = new MavenSettingsBuilder().buildDefaultSettings();
this.remoteRepositories = new ArrayList<RemoteRepository>();
this.additionalRemoteRepositories = new ArrayList<RemoteRepository>();
// get session to spare time
this.session = system.getSession(settings, useLegacyLocalRepository);
this.dependencies = new ArrayList<MavenDependency>();