scistag.filestag.azure.azure_blob_path.AzureBlobPath¶
- class AzureBlobPath(**data)[source]¶
Bases:
BaseModelDefines a path to an Azure Blob Storage resource.
This path contains at least the account name, may contain the access key and path to the blob within the container.
Create a new model by parsing and validating input data from keyword arguments.
Raises ValidationError if the input data cannot be parsed to form a valid model.
Methods
Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data.
Duplicate a model, optionally choose which fields to include, exclude and change.
Creates an SAS url pointing to a specific blob so it can be shared and downloaded by others.
Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
from_orm- rtype
Model
Create an AzureBlobPath object from a provided connection string.
get_connection_string- rtype
Generate a JSON representation of the model, include and exclude arguments as per dict().
parse_file- rtype
Model
parse_obj- rtype
Model
parse_raw- rtype
Model
schema- rtype
DictStrAny
schema_json- rtype
unicode
Splits an Azure url of the format
azure://CONNECTION_STRING_INCLUDING_KEY/container_nameinto its components.Try to update ForwardRefs on fields based on this Model, globalns and localns.
validate- rtype
Model
Attributes
__abstractmethods____annotations____class_vars____custom_root_type____dict____doc____exclude_fields____fields____fields_set____hash____include_fields____module____post_root_validators____pre_root_validators____private_attributes____schema_cache____signature____slots____validators___abc_implThe protocol being used such as https
The account name
The endpoint suffix such as core.windows.net
The account key, optional
The container name, optional
The blob name or search mask, optional
- __setattr__(name, value)¶
Implement setattr(self, name, value).
- classmethod construct(_fields_set=None, **values)¶
Creates a new model setting __dict__ and __fields_set__ from trusted or pre-validated data. Default values are respected, but no other validation is performed. Behaves as if Config.extra = ‘allow’ was set since it adds all passed values
- Return type
Model
- copy(*, include=None, exclude=None, update=None, deep=False)¶
Duplicate a model, optionally choose which fields to include, exclude and change.
- Parameters
include (
Union[AbstractSetIntStr, MappingIntStrAny,None]) – fields to include in new modelexclude (
Union[AbstractSetIntStr, MappingIntStrAny,None]) – fields to exclude from new model, as with values this takes precedence over includeupdate (
Optional[DictStrAny]) – values to change/add in the new model. Note: the data is not validated before creating the new model: you should trust this datadeep (
bool) – set to True to make a deep copy of the model
- Return type
Model
- Returns
new model instance
- create_sas_url(blob_name, start_time_min=-15, end_time_days=365.0)[source]¶
Creates an SAS url pointing to a specific blob so it can be shared and downloaded by others.
- Parameters
blob_name – The name of the blob
start_time_min – The start time from when on this URL is valid. By default 15 minutes in the past.
end_time_days (
float) –The time in days - as floating point value thus also half days are valid - until when the link is valid.
One year by default.
- Return type
- Returns
The https url pointing to the blob which can be shared as download link.
- dict(*, include=None, exclude=None, by_alias=False, skip_defaults=None, exclude_unset=False, exclude_defaults=False, exclude_none=False)¶
Generate a dictionary representation of the model, optionally specifying which fields to include or exclude.
- Return type
DictStrAny
- classmethod from_string(connection_string)[source]¶
Create an AzureBlobPath object from a provided connection string.
- Parameters
connection_string (
str) –The connection string.
This string can either be in official format, starting with DefaultEndpoints… or in the FileStag format azure://DefaultEndpoints… and can optionally contain the container name after a slash and either the blob name or search mask after an additional slash.
e.g. - DefaultEndpoints..;AccountName=..;AccountKey=…;windows.core.net - …;windows.core.net/container_name - …;windows.core.net/container_name/blob_name - …;windows.core.net/container_name/*.txt
- Return type
- Returns
The AzureBlobPath object
- json(*, include=None, exclude=None, by_alias=False, skip_defaults=None, exclude_unset=False, exclude_defaults=False, exclude_none=False, encoder=None, models_as_dict=True, **dumps_kwargs)¶
Generate a JSON representation of the model, include and exclude arguments as per dict().
encoder is an optional function to supply as default to json.dumps(), other arguments as per json.dumps().
- Return type
unicode
- classmethod split_azure_url(url, insert_key=True)[source]¶
Splits an Azure url of the format
azure://CONNECTION_STRING_INCLUDING_KEY/container_nameinto its components.- Parameters
- Return type
- Returns
ConnectionString, ContainerName, SearchPath. If the container name or the search path are not provided, empty strings will be returned.
- classmethod update_forward_refs(**localns)¶
Try to update ForwardRefs on fields based on this Model, globalns and localns.
- Return type