public static URL makeURL(String host, int port, String repositoryName,
			String repositoryFolderPath, String fileName, String ref) {
		if (StringUtils.isBlank(host)) {
			throw new IllegalArgumentException("host required");
		}
		// TODO: Need to improve checks and use of URL encoding
		if (host.indexOf('@') >= 0) { // prevent user info with hostname
			throw new IllegalArgumentException("invalid host name");
		}
		if (StringUtils.isBlank(repositoryName)) {
			throw new IllegalArgumentException("repository name required");
		}
		if (port == 0 || port == GhidraServerHandle.DEFAULT_PORT) {
			port = -1;
		}
		String path = "/" + repositoryName;
		if (!StringUtils.isBlank(repositoryFolderPath)) {
			if (!repositoryFolderPath.startsWith("/") || repositoryFolderPath.indexOf('\\') >= 0) {
				throw new IllegalArgumentException("Invalid repository path");
			}
			path += repositoryFolderPath;
			if (!path.endsWith("/")) {
				path += "/";
			}
		}
		if (!StringUtils.isBlank(fileName)) {
			if (fileName.contains("/")) {
				throw new IllegalArgumentException("Invalid folder/file name: " + fileName);
			}
			if (!path.endsWith("/")) {
				path += "/";
			}
			path += fileName;
		}
		if (!StringUtils.isBlank(ref)) {
			path += "#" + ref;
		}
		try {
			return new URL(PROTOCOL, host, port, path);
		}
		catch (MalformedURLException e) {
			throw new IllegalArgumentException(e);
		}
	}
Create a URL which refers to Ghidra Server repository content.  Path may correspond 
to either a file or folder.  
@param host server host name/address
@param port optional server port (a value &lt;= 0 refers to the default port)
@param repositoryName repository name
@param repositoryFolderPath absolute folder path within repository. 
@param fileName name of a file or folder contained within the specified {@code repositoryFolderPath}
@param ref optional URL ref or null
Folder paths should end with a '/' character.
@return Ghidra Server repository content URL
@throws IllegalArgumentException if required arguments are blank or invalid
Ghidra/Framework/Project/src/main/java/ghidra/framework/protocol/ghidra/GhidraURL.java