public String getRepoName() { if (this.location != null) { if (this.repoName == null) { // lookup the resolver if (RepositoryResolver.resolverAvailableForURIScheme(this.location.getScheme())) { RepositoryResolver resolver = RepositoryResolver.lookup(this.location); this.repoName = resolver.getName(this.location); } } } return this.repoName; }
public @Override Optional<IRemoteRepo> resolve(Remote remote, Hints remoteHints) { final String fetchURL = remote.getFetchURL(); final URI fetchURI = URI.create(fetchURL); final String scheme = fetchURI.getScheme(); Preconditions.checkNotNull(scheme, "Fetch URI doesn't declare scheme: %s", fetchURL); if (RepositoryResolver.resolverAvailableForURIScheme(scheme)) { IRemoteRepo remoteRepo = null; if (remote.getMapped()) { remoteRepo = new LocalMappedRemoteRepo(remote, fetchURI); } else { remoteRepo = new LocalRemoteRepo(remote, fetchURI); } return Optional.of(remoteRepo); } return Optional.absent(); } }
public @Override Optional<IRemoteRepo> resolve(Remote remote, Hints remoteHints) { try { final String fetchURL = remote.getFetchURL(); final URI fetchURI = URI.create(fetchURL); final String scheme = fetchURI.getScheme(); Preconditions.checkNotNull(scheme, "Fetch URI doesn't declare scheme: %s", fetchURL); if (RepositoryResolver.resolverAvailableForURIScheme(scheme)) { IRemoteRepo remoteRepo = null; if (remote.getMapped()) { remoteRepo = new LocalMappedRemoteRepo(remote, fetchURI); } else { remoteRepo = new LocalRemoteRepo(remote, fetchURI); } return Optional.of(remoteRepo); } } catch (Exception e) { // Invalid fetch URL Throwables.propagate(e); } return Optional.absent(); } }
@Test public void testCanHandleURIScheme() { boolean canHandleScheme = RepositoryResolver.resolverAvailableForURIScheme("test"); assertTrue(canHandleScheme); canHandleScheme = RepositoryResolver.resolverAvailableForURIScheme("unknown"); assertFalse(canHandleScheme); }
@Test public void testCanHandleURIScheme() { boolean canHandleScheme = RepositoryResolver.resolverAvailableForURIScheme("test"); assertTrue(canHandleScheme); canHandleScheme = RepositoryResolver.resolverAvailableForURIScheme("unknown"); assertFalse(canHandleScheme); }
private void verifyTestResolver(final boolean isAvailable, final URI uri) { if (isAvailable) { // assert Resolver is available for "test" scheme assertTrue("TestResolver should be available", RepositoryResolver.resolverAvailableForURIScheme("test")); // assert Resolver can be looked up for URI assertNotNull("TestResolver should be available", RepositoryResolver.lookup(uri)); } else { // assert Resolver is not available for "test" scheme assertFalse("TestResolver should not be available", RepositoryResolver.resolverAvailableForURIScheme("test")); // assert Resolver can not be looked up for URI try { RepositoryResolver.lookup(uri); fail("TestResolver should not be available"); } catch (IllegalArgumentException iae) { // expected } catch (Throwable t) { // unexpected fail("Unexpected error: " + t.getMessage()); } } }
private void verifyTestResolver(final boolean isAvailable, final URI uri) { if (isAvailable) { // assert Resolver is available for "test" scheme assertTrue("TestResolver should be available", RepositoryResolver.resolverAvailableForURIScheme("test")); // assert Resolver can be looked up for URI assertNotNull("TestResolver should be available", RepositoryResolver.lookup(uri)); } else { // assert Resolver is not available for "test" scheme assertFalse("TestResolver should not be available", RepositoryResolver.resolverAvailableForURIScheme("test")); // assert Resolver can not be looked up for URI try { RepositoryResolver.lookup(uri); fail("TestResolver should not be available"); } catch (IllegalArgumentException iae) { // expected } catch (Throwable t) { // unexpected fail("Unexpected error: " + t.getMessage()); } } }
private void verifyFileRepositoryResolver(final boolean isAvailable, final URI uri) { if (isAvailable) { // assert Resolver is available for "test" scheme assertTrue("FileRepositoryResolver should be available", RepositoryResolver.resolverAvailableForURIScheme("file")); // assert Resolver can be looked up for URI assertNotNull("FileRepositoryResolver should be available", RepositoryResolver.lookup(uri)); } else { // assert Resolver is not available for "test" scheme assertFalse("FileRepositoryResolver should not be available", RepositoryResolver.resolverAvailableForURIScheme("file")); // assert Resolver can not be looked up for URI try { RepositoryResolver.lookup(uri); fail("FileRepositoryResolver should not be available"); } catch (IllegalArgumentException iae) { // expected } catch (Throwable t) { // unexpected fail("Unexpected error: " + t.getMessage()); } } }
private void verifyFileRepositoryResolver(final boolean isAvailable, final URI uri) { if (isAvailable) { // assert Resolver is available for "test" scheme assertTrue("FileRepositoryResolver should be available", RepositoryResolver.resolverAvailableForURIScheme("file")); // assert Resolver can be looked up for URI assertNotNull("FileRepositoryResolver should be available", RepositoryResolver.lookup(uri)); } else { // assert Resolver is not available for "test" scheme assertFalse("FileRepositoryResolver should not be available", RepositoryResolver.resolverAvailableForURIScheme("file")); // assert Resolver can not be looked up for URI try { RepositoryResolver.lookup(uri); fail("FileRepositoryResolver should not be available"); } catch (IllegalArgumentException iae) { // expected } catch (Throwable t) { // unexpected fail("Unexpected error: " + t.getMessage()); } } }