Skip to content

Commit 5a358bc

Browse files
committed
Add delete_apex_class and delete_apex_trigger methods
1 parent febb1cd commit 5a358bc

File tree

1 file changed

+8
-0
lines changed

1 file changed

+8
-0
lines changed

salesforce/client.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,10 @@ def create_apex_class(self, name, body):
110110
url = self.rest_url + 'tooling/sobjects/ApexClass'
111111
return self._request('POST', url, json=data)
112112

113+
def delete_apex_class(self, apex_class_id):
114+
url = self.rest_url + 'tooling/sobjects/ApexClass/{}'.format(apex_class_id)
115+
return self._request('DELETE', url)
116+
113117
def create_remote_site(self, name, url):
114118
data = '<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><env:Header><urn:SessionHeader xmlns:urn="http://soap.sforce.com/2006/04/metadata"><urn:sessionId>{sessionId}</urn:sessionId></urn:SessionHeader></env:Header><env:Body><createMetadata xmlns="http://soap.sforce.com/2006/04/metadata"><metadata xsi:type="RemoteSiteSetting"><fullName>{name}</fullName><isActive>true</isActive><url>{url}</url></metadata></createMetadata></env:Body></env:Envelope>'
115119
data = data.replace('{name}', name).replace('{url}', url).replace('{sessionId}', self.access_token)
@@ -131,6 +135,10 @@ def create_apex_trigger(self, name, body, sobject):
131135
url = self.rest_url + 'tooling/sobjects/ApexTrigger'
132136
return self._request('POST', url, json=data)
133137

138+
def delete_apex_trigger(self, apex_trigger_id):
139+
url = self.rest_url + 'tooling/sobjects/ApexTrigger/{}'.format(apex_trigger_id)
140+
return self._request('DELETE', url)
141+
134142
def _get(self, url, **kwargs):
135143
return self._request('GET', url, **kwargs)
136144

0 commit comments

Comments
 (0)