private FileSchemeScanner(final URI uri, final boolean recursive) { this.compositeResourceFinder = new CompositeResourceFinder(); this.recursive = recursive; processFile(new File(uri.getPath())); }
@Override public void close() { compositeResourceFinder.close(); }
@Override public boolean hasNext() { return compositeResourceFinder.hasNext(); }
@Override public String next() { return compositeResourceFinder.next(); }
@Override public InputStream open() { return compositeResourceFinder.open(); }
private void addResourceFinder(final URI u) { final UriSchemeResourceFinderFactory finderFactory = finderFactories.get(u.getScheme().toLowerCase()); if (finderFactory != null) { compositeResourceFinder.push(finderFactory.create(u, recursive)); } else { throw new ResourceFinderException("The URI scheme " + u.getScheme() + " of the URI " + u + " is not supported. Package scanning deployment is not" + " supported for such URIs." + "\nTry using a different deployment mechanism such as" + " explicitly declaring root resource and provider classes" + " using an extension of javax.ws.rs.core.Application"); } }
@Override public String next() { return compositeResourceFinder.next(); }
@Override public InputStream open() { return compositeResourceFinder.open(); }
private void addResourceFinder(final URI u) { final UriSchemeResourceFinderFactory finderFactory = finderFactories.get(u.getScheme().toLowerCase()); if (finderFactory != null) { compositeResourceFinder.push(finderFactory.create(u, recursive)); } else { throw new ResourceFinderException("The URI scheme " + u.getScheme() + " of the URI " + u + " is not supported. Package scanning deployment is not" + " supported for such URIs." + "\nTry using a different deployment mechanism such as" + " explicitly declaring root resource and provider classes" + " using an extension of javax.ws.rs.core.Application"); } }
private void init() { this.compositeResourceFinder = new CompositeResourceFinder(); for (final File file : files) { processFile(file); } } }
@Override public boolean hasNext() { return compositeResourceFinder.hasNext(); }
@Override public void close() { compositeResourceFinder.close(); }
@Override public String next() { return compositeResourceFinder.next(); }
@Override public InputStream open() { return compositeResourceFinder.open(); }
@Override public boolean hasNext() { while (next == null && !resourcePathsStack.isEmpty()) { next = resourcePathsStack.pop(); if (next.endsWith("/")) { processPaths(next); next = null; } else if (next.endsWith(".jar")) { try { compositeResourceFinder.push(new JarFileScanner(sc.getResourceAsStream(next), "", true)); } catch (final IOException ioe) { throw new ResourceFinderException(ioe); } next = null; } } return next != null; }
@Override public void reset() { compositeResourceFinder = new CompositeResourceFinder(); processPaths(paths); } }
@Override public boolean hasNext() { return compositeResourceFinder.hasNext(); }
@Override public void close() { compositeResourceFinder.close(); }
@Override public String next() { return compositeResourceFinder.next(); }
@Override public InputStream open() { return compositeResourceFinder.open(); }