DataLakeDirectoryClient Clase
- java.
lang. Object - com.
azure. storage. file. datalake. DataLakePathClient - com.
azure. storage. file. datalake. DataLakeDirectoryClient
- com.
- com.
public class DataLakeDirectoryClient
extends DataLakePathClient
Esta clase proporciona un cliente que contiene operaciones de directorio para Azure Storage Data Lake. Las operaciones proporcionadas por este cliente incluyen crear un directorio, eliminar un directorio, cambiar el nombre de un directorio, establecer metadatos y encabezados http, establecer y recuperar el control de acceso, obtener propiedades y crear y eliminar archivos y subdirectorios.
Se crea una instancia de este cliente a través DataLakePathClientBuilder de o se recupera a través de getDirectoryClient(String directoryName).
Consulte Azure Docs para más información.
Resumen del método
Métodos heredados de DataLakePathClient
Métodos heredados de java.lang.Object
Detalles del método
createFile
public DataLakeFileClient createFile(String fileName)
Crea un nuevo archivo dentro de un directorio. De forma predeterminada, este método no sobrescribirá un archivo existente. Para más información, consulte Azure Docs.
Ejemplos de código
DataLakeFileClient fileClient = client.createFile(fileName);
Parameters:
Returns:
createFile
public DataLakeFileClient createFile(String fileName, boolean overwrite)
Crea un nuevo archivo dentro de un directorio. Para más información, consulte Azure Docs.
Ejemplos de código
boolean overwrite = false; /* Default value. */
DataLakeFileClient fClient = client.createFile(fileName, overwrite);
Parameters:
Returns:
createFileIfNotExists
public DataLakeFileClient createFileIfNotExists(String fileName)
Crea un nuevo archivo dentro de un directorio si no existe. Para más información, consulte Azure Docs.
Ejemplos de código
DataLakeFileClient fileClient = client.createFileIfNotExists(fileName);
Parameters:
Returns:
createFileIfNotExistsWithResponse
public Response
Crea un nuevo archivo dentro de un directorio si no existe. Para más información, consulte Azure Docs.
Ejemplos 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
Crea un nuevo archivo dentro de un directorio. Si ya existe un archivo con el mismo nombre, se sobrescribirá el archivo. Para más información, consulte Azure Docs.
Ejemplos 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
Crea un nuevo archivo dentro de un directorio. Si ya existe un archivo con el mismo nombre, se sobrescribirá el archivo. Para más información, consulte Azure Docs.
Ejemplos 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)
Crea un nuevo subdirectorio dentro de un directorio. De forma predeterminada, este método no sobrescribirá un subdirectorio existente. Para más información, consulte Azure Docs.
Ejemplos de código
DataLakeDirectoryClient directoryClient = client.createSubdirectory(directoryName);
Parameters:
Returns:
createSubdirectory
public DataLakeDirectoryClient createSubdirectory(String subdirectoryName, boolean overwrite)
Crea un nuevo subdirectorio dentro de un directorio. Para más información, consulte Azure Docs.
Ejemplos de código
boolean overwrite = false; /* Default value. */
DataLakeDirectoryClient dClient = client.createSubdirectory(fileName, overwrite);
Parameters:
Returns:
createSubdirectoryIfNotExists
public DataLakeDirectoryClient createSubdirectoryIfNotExists(String subdirectoryName)
Crea un nuevo subdirectorio si no existe dentro de un directorio. Para más información, consulte Azure Docs.
Ejemplos de código
DataLakeDirectoryClient directoryClient = client.createSubdirectoryIfNotExists(directoryName);
Parameters:
Returns:
createSubdirectoryIfNotExistsWithResponse
public Response
Crea un nuevo subdirectorio dentro de un directorio si no existe. Para más información, consulte Azure Docs.
Ejemplos 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
Crea un nuevo subdirectorio dentro de un directorio. Si ya existe un subdirectorio con el mismo nombre, se sobrescribirá el subdirectorio. Para más información, consulte Azure Docs.
Ejemplos 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
Crea un nuevo subdirectorio dentro de un directorio. Si ya existe un subdirectorio con el mismo nombre, se sobrescribirá el subdirectorio. Para más información, consulte Azure Docs.
Ejemplos 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()
Elimina un directorio.
Ejemplos de código
client.delete();
System.out.println("Delete request completed");
Para más información, consulte Azure Docs.
deleteFile
public void deleteFile(String fileName)
Elimina el archivo especificado en el directorio . Si el archivo no existe, se produce un error en la operación. Para más información, consulte Azure Docs.
Ejemplos de código
client.deleteFile(fileName);
System.out.println("Delete request completed");
Parameters:
deleteFileIfExists
public boolean deleteFileIfExists(String fileName)
Elimina el archivo especificado en el directorio si existe. Para más información, consulte Azure Docs.
Ejemplos de código
boolean result = client.deleteFileIfExists(fileName);
System.out.println("Delete request completed: " + result);
Parameters:
Returns:
true
si el archivo se elimina correctamente, false
si el archivo no existe.deleteFileIfExistsWithResponse
public Response
Elimina el archivo especificado en el directorio si existe. Para más información, consulte Azure Docs.
Ejemplos 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
Elimina el archivo especificado en el directorio. Si el archivo no existe, se produce un error en la operación. Para más información, consulte Azure Docs.
Ejemplos 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()
Elimina un directorio si existe.
Ejemplos de código
boolean result = client.deleteIfExists();
System.out.println("Delete request completed: " + result);
Para más información, consulte Azure Docs.
Overrides:
DataLakeDirectoryClient.deleteIfExists()Returns:
true
si el directorio se elimina correctamente, false
si el directorio no existe.deleteIfExistsWithResponse
public Response
Elimina un directorio si existe.
Ejemplos 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 más información, consulte Azure Docs.
Overrides:
DataLakeDirectoryClient.deleteIfExistsWithResponse(DataLakePathDeleteOptions options, Duration timeout, Context context)Parameters:
Returns:
deleteRecursively
public void deleteRecursively()
Elimina de forma recursiva un directorio y todo el contenido del directorio.
Ejemplos de código
client.deleteRecursively();
System.out.println("Delete request completed");
Para más información, consulte Azure Docs.
deleteRecursivelyWithResponse
public Response
Elimina de forma recursiva un directorio y todo el contenido del directorio.
Ejemplos de código
DataLakeRequestConditions deleteRequestConditions = new DataLakeRequestConditions()
.setLeaseId(leaseId);
client.deleteRecursivelyWithResponse(deleteRequestConditions, timeout, new Context(key1, value1));
System.out.println("Delete request completed");
Para más información, consulte Azure Docs.
Parameters:
Returns:
deleteSubdirectory
public void deleteSubdirectory(String subdirectoryName)
Elimina el subdirectorio especificado en el directorio . Si el subdirectorio no existe o no está vacío, se produce un error en la operación. Para más información, consulte Azure Docs.
Ejemplos de código
client.deleteSubdirectory(directoryName);
System.out.println("Delete request completed");
Parameters:
deleteSubdirectoryIfExists
public boolean deleteSubdirectoryIfExists(String subdirectoryName)
Elimina el subdirectorio especificado en el directorio si existe. Para más información, consulte Azure Docs.
Ejemplos de código
boolean result = client.deleteSubdirectoryIfExists(directoryName);
System.out.println("Delete request completed: " + result);
Parameters:
Returns:
true
si el subdirectorio se elimina correctamente, false
si el subdirectorio no existe.deleteSubdirectoryIfExistsWithResponse
public Response
Elimina el subdirectorio especificado en el directorio si existe. Para más información, consulte Azure Docs.
Ejemplos 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
Elimina el subdirectorio especificado en el directorio . Si el subdirectorio no existe o no está vacío, se produce un error en la operación. Para más información, consulte Azure Docs.
Ejemplos 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
Elimina un directorio.
Ejemplos 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 más información, consulte Azure Docs.
Parameters:
Returns:
getCustomerProvidedKeyClient
public DataLakeDirectoryClient getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)
Crea un nuevo DataLakeDirectoryClient con el customerProvidedKey
especificado.
Overrides:
DataLakeDirectoryClient.getCustomerProvidedKeyClient(CustomerProvidedKey customerProvidedKey)Parameters:
null
para que no use ninguna clave proporcionada por el cliente.
Returns:
customerProvidedKey
.getDirectoryName
public String getDirectoryName()
Obtiene el nombre de este directorio, no incluida su ruta de acceso completa.
Returns:
getDirectoryPath
public String getDirectoryPath()
Obtiene la ruta de acceso de este directorio, no incluido el nombre del propio recurso.
Returns:
getDirectoryUrl
public String getDirectoryUrl()
Obtiene la dirección URL del directorio representado por este cliente en el servicio Data Lake.
Returns:
getFileClient
public DataLakeFileClient getFileClient(String fileName)
Inicializa un nuevo objeto DataLakeFileClient mediante la concatenación de fileName al final de la dirección URL de DataLakeDirectoryClient. El nuevo DataLakeFileClient usa la misma canalización de directiva de solicitud que DataLakeDirectoryClient.
Parameters:
String
representa el nombre del archivo.
Ejemplos de código
DataLakeFileClient dataLakeFileClient = client.getFileClient(fileName);
Returns:
getSubdirectoryClient
public DataLakeDirectoryClient getSubdirectoryClient(String subdirectoryName)
Inicializa un nuevo objeto DataLakeDirectoryClient mediante la concatenación de directoryName al final de la dirección URL de DataLakeDirectoryClient. El nuevo DataLakeDirectoryClient usa la misma canalización de directiva de solicitud que DataLakeDirectoryClient.
Parameters:
String
representa el nombre del subdirectorio.
Ejemplos de código
DataLakeDirectoryClient dataLakeDirectoryClient = client.getSubdirectoryClient(directoryName);
Returns:
listPaths
public PagedIterable
Devuelve una lista cargada diferida de archivos o directorios en este directorio. El devuelto PagedIterable<T> se puede consumir mientras los nuevos elementos se recuperan automáticamente según sea necesario. Para más información, consulte Azure Docs.
Ejemplos de código
client.listPaths().forEach(path -> System.out.printf("Name: %s%n", path.getName()));
Returns:
listPaths
public PagedIterable
Devuelve una lista cargada diferida de archivos o directorios en este directorio. El devuelto PagedIterable<T> se puede consumir mientras los nuevos elementos se recuperan automáticamente según sea necesario. Para más información, consulte Azure Docs.
Ejemplos 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)
Mueve el directorio a otra ubicación dentro del sistema de archivos. Para más información, consulte Azure Docs.
Ejemplos de código
DataLakeDirectoryClient renamedClient = client.rename(fileSystemName, destinationPath);
System.out.println("Directory Client has been renamed");
Parameters:
null
para el sistema de archivos actual.
Returns:
renameWithResponse
public Response
Mueve el directorio a otra ubicación dentro del sistema de archivos. Para más información, consulte Azure Docs.
Ejemplos 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 el sistema de archivos actual.
Returns:
Se aplica a
Azure SDK for Java