fn add_permission(&self, input: AddPermissionInput) -> RusotoFuture<(), AddPermissionError> {
        let mut request = SignedRequest::new("POST", "sns", &self.region, "/");
        let mut params = Params::new();

        params.put("Action", "AddPermission");
        params.put("Version", "2010-03-31");
        AddPermissionInputSerializer::serialize(&mut params, "", &input);
        request.set_payload(Some(serde_urlencoded::to_string(&params).unwrap()));
        request.set_content_type("application/x-www-form-urlencoded".to_owned());

        self.client.sign_and_dispatch(request, |response| {
            if !response.status.is_success() {
                return Box::new(
                    response
                        .buffer()
                        .from_err()
                        .and_then(|response| Err(AddPermissionError::from_response(response))),
                );
            }

            Box::new(future::ok(::std::mem::drop(response)))
        })
    }
/// <p>Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.</p>
Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.
Adds a statement to a topic ' s access control policy granting access for the specified AWS accounts to the specified actions .
fn add_permission(&self, input: AddPermissionInput) -> RusotoFuture<(), AddPermissionError> {
        let mut request = SignedRequest::new("POST", "sns", &self.region, "/");
        let mut params = Params::new();
        params.put("Action", "AddPermission");
        params.put("Version", "2010-03-31");
        AddPermissionInputSerializer::serialize(&mut params, "", &input);
        request.set_payload(Some(serde_urlencoded::to_string(&params).unwrap()));
        request.set_content_type("application/x-www-form-urlencoded".to_owned());
        self.client.sign_and_dispatch(request, |response| {
            if !response.status.is_success() {
                return Box::new(
                    response
                        .buffer()
                        .from_err()
                        .and_then(|response| Err(AddPermissionError::from_response(response))),
                );
            }
            Box::new(future::ok(::std::mem::drop(response)))
        })
    }
fn add_permission ( & self , input : AddPermissionInput ) -> RusotoFuture < ( ) , AddPermissionError > { let mut request = SignedRequest :: new ( " " , " " , & self . region , " " ) ; let mut params = Params :: new ( ) ; params . put ( " " , " " ) ; params . put ( " " , " " ) ; AddPermissionInputSerializer :: serialize ( & mut params , " " , & input ) ; request . set_payload ( Some ( serde_urlencoded :: to_string ( & params ) . unwrap ( ) ) ) ; request . set_content_type ( " " . to_owned ( ) ) ; self . client . sign_and_dispatch ( request , | response | { if ! response . status . is_success ( ) { return Box :: new ( response . buffer ( ) . from_err ( ) . and_then ( | response | Err ( AddPermissionError :: from_response ( response ) ) ) , ) ; } Box :: new ( future :: ok ( :: std :: mem :: drop ( response ) ) ) } ) }
<p>Adds a statement to a topic's access control policy, granting access for the specified AWS accounts to the specified actions.</p>
<p > Adds a statement to a topic ' s access control policy granting access for the specified AWS accounts to the specified actions . < / p >
&self
input
AddPermissionInput