CloudOp

Resumen

Contains IO methods that are cloud specific.

Debate

This class cannot be instantiated directly. An instance of this class is returned by the AIO object's cloud property.

Descripción general del método

MétodoExplicación
clearcache (path)

Clears in-memory directory listings, file properties, and BLOB region cache. Call this method when an external process updates folders or files in the cloud store that were previously accessed.

getbucketname ()

Gets the name of a connected bucket or container.

getendpoint (path)

Gets the cloud endpoint specified in the connection.

getfile (src, dst, {options})

Downloads a file from the cloud.

getmetadata (path, {domain})

Gets the metadata of a file or folder.

getobjectstorepath ()

Gets the root path of the connection.

getproperties (path)

Gets the header properties.

getprovidername ()

Gets the cloud provider name.

getprovideroptions ()

Gets the provider options specified in the connection.

getregion ()

Gets the cloud region specified in the connection.

getsignedurl (path, expiry, {upload})

Generates a temporary HTTP presigned URL.

putfile (src, dst, {options})

Uploads a file to cloud.

setmetadata (path, {domain}, {metadata}, {options})

Sets the metadata of a file or folder.

validate ({certificate}, {stat}, {list}, {read}, {modify}, {path})

Tests the cloud connection for various file operations. Available permissions may be granular depending on the server ACL configuration.

Métodos

clearcache (path)
ParámetroExplicaciónTipo de datos
path

The relative path from the current working directory or an absolute path (absolute vsi path for cloud).

String

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.clearcache(r"aio")
getbucketname ()
Valor de retorno
Tipo de datosExplicación
String

The name of the bucket or container.

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getbucketname()
getendpoint (path)
ParámetroExplicaciónTipo de datos
path

The relative path from the current working directory or an absolute path (absolute vsi path for cloud).

String
Valor de retorno
Tipo de datosExplicación
String

The cloud endpoint if available.

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getendpoint()
getfile (src, dst, {options})
ParámetroExplicaciónTipo de datos
src

The relative path from the current working directory or an absolute vsi cloud path.

String
dst

The local, or target, path of the file.

String
options

Specifies the options that will be used.

  • RECURSIVE—Subdirectories and their contents will be recursively copied. This option is only applicable for folder operations.
  • SYNC_STRATEGY—The criteria that will be used for overwriting if the target file exists.
  • NUM_THREADS—The number of threads that will be used for parallel file copying.
  • CHUNK_SIZE—The maximum chunk size (in bytes) that will be used to split large objects when uploading or downloading.

Syntax—RECURSIVE=[YES|NO], SYNC_STRATEGY=[TIMESTAMP|ETAG|OVERWRITE], NUM_THREADS=(integer) CHUNK_SIZE=(integer) [x-amz-*|x-goog-*|x-ms-*=(value)]

Example—{'RECURSIVE':'YES', 'SYNC_STRATEGY':'OVERWRITE', 'NUM_THREADS':'10', 'CHUNK_SIZE':'8'}

(El valor predeterminado es None)

Dictionary
Valor de retorno
Tipo de datosExplicación
Boolean

True if the file download is successful; otherwise, False.

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getfile(r'utf8_test.json', r"c:\data\datafile.json")
getmetadata (path, {domain})
ParámetroExplicaciónTipo de datos
path

The relative path from the current working directory or an absolute path (absolute vsi path for cloud).

String
domain

