File Coverage

blib/lib/Microsoft/AdCenter/V6/NotificationManagementService.pm
Criterion Covered Total %
statement 9 9 100.0
branch n/a
condition n/a
subroutine 3 3 100.0
pod n/a
total 12 12 100.0


line stmt bran cond sub pod time code
1             package Microsoft::AdCenter::V6::NotificationManagementService;
2             # Copyright (C) 2012 Xerxes Tsang
3             # This program is free software; you can redistribute it and/or modify it
4             # under the terms of Perl Artistic License.
5              
6 18     18   1337889 use strict;
  18         48  
  18         678  
7 18     18   112 use warnings;
  18         41  
  18         690  
8              
9             =head1 NAME
10              
11             Microsoft::AdCenter::V6::NotificationManagementService - Service client for Microsoft AdCenter Notification Management Service.
12              
13             =head1 SYNOPSIS
14              
15             use Microsoft::AdCenter::V6::NotificationManagementService;
16              
17             my $service_client = Microsoft::AdCenter::V6::NotificationManagementService->new
18             ->Password("password");
19             ->UserAccessKey("user access key")
20             ->UserName("user name")
21              
22             my $response = $service_client->GetArchivedNotifications(
23             APIFlags => ...
24             StartDate => ...
25             EndDate => ...
26             );
27              
28             See L for detailed documentation for this service.
29              
30             =head1 METHODS
31              
32             =head2 EndPoint
33              
34             Changes the end point for this service client.
35              
36             Default value: https://adcenterapi.microsoft.com/Api/Advertiser/v6/NotificationManagement/NotificationManagement.asmx
37              
38             =head2 Password
39              
40             Gets/sets Password (string) in the request header
41              
42             =head2 UserAccessKey
43              
44             Gets/sets UserAccessKey (string) in the request header
45              
46             =head2 UserName
47              
48             Gets/sets UserName (string) in the request header
49              
50             =cut
51              
52 18     18   101 use base qw/Microsoft::AdCenter::Service/;
  18         38  
  18         12649  
