public String getPropertiesFileNamePatternDescription() { ProjectDescriptor projectDescriptor = cloneProjectDescriptor(studio.getCurrentProjectDescriptor()); projectDescriptor.setPropertiesFileNameProcessor(propertiesFileNameProcessor); PropertiesFileNameProcessor processor; PropertiesFileNameProcessorBuilder propertiesFileNameProcessorBuilder = new PropertiesFileNameProcessorBuilder(); try { processor = propertiesFileNameProcessorBuilder.build(projectDescriptor); Class<? extends PropertiesFileNameProcessor> processorClass = processor.getClass(); String fileName = "/" + processorClass.getName().replace(".", "/") + ".info"; try { InputStream inputStream = processorClass.getResourceAsStream(fileName); if (inputStream == null) { throw new FileNotFoundException("File '" + fileName + "' is not found"); } return IOUtils.toStringAndClose(inputStream); } catch (FileNotFoundException e) { return "Description file " + fileName + " is absent"; } catch (IOException e) { log.error(e.getMessage(), e); return "Can't load the file " + fileName; } } catch (InvalidFileNameProcessorException e) { return "Incorrect file name processor class '" + propertiesFileNameProcessor + "'"; } finally { propertiesFileNameProcessorBuilder.destroy(); } }
public String getPropertiesFileNamePatternDescription() { ProjectDescriptor projectDescriptor = cloneProjectDescriptor(studio.getCurrentProjectDescriptor()); projectDescriptor.setPropertiesFileNameProcessor(propertiesFileNameProcessor); PropertiesFileNameProcessor processor; PropertiesFileNameProcessorBuilder propertiesFileNameProcessorBuilder = new PropertiesFileNameProcessorBuilder(); try { processor = propertiesFileNameProcessorBuilder.build(projectDescriptor); Class<? extends PropertiesFileNameProcessor> processorClass = processor.getClass(); String fileName = "/" + processorClass.getName().replace(".", "/") + ".info"; try { InputStream inputStream = processorClass.getResourceAsStream(fileName); if (inputStream == null) { throw new FileNotFoundException("File '" + fileName + "' is not found"); } return IOUtils.toStringAndClose(inputStream); } catch (FileNotFoundException e) { return "Description file " + fileName + " is absent"; } catch (IOException e) { log.error(e.getMessage(), e); return "Can't load the file " + fileName; } } catch (InvalidFileNameProcessorException e) { return "Incorrect file name processor class '" + propertiesFileNameProcessor + "'"; } finally { propertiesFileNameProcessorBuilder.destroy(); } }
public String getPropertiesPatternWarnings() { ProjectDescriptor projectDescriptor = cloneProjectDescriptor(studio.getCurrentProjectDescriptor()); projectDescriptor.setPropertiesFileNameProcessor(propertiesFileNameProcessor); PropertiesFileNameProcessor processor; PropertiesFileNameProcessorBuilder propertiesFileNameProcessorBuilder = new PropertiesFileNameProcessorBuilder(); try { processor = propertiesFileNameProcessorBuilder.build(projectDescriptor); if (!(processor instanceof FileNamePatternValidator)) { return "Validation isn't supported"; } } catch (InvalidFileNameProcessorException ignored) { } finally { propertiesFileNameProcessorBuilder.destroy(); } return ""; }
public String getPropertiesPatternWarnings() { ProjectDescriptor projectDescriptor = cloneProjectDescriptor(studio.getCurrentProjectDescriptor()); projectDescriptor.setPropertiesFileNameProcessor(propertiesFileNameProcessor); PropertiesFileNameProcessor processor; PropertiesFileNameProcessorBuilder propertiesFileNameProcessorBuilder = new PropertiesFileNameProcessorBuilder(); try { processor = propertiesFileNameProcessorBuilder.build(projectDescriptor); if (!(processor instanceof FileNamePatternValidator)) { return "Validation isn't supported"; } } catch (InvalidFileNameProcessorException ignored) { } finally { propertiesFileNameProcessorBuilder.destroy(); } return ""; }
public void validatePropertiesFileNameProcessor(FacesContext context, UIComponent toValidate, Object value) { String className = (String) value; if (!StringUtils.isBlank(className)) { FacesUtils.validate(className.matches("([\\w$]+\\.)*[\\w$]+"), "Invalid class name"); ProjectDescriptor projectDescriptor = cloneProjectDescriptor(studio.getCurrentProjectDescriptor()); projectDescriptor.setPropertiesFileNameProcessor(className); PropertiesFileNameProcessor processor; PropertiesFileNameProcessorBuilder propertiesFileNameProcessorBuilder = new PropertiesFileNameProcessorBuilder(); try { processor = propertiesFileNameProcessorBuilder.build(projectDescriptor); FacesUtils.validate(processor != null, "Can't find class " + className); } catch (InvalidFileNameProcessorException e) { FacesUtils.throwValidationError(e.getMessage()); } finally { propertiesFileNameProcessorBuilder.destroy(); } } }
public void validatePropertiesFileNameProcessor(FacesContext context, UIComponent toValidate, Object value) { String className = (String) value; if (!StringUtils.isBlank(className)) { FacesUtils.validate(className.matches("([\\w$]+\\.)*[\\w$]+"), "Invalid class name"); ProjectDescriptor projectDescriptor = cloneProjectDescriptor(studio.getCurrentProjectDescriptor()); projectDescriptor.setPropertiesFileNameProcessor(className); PropertiesFileNameProcessor processor; PropertiesFileNameProcessorBuilder propertiesFileNameProcessorBuilder = new PropertiesFileNameProcessorBuilder(); try { processor = propertiesFileNameProcessorBuilder.build(projectDescriptor); FacesUtils.validate(processor != null, "Can't find class " + className); } catch (InvalidFileNameProcessorException e) { FacesUtils.throwValidationError(e.getMessage()); } finally { propertiesFileNameProcessorBuilder.destroy(); } } }
public void validatePropertiesFileNamePattern(FacesContext context, UIComponent toValidate, Object value) { String pattern = (String) value; if (StringUtils.isNotBlank(pattern)) { PropertiesFileNameProcessor processor; PropertiesFileNameProcessorBuilder propertiesFileNameProcessorBuilder = new PropertiesFileNameProcessorBuilder(); try { ProjectDescriptor projectDescriptor = cloneProjectDescriptor(studio.getCurrentProjectDescriptor()); projectDescriptor.setPropertiesFileNameProcessor((String) propertiesFileNameProcessorInput.getValue()); projectDescriptor.setPropertiesFileNamePattern(pattern); processor = propertiesFileNameProcessorBuilder.build(projectDescriptor); if (processor instanceof FileNamePatternValidator) { ((FileNamePatternValidator) processor).validate(pattern); } } catch (InvalidFileNamePatternException e) { FacesUtils.throwValidationError(e.getMessage()); } catch (InvalidFileNameProcessorException ignored) { // Processed in other validator } finally { propertiesFileNameProcessorBuilder.destroy(); } } }
public void validatePropertiesFileNamePattern(FacesContext context, UIComponent toValidate, Object value) { String pattern = (String) value; if (StringUtils.isNotBlank(pattern)) { PropertiesFileNameProcessor processor; PropertiesFileNameProcessorBuilder propertiesFileNameProcessorBuilder = new PropertiesFileNameProcessorBuilder(); try { ProjectDescriptor projectDescriptor = cloneProjectDescriptor(studio.getCurrentProjectDescriptor()); projectDescriptor.setPropertiesFileNameProcessor((String) propertiesFileNameProcessorInput.getValue()); projectDescriptor.setPropertiesFileNamePattern(pattern); processor = propertiesFileNameProcessorBuilder.build(projectDescriptor); if (processor instanceof FileNamePatternValidator) { ((FileNamePatternValidator) processor).validate(pattern); } } catch (InvalidFileNamePatternException e) { FacesUtils.throwValidationError(e.getMessage()); } catch (InvalidFileNameProcessorException ignored) { // Processed in other validator } finally { propertiesFileNameProcessorBuilder.destroy(); } } }
@Override public ProjectDescriptor fromOldVersion(ProjectDescriptor_v5_16 oldVersion) { ProjectDescriptor descriptor = new ProjectDescriptor(); descriptor.setName(oldVersion.getName()); descriptor.setComment(oldVersion.getComment()); descriptor.setClasspath(oldVersion.getClasspath()); List<Module> modules = CollectionUtils.map(oldVersion.getModules(), new CollectionUtils.Mapper<Module_v5_16, Module>() { @Override public Module map(Module_v5_16 input) { return moduleVersionConverter.fromOldVersion(input); } }); descriptor.setModules(modules); List<ProjectDependencyDescriptor> dependencies = CollectionUtils.map(oldVersion.getDependencies(), new CollectionUtils.Mapper<ProjectDependencyDescriptor_v5_12, ProjectDependencyDescriptor>() { @Override public ProjectDependencyDescriptor map(ProjectDependencyDescriptor_v5_12 input) { return dependencyConverter.fromOldVersion(input); } }); if (CollectionUtils.isNotEmpty(dependencies)) { descriptor.setDependencies(dependencies); } descriptor.setPropertiesFileNamePattern(oldVersion.getPropertiesFileNamePattern()); descriptor.setPropertiesFileNameProcessor(oldVersion.getPropertiesFileNameProcessor()); return descriptor; }
@Override public ProjectDescriptor fromOldVersion(ProjectDescriptor_v5_12 oldVersion) { ProjectDescriptor descriptor = new ProjectDescriptor(); descriptor.setName(oldVersion.getName()); descriptor.setComment(oldVersion.getComment()); descriptor.setClasspath(oldVersion.getClasspath()); List<Module> modules = CollectionUtils.map(oldVersion.getModules(), new CollectionUtils.Mapper<Module_v5_11, Module>() { @Override public Module map(Module_v5_11 input) { return moduleVersionConverter.fromOldVersion(input); } }); descriptor.setModules(modules); List<ProjectDependencyDescriptor> dependencies = CollectionUtils.map(oldVersion.getDependencies(), new CollectionUtils.Mapper<ProjectDependencyDescriptor_v5_12, ProjectDependencyDescriptor>() { @Override public ProjectDependencyDescriptor map(ProjectDependencyDescriptor_v5_12 input) { return dependencyConverter.fromOldVersion(input); } }); if (CollectionUtils.isNotEmpty(dependencies)) { descriptor.setDependencies(dependencies); } descriptor.setPropertiesFileNamePattern(oldVersion.getPropertiesFileNamePattern()); descriptor.setPropertiesFileNameProcessor(oldVersion.getPropertiesFileNameProcessor()); return descriptor; }
@Override public ProjectDescriptor fromOldVersion(ProjectDescriptor_v5_16 oldVersion) { ProjectDescriptor descriptor = new ProjectDescriptor(); descriptor.setName(oldVersion.getName()); descriptor.setComment(oldVersion.getComment()); descriptor.setClasspath(oldVersion.getClasspath()); List<Module> modules = CollectionUtils.map(oldVersion.getModules(), new CollectionUtils.Mapper<Module_v5_16, Module>() { @Override public Module map(Module_v5_16 input) { return moduleVersionConverter.fromOldVersion(input); } }); descriptor.setModules(modules); List<ProjectDependencyDescriptor> dependencies = CollectionUtils.map(oldVersion.getDependencies(), new CollectionUtils.Mapper<ProjectDependencyDescriptor_v5_12, ProjectDependencyDescriptor>() { @Override public ProjectDependencyDescriptor map(ProjectDependencyDescriptor_v5_12 input) { return dependencyConverter.fromOldVersion(input); } }); if (CollectionUtils.isNotEmpty(dependencies)) { descriptor.setDependencies(dependencies); } descriptor.setPropertiesFileNamePattern(oldVersion.getPropertiesFileNamePattern()); descriptor.setPropertiesFileNameProcessor(oldVersion.getPropertiesFileNameProcessor()); return descriptor; }
@Override public ProjectDescriptor fromOldVersion(ProjectDescriptor_v5_13 oldVersion) { ProjectDescriptor descriptor = new ProjectDescriptor(); descriptor.setName(oldVersion.getName()); descriptor.setComment(oldVersion.getComment()); descriptor.setClasspath(oldVersion.getClasspath()); List<Module> modules = CollectionUtils.map(oldVersion.getModules(), new CollectionUtils.Mapper<Module_v5_13, Module>() { @Override public Module map(Module_v5_13 input) { return moduleVersionConverter.fromOldVersion(input); } }); descriptor.setModules(modules); List<ProjectDependencyDescriptor> dependencies = CollectionUtils.map(oldVersion.getDependencies(), new CollectionUtils.Mapper<ProjectDependencyDescriptor_v5_12, ProjectDependencyDescriptor>() { @Override public ProjectDependencyDescriptor map(ProjectDependencyDescriptor_v5_12 input) { return dependencyConverter.fromOldVersion(input); } }); if (CollectionUtils.isNotEmpty(dependencies)) { descriptor.setDependencies(dependencies); } descriptor.setPropertiesFileNamePattern(oldVersion.getPropertiesFileNamePattern()); descriptor.setPropertiesFileNameProcessor(oldVersion.getPropertiesFileNameProcessor()); return descriptor; }
@Override public ProjectDescriptor fromOldVersion(ProjectDescriptor_v5_13 oldVersion) { ProjectDescriptor descriptor = new ProjectDescriptor(); descriptor.setName(oldVersion.getName()); descriptor.setComment(oldVersion.getComment()); descriptor.setClasspath(oldVersion.getClasspath()); List<Module> modules = CollectionUtils.map(oldVersion.getModules(), new CollectionUtils.Mapper<Module_v5_13, Module>() { @Override public Module map(Module_v5_13 input) { return moduleVersionConverter.fromOldVersion(input); } }); descriptor.setModules(modules); List<ProjectDependencyDescriptor> dependencies = CollectionUtils.map(oldVersion.getDependencies(), new CollectionUtils.Mapper<ProjectDependencyDescriptor_v5_12, ProjectDependencyDescriptor>() { @Override public ProjectDependencyDescriptor map(ProjectDependencyDescriptor_v5_12 input) { return dependencyConverter.fromOldVersion(input); } }); if (CollectionUtils.isNotEmpty(dependencies)) { descriptor.setDependencies(dependencies); } descriptor.setPropertiesFileNamePattern(oldVersion.getPropertiesFileNamePattern()); descriptor.setPropertiesFileNameProcessor(oldVersion.getPropertiesFileNameProcessor()); return descriptor; }
@Override public ProjectDescriptor fromOldVersion(ProjectDescriptor_v5_12 oldVersion) { ProjectDescriptor descriptor = new ProjectDescriptor(); descriptor.setName(oldVersion.getName()); descriptor.setComment(oldVersion.getComment()); descriptor.setClasspath(oldVersion.getClasspath()); List<Module> modules = CollectionUtils.map(oldVersion.getModules(), new CollectionUtils.Mapper<Module_v5_11, Module>() { @Override public Module map(Module_v5_11 input) { return moduleVersionConverter.fromOldVersion(input); } }); descriptor.setModules(modules); List<ProjectDependencyDescriptor> dependencies = CollectionUtils.map(oldVersion.getDependencies(), new CollectionUtils.Mapper<ProjectDependencyDescriptor_v5_12, ProjectDependencyDescriptor>() { @Override public ProjectDependencyDescriptor map(ProjectDependencyDescriptor_v5_12 input) { return dependencyConverter.fromOldVersion(input); } }); if (CollectionUtils.isNotEmpty(dependencies)) { descriptor.setDependencies(dependencies); } descriptor.setPropertiesFileNamePattern(oldVersion.getPropertiesFileNamePattern()); descriptor.setPropertiesFileNameProcessor(oldVersion.getPropertiesFileNameProcessor()); return descriptor; }
descriptor.setPropertiesFileNameProcessor(null);