BlobLeaseClient クラス

新しい BlobLeaseClient を作成します。

このクライアントは、BlobClient または ContainerClient に対するリース操作を提供します。

継承
builtins.object
BlobLeaseClient

コンストラクター

BlobLeaseClient(client: BlobClient | ContainerClient, lease_id: str | None = None)

パラメーター

client
BlobClient または ContainerClient
必須

リースする BLOB またはコンテナーのクライアント。

lease_id
str
既定値: None

既存のリースのリース ID を表す文字列。 新しいリースを取得したり、リースを中断したりするために、この値を指定する必要はありません。

変数

id
str

現在維持されているリースの ID。 リースがまだ取得されていない場合、これは None になります。

etag
str

現在維持されているリースの ETag。 リースがまだ取得または変更されていない場合、これは None になります。

last_modified
datetime

現在維持されているリースの最後に変更されたタイムスタンプ。 リースがまだ取得または変更されていない場合、これは None になります。

メソッド

acquire

新しいリースを要求します。

コンテナーにアクティブなリースがない場合、BLOB Service はそのコンテナーのリースを作成し、新しいリース ID を返します。

break_lease

コンテナーまたは BLOB にアクティブなリースがある場合は、リースを中断します。

いったん中断したリースは更新できません。 承認済みの要求によってリースを中断できます。要求で一致するリース ID を指定する必要はありません。 リースが切断されると、リース中断期間が経過することが許可され、その間、コンテナーまたは BLOB に対して中断と解放を除くリース操作を実行することはできません。 リースが正常に中断されると、応答で新しいリースを取得できるようになるまでの時間 (秒単位) が示されます。

change

アクティブなリースのリース ID を変更します。

release

リースを解放します。

指定されたクライアント リース ID がコンテナーまたは BLOB に関連付けられていると一致する場合、リースが解放される可能性があります。 リースを解放すると、リリースが完了するとすぐに、別のクライアントがコンテナーまたは BLOB のリースをすぐに取得できます。

renew

リースを更新します。

リース クライアントで指定されたリース ID が、コンテナーまたは BLOB に関連付けられているリース ID と一致する場合は、リースを更新できます。 リースの有効期限が切れてからコンテナーまたは BLOB が再びリースされていない限り、リースが期限切れになった場合でも、リースが更新される可能性があることに注意してください。 リースを更新すると、リース期間の時間がリセットされます。

acquire

新しいリースを要求します。

コンテナーにアクティブなリースがない場合、BLOB Service はそのコンテナーのリースを作成し、新しいリース ID を返します。

acquire(lease_duration: int = -1, **kwargs: Any) -> None

パラメーター

lease_duration
int
必須

リース期間 (秒単位) を指定します。無期限のリースには -1 を指定します。 無限リースでない場合は、15 ~ 60 秒を指定できます。 更新または変更を使用してリース期間を変更することはできません。 既定値は -1 (無限リース) です。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかを確認し、 match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

の戻り値の型 :

break_lease

コンテナーまたは BLOB にアクティブなリースがある場合は、リースを中断します。

いったん中断したリースは更新できません。 承認済みの要求によってリースを中断できます。要求で一致するリース ID を指定する必要はありません。 リースが切断されると、リース中断期間が経過することが許可され、その間、コンテナーまたは BLOB に対して中断と解放を除くリース操作を実行することはできません。 リースが正常に中断されると、応答で新しいリースを取得できるようになるまでの時間 (秒単位) が示されます。

break_lease(lease_break_period: int | None = None, **kwargs: Any) -> int

パラメーター

lease_break_period
int
必須

これは、0 ~ 60 秒の間にリースが中断されるまでにリースを続行する必要がある、提案された秒数です。 この中断期間は、リースの残り時間よりも短い場合にのみ使用されます。 長い場合は、リースの残り時間が使用されます。 中断期間が終了するまで新しいリースは使用できなくなりますが、中断期間よりも長い期間リースが保持される場合があります。 このヘッダーが中断操作で表示されない場合は、残存リース期間が経過した後に固定期間のリースが中断され、無限リースが直ちに中断されます。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

リース期間のおおよその残り時間 (秒単位)。

の戻り値の型 :

int

change

アクティブなリースのリース ID を変更します。

change(proposed_lease_id: str, **kwargs: Any) -> None

パラメーター

proposed_lease_id
str
必須

GUID 文字列形式の推奨リース ID。 提案されたリース ID が正しい形式でない場合、BLOB サービスは 400 (無効な要求) を返します。

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかを確認し、 match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

なし

release

リースを解放します。

指定されたクライアント リース ID がコンテナーまたは BLOB に関連付けられていると一致する場合、リースが解放される可能性があります。 リースを解放すると、リリースが完了するとすぐに、別のクライアントがコンテナーまたは BLOB のリースをすぐに取得できます。

release(**kwargs: Any) -> None

パラメーター

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかを確認し、 match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

なし

renew

リースを更新します。

リース クライアントで指定されたリース ID が、コンテナーまたは BLOB に関連付けられているリース ID と一致する場合は、リースを更新できます。 リースの有効期限が切れてからコンテナーまたは BLOB が再びリースされていない限り、リースが期限切れになった場合でも、リースが更新される可能性があることに注意してください。 リースを更新すると、リース期間の時間がリセットされます。

renew(**kwargs: Any) -> None

パラメーター

if_modified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した時刻以降にリソースが変更されている場合に限り操作が実行されます。

if_unmodified_since
datetime

DateTime 値。 Azure では、渡された日付値が UTC であると想定しています。 タイムゾーンが含まれている場合、UTC 以外の日時は UTC に変換されます。 タイムゾーン情報なしで日付が渡された場合は、UTC と見なされます。 このヘッダーを指定すると、指定した日付/時刻以降にリソースが変更されていない場合に限り操作が実行されます。

etag
str

ETag 値またはワイルドカード文字 (*)。 リソースが変更されたかどうかを確認し、 match_condition パラメーターで指定された条件に従って動作するために使用されます。

match_condition
MatchConditions

etag で使用する一致条件。

if_tags_match_condition
str

BLOB タグに対して SQL where 句を指定して、一致する値を持つ BLOB でのみ動作するようにします。 例: "\"tagname\"='my tag'"

バージョン 12.4.0 の新機能。

timeout
int

操作のサーバー側タイムアウトを秒単位で設定します。 詳細については、 https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations を参照してください。 この値は、クライアントで追跡または検証されません。 クライアント側のネットワーク タイムアウトを構成するには、 こちらを参照してください

戻り値

なし