Merge pull request #91 from kunal-plivo/feature-cascade-delete

cascade delete subaccount
This commit is contained in:
Sachin Kulshrestha 2018-11-21 22:20:13 +05:30 committed by GitHub
commit cf242ccda5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 14 additions and 6 deletions

View file

@ -44,13 +44,13 @@ export class PlivoResource {
});
}
delete() {
delete(params) {
let client = this[clientKey];
let action = this[actionKey];
let id = this.id;
return new Promise((resolve, reject) => {
client('DELETE', action + id + '/')
client('DELETE', action + id + '/', params)
.then(() => {
resolve(true);
})

View file

@ -53,11 +53,18 @@ export class Subaccount extends PlivoResource {
/**
* delete subaccount
* @method
* @param {boolean} cascade - delete associated applications, phonenumbers & endpoints
* @promise {boolean} return true if subaccount deleted
* @fail {Error} return Error
*/
delete() {
return super.delete();
delete(cascade) {
let params = {};
if (typeof cascade === 'boolean') {
params.cascade = cascade.toString();
}
return super.delete(params);
}
}
@ -148,10 +155,11 @@ export class SubaccountInterface extends PlivoResourceInterface {
* delete subaccount
* @method
* @param {id} id - id of subaccount
* @param {boolean} cascade - delete associated applications, phonenumbers & endpoints
* @promise {boolean} return true if subaccount deleted
* @fail {Error} return Error
*/
delete(id) {
delete(id, cascade) {
let errors = validate([
{field: 'id', value: id, validators: ['isRequired']}
]);
@ -161,7 +169,7 @@ export class SubaccountInterface extends PlivoResourceInterface {
}
return new Subaccount(this[clientKey], {
id: id
}).delete();
}).delete(cascade);
}
}