flink-instrumentation/workspace/flink-1.4.1-instrumented/flink-1.4.1/flink-runtime/src/main/java/org/apache/flink/runtime/blob/BlobClient.java
/**
	 * Uploads the JAR files to the {@link PermanentBlobService} of the {@link BlobServer} at the
	 * given address with HA as configured.
	 *
	 * @param serverAddress
	 * 		Server address of the {@link BlobServer}
	 * @param clientConfig
	 * 		Any additional configuration for the blob client
	 * @param jobId
	 * 		ID of the job this blob belongs to (or <tt>null</tt> if job-unrelated)
	 * @param jars
	 * 		List of JAR files to upload
	 *
	 * @throws IOException
	 * 		if the upload fails
	 */
Uploads the JAR files to the  PermanentBlobService of the  BlobServer at the
given address with HA as configured.

@param serverAddress
Server address of the  BlobServer
@param clientConfig
Any additional configuration for the blob client
@param jobId
ID of the job this blob belongs to (or null if job-unrelated)
@param jars
List of JAR files to upload

@throws IOException
if the upload fails
Uploads the JAR files to the PermanentBlobService of the BlobServer at the given address with HA as configured . @param serverAddress Server address of the BlobServer @param clientConfig Any additional configuration for the blob client @param jobId ID of the job this blob belongs to ( or null if job - unrelated ) @param jars List of JAR files to upload @throws IOException if the upload fails
public static List<PermanentBlobKey> uploadJarFiles(
			InetSocketAddress serverAddress, Configuration clientConfig, JobID jobId, List<Path> jars)
			throws IOException {
		checkNotNull(jobId);
		if (jars.isEmpty()) {
			return Collections.emptyList();
		} else {
			List<PermanentBlobKey> blobKeys = new ArrayList<>();
			try (BlobClient blobClient = new BlobClient(serverAddress, clientConfig)) {
				for (final Path jar : jars) {
					final FileSystem fs = jar.getFileSystem();
					FSDataInputStream is = null;
					try {
						is = fs.open(jar);
						final PermanentBlobKey key =
							(PermanentBlobKey) blobClient.putInputStream(jobId, is, PERMANENT_BLOB);
						blobKeys.add(key);
					} finally {
						if (is != null) {
							is.close();
						}
					}
				}
			}
			return blobKeys;
		}
	}
public static List < PermanentBlobKey > uploadJarFiles ( InetSocketAddress serverAddress , Configuration clientConfig , JobID jobId , List < Path > jars ) throws IOException { checkNotNull ( jobId ) ; if ( jars . isEmpty ( ) ) { return Collections . emptyList ( ) ; } else { List < PermanentBlobKey > blobKeys = new ArrayList < > ( ) ; try ( BlobClient blobClient = new BlobClient ( serverAddress , clientConfig ) ) { for ( final Path jar : jars ) { final FileSystem fs = jar . getFileSystem ( ) ; FSDataInputStream is = null ; try { is = fs . open ( jar ) ; final PermanentBlobKey key = ( PermanentBlobKey ) blobClient . putInputStream ( jobId , is , PERMANENT_BLOB ) ; blobKeys . add ( key ) ; } finally { if ( is != null ) { is . close ( ) ; } } } } return blobKeys ; } }
Uploads the JAR files to the {@link PermanentBlobService} of the {@link BlobServer} at the
 given address with HA as configured.
Uploads the JAR files to the { @link PermanentBlobService } of the { @link BlobServer } at the given address with HA as configured .