protected IOptional<File, IOException> ifFile(final IResourceReference resourceReference) { return Optional .of(IOException.class, resourceReference) .accept(r -> isFileSystemResource(resourceReference)) .convert(r -> { try { return getFile(resourceReference); } catch (final URISyntaxException exception) { throw new IOException(); } }); }
protected IOptional<File, IOException> ifFile(final IResourceReference resourceReference) { return Optional .of(IOException.class, resourceReference) .accept(r -> isFileSystemResource(resourceReference)) .convert(r -> { try { return getFile(resourceReference); } catch (final URISyntaxException exception) { throw new IOException(); } }); }
@Override public String getExtension(final IResourceReference resourceReference) { if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return getExtension(this.factory.create(getFile(resourceReference))); } catch (final URISyntaxException exception) { // nothing to do } } return ResourceReferenceUtilities.getExtension(resourceReference); }
@Override public String getExtension(final IResourceReference resourceReference) { if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return getExtension(this.factory.create(getFile(resourceReference))); } catch (final URISyntaxException exception) { // nothing to do } } return ResourceReferenceUtilities.getExtension(resourceReference); }
@Override public String visitUrlResource(final UrlResourceReference urlResourceReference) throws RuntimeException { try { if (isFileSystemResource(resourceReference)) { return getContentType(getPath(urlResourceReference)); } return Optional .of( IOException.class, ResourceReferenceHandler.this.connector.getContentType(urlResourceReference.getUrl().toURI())) .getOr(() -> "application/octet-stream"); //$NON-NLS-1$ } catch (final URISyntaxException | IOException exception) { return "application/octet-stream"; //$NON-NLS-1$ } }
@Override public String visitUrlResource(final UrlResourceReference urlResourceReference) throws RuntimeException { try { if (isFileSystemResource(resourceReference)) { return getContentType(getPath(urlResourceReference)); } return Optional .of( IOException.class, ResourceReferenceHandler.this.connector.getContentType(urlResourceReference.getUrl().toURI())) .getOr(() -> "application/octet-stream"); //$NON-NLS-1$ } catch (final URISyntaxException | IOException exception) { return "application/octet-stream"; //$NON-NLS-1$ } }
return 0; if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return getContentLength(this.factory.create(getFile(resourceReference)));
throw new IllegalArgumentException(); if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return openInputStream(this.factory.create(getFile(resourceReference)), contentTypeAcceptor);
return false; if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return canWrite(this.factory.create(getFile(resourceReference)));
return false; if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return canRead(this.factory.create(getFile(resourceReference)));
return false; if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return canWrite(this.factory.create(getFile(resourceReference)));
throw new IllegalArgumentException(); if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return openOnputStream(this.factory.create(getFile(resourceReference)));
return false; if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return canRead(this.factory.create(getFile(resourceReference)));
return false; if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return exsits(this.factory.create(getFile(resourceReference)));
throw new IllegalArgumentException(); if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return openOnputStream(this.factory.create(getFile(resourceReference)));
return false; if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return exsits(this.factory.create(getFile(resourceReference)));
return 0; if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return getContentLength(this.factory.create(getFile(resourceReference)));
@Override public String visitUriResource(final UriResourceReference uriResourceReference) throws RuntimeException { try { if (isFileSystemResource(resourceReference)) { return getContentType(getPath(uriResourceReference)); } return Optional .of( IOException.class, ResourceReferenceHandler.this.connector.getContentType(uriResourceReference.getUri())) .getOr(() -> "application/octet-stream"); //$NON-NLS-1$ } catch (final URISyntaxException | IOException exception) { return "application/octet-stream"; //$NON-NLS-1$ } }
throw new IllegalArgumentException(); if (!(resourceReference instanceof FileResourceReference) && isFileSystemResource(resourceReference)) { try { return openInputStream(this.factory.create(getFile(resourceReference)), contentTypeAcceptor);
@Override public String visitUriResource(final UriResourceReference uriResourceReference) throws RuntimeException { try { if (isFileSystemResource(resourceReference)) { return getContentType(getPath(uriResourceReference)); } return Optional .of( IOException.class, ResourceReferenceHandler.this.connector.getContentType(uriResourceReference.getUri())) .getOr(() -> "application/octet-stream"); //$NON-NLS-1$ } catch (final URISyntaxException | IOException exception) { return "application/octet-stream"; //$NON-NLS-1$ } }