/** * Creates the transfer manager factory builder from the {@link Config} * using the configured {@link TransferPlugin}. Using this builder, the * feature-wrapped transfer manager can be built. * * @see TransferManagerBuilder * @param config Local folder configuration with transfer plugin settings * @return Transfer manager builder */ public static TransferManagerBuilder build(Config config) throws StorageException { TransferManager transferManager = config.getTransferPlugin().createTransferManager(config.getConnection(), config); logger.log(Level.INFO, "Building " + transferManager.getClass().getSimpleName() + " from config '" + config.getLocalDir().getName() + "' ..."); return new TransferManagerBuilder(config, transferManager); }
protected TransferManager createTransferManagerFromNullConfig(ConfigTO configTo) throws IllegalAccessException, InvocationTargetException, InstantiationException, NoSuchMethodException, StorageException { // Init plugin and transfer manager TransferPlugin plugin = Plugins.get(configTo.getTransferSettings().getType(), TransferPlugin.class); TransferSettings transferSettings = configTo.getTransferSettings(); transferSettings.setUserInteractionListener(listener); TransferManager transferManager = plugin.createTransferManager(transferSettings, config); // constructor is not visible and config seems to be null at this point, hence we cannot use the build method here Constructor<TransferManagerBuilder> tmbConstructor = TransferManagerBuilder.class.getDeclaredConstructor(Config.class, TransferManager.class); tmbConstructor.setAccessible(true); return tmbConstructor.newInstance(config, transferManager) .withFeature(ReadAfterWriteConsistent.class) .asDefault(); } }
public static TransferSettings createTestLocalConnection() throws Exception { TransferPlugin plugin = Plugins.get("local", TransferPlugin.class); LocalTransferSettings conn = plugin.createEmptySettings(); File tempRepoDir = TestFileUtil.createTempDirectoryInSystemTemp(createUniqueName("repo", conn)); conn.setPath(tempRepoDir); // TODO [medium] : possible problem plugin.createTransferManager(conn, null).init(true); return conn; }
Map<ChunkChecksum, MultiChunkId> multiChunks = localDatabase.getMultiChunkIdsByChecksums(fileContent.getChunks()); TransferManager transferManager = config.getTransferPlugin().createTransferManager(config.getConnection(), config); Downloader downloader = new Downloader(config, transferManager); Assembler assembler = new Assembler(config, localDatabase);