class SessionRepository {

    public LocalSession createSession(File applicationDirectory, ApplicationId applicationId, TimeoutBudget timeoutBudget) {
        applicationRepo.createApplication(applicationId);
        Optional<Long> activeSessionId = applicationRepo.activeSessionOf(applicationId);
        return create(applicationDirectory, applicationId, activeSessionId, false, timeoutBudget);
    }

    public  SessionRepository(TenantName tenantName,
                             GlobalComponentRegistry componentRegistry,
                             TenantApplications applicationRepo,
                             FlagSource flagSource,
                             SessionPreparer sessionPreparer);

}