public void send(String url) throws StopWaitingException {
		if (StringUtils.isEmpty(url)) {
			Swing.runNow(() -> Msg.showError(this, null, "GhidraGo Empty URL Error",
				"An empty GhidraURL cannot be sent."));
			return;
		}
		// create a random file and write the url in it
		String fileName = UUID.randomUUID().toString();
		Path randomFilePath = channelPath.resolve(fileName);
		Path writtenFilePath = urlFilesPath.resolve(fileName);

		try (FileOutputStream fos = new FileOutputStream(randomFilePath.toFile());) {
			fos.write(url.getBytes());
			// need to close the file so that it can be moved on window's host
			fos.close();
			Files.move(randomFilePath, writtenFilePath);
		}
		catch (IOException e) {
			randomFilePath.toFile().delete();
			Swing.runNow(() -> Msg.showError(this, null, "GhidraGo Error Sending URL",
				"There was a file system error preventing the url from being sent.", e));
		}

		Msg.info(this, "Wrote " + url + " to random file " + writtenFilePath);
		if (writtenFilePath.toFile().exists()) {
			waitForFileToBeProcessed(writtenFilePath);
		}

	}
Send the url to an existing, listening Ghidra
@param url a valid {@link GhidraURL} in string form for a remote Ghidra program. An error is 
displayed if the url is null.
@throws StopWaitingException in the event the stop waiting dialog is shown and answered No.
Ghidra/Features/GhidraGo/src/main/java/ghidra/app/plugin/core/go/GhidraGoSender.java