The metadata domain, for example, (https://gdal.org/api/cpl.html#_CPPv418VSIGetFileMetadataPKcPKc12CSLConstList).

(El valor predeterminado es None)

String
Valor de retorno
Tipo de datosExplicación
Dictionary

A dictionary of the metadata information.

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getmetadata(r'aio')
getobjectstorepath ()
Valor de retorno
Tipo de datosExplicación
String

The vsi path to the object store.

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getobjectstorepath()
getproperties (path)
ParámetroExplicaciónTipo de datos
path

The relative path from the current working directory or an absolute path (absolute vsi path for cloud).

String
Valor de retorno
Tipo de datosExplicación
Dictionary

A dictionary of header properties.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getproperties(r'aio')
getprovidername ()
Valor de retorno
Tipo de datosExplicación
String

The cloud provider name.

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getprovidername()
getprovideroptions ()
Valor de retorno
Tipo de datosExplicación
List

The provider options, if available.

This method is only applicable for cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getprovideroptions()
getregion ()
Valor de retorno
Tipo de datosExplicación
String

The cloud region, if available.

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getregion()
getsignedurl (path, expiry, {upload})
ParámetroExplicaciónTipo de datos
path

The relative path from the current working directory or an absolute path (absolute vsi path for cloud).

String
expiry

The expiry time in seconds.

Integer
upload

Specifies whether the URL will be generated for upload. If True, the URL will be generated.

(El valor predeterminado es False)

Boolean
Valor de retorno
Tipo de datosExplicación
String

The HTTP signed URL.

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.getsignedurl(r'data.json', 5)
putfile (src, dst, {options})
ParámetroExplicaciónTipo de datos
src

The local (source) path of the file.

String
dst

The relative path from the current working directory or an absolute vsi cloud path.

String
options

Specifies the options that will be used.

  • RECURSIVE—Subdirectories and their contents will be recursively copied. This option is only applicable to folder operations.
  • SYNC_STRATEGY—The criteria that will be used for overwriting if the target file exists.
  • NUM_THREADS—The number of threads that will be used for parallel file copying.
  • CHUNK_SIZE—The maximum chunk size (in bytes) that will be used to split large objects when uploading or downloading.

Syntax—RECURSIVE=[YES|NO], SYNC_STRATEGY=[TIMESTAMP|ETAG|OVERWRITE], NUM_THREADS=(integer) CHUNK_SIZE=(integer) [x-amz-*|x-goog-*|x-ms-*=(value)]

Example—{'RECURSIVE':'YES', 'SYNC_STRATEGY':'OVERWRITE', 'NUM_THREADS':'10', 'CHUNK_SIZE':'8'}

(El valor predeterminado es None)

Dictionary
Valor de retorno
Tipo de datosExplicación
Boolean

True if the file upload is successful; otherwise, False.

This method is only applicable for cloud.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.putfile(r"C:\data\data_file.json", r'data_folder\data_file_new.json')
setmetadata (path, {domain}, {metadata}, {options})
ParámetroExplicaciónTipo de datos
path

The relative path from the current working directory or an absolute path (absolute vsi path for cloud).

String
domain

The metadata domain, for example, (https://gdal.org/api/cpl.html#_CPPv418VSISetFileMetadataPKc12CSLConstListPKc12CSLConstList).

(El valor predeterminado es None)

String
metadata

The metadata that will be set.

(El valor predeterminado es None)

Dictionary
options

The options that will be used to set the metadata.

(El valor predeterminado es None)

Dictionary
Valor de retorno
Tipo de datosExplicación
Boolean

True if the metadata is set successfully; otherwise, False.

This method is only applicable to cloud stores.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.setmetadata(
    r"cog.tif",
    "HEADERS",
    {
        "x-amz-id-2": "HxM4BcALW+HnJ13owxzMpeQXXI59VKK3I9zujbqyLBCinCt6prnzKXR4Ixhb/AloFVJLGtuqKG7nSLCLaxObTw==",
        "x-amz-request-id": "KYTDPC2WH2ZQK2D2",
        "Date": "Tue, 13 Jun 2023 13:39:33 GMT",
        "Last-Modified": "Wed, 16 Sep 2020 13:49:34 GMT",
        "ETag": '"c220c099c46c60703de0c55763d04371"',
        "x-amz-meta-s3b-last-modified": "20171213T210220Z",
        "Content-Disposition": "attachment",
        "Accept-Ranges": "bytes",
        "Content-Range": "bytes 0-16383/4339079",
        "Content-Type": "text/plain",
        "Server": "AmazonS3",
        "Content-Length": "4545",
    },
)
validate ({certificate}, {stat}, {list}, {read}, {modify}, {path})
ParámetroExplicaciónTipo de datos
certificate

Specifies whether the SSL certificate and Online Certificate Status Protocol (OCSP) certificate check will be verified.

Boolean
stat

Specifies whether stat on the root container or connected folder will be tested.

Boolean
list

Specifies whether list directory access will be tested.

Boolean
read

Specifies whether the read file permission will be tested.

Boolean
modify

Specifies whether the write and delete permissions will be tested. If delete access is denied, a test file will remain on the cloud.

Boolean
path

The path to the file that will be used for the read test. If no value is provided, the first entry from the current directory listing will be used.

String
Valor de retorno
Tipo de datosExplicación
List

Results of the test and a detailed error message if available.

This method is only applicable for cloud.

cloud_io = AIO(r"C:\data\datacloud.acs")
cloud_io.cloud.validate(True, True, True, True)