@Override
	protected void okCallback() {
		TaskLauncher.launchNonModal(TITLE, monitor -> {
			super.okCallback();
			try {
				Object consumer = new Object();
				MessageLog messageLog = new MessageLog();
				LoadResults<? extends DomainObject> loadResults = loadSpec.getLoader()
						.load(provider, program.getDomainFile().getName(), tool.getProject(),
							program.getDomainFile().getParent().getPathname(), loadSpec,
							getOptions(), messageLog, consumer, monitor);
				loadResults.save(tool.getProject(), consumer, messageLog, monitor);
				
				// Display results
				String importMessages = messageLog.toString();
				if (!importMessages.isEmpty()) {
					if (!Loader.loggingDisabled) {
						Msg.info(ImporterUtilities.class, TITLE + ":\n" + importMessages);
					}
					MultiLineMessageDialog.showModalMessageDialog(null, TITLE, "Results",
						importMessages, MultiLineMessageDialog.INFORMATION_MESSAGE);
				}
				else {
					Msg.showInfo(this, null, TITLE, "The program has no libraries.");
				}

				loadResults.release(consumer);
			}
			catch (CancelledException e) {
				// no need to show a message
			}
			catch (Exception e) {
				Msg.showError(LoadLibrariesOptionsDialog.class, tool.getActiveWindow(), TITLE,
					"Error loading libraries for: " + program.getName(), e);
			}
		});
	}
Creates a new {@link LoadLibrariesOptionsDialog}

@param provider The {@link Program}'s bytes
@param program The {@link Program} to load libraries into
@param tool The tool
@param loadSpec The {@link LoadSpec} that was used to load the {@link Program}
@param addressFactoryService The {@link AddressFactoryService} to use
Ghidra/Features/Base/src/main/java/ghidra/plugin/importer/LoadLibrariesOptionsDialog.java