List of usage examples for org.springframework.core.io.support PathMatchingResourcePatternResolver PathMatchingResourcePatternResolver
public PathMatchingResourcePatternResolver()
From source file:org.web4thejob.module.SafetyJoblet.java
@Override public List<Resource> getResources() { List<Resource> resources = new ArrayList<Resource>(); PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); try {/* w w w.j av a 2 s . co m*/ for (Resource resource : resolver.getResources("classpath*:com/safetyjoblet/**/*.hbm.xml")) { resources.add(resource); } } catch (IOException e) { e.printStackTrace(); throw new RuntimeException(e); } return resources; }
From source file:com.logsniffer.util.grok.GrokAppConfig.java
@Bean public GroksRegistry groksRegistry() throws IOException, GrokException { GroksRegistry registry = new GroksRegistry(); PathMatchingResourcePatternResolver pathMatcher = new PathMatchingResourcePatternResolver(); Resource[] classPathPatterns = pathMatcher.getResources("classpath*:/grok-patterns/*"); Arrays.sort(classPathPatterns, new Comparator<Resource>() { @Override/*from ww w . ja va 2 s .c o m*/ public int compare(final Resource o1, final Resource o2) { return o1.getFilename().compareTo(o2.getFilename()); } }); LinkedHashMap<String, String[]> grokBlocks = new LinkedHashMap<String, String[]>(); for (Resource r : classPathPatterns) { grokBlocks.put(r.getFilename(), IOUtils.readLines(r.getInputStream()).toArray(new String[0])); } registry.registerPatternBlocks(grokBlocks); return registry; }
From source file:org.codehaus.grepo.core.context.GrepoTestContextLoader.java
/** * {@inheritDoc}//from ww w.j a v a 2 s . c om */ @Override protected BeanDefinitionReader createBeanDefinitionReader(GenericApplicationContext context) { BeanDefinitionReader bdr = super.createBeanDefinitionReader(context); ResourcePatternResolver rpr = new PathMatchingResourcePatternResolver(); try { Resource[] resources = rpr.getResources("classpath*:/META-INF/grepo/grepo-testcontext.xml"); logger.debug("Found grepo-testcontexts: {}", ArrayUtils.toString(resources)); bdr.loadBeanDefinitions(resources); String addPattern = getAdditionalConfigPattern(); if (!StringUtils.isEmpty(addPattern)) { Resource[] addResources = rpr.getResources(addPattern); if (addResources != null) { logger.debug("Found additional spring-configs: {}", ArrayUtils.toString(addResources)); bdr.loadBeanDefinitions(addResources); } } } catch (IOException e) { logger.error(e.getMessage(), e); } return bdr; }
From source file:com.edmunds.autotest.ClassResolver.java
public ClassResolver(ClassLoader classLoader, String rootPackageName) { assert StringUtils.isNotBlank(rootPackageName) : "Root package is blank"; this.classLoader = classLoader != null ? classLoader : getClass().getClassLoader(); this.rootPackageName = rootPackageName.replace('.', '/'); this.pathResolver = new PathMatchingResourcePatternResolver(); assert packageExists(this.rootPackageName) : "Root Package does not exists: " + rootPackageName; }
From source file:net.paoding.rose.scanner.RoseResources.java
public static List<Resource> findContextResources(LoadScope load) throws IOException { if (logger.isInfoEnabled()) { logger.info("[applicationContext] start to found applicationContext files ..."); }/*w w w . j a v a 2s. c o m*/ String[] scope = load.getScope("applicationContext"); if (logger.isDebugEnabled()) { if (scope == null) { logger.debug("[applicationContext] use default scope" + " [all class folders and rosed jar files]"); } else { logger.debug("[applicationContext] use scope: " + Arrays.toString(scope)); } } if (logger.isDebugEnabled()) { logger.debug("[applicationContext] call 'findFiles'"); } List<ResourceRef> resources = RoseScanner.getInstance().getJarOrClassesFolderResources(scope); if (logger.isDebugEnabled()) { logger.debug("[applicationContext] exits from 'findFiles'"); logger.debug("[applicationContext] it has " + resources.size() + " classes folders or jar files " + "in the applicationContext scope: " + resources); logger.debug("[applicationContext] iterates the 'findFiles'" + " classes folders or jar files; size=" + resources.size()); } List<Resource> ctxResources = new LinkedList<Resource>(); ResourcePatternResolver resourcePatternResolver = new PathMatchingResourcePatternResolver(); int index = 0; for (ResourceRef ref : resources) { index++; if (ref.hasModifier("applicationContext")) { Resource[] founds = ref.getInnerResources(resourcePatternResolver, "applicationContext*.xml"); List<Resource> asList = Arrays.asList(founds); ctxResources.addAll(asList); if (logger.isDebugEnabled()) { logger.debug("[applicationContext] found applicationContext resources (" + index + "/" + resources.size() + ": " + asList); } } else { if (logger.isDebugEnabled()) { logger.debug( "[applicationContext] ignored bacause not marked as 'rose:applicationContext' or 'rose:*' (" + index + "/" + resources.size() + ": " + ref); } } } if (logger.isInfoEnabled()) { logger.info("[applicationContext] FOUND " + ctxResources.size() + " applcationContext files: " + ctxResources); } return ctxResources; }
From source file:com.ligh.spring3.chapter4.ResourcePatternTest.java
@Test public void testClasspathAsteriskPrefixLimit() throws IOException { ResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); //ClassLoader.getResources("") //name/*from w w w . j a v a 2 s .co m*/ //jar // Resource[] resources = resolver.getResources("classpath*:asm-*.txt"); Assert.assertTrue(resources.length == 0); //ClassLoader.getResources("asm-license.txt") //asm-license.txtcom.springsource.net.sf.cglib-2.2.0.jar resources = resolver.getResources("classpath*:asm-license.txt"); Assert.assertTrue(resources.length > 0); resources = resolver.getResources("classpath*:LICENS*"); Assert.assertTrue(resources.length == 1); }
From source file:com.hp.application.automation.tools.octane.tests.CopyResourceSCM.java
@Override public boolean checkout(AbstractBuild<?, ?> build, Launcher launcher, FilePath workspace, BuildListener listener, File changeLogFile) throws IOException, InterruptedException { if (workspace.exists()) { listener.getLogger().println("Deleting existing workspace " + workspace.getRemote()); workspace.deleteRecursive();/*ww w . j av a 2 s.c o m*/ } Resource[] resources = new PathMatchingResourcePatternResolver().getResources("classpath*:" + path + "/**"); for (Resource resource : resources) { if (resource.exists() && resource.isReadable()) { String urlString = resource.getURL().toExternalForm(); String targetName = urlString.substring(urlString.indexOf(path) + path.length()); byte[] fileContent = IOUtils.toByteArray(resource.getInputStream()); FileUtils.writeByteArrayToFile(new File(new File(workspace.getRemote(), targetPath), targetName), fileContent); } } return true; }
From source file:com.github.haixing_hu.ilibrary.service.impl.DocumentTemplateServiceImpl.java
public DocumentTemplateServiceImpl(final String resourcePattern) { logger = LoggerFactory.getLogger(DocumentTemplateServiceImpl.class); templates = new HashMap<String, DocumentTemplate>(); // load all the field templates final PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver(); try {//from w w w . jav a 2 s.c o m final JAXBContext context = JAXBContext.newInstance(DocumentTemplate.class); final Unmarshaller unmarshaller = context.createUnmarshaller(); final Resource[] resources = resolver.getResources(resourcePattern); for (final Resource resource : resources) { final InputStream is = resource.getInputStream(); final DocumentTemplate document = (DocumentTemplate) unmarshaller.unmarshal(is); final String name = document.getName(); logger.info("Adds a document template: {}", name); templates.put(name, document); } } catch (final Exception e) { logger.error("Failed to load the document templates from: {}", resourcePattern, e); throw new RuntimeException(e); } }
From source file:org.fenixedu.start.service.ProjectService.java
@Autowired public ProjectService(APISyncService apiSyncService, ApplicationContext ctx) throws IOException { ResourcePatternResolver patternResolver = new PathMatchingResourcePatternResolver(); this.resourcesByType = ImmutableMap.of("module", Arrays.asList(patternResolver.getResources("classpath:/templates/module/**/*")), "webapp", Arrays.asList(patternResolver.getResources("classpath:/templates/webapp/**/*"))); this.apiSyncService = apiSyncService; this.engine = new PebbleEngine(new StringLoader()); this.engine.addExtension(new FenixEduStartExtension()); }
From source file:com.laxser.blitz.scanner.BlitzResources.java
public static List<Resource> findContextResources(LoadScope load) throws IOException { if (logger.isInfoEnabled()) { logger.info("[applicationContext] start to found applicationContext files ..."); }/*from www . ja v a 2 s.c om*/ String[] scope = load.getScope("applicationContext"); if (logger.isDebugEnabled()) { if (scope == null) { logger.debug( "[applicationContext] use default scope" + " [all class folders and blitzd jar files]"); } else { logger.debug("[applicationContext] use scope: " + Arrays.toString(scope)); } } if (logger.isDebugEnabled()) { logger.debug("[applicationContext] call 'findFiles'"); } List<ResourceRef> resources = BlitzScanner.getInstance().getJarOrClassesFolderResources(scope); if (logger.isDebugEnabled()) { logger.debug("[applicationContext] exits from 'findFiles'"); logger.debug("[applicationContext] it has " + resources.size() + " classes folders or jar files " + "in the applicationContext scope: " + resources); logger.debug("[applicationContext] iterates the 'findFiles'" + " classes folders or jar files; size=" + resources.size()); } List<Resource> ctxResources = new LinkedList<Resource>(); ResourcePatternResolver resourcePatternResolver = new PathMatchingResourcePatternResolver(); int index = 0; for (ResourceRef ref : resources) { index++; if (ref.hasModifier("applicationContext")) { Resource[] founds = ref.getInnerResources(resourcePatternResolver, "applicationContext*.xml"); List<Resource> asList = Arrays.asList(founds); ctxResources.addAll(asList); if (logger.isDebugEnabled()) { logger.debug("[applicationContext] found applicationContext resources (" + index + "/" + resources.size() + ": " + asList); } } else { if (logger.isDebugEnabled()) { logger.debug( "[applicationContext] ignored bacause not marked as 'blitz:applicationContext' or 'blitz:*' (" + index + "/" + resources.size() + ": " + ref); } } } if (logger.isInfoEnabled()) { logger.info("[applicationContext] FOUND " + ctxResources.size() + " applcationContext files: " + ctxResources); } return ctxResources; }