private void info(final String scheme) throws Exception { System.out.println("Provider Info for scheme \"" + scheme + "\":"); Collection<Capability> caps; caps = mgr.getProviderCapabilities(scheme); if (caps != null && !caps.isEmpty()) { System.out.println(" capabilities: " + caps); } final FileOperationProvider[] ops = mgr.getOperationProviders(scheme); if (ops != null && ops.length > 0) { System.out.println(" operations: " + Arrays.toString(ops)); } }
/** * @return The operation classes. * @throws FileSystemException If an error occurs. */ @Override public Class<? extends FileOperation>[] getOperations() throws FileSystemException { final String scheme = fileObject.getURL().getProtocol(); final FileOperationProvider[] providers = fsmanager.getOperationProviders(scheme); if (providers == null) { return null; } final List<Class<? extends FileOperation>> operations = new ArrayList<>(); for (final FileOperationProvider provider : providers) { provider.collectOperations(operations, fileObject); } @SuppressWarnings("unchecked") final Class<? extends FileOperation>[] array = (Class<? extends FileOperation>[]) operations .toArray(new Class<?>[] {}); return array; }
/** * @return The operation classes. * @throws FileSystemException If an error occurs. */ @Override public Class<? extends FileOperation>[] getOperations() throws FileSystemException { final String scheme = fileObject.getURL().getProtocol(); final FileOperationProvider[] providers = fsmanager.getOperationProviders(scheme); if (providers == null) { return null; } final List<Class<? extends FileOperation>> operations = new ArrayList<>(); for (final FileOperationProvider provider : providers) { provider.collectOperations(operations, fileObject); } @SuppressWarnings("unchecked") final Class<? extends FileOperation>[] array = (Class<? extends FileOperation>[]) operations .toArray(new Class<?>[] {}); return array; }
/** * @return The operation classes. * @throws FileSystemException If an error occurs. */ @Override public Class<? extends FileOperation>[] getOperations() throws FileSystemException { final String scheme = fileObject.getURL().getProtocol(); final FileOperationProvider[] providers = fsmanager.getOperationProviders(scheme); if (providers == null) { return null; } final List<Class<? extends FileOperation>> operations = new ArrayList<>(); for (final FileOperationProvider provider : providers) { provider.collectOperations(operations, fileObject); } @SuppressWarnings("unchecked") final Class<? extends FileOperation>[] array = (Class<? extends FileOperation>[]) operations .toArray(new Class<?>[] {}); return array; }
/** * @param operationClass The Class that performs the operation. * @return The FileOperation. * @throws FileSystemException if an error occurs. */ @Override public FileOperation getOperation(final Class<? extends FileOperation> operationClass) throws FileSystemException { final String scheme = fileObject.getURL().getProtocol(); final FileOperationProvider[] providers = fsmanager.getOperationProviders(scheme); FileSystemException.requireNonNull(providers, "vfs.operation/operation-not-supported.error", operationClass); FileOperation resultOperation = null; for (final FileOperationProvider provider : providers) { resultOperation = provider.getOperation(fileObject, operationClass); if (resultOperation != null) { break; } } return FileSystemException.requireNonNull(resultOperation, "vfs.operation/operation-not-supported.error", operationClass); }
/** * @param operationClass The Class that performs the operation. * @return The FileOperation. * @throws FileSystemException if an error occurs. */ @Override public FileOperation getOperation(final Class<? extends FileOperation> operationClass) throws FileSystemException { final String scheme = fileObject.getURL().getProtocol(); final FileOperationProvider[] providers = fsmanager.getOperationProviders(scheme); if (providers == null) { throw new FileSystemException("vfs.operation/operation-not-supported.error", operationClass); } FileOperation resultOperation = null; for (final FileOperationProvider provider : providers) { resultOperation = provider.getOperation(fileObject, operationClass); if (resultOperation != null) { break; } } if (resultOperation == null) { throw new FileSystemException("vfs.operation/operation-not-supported.error", operationClass); } return resultOperation; }
/** * @param operationClass The Class that performs the operation. * @return The FileOperation. * @throws FileSystemException if an error occurs. */ @Override public FileOperation getOperation(final Class<? extends FileOperation> operationClass) throws FileSystemException { final String scheme = fileObject.getURL().getProtocol(); final FileOperationProvider[] providers = fsmanager.getOperationProviders(scheme); if (providers == null) { throw new FileSystemException("vfs.operation/operation-not-supported.error", operationClass); } FileOperation resultOperation = null; for (final FileOperationProvider provider : providers) { resultOperation = provider.getOperation(fileObject, operationClass); if (resultOperation != null) { break; } } if (resultOperation == null) { throw new FileSystemException("vfs.operation/operation-not-supported.error", operationClass); } return resultOperation; }