Source code for alibabacloud_oss_v2.operations.bucket_policy

# pylint: disable=line-too-long

from ..types import OperationInput, CaseInsensitiveDict
from .. import serde
from .. import serde_utils
from .. import models
from .._client import _SyncClientImpl


[docs] def put_bucket_policy(client: _SyncClientImpl, request: models.PutBucketPolicyRequest, **kwargs) -> models.PutBucketPolicyResult: """ put_bucket_policy synchronously Args: client (_SyncClientImpl): A agent that sends the request. request (PutBucketPolicyRequest): The request for the PutBucketPolicy operation. Returns: PutBucketPolicyResult: The result for the PutBucketPolicy operation. """ op_input = serde.serialize_input( request=request, op_input=OperationInput( op_name='PutBucketPolicy', method='PUT', headers=CaseInsensitiveDict({ 'Content-Type': 'application/xml', }), parameters={ 'policy': '', }, bucket=request.bucket, op_metadata={'sub-resource': ['policy']}, ) ) op_output = client.invoke_operation(op_input, **kwargs) return serde.deserialize_output( result=models.PutBucketPolicyResult(), op_output=op_output, custom_deserializer=[ serde.deserialize_output_xmlbody ], )
[docs] def get_bucket_policy(client: _SyncClientImpl, request: models.GetBucketPolicyRequest, **kwargs) -> models.GetBucketPolicyResult: """ get_bucket_policy synchronously Args: client (_SyncClientImpl): A agent that sends the request. request (GetBucketPolicyRequest): The request for the GetBucketPolicy operation. Returns: GetBucketPolicyResult: The result for the GetBucketPolicy operation. """ op_input = serde.serialize_input( request=request, op_input=OperationInput( op_name='GetBucketPolicy', method='GET', headers=CaseInsensitiveDict({ 'Content-Type': 'application/xml', }), parameters={ 'policy': '', }, bucket=request.bucket, op_metadata={'sub-resource': ['policy']}, ), custom_serializer=[ serde_utils.add_content_md5 ] ) op_output = client.invoke_operation(op_input, **kwargs) return serde.deserialize_output( result=models.GetBucketPolicyResult( body=op_output.http_response.content.decode() ), op_output=op_output, custom_deserializer=[ serde.deserialize_output_xmlbody ], )
[docs] def delete_bucket_policy(client: _SyncClientImpl, request: models.DeleteBucketPolicyRequest, **kwargs) -> models.DeleteBucketPolicyResult: """ delete_bucket_policy synchronously Args: client (_SyncClientImpl): A agent that sends the request. request (DeleteBucketPolicyRequest): The request for the DeleteBucketPolicy operation. Returns: DeleteBucketPolicyResult: The result for the DeleteBucketPolicy operation. """ op_input = serde.serialize_input( request=request, op_input=OperationInput( op_name='DeleteBucketPolicy', method='DELETE', headers=CaseInsensitiveDict({ 'Content-Type': 'application/xml', }), parameters={ 'policy': '', }, bucket=request.bucket, op_metadata={'sub-resource': ['policy']}, ), custom_serializer=[ serde_utils.add_content_md5 ] ) op_output = client.invoke_operation(op_input, **kwargs) return serde.deserialize_output( result=models.DeleteBucketPolicyResult(), op_output=op_output, custom_deserializer=[ serde.deserialize_output_xmlbody ], )
[docs] def get_bucket_policy_status(client: _SyncClientImpl, request: models.GetBucketPolicyStatusRequest, **kwargs) -> models.GetBucketPolicyStatusResult: """ get_bucket_policy_status synchronously Args: client (_SyncClientImpl): A agent that sends the request. request (GetBucketPolicyStatusRequest): The request for the GetBucketPolicyStatus operation. Returns: GetBucketPolicyStatusResult: The result for the GetBucketPolicyStatus operation. """ op_input = serde.serialize_input( request=request, op_input=OperationInput( op_name='GetBucketPolicyStatus', method='GET', headers=CaseInsensitiveDict({ 'Content-Type': 'application/xml', }), parameters={ 'policyStatus': '', }, bucket=request.bucket, op_metadata={'sub-resource': ['policyStatus']}, ), custom_serializer=[ serde_utils.add_content_md5 ] ) op_output = client.invoke_operation(op_input, **kwargs) return serde.deserialize_output( result=models.GetBucketPolicyStatusResult(), op_output=op_output, custom_deserializer=[ serde.deserialize_output_xmlbody ], )