public static Optional resolveIncomingChunkedConnector()

in agent/service/src/main/java/org/apache/airavata/mft/agent/transport/ConnectorResolver.java [96:121]


    public static Optional<IncomingChunkedConnector> resolveIncomingChunkedConnector(String type, TransportClassLoaderCache transportCache) throws Exception {

        String className = null;
        switch (type) {
            case "S3":
                className = "org.apache.airavata.mft.transport.s3.S3IncomingConnector";
                break;
            case "SWIFT":
                className = "org.apache.airavata.mft.transport.swift.SwiftIncomingConnector";
                break;
            case "GCS":
                className = "org.apache.airavata.mft.transport.gcp.GCSIncomingChunkedConnector";
                break;
            case "LOCAL":
                className = "org.apache.airavata.mft.transport.local.LocalIncomingChunkedConnector";
                break;
        }

        if (className != null) {
            TransportClassLoader transportClassLoader = transportCache.fetchClassLoader(type.toLowerCase());
            Class<?> aClass = transportClassLoader.loadClass(className, true);
            return Optional.of((IncomingChunkedConnector) aClass.getDeclaredConstructor().newInstance());
        } else {
            return Optional.empty();
        }
    }