classLoader = new URLClassLoader(urls, SimpleProjectEngineFactory.class.getClassLoader()); SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<?> builder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); if (hasDependencies) { builder.setWorkspace(workspaceFolder.getPath()); SimpleProjectEngineFactory<?> factory = builder.setProject(sourcePath) .setClassLoader(classLoader) .setExecutionMode(true) .setModule(module.getName()) .setExternalParameters(externalParameters) .build();
SimpleProjectEngineFactoryBuilder simpleProjectEngineFactoryBuilder = new SimpleProjectEngineFactoryBuilder() .setExecutionMode(true).setProject(openlProjectFolder.getCanonicalPath()).setWorkspace( openlProjectFolder.getCanonicalPath()); if (rulesDeploy != null) { simpleProjectEngineFactoryBuilder.setProvideRuntimeContext(rulesDeploy.isProvideRuntimeContext()); if (rulesDeploy.getServiceClass() != null) { Class<?> interfaceClass = Thread.currentThread() .getContextClassLoader() .loadClass(rulesDeploy.getServiceClass()); simpleProjectEngineFactoryBuilder.setInterfaceClass(interfaceClass); .build();
classLoader = new URLClassLoader(urls, SimpleProjectEngineFactory.class.getClassLoader()); SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<?> builder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); if (hasDependencies) { builder.setWorkspace(workspaceFolder.getPath()); SimpleProjectEngineFactory<?> factory = builder.setProject(sourcePath) .setClassLoader(classLoader) .setExecutionMode(false) .setModule(module.getName()) .setExternalParameters(externalParameters) .build();
SimpleProjectEngineFactoryBuilder simpleProjectEngineFactoryBuilder = new SimpleProjectEngineFactoryBuilder() .setExecutionMode(true).setProject(openlProjectFolder.getCanonicalPath()).setWorkspace( openlProjectFolder.getCanonicalPath()); if (rulesDeploy != null) { simpleProjectEngineFactoryBuilder.setProvideRuntimeContext(rulesDeploy.isProvideRuntimeContext()); if (rulesDeploy.getServiceClass() != null) { Class<?> interfaceClass = Thread.currentThread() .getContextClassLoader() .loadClass(rulesDeploy.getServiceClass()); simpleProjectEngineFactoryBuilder.setInterfaceClass(interfaceClass); .build();
SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object> simpleProjectEngineFactoryBuilder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); SimpleProjectEngineFactory<Object> simpleProjectEngineFactory = simpleProjectEngineFactoryBuilder .setExecutionMode(false) .setProvideRuntimeContext(false) .setWorkspace(resourcesPath) .setProject(resourcesPath) .build();
SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object> simpleProjectEngineFactoryBuilder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); SimpleProjectEngineFactory<Object> simpleProjectEngineFactory = simpleProjectEngineFactoryBuilder .setExecutionMode(false) .setProvideRuntimeContext(false) .setWorkspace(resourcesPath) .setProject(resourcesPath) .build();
classLoader = composeClassLoader(); SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<?> builder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); if (hasDependencies) { builder.setWorkspace(workspaceFolder.getPath()); SimpleProjectEngineFactory<?> factory = builder.setProject(sourcePath) .setClassLoader(classLoader) .setProvideRuntimeContext(isProvideRuntimeContext) .setProvideVariations(isProvideVariations) .setExecutionMode(true) .setExternalParameters(externalParameters) .build();
classLoader = composeClassLoader(); SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<?> builder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); if (hasDependencies) { builder.setWorkspace(workspaceFolder.getPath()); SimpleProjectEngineFactory<?> factory = builder.setProject(sourcePath) .setClassLoader(classLoader) .setProvideRuntimeContext(isProvideRuntimeContext) .setProvideVariations(isProvideVariations) .setExecutionMode(true) .setExternalParameters(externalParameters) .build();
@Override public void execute(String sourcePath, boolean hasDependencies) throws Exception { URL[] urls = toURLs(classpath); ClassLoader classLoader = null; try { classLoader = new URLClassLoader(urls, SimpleProjectEngineFactory.class.getClassLoader()); SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<?> builder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); if (hasDependencies) { builder.setWorkspace(workspaceFolder.getPath()); } SimpleProjectEngineFactory<?> factory = builder.setProject(sourcePath) .setClassLoader(classLoader) .setExecutionMode(true) .setExternalParameters(externalParameters) .build(); CompiledOpenClass openLRules = factory.getCompiledOpenClass(); IOpenClass openClass = openLRules.getOpenClass(); Collection<OpenLMessage> warnMessages = OpenLMessagesUtils.filterMessagesBySeverity(openLRules.getMessages(), Severity.WARN); info("Compilation has finished."); info("DataTypes: " + openClass.getTypes().size()); info("Methods : " + openClass.getMethods().size()); info("Warnings : " + warnMessages.size()); } finally { OpenClassUtil.releaseClassLoader(classLoader); } }
private synchronized SimpleProjectEngineFactory<T> initSimpleProjectEngineFactory( DelegateExecution execution) throws Exception { String processDefinitionId = execution.getProcessDefinitionId(); String resourceValue = (String) resource.getValue(execution); RepositoryService repositoryService = execution.getEngineServices().getRepositoryService(); ProcessDefinition processDefinition = repositoryService.getProcessDefinition(processDefinitionId); File projectWorkspace = ResourceUtils.prepareDeploymentOpenLResource(processDefinition.getDeploymentId(), resourceValue); boolean isProvideRuntimeContext = isProvideRuntimeContext(execution); SimpleProjectEngineFactoryBuilder<T> simpleProjectEngineFactoryBuilder = new SimpleProjectEngineFactoryBuilder<T>() .setExecutionMode(true) .setProject(projectWorkspace.getCanonicalPath()) .setWorkspace(projectWorkspace.getCanonicalPath()) .setProvideRuntimeContext(isProvideRuntimeContext); if (interfaceClass != null && !interfaceClass.equals(Object.class)) { simpleProjectEngineFactoryBuilder.setInterfaceClass(interfaceClass); } if (module != null) { String moduleValue = (String) module.getValue(execution); if (moduleValue != null) { simpleProjectEngineFactoryBuilder.setModule(moduleValue); } } SimpleProjectEngineFactory<T> simpleProjectEngineFactory = simpleProjectEngineFactoryBuilder.build(); return simpleProjectEngineFactory; }
private Summary executeAllAtOnce(String sourcePath, boolean hasDependencies) throws MalformedURLException, RulesInstantiationException, ProjectResolvingException, ClassNotFoundException { URL[] urls = toURLs(classpath); ClassLoader classLoader = null; try { classLoader = new URLClassLoader(urls, SimpleProjectEngineFactory.class.getClassLoader()); SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<?> builder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); if (hasDependencies) { builder.setWorkspace(workspaceFolder.getPath()); } SimpleProjectEngineFactory<?> factory = builder.setProject(sourcePath) .setClassLoader(classLoader) .setExecutionMode(true) .setExternalParameters(externalParameters) .build(); CompiledOpenClass openLRules; try { TestMethodNodeBinder.keepTestsInExecutionMode(); openLRules = factory.getCompiledOpenClass(); } finally { TestMethodNodeBinder.removeTestsInExecutionMode(); } return executeTests(openLRules); } finally { OpenClassUtil.releaseClassLoader(classLoader); } }
@Override public void execute(String sourcePath, boolean hasDependencies) throws Exception { URL[] urls = toURLs(classpath); ClassLoader classLoader = null; try { classLoader = new URLClassLoader(urls, SimpleProjectEngineFactory.class.getClassLoader()); SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<?> builder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); if (hasDependencies) { builder.setWorkspace(workspaceFolder.getPath()); } SimpleProjectEngineFactory<?> factory = builder.setProject(sourcePath) .setClassLoader(classLoader) .setExecutionMode(true) .setExternalParameters(externalParameters) .build(); CompiledOpenClass openLRules = factory.getCompiledOpenClass(); IOpenClass openClass = openLRules.getOpenClass(); Collection<OpenLMessage> warnMessages = OpenLMessagesUtils.filterMessagesBySeverity(openLRules.getMessages(), Severity.WARN); info("Compilation has finished."); info("DataTypes: " + openClass.getTypes().size()); info("Methods : " + openClass.getMethods().size()); info("Warnings : " + warnMessages.size()); } finally { OpenClassUtil.releaseClassLoader(classLoader); } }
private synchronized SimpleProjectEngineFactory<T> initSimpleProjectEngineFactory( DelegateExecution execution) throws Exception { String processDefinitionId = execution.getProcessDefinitionId(); String resourceValue = (String) resource.getValue(execution); RepositoryService repositoryService = execution.getEngineServices().getRepositoryService(); ProcessDefinition processDefinition = repositoryService.getProcessDefinition(processDefinitionId); File projectWorkspace = ResourceUtils.prepareDeploymentOpenLResource(processDefinition.getDeploymentId(), resourceValue); boolean isProvideRuntimeContext = isProvideRuntimeContext(execution); SimpleProjectEngineFactoryBuilder<T> simpleProjectEngineFactoryBuilder = new SimpleProjectEngineFactoryBuilder<T>() .setExecutionMode(true) .setProject(projectWorkspace.getCanonicalPath()) .setWorkspace(projectWorkspace.getCanonicalPath()) .setProvideRuntimeContext(isProvideRuntimeContext); if (interfaceClass != null && !interfaceClass.equals(Object.class)) { simpleProjectEngineFactoryBuilder.setInterfaceClass(interfaceClass); } if (module != null) { String moduleValue = (String) module.getValue(execution); if (moduleValue != null) { simpleProjectEngineFactoryBuilder.setModule(moduleValue); } } SimpleProjectEngineFactory<T> simpleProjectEngineFactory = simpleProjectEngineFactoryBuilder.build(); return simpleProjectEngineFactory; }
private Summary executeAllAtOnce(String sourcePath, boolean hasDependencies) throws MalformedURLException, RulesInstantiationException, ProjectResolvingException, ClassNotFoundException { URL[] urls = toURLs(classpath); ClassLoader classLoader = null; try { classLoader = new URLClassLoader(urls, SimpleProjectEngineFactory.class.getClassLoader()); SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<?> builder = new SimpleProjectEngineFactory.SimpleProjectEngineFactoryBuilder<Object>(); if (hasDependencies) { builder.setWorkspace(workspaceFolder.getPath()); } SimpleProjectEngineFactory<?> factory = builder.setProject(sourcePath) .setClassLoader(classLoader) .setExecutionMode(false) .setExternalParameters(externalParameters) .build(); CompiledOpenClass openLRules = factory.getCompiledOpenClass(); return executeTests(openLRules); } finally { OpenClassUtil.releaseClassLoader(classLoader); } }