@Nonnull
	public CompletableFuture<List<WorkspaceResource>> asyncAddSupportingResourcesToWorkspace(@Nonnull Workspace workspace,
	                                                                                         @Nonnull List<Path> supportingPaths,
	                                                                                         @Nonnull Consumer<IOException> errorHandling) {
		// Load resources from paths.
		CompletableFuture<List<WorkspaceResource>> future = new CompletableFuture<>();
		loadPool.submit(() -> {
			try {
				List<WorkspaceResource> loadedResources = new ArrayList<>(supportingPaths.size());
				for (Path supportingPath : supportingPaths) {
					WorkspaceResource supportResource = resourceImporter.importResource(supportingPath);
					loadedResources.add(supportResource);
					workspace.addSupportingResource(supportResource);
				}
				future.complete(loadedResources);
			} catch (IOException ex) {
				future.completeExceptionally(ex);
				errorHandling.accept(ex);
			}
		});
		return future;
	}
@param workspace
		Workspace to add to.
@param supportingPaths
		Paths to the supporting resource files.
@param errorHandling
		Error handling for invalid input.

@return Future of added supporting resources.
recaf-ui/src/main/java/software/coley/recaf/workspace/PathLoadingManager.java