agave-systems/systems-core/src/main/java/org/iplantc/service/transfer/RemoteDataClientFactory.java
/**
	 * Tells whether the URI is supported based on the scheme. {@code agave} schema are resolved to
	 * {@link RemoteSystem}. URI with {@code http} and {@code https} schema are checked against known resource URI
	 * within the current tenant and accepted if a match is found. For all other schemas, the response is based upon
	 * agave's ability to authenticate to the remote system using basic username and password found in the standard
	 * {@link URI#getAuthority()} content.
	 *
	 * @param uri the {@link URI} for which to check the schema
	 * @return true if the schema is supported directly or through reference to an internal api URI
	 */
Tells whether the URI is supported based on the scheme.  agave schema are resolved to
RemoteSystem. URI with  http and  https schema are checked against known resource URI
within the current tenant and accepted if a match is found. For all other schemas, the response is based upon
agave's ability to authenticate to the remote system using basic username and password found in the standard
URI#getAuthority() content.

@param uri the  URI for which to check the schema
@return true if the schema is supported directly or through reference to an internal api URI
Tells whether the URI is supported based on the scheme . agave schema are resolved to RemoteSystem . URI with http and https schema are checked against known resource URI within the current tenant and accepted if a match is found . For all other schemas the response is based upon agave ' s ability to authenticate to the remote system using basic username and password found in the standard URI#getAuthority () content . @param uri the URI for which to check the schema @return true if the schema is supported directly or through reference to an internal api URI
public static boolean isSchemeSupported(URI uri, String tenantId)
	{
		String scheme = uri.getScheme();
		switch (scheme.toLowerCase()) {
			case "agave":
			case "http":
			case "https":
			case "ftp":
			case "sftp":
				return true;
			case "gsiftp":
			case "gridftp":
			case "azure":
			case "s3":
			case "irods":
				return false;
			default:
				try { return AgaveUriRegex.matchesAny(uri, tenantId); }
				catch (Throwable t) { return false; }
		}
	}
public static boolean isSchemeSupported ( URI uri , String tenantId ) { String scheme = uri . getScheme ( ) ; switch ( scheme . toLowerCase ( ) ) { case "agave" : case "http" : case "https" : case "ftp" : case "sftp" : return true ; case "gsiftp" : case "gridftp" : case "azure" : case "s3" : case "irods" : return false ; default : try { return AgaveUriRegex . matchesAny ( uri , tenantId ) ; } catch ( Throwable t ) { return false ; } } }
Tells whether the URI is supported based on the scheme.
Tells whether the URI is supported based on the scheme .
//			case "ftps": //			case "irods4": //			case "irods3":