public void replaceClassLoader(ProjectDescriptor project, ClassLoader classLoader) { ClassLoader oldClassloader = classLoaders.get(project.getName()); if (oldClassloader != null && oldClassloader != classLoader) { oldClassLoaders.add(oldClassloader); } classLoaders.put(project.getName(), classLoader); }
public void replaceClassLoader(ProjectDescriptor project, ClassLoader classLoader) { ClassLoader oldClassloader = classLoaders.get(project.getName()); if (oldClassloader != null && oldClassloader != classLoader) { oldClassLoaders.add(oldClassloader); } classLoaders.put(project.getName(), classLoader); }
private String validateUploadedFiles(ProjectFile zipFile, PathFilter zipFilter, ProjectDescriptor oldProjectDescriptor, Charset charset) throws IOException, ProjectException { ProjectDescriptor newProjectDescriptor; try { newProjectDescriptor = ZipProjectDescriptorExtractor .getProjectDescriptorOrThrow(zipFile, zipFilter, charset); } catch (XStreamException e) { return ProjectDescriptorUtils.getErrorMessage(e); } if (newProjectDescriptor != null && !newProjectDescriptor.getName().equals(oldProjectDescriptor.getName())) { return validateProjectName(newProjectDescriptor.getName()); } return null; }
private String validateUploadedFiles(ProjectFile zipFile, PathFilter zipFilter, ProjectDescriptor oldProjectDescriptor, Charset charset) throws IOException, ProjectException { ProjectDescriptor newProjectDescriptor; try { newProjectDescriptor = ZipProjectDescriptorExtractor .getProjectDescriptorOrThrow(zipFile, zipFilter, charset); } catch (XStreamException e) { return ProjectDescriptorUtils.getErrorMessage(e); } if (newProjectDescriptor != null && !newProjectDescriptor.getName().equals(oldProjectDescriptor.getName())) { return validateProjectName(newProjectDescriptor.getName()); } return null; }
/** * Determine if we should open in single module mode or multi module mode * * @param module opening module * @return if true - single module mode, if false - multi module mode */ private boolean shouldOpenInSingleMode(Module module) { if (module != null) { if (moduleInfo != null) { ProjectDescriptor project = moduleInfo.getProject(); ProjectDescriptor newProject = module.getProject(); if (project.getName().equals(newProject.getName())) { return openedInSingleModuleMode; } } } return studio.isSingleModuleModeByDefault(); }
/** * Determine if we should open in single module mode or multi module mode * * @param module opening module * @return if true - single module mode, if false - multi module mode */ private boolean shouldOpenInSingleMode(Module module) { if (module != null) { if (moduleInfo != null) { ProjectDescriptor project = moduleInfo.getProject(); ProjectDescriptor newProject = module.getProject(); if (project.getName().equals(newProject.getName())) { return openedInSingleModuleMode; } } } return studio.isSingleModuleModeByDefault(); }
public String getLogicalName(AProject project) { ProjectDescriptor pd = null; try { pd = getProjectDescriptor(project); } catch (Exception e) { // Error in user data, not application logic - debug log level will be used log.warn("Can't get project descriptor for project '{}'. Physical project name will be used. Cause: {}", project.getName(), e.getMessage(), e); } return pd != null ? pd.getName() : project.getName(); }
public String getLogicalName(AProject project) { ProjectDescriptor pd = null; try { pd = getProjectDescriptor(project); } catch (Exception e) { // Error in user data, not application logic - debug log level will be used log.warn("Can't get project descriptor for project '{}'. Physical project name will be used. Cause: {}", project.getName(), e.getMessage(), e); } return pd != null ? pd.getName() : project.getName(); }
private void addDependentProjects(List<ProjectDescriptor> projectDescriptors, ProjectDescriptor project, Collection<ProjectDescriptor> projectsInWorkspace) { if (project.getDependencies() != null) { for (ProjectDependencyDescriptor dependencyDescriptor : project.getDependencies()) { boolean found = false; for (ProjectDescriptor projectDescriptor : projectsInWorkspace) { if (dependencyDescriptor.getName().equals(projectDescriptor.getName())) { projectDescriptors.add(projectDescriptor); addDependentProjects(projectDescriptors, projectDescriptor, projectsInWorkspace); found = true; break; } } if (!found) { log.warn("Dependency '{}' for project '{}' hasn't been found", dependencyDescriptor.getName(), project.getName()); } } } }
public void validate(ProjectDescriptor descriptor) throws ValidationException { if (descriptor == null) { throw new ValidationException("Project descriptor is null."); } if (descriptor.getName() == null || descriptor.getName().trim().isEmpty()) { throw new ValidationException("Project name aren't defined."); } if (descriptor.getModules() == null || descriptor.getModules().size() == 0) { throw new ValidationException("Project modules aren't defined."); } for (Module module : descriptor.getModules()) { validateModule(module); } }
public void validate(ProjectDescriptor descriptor) throws ValidationException { if (descriptor == null) { throw new ValidationException("Project descriptor is null."); } if (descriptor.getName() == null || descriptor.getName().trim().isEmpty()) { throw new ValidationException("Project name aren't defined."); } if (descriptor.getModules() == null || descriptor.getModules().size() == 0) { throw new ValidationException("Project modules aren't defined."); } for (Module module : descriptor.getModules()) { validateModule(module); } }
private void addDependentProjects(List<ProjectDescriptor> projectDescriptors, ProjectDescriptor project) { if (project.getDependencies() != null) { for (ProjectDependencyDescriptor dependencyDescriptor : project.getDependencies()) { boolean found = false; for (ProjectDescriptor projectDescriptor : studio.getAllProjects()) { if (dependencyDescriptor.getName().equals(projectDescriptor.getName())) { if (!projectDescriptors.contains(projectDescriptor)) { projectDescriptors.add(projectDescriptor); addDependentProjects(projectDescriptors, projectDescriptor); } found = true; break; } } if (!found) { log.warn("Dependency '{}' for project '{}' is not found", dependencyDescriptor.getName(), project.getName()); } } } } }
public List<ListItem<ProjectDependencyDescriptor>> getDependencies() { dependencies = new ArrayList<ListItem<ProjectDependencyDescriptor>>(); ProjectDescriptor currentProject = studio.getCurrentProjectDescriptor(); List<ProjectDescriptor> projects = studio.getAllProjects(); for (ProjectDescriptor project : projects) { String name = project.getName(); if (!name.equals(currentProject.getName())) { ProjectDependencyDescriptor dependency = new ProjectDependencyDescriptor(); ProjectDependencyDescriptor projectDependency = studio.getProjectDependency(name); dependency.setName(name); dependency.setAutoIncluded(projectDependency == null || projectDependency.isAutoIncluded()); dependencies.add(new ListItem<ProjectDependencyDescriptor>(projectDependency != null, dependency)); } } return dependencies; }
public List<ListItem<ProjectDependencyDescriptor>> getDependencies() { dependencies = new ArrayList<ListItem<ProjectDependencyDescriptor>>(); ProjectDescriptor currentProject = studio.getCurrentProjectDescriptor(); List<ProjectDescriptor> projects = studio.getAllProjects(); for (ProjectDescriptor project : projects) { String name = project.getName(); if (!name.equals(currentProject.getName())) { ProjectDependencyDescriptor dependency = new ProjectDependencyDescriptor(); ProjectDependencyDescriptor projectDependency = studio.getProjectDependency(name); dependency.setName(name); dependency.setAutoIncluded(projectDependency == null || projectDependency.isAutoIncluded()); dependencies.add(new ListItem<ProjectDependencyDescriptor>(projectDependency != null, dependency)); } } return dependencies; }
public ClassLoader getClassLoader(ProjectDescriptor project) { getDependencyLoaders(); if (classLoaders.get(project.getName()) != null) { return classLoaders.get(project.getName()); } SimpleBundleClassLoader classLoader = new SimpleBundleClassLoader(project.getClassPathUrls(), rootClassLoader); classLoader.addClassLoader(project.getClassLoader(false)); if (project.getDependencies() != null) { for (ProjectDependencyDescriptor projectDependencyDescriptor : project.getDependencies()) { if (getProjectDescriptors() != null) { for (ProjectDescriptor projectDescriptor : getProjectDescriptors()) { if (projectDependencyDescriptor.getName().equals(projectDescriptor.getName())) { classLoader.addClassLoader(getClassLoader(projectDescriptor)); break; } } } } } classLoaders.put(project.getName(), classLoader); return classLoader; }
public List<SelectItem> getModules() { WebStudio studio = getWebStudio(); List<ProjectDescriptor> projects = studio.getAllProjects(); List<SelectItem> selectItems = new ArrayList<SelectItem>(); for (ProjectDescriptor project : projects) { selectItems.add(new SelectItem(project.getId(), project.getName(), null, true)); for (Module module : project.getModules()) { selectItems.add(new SelectItem(studio.getModuleId(module), module.getName())); } } return selectItems; }
public List<String> getDependingProjects() { List<String> projects = new ArrayList<>(); TreeNode selectedNode = getSelectedNode(); TreeProject projectNode = selectedNode instanceof TreeProject ? (TreeProject) selectedNode : null; if (projectNode != null) { String name = projectNode.getName(); for (ProjectDescriptor projectDescriptor : studio.getAllProjects()) { if (projectDescriptor.getDependencies() != null) { for (ProjectDependencyDescriptor dependency : projectDescriptor.getDependencies()) { if (dependency.getName().equals(name)) { projects.add(projectDescriptor.getName()); break; } } } } } return projects; }
public List<String> getDependingProjects() { List<String> projects = new ArrayList<>(); TreeNode selectedNode = getSelectedNode(); TreeProject projectNode = selectedNode instanceof TreeProject ? (TreeProject) selectedNode : null; if (projectNode != null) { String name = projectNode.getName(); for (ProjectDescriptor projectDescriptor : studio.getAllProjects()) { if (projectDescriptor.getDependencies() != null) { for (ProjectDependencyDescriptor dependency : projectDescriptor.getDependencies()) { if (dependency.getName().equals(name)) { projects.add(projectDescriptor.getName()); break; } } } } } return projects; }
@Override public ProjectDescriptor_v5_11 toOldVersion(ProjectDescriptor currentVersion) { ProjectDescriptor_v5_11 descriptor = new ProjectDescriptor_v5_11(); descriptor.setId(currentVersion.getName()); descriptor.setName(currentVersion.getName()); descriptor.setComment(currentVersion.getComment()); descriptor.setClasspath(currentVersion.getClasspath()); List<Module_v5_11> modules = CollectionUtils.map(currentVersion.getModules(), new CollectionUtils.Mapper<Module, Module_v5_11>() { @Override public Module_v5_11 map(Module input) { return moduleVersionConverter.toOldVersion(input); } }); descriptor.setModules(modules); return descriptor; } }
@Override public ProjectDescriptor_v5_11 toOldVersion(ProjectDescriptor currentVersion) { ProjectDescriptor_v5_11 descriptor = new ProjectDescriptor_v5_11(); descriptor.setId(currentVersion.getName()); descriptor.setName(currentVersion.getName()); descriptor.setComment(currentVersion.getComment()); descriptor.setClasspath(currentVersion.getClasspath()); List<Module_v5_11> modules = CollectionUtils.map(currentVersion.getModules(), new CollectionUtils.Mapper<Module, Module_v5_11>() { @Override public Module_v5_11 map(Module input) { return moduleVersionConverter.toOldVersion(input); } }); descriptor.setModules(modules); return descriptor; } }