if (!modulesOfProject.isEmpty()) { for (final Module m : modulesOfProject) { dependencyLoaders.add(new SimpleProjectDependencyLoader(m.getName(), Arrays.asList(m), singleModuleMode, IDependencyLoader projectLoader = new SimpleProjectDependencyLoader(dependencyName, project.getModules(), singleModuleMode,
protected Map<String, Object> configureParameters(IDependencyManager dependencyManager) { Map<String, Object> params = dependencyManager.getExternalParameters(); if (!singleModuleMode) { params = ProjectExternalDependenciesHelper.getExternalParamsWithProjectDependencies(params, getModules()); return params; } return params; }
public synchronized void resetAll(){ for (ClassLoader classLoader : oldClassLoaders){ OpenClassUtil.releaseClassLoader(classLoader); } oldClassLoaders.clear(); for (ClassLoader classLoader : classLoaders.values()){ OpenClassUtil.releaseClassLoader(classLoader); } classLoaders.clear(); for (IDependencyLoader dependencyLoader : getDependencyLoaders()) { ((SimpleProjectDependencyLoader) dependencyLoader).reset(); } }
protected CompiledDependency compileDependency(String dependencyName, AbstractProjectDependencyManager dependencyManager) throws OpenLCompilationException { RulesInstantiationStrategy rulesInstantiationStrategy; ClassLoader classLoader = buildClassLoader(dependencyManager); if (!isProject && modules.size() == 1) { dependencyManager.getCompilationStack().add(dependencyName); Map<String, Object> parameters = configureParameters(dependencyManager); } catch (Exception ex) { log.error(ex.getMessage(), ex); return onCompilationFailure(ex, dependencyManager); } finally{ if (validationWasOn){
@Override public CompiledDependency load(String dependencyName, IDependencyManager dm) throws OpenLCompilationException { AbstractProjectDependencyManager dependencyManager; if (dm instanceof AbstractProjectDependencyManager) { dependencyManager = (AbstractProjectDependencyManager) dm; } else { throw new IllegalStateException("This loader works only with AbstractProjectDependencyManager!"); } if (this.dependencyName.equals(dependencyName)) { boolean isCircularDependency = dependencyManager.getCompilationStack().contains(dependencyName); if (!isCircularDependency && !dependencyManager.getCompilationStack().isEmpty()){ AbstractProjectDependencyManager.DependencyReference dr = new AbstractProjectDependencyManager.DependencyReference(dependencyManager.getCompilationStack().getLast(), dependencyName); dependencyManager.getDependencyReferences().add(dr); } if (compiledDependency != null) { log.debug("Dependency for dependencyName = {} from cache has been returned.", dependencyName); return compiledDependency; } try { if (isCircularDependency) { throw new OpenLCompilationException("Circular dependency has been detected in module: " + dependencyName); } return compileDependency(dependencyName, dependencyManager); } finally { dependencyManager.getCompilationStack().pollLast(); } } return null; }
if (simpleProjectDependencyLoader.getDependencyName().equals(dependencyName)){ for (DependencyReference dependencyReference : dependenciesRefernciesToClear){ getDependencyReferences().remove(dependencyReference); simpleProjectDependencyLoader.reset(); break;
protected CompiledDependency compileDependency(String dependencyName, AbstractProjectDependencyManager dependencyManager) throws OpenLCompilationException { RulesInstantiationStrategy rulesInstantiationStrategy; ClassLoader classLoader = buildClassLoader(dependencyManager); if (!isProject && modules.size() == 1) { dependencyManager.getCompilationStack().add(dependencyName); Map<String, Object> parameters = configureParameters(dependencyManager); } catch (Exception ex) { log.error(ex.getMessage(), ex); return onCompilationFailure(ex, dependencyManager); } finally{ if (validationWasOn){
@Override public CompiledDependency load(String dependencyName, IDependencyManager dm) throws OpenLCompilationException { AbstractProjectDependencyManager dependencyManager; if (dm instanceof AbstractProjectDependencyManager) { dependencyManager = (AbstractProjectDependencyManager) dm; } else { throw new IllegalStateException("This loader works only with AbstractProjectDependencyManager!"); } if (this.dependencyName.equals(dependencyName)) { boolean isCircularDependency = dependencyManager.getCompilationStack().contains(dependencyName); if (!isCircularDependency && !dependencyManager.getCompilationStack().isEmpty()){ AbstractProjectDependencyManager.DependencyReference dr = new AbstractProjectDependencyManager.DependencyReference(dependencyManager.getCompilationStack().getLast(), dependencyName); dependencyManager.getDependencyReferences().add(dr); } if (compiledDependency != null) { log.debug("Dependency for dependencyName = {} from cache has been returned.", dependencyName); return compiledDependency; } try { if (isCircularDependency) { throw new OpenLCompilationException("Circular dependency has been detected in module: " + dependencyName); } return compileDependency(dependencyName, dependencyManager); } finally { dependencyManager.getCompilationStack().pollLast(); } } return null; }
if (simpleProjectDependencyLoader.getDependencyName().equals(dependencyName)){ for (DependencyReference dependencyReference : dependenciesRefernciesToClear){ getDependencyReferences().remove(dependencyReference); simpleProjectDependencyLoader.reset(); break;
@Override protected CompiledDependency compileDependency(String dependencyName, AbstractProjectDependencyManager dependencyManager) throws OpenLCompilationException { if (dependencyManager instanceof CompilationTimeLoggingDependencyManager) { CompilationTimeLoggingDependencyManager compilationTimeLoggingDependencyManager = (CompilationTimeLoggingDependencyManager) dependencyManager; compilationTimeLoggingDependencyManager.compilationBegin(this, getModules()); CompiledDependency compiledDependency = null; try { compiledDependency = super.compileDependency(dependencyName, dependencyManager); compilationTimeLoggingDependencyManager.compilationCompleted(this, !compiledDependency.getCompiledOpenClass().hasErrors()); return compiledDependency; } finally { if (compiledDependency == null) { compilationTimeLoggingDependencyManager.compilationCompleted(this, false); } } } else { return super.compileDependency(dependencyName, dependencyManager); } } }
protected Map<String, Object> configureParameters(IDependencyManager dependencyManager) { Map<String, Object> params = dependencyManager.getExternalParameters(); if (!singleModuleMode) { params = ProjectExternalDependenciesHelper.getExternalParamsWithProjectDependencies(params, getModules()); return params; } return params; }
public synchronized void resetAll(){ for (ClassLoader classLoader : oldClassLoaders){ OpenClassUtil.releaseClassLoader(classLoader); } oldClassLoaders.clear(); for (ClassLoader classLoader : classLoaders.values()){ OpenClassUtil.releaseClassLoader(classLoader); } classLoaders.clear(); for (IDependencyLoader dependencyLoader : getDependencyLoaders()) { ((SimpleProjectDependencyLoader) dependencyLoader).reset(); } }
if (!modulesOfProject.isEmpty()) { for (final Module m : modulesOfProject) { dependencyLoaders.add(new SimpleProjectDependencyLoader(m.getName(), Arrays.asList(m), singleModuleMode, IDependencyLoader projectLoader = new SimpleProjectDependencyLoader(dependencyName, project.getModules(), singleModuleMode,
@Override protected CompiledDependency compileDependency(String dependencyName, AbstractProjectDependencyManager dependencyManager) throws OpenLCompilationException { if (dependencyManager instanceof CompilationTimeLoggingDependencyManager) { CompilationTimeLoggingDependencyManager compilationTimeLoggingDependencyManager = (CompilationTimeLoggingDependencyManager) dependencyManager; compilationTimeLoggingDependencyManager.compilationBegin(this, getModules()); CompiledDependency compiledDependency = null; try { compiledDependency = super.compileDependency(dependencyName, dependencyManager); compilationTimeLoggingDependencyManager.compilationCompleted(this, !compiledDependency.getCompiledOpenClass().hasErrors()); return compiledDependency; } finally { if (compiledDependency == null) { compilationTimeLoggingDependencyManager.compilationCompleted(this, false); } } } else { return super.compileDependency(dependencyName, dependencyManager); } } }