53              
54             sub _service_name {
55             return 'NotificationManagement';
56             }
57              
58             sub _service_version {
59             return 'V6';
60             }
61              
62             sub _class_name {
63             return 'NotificationManagementService';
64             }
65              
66             sub _namespace_uri {
67             return 'http://adcenter.microsoft.com/syncapis';
68             }
69              
70             sub _default_location {
71             return 'https://adcenterapi.microsoft.com/Api/Advertiser/v6/NotificationManagement/NotificationManagement.asmx';
72             }
73              
74             sub _wsdl {
75             return 'https://adcenterapi.microsoft.com/Api/Advertiser/v6/NotificationManagement/NotificationManagement.asmx?wsdl';
76             }
77              
78             our $_request_headers = [
79             { name => 'ApiUserAuthHeader', type => 'ApiUserAuthHeader', namespace => 'http://adcenter.microsoft.com/syncapis' }
80             ];
81              
82             our $_request_headers_expanded = {
83             Password => 'string',
84             UserAccessKey => 'string',
85             UserName => 'string'
86             };
87              
88             sub _request_headers {
89             return $_request_headers;
90             }
91              
92             sub _request_headers_expanded {
93             return $_request_headers_expanded;
94             }
95              
96             our $_response_headers = [
97             ];
98              
99             our $_response_headers_expanded = {
100             };
101              
102             sub _response_headers {
103             return $_response_headers;
104             }
105              
106             sub _response_headers_expanded {
107             return $_response_headers_expanded;
108             }
109              
110             =head2 GetArchivedNotifications
111              
112             =over
113              
114             =item Parameters:
115              
116             APIFlags (int)
117             StartDate (dateTime)
118             EndDate (dateTime)
119              
120             =item Returns:
121              
122             GetArchivedNotificationsResponse
123              
124             =back
125              
126             =cut
127              
128             sub GetArchivedNotifications {
129             my ($self, %args) = @_;
130             return $self->_invoke(
131             soap_action => 'http://adcenter.microsoft.com/syncapis/GetArchivedNotifications',
132             request => {
133             name => 'GetArchivedNotifications',
134             parameters => [
135             { name => 'APIFlags', type => 'int', namespace => 'http://adcenter.microsoft.com/syncapis' },
136             { name => 'StartDate', type => 'dateTime', namespace => 'http://adcenter.microsoft.com/syncapis' },
137             { name => 'EndDate', type => 'dateTime', namespace => 'http://adcenter.microsoft.com/syncapis' }
138             ]
139             },
140             response => {
141             name => 'GetArchivedNotificationsResponse'
142             },
143             parameters => \%args
144             );
145             }
146              
147             =head2 GetNotifications
148              
149             =over
150              
151             =item Parameters:
152              
153             APIFlags (int)
154              
155             =item Returns:
156              
157             GetNotificationsResponse
158              
159             =back
160              
161             =cut
162              
163             sub GetNotifications {
164             my ($self, %args) = @_;
165             return $self->_invoke(
166             soap_action => 'http://adcenter.microsoft.com/syncapis/GetNotifications',
167             request => {
168             name => 'GetNotifications',
169             parameters => [
170             { name => 'APIFlags', type => 'int', namespace => 'http://adcenter.microsoft.com/syncapis' }
171             ]
172             },
173             response => {
174             name => 'GetNotificationsResponse'
175             },
176             parameters => \%args
177             );
178             }
179              
180             =head2 GetNotificationsByType
181              
182             =over
183              
184             =item Parameters:
185              
186             APIFlags (int)
187             NotificationType (NotificationType)
188              
189             =item Returns:
190              
191             GetNotificationsByTypeResponse
192              
193             =back
194              
195             =cut
196              
197             sub GetNotificationsByType {
198             my ($self, %args) = @_;
199             return $self->_invoke(
200             soap_action => 'http://adcenter.microsoft.com/syncapis/GetNotificationsByType',
201             request => {
202             name => 'GetNotificationsByType',
203             parameters => [
204             { name => 'APIFlags', type => 'int', namespace => 'http://adcenter.microsoft.com/syncapis' },
205             { name => 'NotificationType', type => 'NotificationType', namespace => 'http://adcenter.microsoft.com/syncapis' }
206             ]
207             },
208             response => {
209             name => 'GetNotificationsByTypeResponse'
210             },
211             parameters => \%args
212             );
213             }
214              
215             our %_simple_types = (
216             AccountFinancialStatusType => 'http://adcenter.microsoft.com/syncapis',
217             NotificationType => 'http://adcenter.microsoft.com/syncapis',
218             );
219              
220             sub _simple_types {
221             return %_simple_types;
222             }
223              
224             our @_complex_types = (qw/
225             AccountClosedNotification
226             AccountSignupPaymentReceiptNotification
227             ApiUserAuthHeader
228             ApproachingCreditCardExpirationNotification
229             CreditCardExpiredNotification
230             CreditCardNotification
231             EditorialRejectionNotification
232             GetArchivedNotificationsResponse
233             GetNotificationsByTypeResponse
234             GetNotificationsResponse
235             NewCustomerSignupNotification
236             NewUserAddedNotification
237             Notification
238             UnableToChargeCreditCardNotification
239             UserNameReminderNotification
240             UserNotification
241             UserPasswordResetNotification
242             /);
243              
244             sub _complex_types {
245             return @_complex_types;
246             }
247              
248             our %_array_types = (
249             ArrayOfNotification => {
250             namespace_uri => 'http://adcenter.microsoft.com/syncapis',
251             element_name => 'Notification',
252             element_type => 'Notification'
253             },
254             );
255              
256             sub _array_types {
257             return %_array_types;
258             }
259              
260             __PACKAGE__->mk_accessors(qw/
261             Password
262             UserAccessKey
263             UserName
264             /);
265              
266             1;