class_docstr: Stores artifacts on Azure Data Lake Storage Gen2.
  
  This repository is used with URIs of the form
  ``abfs[s]://file_system@account_name.dfs.core.windows.net/<path>/<path>``.
  
  :param credential: Azure credential (see options in https://learn.microsoft.com/en-us/python/api/azure-core/azure.core.credentials?view=azure-python)
                     to use to authenticate to storage
class_docstr_tok: ["Stores","artifacts","on","Azure","Data","Lake","Storage","Gen2",".","This","repository","is","used","with","URIs","of","the","form","``","abfs","[","s","]",":","\/\/file_system","@","account_name.dfs.core.windows.net\/","<","path",">","\/","<","path",">","``",".",":","param","credential",":","Azure","credential","(","see","options","in","https",":","\/\/learn.microsoft.com\/en-us\/python\/api\/azure-core\/azure.core.credentials","?","view=azure-python",")","to","use","to","authenticate","to","storage"]
code: def __init__(self, artifact_uri, credential):
      super().__init__(artifact_uri)
      _DEFAULT_TIMEOUT = 600  # 10 minutes
      self.credential = credential
      self.write_timeout = (
          MLFLOW_ARTIFACT_UPLOAD_DOWNLOAD_TIMEOUT.get()
          or _DEFAULT_TIMEOUT
      )
  
      (filesystem, account_name, path) = _parse_abfss_uri(artifact_uri)
  
      # TODO: investigate setting the account URL based on whether the abfss URI is associated
      # with an Azure account in standard Azure, govcloud, mooncake, etc
      account_url = f"https://{account_name}.dfs.core.windows.net"
      data_lake_client = _get_data_lake_client(
          account_url=account_url, credential=credential
      )
      self.fs_client = data_lake_client.get_file_system_client(
          filesystem
      )
      self.base_data_lake_directory = path
      self.account_name = account_name
      self.container = filesystem
  
imports: import os
  import posixpath
  import re
  import urllib.parse
  from typing import List
  import requests
  from mlflow.azure.client import patch_adls_file_upload, patch_adls_flush, put_adls_file_creation
  from mlflow.entities import FileInfo
  from mlflow.environment_variables import MLFLOW_ARTIFACT_UPLOAD_DOWNLOAD_TIMEOUT, MLFLOW_ENABLE_MULTIPART_UPLOAD, MLFLOW_MULTIPART_UPLOAD_CHUNK_SIZE
  from mlflow.exceptions import MlflowException
  from mlflow.protos.databricks_artifacts_pb2 import ArtifactCredentialInfo
  from mlflow.store.artifact.cloud_artifact_repo import CloudArtifactRepository, _complete_futures, _compute_num_chunks
label_desc: Use image node_id 1 to create a new AzureDataLakeArtifactRepository object from inherited base classes: CloudArtifactRepository with example: obj = AzureDataLakeArtifactRepository(artifact_uri, credential)