in agent/service/src/main/java/org/apache/airavata/mft/agent/transport/ConnectorResolver.java [65:94]
public static Optional<OutgoingStreamingConnector> resolveOutgoingStreamingConnector(String type, TransportClassLoaderCache transportCache) throws Exception {
String className = null;
switch (type) {
case "SCP":
className = "org.apache.airavata.mft.transport.scp.SCPOutgoingConnector";
break;
case "S3":
className = "org.apache.airavata.mft.transport.s3.S3OutgoingStreamingConnector";
break;
case "AZURE":
className = "org.apache.airavata.mft.transport.azure.AzureOutgoingStreamingConnector";
break;
case "GCS":
className = "org.apache.airavata.mft.transport.gcp.GCSOutgoingStreamingConnector";
break;
case "LOCAL":
className = "org.apache.airavata.mft.transport.local.LocalOutgoingStreamingConnector";
break;
}
if (className != null) {
TransportClassLoader transportClassLoader = transportCache.fetchClassLoader(type.toLowerCase());
Class<?> aClass = transportClassLoader.loadClass(className, true);
return Optional.of((OutgoingStreamingConnector) aClass.getDeclaredConstructor().newInstance());
} else {
return Optional.empty();
}
}