exact_target_sdk 0.6.0 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG.rdoc
CHANGED
data/lib/exact_target_sdk.rb
CHANGED
@@ -10,6 +10,8 @@ module ExactTargetSDK
|
|
10
10
|
autoload :ContentArea, 'exact_target_sdk/content_area'
|
11
11
|
autoload :CreateResponse, 'exact_target_sdk/create_response'
|
12
12
|
autoload :CreateResult, 'exact_target_sdk/create_result'
|
13
|
+
autoload :DeleteResponse, 'exact_target_sdk/delete_response'
|
14
|
+
autoload :DeleteResult, 'exact_target_sdk/delete_result'
|
13
15
|
autoload :FilterPart, 'exact_target_sdk/filter_part'
|
14
16
|
autoload :Result, 'exact_target_sdk/result'
|
15
17
|
autoload :RetrieveResponse, 'exact_target_sdk/retrieve_response'
|
@@ -135,6 +135,38 @@ class Client
|
|
135
135
|
UpdateResponse.new(response)
|
136
136
|
end
|
137
137
|
|
138
|
+
# Invokes the Delete method.
|
139
|
+
#
|
140
|
+
# The provided arguments should each be sub-classes of APIObject, and each
|
141
|
+
# provided object will be updated in order.
|
142
|
+
#
|
143
|
+
# Possible exceptions are:
|
144
|
+
# HTTPError if an HTTP error (such as a timeout) occurs
|
145
|
+
# SOAPFault if a SOAP fault occurs
|
146
|
+
# Timeout if there is a timeout waiting for the response
|
147
|
+
# InvalidAPIObject if any of the provided objects don't pass validation
|
148
|
+
#
|
149
|
+
# Returns a DeleteResponse object.
|
150
|
+
def Delete(*args)
|
151
|
+
# TODO: implement and accept DeleteOptions
|
152
|
+
|
153
|
+
api_objects = args
|
154
|
+
|
155
|
+
response = execute_request 'Delete' do |xml|
|
156
|
+
xml.DeleteRequest do
|
157
|
+
xml.Options # TODO: support DeleteOptions
|
158
|
+
|
159
|
+
api_objects.each do |api_object|
|
160
|
+
xml.Objects "xsi:type" => api_object.type_name do
|
161
|
+
api_object.render!(xml)
|
162
|
+
end
|
163
|
+
end
|
164
|
+
end
|
165
|
+
end
|
166
|
+
|
167
|
+
DeleteResponse.new(response)
|
168
|
+
end
|
169
|
+
|
138
170
|
def logger
|
139
171
|
config[:logger]
|
140
172
|
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
module ExactTargetSDK
|
2
|
+
class DeleteResponse
|
3
|
+
|
4
|
+
attr_reader :OverallStatus, :RequestID, :Results
|
5
|
+
|
6
|
+
def initialize(response)
|
7
|
+
response = response.to_hash[:delete_response]
|
8
|
+
@OverallStatus = response[:overall_status]
|
9
|
+
@RequestID = response[:request_id]
|
10
|
+
@Results = []
|
11
|
+
|
12
|
+
results = if response[:results].is_a? Array
|
13
|
+
response[:results]
|
14
|
+
elsif response[:results].is_a? Hash
|
15
|
+
[ response[:results] ]
|
16
|
+
else
|
17
|
+
[]
|
18
|
+
end
|
19
|
+
results.each do |result|
|
20
|
+
@Results << DeleteResult.new(result)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
end
|
25
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: exact_target_sdk
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 3
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
|
-
-
|
8
|
+
- 7
|
9
9
|
- 0
|
10
|
-
version: 0.
|
10
|
+
version: 0.7.0
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- David Dawson
|
@@ -96,6 +96,8 @@ files:
|
|
96
96
|
- lib/exact_target_sdk/content_area.rb
|
97
97
|
- lib/exact_target_sdk/create_response.rb
|
98
98
|
- lib/exact_target_sdk/create_result.rb
|
99
|
+
- lib/exact_target_sdk/delete_response.rb
|
100
|
+
- lib/exact_target_sdk/delete_result.rb
|
99
101
|
- lib/exact_target_sdk/errors.rb
|
100
102
|
- lib/exact_target_sdk/filter_part.rb
|
101
103
|
- lib/exact_target_sdk/result.rb
|