class YarnApplicationFileUploader implements AutoCloseable {

	static YarnApplicationFileUploader from(
			final FileSystem fileSystem,
			final Path homeDirectory,
			final List<Path> providedLibDirs,
			final ApplicationId applicationId,
			final int fileReplication) throws IOException {
		return new YarnApplicationFileUploader(fileSystem, homeDirectory, providedLibDirs, applicationId, fileReplication);
	}

	private  YarnApplicationFileUploader(
			final FileSystem fileSystem,
			final Path homeDir,
			final List<Path> providedLibDirs,
			final ApplicationId applicationId,
			final int fileReplication);

}