DataLakeDirectoryClient Classe
- java.
lang. Object - com.
azure. storage. file. datalake. DataLakePathClient - com.
azure. storage. file. datalake. DataLakeDirectoryClient
- com.
- com.
public class DataLakeDirectoryClient
extends DataLakePathClient
Essa classe fornece um cliente que contém operações de diretório para o Azure Storage Data Lake. As operações fornecidas por esse cliente incluem criar um diretório, excluir um diretório, renomear um diretório, definir metadados e cabeçalhos http, definir e recuperar o controle de acesso, obter propriedades e criar e excluir arquivos e subdiretórios.
Esse cliente é instanciado por meio DataLakePathClientBuilder de ou recuperado por meio de getDirectoryClient(String directoryName).
Consulte o Azure Docs para obter mais informações.
Resumo do método
Métodos herdados de DataLakePathClient
Métodos herdados de java.lang.Object
Detalhes do método
createFile
public DataLakeFileClient createFile(String fileName)
Cria um novo arquivo em um diretório. Por padrão, esse método não substituirá um arquivo existente. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeFileClient fileClient = client.createFile(fileName);
Parameters:
Returns:
createFile
public DataLakeFileClient createFile(String fileName, boolean overwrite)
Cria um novo arquivo em um diretório. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
boolean overwrite = false; /* Default value. */
DataLakeFileClient fClient = client.createFile(fileName, overwrite);
Parameters:
Returns:
createFileIfNotExists
public DataLakeFileClient createFileIfNotExists(String fileName)
Cria um novo arquivo em um diretório se ele não existir. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeFileClient fileClient = client.createFileIfNotExists(fileName);
Parameters:
Returns:
createFileIfNotExistsWithResponse
public Response
Cria um novo arquivo em um diretório se ele não existir. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
PathHttpHeaders headers = new PathHttpHeaders().setContentLanguage("en-US").setContentType("binary");
String permissions = "permissions";
String umask = "umask";
DataLakePathCreateOptions options = new DataLakePathCreateOptions()
.setPermissions(permissions)
.setUmask(umask)
.setPathHttpHeaders(headers)
.setMetadata(Collections.singletonMap("metadata", "value"));
Response<DataLakeFileClient> response = client.createFileIfNotExistsWithResponse(fileName, options, timeout,
new Context(key1, value1));
if (response.getStatusCode() == 409) {
System.out.println("Already existed.");
} else {
System.out.printf("Create completed with status %d%n", response.getStatusCode());
}
Parameters:
Returns:
createFileWithResponse
public Response
Cria um novo arquivo em um diretório. Se já existir um arquivo com o mesmo nome, o arquivo será substituído. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
PathHttpHeaders httpHeaders = new PathHttpHeaders()
.setContentLanguage("en-US")
.setContentType("binary");
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
Map<String, String> metadata = Collections.singletonMap("metadata", "value");
String permissions = "permissions";
String umask = "umask";
String owner = "rwx";
String group = "r--";
String leaseId = CoreUtils.randomUuid().toString();
Integer duration = 15;
DataLakePathCreateOptions options = new DataLakePathCreateOptions()
.setPermissions(permissions)
.setUmask(umask)
.setOwner(owner)
.setGroup(group)
.setPathHttpHeaders(httpHeaders)
.setRequestConditions(requestConditions)
.setMetadata(metadata)
.setProposedLeaseId(leaseId)
.setLeaseDuration(duration);
Response<DataLakeFileClient> newFileClient = client.createFileWithResponse(fileName, options, timeout,
new Context(key1, value1));
Parameters:
Returns:
createFileWithResponse
public Response
Cria um novo arquivo em um diretório. Se já existir um arquivo com o mesmo nome, o arquivo será substituído. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
PathHttpHeaders httpHeaders = new PathHttpHeaders()
.setContentLanguage("en-US")
.setContentType("binary");
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
String permissions = "permissions";
String umask = "umask";
Response<DataLakeFileClient> newFileClient = client.createFileWithResponse(fileName, permissions, umask, httpHeaders,
Collections.singletonMap("metadata", "value"), requestConditions,
timeout, new Context(key1, value1));
Parameters:
Returns:
createSubdirectory
public DataLakeDirectoryClient createSubdirectory(String subdirectoryName)
Cria um novo subdiretório em um diretório. Por padrão, esse método não substituirá um subdiretório existente. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeDirectoryClient directoryClient = client.createSubdirectory(directoryName);
Parameters:
Returns:
createSubdirectory
public DataLakeDirectoryClient createSubdirectory(String subdirectoryName, boolean overwrite)
Cria um novo subdiretório em um diretório. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
boolean overwrite = false; /* Default value. */
DataLakeDirectoryClient dClient = client.createSubdirectory(fileName, overwrite);
Parameters:
Returns:
createSubdirectoryIfNotExists
public DataLakeDirectoryClient createSubdirectoryIfNotExists(String subdirectoryName)
Cria um novo subdiretório se ele não existir em um diretório. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeDirectoryClient directoryClient = client.createSubdirectoryIfNotExists(directoryName);
Parameters:
Returns:
createSubdirectoryIfNotExistsWithResponse
public Response
Cria um novo subdiretório em um diretório se ele não existir. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
PathHttpHeaders headers = new PathHttpHeaders()
.setContentLanguage("en-US")
.setContentType("binary");
String permissions = "permissions";
String umask = "umask";
DataLakePathCreateOptions options = new DataLakePathCreateOptions()
.setPermissions(permissions)
.setUmask(umask)
.setPathHttpHeaders(headers)
.setMetadata(Collections.singletonMap("metadata", "value"));
Response<DataLakeDirectoryClient> response = client.createSubdirectoryIfNotExistsWithResponse(directoryName,
options, timeout, new Context(key1, value1));
if (response.getStatusCode() == 409) {
System.out.println("Already existed.");
} else {
System.out.printf("Create completed with status %d%n", response.getStatusCode());
}
Parameters:
Returns:
createSubdirectoryWithResponse
public Response
Cria um novo subdiretório em um diretório. Se já existir um subdiretório com o mesmo nome, o subdiretório será substituído. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
PathHttpHeaders httpHeaders = new PathHttpHeaders()
.setContentLanguage("en-US")
.setContentType("binary");
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
Map<String, String> metadata = Collections.singletonMap("metadata", "value");
String permissions = "permissions";
String umask = "umask";
String owner = "rwx";
String group = "r--";
String leaseId = CoreUtils.randomUuid().toString();
Integer duration = 15;
DataLakePathCreateOptions options = new DataLakePathCreateOptions()
.setPermissions(permissions)
.setUmask(umask)
.setOwner(owner)
.setGroup(group)
.setPathHttpHeaders(httpHeaders)
.setRequestConditions(requestConditions)
.setMetadata(metadata)
.setProposedLeaseId(leaseId)
.setLeaseDuration(duration);
Response<DataLakeDirectoryClient> newDirectoryClient = client.createSubdirectoryWithResponse(directoryName,
options, timeout, new Context(key1, value1));
Parameters:
Returns:
createSubdirectoryWithResponse
public Response
Cria um novo subdiretório em um diretório. Se já existir um subdiretório com o mesmo nome, o subdiretório será substituído. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
PathHttpHeaders httpHeaders = new PathHttpHeaders()
.setContentLanguage("en-US")
.setContentType("binary");
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
String permissions = "permissions";
String umask = "umask";
Response<DataLakeDirectoryClient> newDirectoryClient = client.createSubdirectoryWithResponse(directoryName,
permissions, umask, httpHeaders, Collections.singletonMap("metadata", "value"), requestConditions, timeout,
new Context(key1, value1));
Parameters:
Returns:
delete
public void delete()
Exclui um diretório.
Exemplos de código
client.delete();
System.out.println("Delete request completed");
Para obter mais informações, consulte o Azure Docs
deleteFile
public void deleteFile(String fileName)
Exclui o arquivo especificado no diretório. Se o arquivo não existir, a operação falhará. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
client.deleteFile(fileName);
System.out.println("Delete request completed");
Parameters:
deleteFileIfExists
public boolean deleteFileIfExists(String fileName)
Exclui o arquivo especificado no diretório se ele existir. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
boolean result = client.deleteFileIfExists(fileName);
System.out.println("Delete request completed: " + result);
Parameters:
Returns:
true
se o arquivo for excluído com êxito, false
se o arquivo não existir.deleteFileIfExistsWithResponse
public Response
Exclui o arquivo especificado no diretório se ele existir. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
DataLakePathDeleteOptions options = new DataLakePathDeleteOptions().setIsRecursive(false)
.setRequestConditions(requestConditions);
Response<Boolean> response = client.deleteFileIfExistsWithResponse(fileName, 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());
}
Parameters:
Returns:
deleteFileWithResponse
public Response
Exclui o arquivo especificado no diretório. Se o arquivo não existir, a operação falhará. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
client.deleteFileWithResponse(fileName, requestConditions, timeout, new Context(key1, value1));
System.out.println("Delete request completed");
Parameters:
Returns:
deleteIfExists
public boolean deleteIfExists()
Exclui um diretório se ele existir.
Exemplos de código
boolean result = client.deleteIfExists();
System.out.println("Delete request completed: " + result);
Para obter mais informações, consulte o Azure Docs
Overrides:
DataLakeDirectoryClient.deleteIfExists()Returns:
true
se o diretório for excluído com êxito, false
se o diretório não existir.deleteIfExistsWithResponse
public Response
Exclui um diretório se ele existir.
Exemplos de código
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
boolean recursive = false; // Default value
DataLakePathDeleteOptions options = new DataLakePathDeleteOptions().setIsRecursive(recursive)
.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());
}
Para obter mais informações, consulte o Azure Docs
Overrides:
DataLakeDirectoryClient.deleteIfExistsWithResponse(DataLakePathDeleteOptions options, Duration timeout, Context context)Parameters:
Returns:
deleteRecursively
public void deleteRecursively()
Exclui recursivamente um diretório e todo o conteúdo dentro do diretório.
Exemplos de código
client.deleteRecursively();
System.out.println("Delete request completed");
Para obter mais informações, consulte o Azure Docs
deleteRecursivelyWithResponse
public Response
Exclui recursivamente um diretório e todo o conteúdo dentro do diretório.
Exemplos de código
DataLakeRequestConditions deleteRequestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
client.deleteRecursivelyWithResponse(deleteRequestConditions, timeout, new Context(key1, value1));
System.out.println("Delete request completed");
Para obter mais informações, consulte o Azure Docs
Parameters:
Returns:
deleteSubdirectory
public void deleteSubdirectory(String subdirectoryName)
Exclui o subdiretório especificado no diretório. Se o subdiretório não existir ou não estiver vazio, a operação falhará. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
client.deleteSubdirectory(directoryName);
System.out.println("Delete request completed");
Parameters:
deleteSubdirectoryIfExists
public boolean deleteSubdirectoryIfExists(String subdirectoryName)
Exclui o subdiretório especificado no diretório se ele existir. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
boolean result = client.deleteSubdirectoryIfExists(directoryName);
System.out.println("Delete request completed: " + result);
Parameters:
Returns:
true
se o subdiretório for excluído com êxito, false
se o subdiretório não existir.deleteSubdirectoryIfExistsWithResponse
public Response
Exclui o subdiretório especificado no diretório se ele existir. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
boolean recursive = false; // Default value
DataLakePathDeleteOptions options = new DataLakePathDeleteOptions().setIsRecursive(recursive)
.setRequestConditions(requestConditions);
Response<Boolean> response = client.deleteSubdirectoryIfExistsWithResponse(directoryName, 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());
}
Parameters:
Returns:
deleteSubdirectoryWithResponse
public Response
Exclui o subdiretório especificado no diretório. Se o subdiretório não existir ou não estiver vazio, a operação falhará. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
boolean recursive = false; // Default value
client.deleteSubdirectoryWithResponse(directoryName, recursive, requestConditions, timeout,
new Context(key1, value1));
System.out.println("Delete request completed");
Parameters:
Returns:
deleteWithResponse
public Response
Exclui um diretório.
Exemplos de código
DataLakeRequestConditions requestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
boolean recursive = false; // Default value
client.deleteWithResponse(recursive, requestConditions, timeout, new Context(key1, value1));
System.out.println("Delete request completed");
Para obter mais informações, consulte o Azure Docs
Parameters:
Returns:
getCustomerProvidedKeyClient
public DataLakeDirectoryClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)
Cria um novo DataLakeDirectoryClient com o customerProvidedKey
especificado.
Overrides:
DataLakeDirectoryClient.getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)Parameters:
null
para usar nenhuma chave fornecida pelo cliente.
Returns:
customerProvidedKey
.getDirectoryName
public String getDirectoryName()
Obtém o nome desse diretório, sem incluir seu caminho completo.
Returns:
getDirectoryPath
public String getDirectoryPath()
Obtém o caminho desse diretório, sem incluir o nome do recurso em si.
Returns:
getDirectoryUrl
public String getDirectoryUrl()
Obtém a URL do diretório representado por esse cliente no serviço Data Lake.
Returns:
getFileClient
public DataLakeFileClient getFileClient(String fileName)
Inicializa um novo objeto DataLakeFileClient concatenando fileName ao final da URL de DataLakeDirectoryClient. O novo DataLakeFileClient usa o mesmo pipeline de política de solicitação que o DataLakeDirectoryClient.
Parameters:
String
que representa o nome do arquivo.
Exemplos de código
DataLakeFileClient dataLakeFileClient = client.getFileClient(fileName);
Returns:
getSubdirectoryClient
public DataLakeDirectoryClient getSubdirectoryClient(String subdirectoryName)
Inicializa um novo objeto DataLakeDirectoryClient concatenando directoryName ao final da URL de DataLakeDirectoryClient. O novo DataLakeDirectoryClient usa o mesmo pipeline de política de solicitação que o DataLakeDirectoryClient.
Parameters:
String
que representa o nome do subdiretório.
Exemplos de código
DataLakeDirectoryClient dataLakeDirectoryClient = client.getSubdirectoryClient(directoryName);
Returns:
listPaths
public PagedIterable
Retorna uma lista de arquivos/diretórios carregados lentamente neste diretório. O retornado PagedIterable<T> pode ser consumido enquanto novos itens são recuperados automaticamente conforme necessário. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
client.listPaths().forEach(path -> System.out.printf("Name: %s%n", path.getName()));
Returns:
listPaths
public PagedIterable
Retorna uma lista de arquivos/diretórios carregados lentamente neste diretório. O retornado PagedIterable<T> pode ser consumido enquanto novos itens são recuperados automaticamente conforme necessário. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
client.listPaths(false, false, 10, timeout)
.forEach(path -> System.out.printf("Name: %s%n", path.getName()));
Parameters:
Returns:
rename
public DataLakeDirectoryClient rename(String destinationFileSystem, String destinationPath)
Move o diretório para outro local dentro do sistema de arquivos. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeDirectoryClient renamedClient = client.rename(fileSystemName, destinationPath);
System.out.println("Directory Client has been renamed");
Parameters:
null
para o sistema de arquivos atual.
Returns:
renameWithResponse
public Response
Move o diretório para outro local dentro do sistema de arquivos. Para obter mais informações, consulte o Azure Docs.
Exemplos de código
DataLakeRequestConditions sourceRequestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
DataLakeRequestConditions destinationRequestConditions = new DataLakeRequestConditions();
DataLakeDirectoryClient newRenamedClient = client.renameWithResponse(fileSystemName, destinationPath,
sourceRequestConditions, destinationRequestConditions, timeout, new Context(key1, value1)).getValue();
System.out.println("Directory Client has been renamed");
Parameters:
null
para o sistema de arquivos atual.
Returns:
Aplica-se a
Azure SDK for Java