DataLakeFileClient クラス
- java.
lang. Object - com.
azure. storage. file. datalake. DataLakePathClient - com.
azure. storage. file. datalake. DataLakeFileClient
- com.
- com.
public class DataLakeFileClient
extends DataLakePathClient
このクラスは、Azure Storage Data Lake のファイル操作を含むクライアントを提供します。 このクライアントによって提供される操作には、ファイルの作成、ファイルの削除、ファイルの名前変更、メタデータと http ヘッダーの設定、アクセス制御の設定と取得、プロパティの取得、ファイルの読み取り、ファイルへの書き込みデータの追加とフラッシュが含まれます。
このクライアントは を介して DataLakePathClientBuilder インスタンス化されるか、 を介して getFileClient(String fileName)取得されます。
詳細については、 Azure Docs を参照してください。
メソッドの概要
メソッドの継承元: DataLakePathClient
メソッドの継承元: java.lang.Object
メソッドの詳細
append
public void append(BinaryData data, long fileOffset)
後で flush の呼び出しによってフラッシュ (書き込まれる) されるように、指定されたリソースにデータを追加します
コード サンプル
client.append(binaryData, offset);
System.out.println("Append data completed");
詳細については、Azure Docs に関するページを参照してください。
Parameters:
append
public void append(InputStream data, long fileOffset, long length)
後で flush の呼び出しによってフラッシュ (書き込まれる) されるように、指定されたリソースにデータを追加します
コード サンプル
client.append(data, offset, length);
System.out.println("Append data completed");
詳細については、Azure Docs に関するページを参照してください。
Parameters:
appendWithResponse
public Response
後で flush の呼び出しによってフラッシュ (書き込まれる) されるように、指定されたリソースにデータを追加します
コード サンプル
FileRange range = new FileRange(1024, 2048L);
DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);
byte[] contentMd5 = new byte[0]; // Replace with valid md5
Response<Void> response = client.appendWithResponse(binaryData, offset, contentMd5, leaseId, timeout,
new Context(key1, value1));
System.out.printf("Append data completed with status %d%n", response.getStatusCode());
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
appendWithResponse
public Response
後で flush の呼び出しによってフラッシュ (書き込まれる) されるように、指定されたリソースにデータを追加します
コード サンプル
BinaryData binaryData = BinaryData.fromStream(data, length);
FileRange range = new FileRange(1024, 2048L);
byte[] contentMd5 = new byte[0]; // Replace with valid md5
DataLakeFileAppendOptions appendOptions = new DataLakeFileAppendOptions()
.setLeaseId(leaseId)
.setContentHash(contentMd5)
.setFlush(true);
Response<Void> response = client.appendWithResponse(binaryData, offset, appendOptions, timeout,
new Context(key1, value1));
System.out.printf("Append data completed with status %d%n", response.getStatusCode());
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
appendWithResponse
public Response
後で flush の呼び出しによってフラッシュ (書き込まれる) されるように、指定されたリソースにデータを追加します
コード サンプル
FileRange range = new FileRange(1024, 2048L);
DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);
byte[] contentMd5 = new byte[0]; // Replace with valid md5
Response<Void> response = client.appendWithResponse(data, offset, length, contentMd5, leaseId, timeout,
new Context(key1, value1));
System.out.printf("Append data completed with status %d%n", response.getStatusCode());
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
appendWithResponse
public Response
後で flush の呼び出しによってフラッシュ (書き込まれる) されるように、指定されたリソースにデータを追加します
コード サンプル
FileRange range = new FileRange(1024, 2048L);
byte[] contentMd5 = new byte[0]; // Replace with valid md5
DataLakeFileAppendOptions appendOptions = new DataLakeFileAppendOptions()
.setLeaseId(leaseId)
.setContentHash(contentMd5)
.setFlush(true);
Response<Void> response = client.appendWithResponse(data, offset, length, appendOptions, timeout,
new Context(key1, value1));
System.out.printf("Append data completed with status %d%n", response.getStatusCode());
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
delete
public void delete()
ファイルを削除します。
コード サンプル
client.delete();
System.out.println("Delete request completed");
詳細については、Azure Docs に関するページを参照してください。
deleteIfExists
public boolean deleteIfExists()
ファイルが存在する場合は削除します。
コード サンプル
client.deleteIfExists();
System.out.println("Delete request completed");
詳細については、Azure Docs に関するページを参照してください。
Overrides:
DataLakeFileClient.deleteIfExists()Returns:
true
ファイルが正常に削除された場合は 。 false
ファイルが存在しない場合は 。deleteIfExistsWithResponse
public Response
ファイルが存在する場合は削除します。
コード サンプル
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
DataLakePathDeleteOptions options = new DataLakePathDeleteOptions().setIsRecursive(false)
.setRequestConditions(requestConditions);
Response<Boolean> response = client.deleteIfExistsWithResponse(options, timeout, new Context(key1, value1));
if (response.getStatusCode() == 404) {
System.out.println("Does not exist.");
} else {
System.out.printf("Delete completed with status %d%n", response.getStatusCode());
}
詳細については、Azure Docs に関するページを参照してください。
Overrides:
DataLakeFileClient.deleteIfExistsWithResponse(DataLakePathDeleteOptions options, Duration timeout, Context context)Parameters:
Returns:
deleteWithResponse
public Response
ファイルを削除します。
コード サンプル
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
client.deleteWithResponse(requestConditions, timeout, new Context(key1, value1));
System.out.println("Delete request completed");
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
flush
@Deprecated
public PathInfo flush(long position)
非推奨
以前にファイルに追加されたデータを、追加する呼び出しを通じてフラッシュ (書き込み) します。 以前にアップロードしたデータは連続している必要があります。
既定では、このメソッドは既存のデータを上書きしません。
コード サンプル
client.flush(position);
System.out.println("Flush data completed");
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
flush
public PathInfo flush(long position, boolean overwrite)
以前にファイルに追加されたデータを、追加する呼び出しを通じてフラッシュ (書き込み) します。 以前にアップロードしたデータは連続している必要があります。
コード サンプル
boolean overwrite = true;
client.flush(position, overwrite);
System.out.println("Flush data completed");
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
flushWithResponse
public Response
追加する呼び出しを通じて、以前にファイルに追加されたデータをフラッシュ (書き込み) します。 以前にアップロードしたデータは連続している必要があります。
コード サンプル
FileRange range = new FileRange(1024, 2048L);
DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);
byte[] contentMd5 = new byte[0]; // Replace with valid md5
boolean retainUncommittedData = false;
boolean close = false;
PathHttpHeaders httpHeaders = new PathHttpHeaders()
.setContentLanguage("en-US")
.setContentType("binary");
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
Response<PathInfo> response = client.flushWithResponse(position, retainUncommittedData, close, httpHeaders,
requestConditions, timeout, new Context(key1, value1));
System.out.printf("Flush data completed with status %d%n", response.getStatusCode());
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
flushWithResponse
public Response
追加する呼び出しを通じて、以前にファイルに追加されたデータをフラッシュ (書き込み) します。 以前にアップロードしたデータは連続している必要があります。
コード サンプル
FileRange range = new FileRange(1024, 2048L);
DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);
byte[] contentMd5 = new byte[0]; // Replace with valid md5
boolean retainUncommittedData = false;
boolean close = false;
PathHttpHeaders httpHeaders = new PathHttpHeaders()
.setContentLanguage("en-US")
.setContentType("binary");
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
Integer leaseDuration = 15;
DataLakeFileFlushOptions flushOptions = new DataLakeFileFlushOptions()
.setUncommittedDataRetained(retainUncommittedData)
.setClose(close)
.setPathHttpHeaders(httpHeaders)
.setRequestConditions(requestConditions)
.setLeaseAction(LeaseAction.ACQUIRE)
.setLeaseDuration(leaseDuration)
.setProposedLeaseId(leaseId);
Response<PathInfo> response = client.flushWithResponse(position, flushOptions, timeout,
new Context(key1, value1));
System.out.printf("Flush data completed with status %d%n", response.getStatusCode());
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
getCustomerProvidedKeyClient
public DataLakeFileClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)
指定した DataLakeFileClient を使用して、新しい customerProvidedKey
を作成します。
Overrides:
DataLakeFileClient.getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)Parameters:
Returns:
customerProvidedKey
を持つ 。getFileName
public String getFileName()
完全なパスを含まない、このファイルの名前を取得します。
Returns:
getFilePath
public String getFilePath()
リソース自体の名前を含まない、このファイルのパスを取得します。
Returns:
getFileUrl
public String getFileUrl()
Data Lake サービスでこのクライアントによって表されるファイルの URL を取得します。
Returns:
getOutputStream
public OutputStream getOutputStream()
ファイルにデータを書き込む出力ストリームを作成して開きます。 ファイルがサービスに既に存在する場合は、上書きされます。
Returns:
getOutputStream
public OutputStream getOutputStream(DataLakeFileOutputStreamOptions options)
ファイルにデータを書き込む出力ストリームを作成して開きます。 ファイルがサービスに既に存在する場合は、上書きされます。
上書きを回避するには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。
Parameters:
Returns:
getOutputStream
public OutputStream getOutputStream(DataLakeFileOutputStreamOptions options, Context context)
ファイルにデータを書き込む出力ストリームを作成して開きます。 ファイルがサービスに既に存在する場合は、上書きされます。
上書きを回避するには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。
Parameters:
Returns:
openInputStream
public DataLakeFileOpenInputStreamResult openInputStream()
ファイル入力ストリームを開き、ファイルをダウンロードします。 ETag に対するロック。
DataLakeFileOpenInputStreamResult inputStream = client.openInputStream();
Returns:
openInputStream
public DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options)
ファイル入力ストリームを開き、指定した範囲のファイルをダウンロードします。 オプションが指定されていない場合、既定では ETag ロックが設定されます。
DataLakeFileInputStreamOptions options = new DataLakeFileInputStreamOptions().setBlockSize(1024)
.setRequestConditions(new DataLakeRequestConditions());
DataLakeFileOpenInputStreamResult streamResult = client.openInputStream(options);
Parameters:
Returns:
openInputStream
public DataLakeFileOpenInputStreamResult openInputStream(DataLakeFileInputStreamOptions options, Context context)
ファイル入力ストリームを開き、指定した範囲のファイルをダウンロードします。 オプションが指定されていない場合、既定では ETag ロックが設定されます。
options = new DataLakeFileInputStreamOptions().setBlockSize(1024)
.setRequestConditions(new DataLakeRequestConditions());
DataLakeFileOpenInputStreamResult stream = client.openInputStream(options, new Context(key1, value1));
Parameters:
Returns:
openQueryInputStream
public InputStream openQueryInputStream(String expression)
入力ストリームを開き、ファイルに対してクエリを実行します。
詳細については、Azure Docs に関するページを参照してください。
コード サンプル
String expression = "SELECT * from BlobStorage";
InputStream inputStream = client.openQueryInputStream(expression);
// Now you can read from the input stream like you would normally.
Parameters:
Returns:
InputStream
クエリ応答の読み取りに使用するストリームを表す オブジェクト。openQueryInputStreamWithResponse
public Response
入力ストリームを開き、ファイルに対してクエリを実行します。
詳細については、Azure Docs に関するページを参照してください。
コード サンプル
String expression = "SELECT * from BlobStorage";
FileQuerySerialization input = new FileQueryDelimitedSerialization()
.setColumnSeparator(',')
.setEscapeChar('\n')
.setRecordSeparator('\n')
.setHeadersPresent(true)
.setFieldQuote('"');
FileQuerySerialization output = new FileQueryJsonSerialization()
.setRecordSeparator('\n');
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId("leaseId");
Consumer<FileQueryError> errorConsumer = System.out::println;
Consumer<FileQueryProgress> progressConsumer = progress -> System.out.println("total file bytes read: "
+ progress.getBytesScanned());
FileQueryOptions queryOptions = new FileQueryOptions(expression)
.setInputSerialization(input)
.setOutputSerialization(output)
.setRequestConditions(requestConditions)
.setErrorConsumer(errorConsumer)
.setProgressConsumer(progressConsumer);
InputStream inputStream = client.openQueryInputStreamWithResponse(queryOptions).getValue();
// Now you can read from the input stream like you would normally.
Parameters:
Returns:
InputStream
含む、状態コードと HTTP ヘッダーを含む応答。query
public void query(OutputStream stream, String expression)
ファイル全体を出力ストリームに照会します。
詳細については、Azure Docs に関するページを参照してください。
コード サンプル
ByteArrayOutputStream queryData = new ByteArrayOutputStream();
String expression = "SELECT * from BlobStorage";
client.query(queryData, expression);
System.out.println("Query completed.");
Parameters:
queryWithResponse
public FileQueryResponse queryWithResponse(FileQueryOptions queryOptions, Duration timeout, Context context)
ファイル全体を出力ストリームに照会します。
詳細については、Azure Docs に関するページを参照してください。
コード サンプル
ByteArrayOutputStream queryData = new ByteArrayOutputStream();
String expression = "SELECT * from BlobStorage";
FileQueryJsonSerialization input = new FileQueryJsonSerialization()
.setRecordSeparator('\n');
FileQueryDelimitedSerialization output = new FileQueryDelimitedSerialization()
.setEscapeChar('\0')
.setColumnSeparator(',')
.setRecordSeparator('\n')
.setFieldQuote('\'')
.setHeadersPresent(true);
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions().setLeaseId(leaseId);
Consumer<FileQueryError> errorConsumer = System.out::println;
Consumer<FileQueryProgress> progressConsumer = progress -> System.out.println("total file bytes read: "
+ progress.getBytesScanned());
FileQueryOptions queryOptions = new FileQueryOptions(expression, queryData)
.setInputSerialization(input)
.setOutputSerialization(output)
.setRequestConditions(requestConditions)
.setErrorConsumer(errorConsumer)
.setProgressConsumer(progressConsumer);
System.out.printf("Query completed with status %d%n",
client.queryWithResponse(queryOptions, timeout, new Context(key1, value1))
.getStatusCode());
Parameters:
Returns:
read
public void read(OutputStream stream)
ファイル全体を出力ストリームに読み取ります。
コード サンプル
client.read(new ByteArrayOutputStream());
System.out.println("Download completed.");
詳細については、Azure Docs に関するページを参照してください。
Parameters:
readToFile
public PathProperties readToFile(String filePath)
パスで指定されたファイルにファイル全体を読み取ります。
ファイルが既に存在する場合は、ファイルが作成され、存在 FileAlreadyExistsException しない必要があります。 がスローされます。
コード サンプル
client.readToFile(file);
System.out.println("Completed download to file");
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
readToFile
public PathProperties readToFile(String filePath, boolean overwrite)
パスで指定されたファイルにファイル全体を読み取ります。
overwrite が false に設定されている場合、ファイルは作成され、ファイルが既に存在する FileAlreadyExistsException 場合は存在しない必要があります。 がスローされます。
コード サンプル
boolean overwrite = false; // Default value
client.readToFile(file, overwrite);
System.out.println("Completed download to file");
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
readToFileWithResponse
public Response
パスで指定されたファイルにファイル全体を読み取ります。
既定では、ファイルは作成され、ファイルが既に存在する FileAlreadyExistsException 場合は存在しない必要があります。 がスローされます。 この動作をオーバーライドするには、適切な OpenOptions
コード サンプル
FileRange fileRange = new FileRange(1024, 2048L);
DownloadRetryOptions downloadRetryOptions = new DownloadRetryOptions().setMaxRetryRequests(5);
Set<OpenOption> openOptions = new HashSet<>(Arrays.asList(StandardOpenOption.CREATE_NEW,
StandardOpenOption.WRITE, StandardOpenOption.READ)); // Default options
client.readToFileWithResponse(file, fileRange, new ParallelTransferOptions().setBlockSizeLong(4L * Constants.MB),
downloadRetryOptions, null, false, openOptions, timeout, new Context(key2, value2));
System.out.println("Completed download to file");
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
readWithResponse
public FileReadResponse readWithResponse(OutputStream stream, FileRange range, DownloadRetryOptions options, DataLakeRequestConditions requestConditions, boolean getRangeContentMd5, Duration timeout, Context context)
ファイルから出力ストリームにバイト範囲を読み取ります。
コード サンプル
FileRange range = new FileRange(1024, 2048L);
DownloadRetryOptions options = new DownloadRetryOptions().setMaxRetryRequests(5);
System.out.printf("Download completed with status %d%n",
client.readWithResponse(new ByteArrayOutputStream(), range, options, null, false,
timeout, new Context(key2, value2)).getStatusCode());
詳細については、Azure Docs に関するページを参照してください。
Parameters:
Returns:
rename
public DataLakeFileClient rename(String destinationFileSystem, String destinationPath)
ファイルをファイル システム内の別の場所に移動します。 詳細については、 Azure Docs を参照してください。
コード サンプル
DataLakeDirectoryAsyncClient renamedClient = client.rename(fileSystemName, destinationPath).block();
System.out.println("Directory Client has been renamed");
Parameters:
null
現在のファイル システムの場合は 。
Returns:
renameWithResponse
public Response
ファイルをファイル システム内の別の場所に移動します。 詳細については、 Azure Docs に関するページを参照してください。
コード サンプル
DataLakeRequestConditions sourceRequestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
DataLakeRequestConditions destinationRequestConditions = new DataLakeRequestConditions();
DataLakeFileClient newRenamedClient = client.renameWithResponse(fileSystemName, destinationPath,
sourceRequestConditions, destinationRequestConditions, timeout, new Context(key1, value1)).getValue();
System.out.println("Directory Client has been renamed");
Parameters:
null
現在のファイル システムの場合は 。
Returns:
scheduleDeletion
public void scheduleDeletion(FileScheduleDeletionOptions options)
ファイルの削除をスケジュールします。
コード サンプル
FileScheduleDeletionOptions options = new FileScheduleDeletionOptions(OffsetDateTime.now().plusDays(1));
client.scheduleDeletion(options);
System.out.println("File deletion has been scheduled");
Parameters:
scheduleDeletionWithResponse
public Response
ファイルの削除をスケジュールします。
コード サンプル
FileScheduleDeletionOptions options = new FileScheduleDeletionOptions(OffsetDateTime.now().plusDays(1));
Context context = new Context("key", "value");
client.scheduleDeletionWithResponse(options, timeout, context);
System.out.println("File deletion has been scheduled");
Parameters:
Returns:
upload
public PathInfo upload(BinaryData data)
新しいファイルを 1 つ作成します。 既定では、このメソッドは既存のファイルを上書きしません。
コード サンプル
try {
client.upload(binaryData);
System.out.println("Upload from file succeeded");
} catch (UncheckedIOException ex) {
System.err.printf("Failed to upload from file %s%n", ex.getMessage());
}
Parameters:
Returns:
upload
public PathInfo upload(BinaryData data, boolean overwrite)
新しいファイルを作成するか、既存のファイルの内容を更新します。
コード サンプル
try {
boolean overwrite = false;
client.upload(binaryData, overwrite);
System.out.println("Upload from file succeeded");
} catch (UncheckedIOException ex) {
System.err.printf("Failed to upload from file %s%n", ex.getMessage());
}
Parameters:
Returns:
upload
public PathInfo upload(InputStream data, long length)
新しいファイルを 1 つ作成します。 既定では、このメソッドは既存のファイルを上書きしません。
コード サンプル
try {
client.upload(data, length);
System.out.println("Upload from file succeeded");
} catch (UncheckedIOException ex) {
System.err.printf("Failed to upload from file %s%n", ex.getMessage());
}
Parameters:
Returns:
upload
public PathInfo upload(InputStream data, long length, boolean overwrite)
新しいファイルを作成するか、既存のファイルの内容を更新します。
コード サンプル
try {
boolean overwrite = false;
client.upload(data, length, overwrite);
System.out.println("Upload from file succeeded");
} catch (UncheckedIOException ex) {
System.err.printf("Failed to upload from file %s%n", ex.getMessage());
}
Parameters:
Returns:
uploadFromFile
public void uploadFromFile(String filePath)
指定したファイルの内容を含むファイルを作成します。 既定では、このメソッドは既存のファイルを上書きしません。
コード サンプル
try {
client.uploadFromFile(filePath);
System.out.println("Upload from file succeeded");
} catch (UncheckedIOException ex) {
System.err.printf("Failed to upload from file %s%n", ex.getMessage());
}
Parameters:
uploadFromFile
public void uploadFromFile(String filePath, boolean overwrite)
指定したファイルの内容を含むファイルを作成します。
コード サンプル
try {
boolean overwrite = false;
client.uploadFromFile(filePath, overwrite);
System.out.println("Upload from file succeeded");
} catch (UncheckedIOException ex) {
System.err.printf("Failed to upload from file %s%n", ex.getMessage());
}
Parameters:
uploadFromFile
public void uploadFromFile(String filePath, ParallelTransferOptions parallelTransferOptions, PathHttpHeaders headers, Map
指定したファイルの内容を含むファイルを作成します。
上書きされないようにするには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。
コード サンプル
PathHttpHeaders headers = new PathHttpHeaders()
.setContentMd5("data".getBytes(StandardCharsets.UTF_8))
.setContentLanguage("en-US")
.setContentType("binary");
Map<String, String> metadata = Collections.singletonMap("metadata", "value");
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId)
.setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
Long blockSize = 100L * 1024L * 1024L; // 100 MB;
ParallelTransferOptions parallelTransferOptions = new ParallelTransferOptions().setBlockSizeLong(blockSize);
try {
client.uploadFromFile(filePath, parallelTransferOptions, headers, metadata, requestConditions, timeout);
System.out.println("Upload from file succeeded");
} catch (UncheckedIOException ex) {
System.err.printf("Failed to upload from file %s%n", ex.getMessage());
}
Parameters:
uploadFromFileWithResponse
public Response
指定したファイルの内容を含むファイルを作成します。
上書きされないようにするには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。
コード サンプル
PathHttpHeaders headers = new PathHttpHeaders()
.setContentMd5("data".getBytes(StandardCharsets.UTF_8))
.setContentLanguage("en-US")
.setContentType("binary");
Map<String, String> metadata = Collections.singletonMap("metadata", "value");
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId)
.setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
Long blockSize = 100L * 1024L * 1024L; // 100 MB;
ParallelTransferOptions parallelTransferOptions = new ParallelTransferOptions().setBlockSizeLong(blockSize);
try {
Response<PathInfo> response = client.uploadFromFileWithResponse(filePath, parallelTransferOptions, headers,
metadata, requestConditions, timeout, new Context("key", "value"));
System.out.printf("Upload from file succeeded with status %d%n", response.getStatusCode());
} catch (UncheckedIOException ex) {
System.err.printf("Failed to upload from file %s%n", ex.getMessage());
}
Parameters:
Returns:
uploadWithResponse
public Response
新しいファイルを 1 つ作成します。 上書きされないようにするには、"*" を に setIfNoneMatch(String ifNoneMatch)渡します。
コード サンプル
PathHttpHeaders headers = new PathHttpHeaders()
.setContentMd5("data".getBytes(StandardCharsets.UTF_8))
.setContentLanguage("en-US")
.setContentType("binary");
Map<String, String> metadata = Collections.singletonMap("metadata", "value");
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId)
.setIfUnmodifiedSince(OffsetDateTime.now().minusDays(3));
Long blockSize = 100L * 1024L * 1024L; // 100 MB;
ParallelTransferOptions parallelTransferOptions = new ParallelTransferOptions().setBlockSizeLong(blockSize);
try {
client.uploadWithResponse(new FileParallelUploadOptions(data, length)
.setParallelTransferOptions(parallelTransferOptions).setHeaders(headers)
.setMetadata(metadata).setRequestConditions(requestConditions)
.setPermissions("permissions").setUmask("umask"), timeout, new Context("key", "value"));
System.out.println("Upload from file succeeded");
} catch (UncheckedIOException ex) {
System.err.printf("Failed to upload from file %s%n", ex.getMessage());
}
Parameters:
Returns:
適用対象
Azure SDK for Java