Subversion Repositories SmartDukaan

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
12459 kshitij.so 1
/******************************************************************************* 
2
 *  Copyright 2009 Amazon Services.
3
 *  Licensed under the Apache License, Version 2.0 (the "License"); 
4
 *  
5
 *  You may not use this file except in compliance with the License. 
6
 *  You may obtain a copy of the License at: http://aws.amazon.com/apache2.0
7
 *  This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR 
8
 *  CONDITIONS OF ANY KIND, either express or implied. See the License for the 
9
 *  specific language governing permissions and limitations under the License.
10
 * ***************************************************************************** 
11
 *
12
 *  Marketplace Web Service Java Library
13
 *  API Version: 2009-01-01
14
 *  Generated: Wed Feb 18 13:28:48 PST 2009 
15
 * 
16
 */
17
 
18
 
19
 
20
package com.amazonaws.mws.samples;
21
 
22
import java.util.List;
23
import java.util.ArrayList;
24
import com.amazonaws.mws.*;
25
import com.amazonaws.mws.model.*;
26
import java.util.concurrent.Future;
27
 
28
/**
29
 *
30
 * Cancel Feed Submissions  Samples
31
 *
32
 *
33
 */
34
public class CancelFeedSubmissionsAsyncSample {
35
 
36
    /**
37
     * Just add a few required parameters, and try the service
38
     * Cancel Feed Submissions functionality
39
     *
40
     * @param args unused
41
     */
42
    public static void main(String... args) {
43
 
44
        /************************************************************************
45
         * Access Key ID and Secret Access Key ID, obtained from:
46
         * http://aws.amazon.com
47
         ***********************************************************************/
48
        final String accessKeyId = "<Your Access Key ID>";
49
        final String secretAccessKey = "<Your Secret Access Key>";
50
        final String appName = "<Your Application or Company Name>";
51
        final String appVersion = "<Your Application Version or Build Number or Release Date>";
52
        MarketplaceWebServiceConfig config = new MarketplaceWebServiceConfig();
53
 
54
        /************************************************************************
55
         * Uncomment to set the appropriate MWS endpoint.
56
         ************************************************************************/
57
        // US
58
        // config.setServiceURL("https://mws.amazonservices.com");
59
        // UK
60
        // config.setServiceURL("https://mws.amazonservices.co.uk");
61
        // Germany
62
        // config.setServiceURL("https://mws.amazonservices.de");
63
        // France
64
        // config.setServiceURL("https://mws.amazonservices.fr");
65
        // Italy
66
        // config.setServiceURL("https://mws.amazonservices.it");
67
        // Japan
68
        // config.setServiceURL("https://mws.amazonservices.jp");
69
        // China
70
        // config.setServiceURL("https://mws.amazonservices.com.cn");
71
        // Canada
72
        // config.setServiceURL("https://mws.amazonservices.ca");
73
        // India
74
        // config.setServiceURL("https://mws.amazonservices.in");
75
 
76
        /************************************************************************
77
         * The argument (35) set below is the number of threads client should
78
         * spawn for processing.
79
         ***********************************************************************/
80
 
81
        config.setMaxAsyncThreads(35);
82
 
83
        /************************************************************************
84
         * You can also try advanced configuration options. Available options are:
85
         *
86
         *  - Signature Version
87
         *  - Proxy Host and Proxy Port
88
         *  - User Agent String to be sent to Marketplace Web Service
89
         *
90
         ***********************************************************************/
91
 
92
        /************************************************************************
93
         * Instantiate Http Client Implementation of Marketplace Web Service        
94
         ***********************************************************************/
95
 
96
        MarketplaceWebService service = new MarketplaceWebServiceClient(
97
                accessKeyId, secretAccessKey, appName, appVersion, config);
98
 
99
 
100
        /************************************************************************
101
         * Setup requests parameters and invoke parallel processing. Of course
102
         * in real world application, there will be much more than a couple of
103
         * requests to process.
104
         ***********************************************************************/
105
 
106
        /************************************************************************
107
         * Marketplace and Merchant IDs are required parameters for all 
108
         * Marketplace Web Service calls.
109
         ***********************************************************************/
110
        final String merchantId = "<Your Merchant ID>";
111
 
112
        CancelFeedSubmissionsRequest requestOne = new CancelFeedSubmissionsRequest();
113
        requestOne.setMerchant( merchantId );
114
        // @TODO: set request parameters here
115
 
116
        CancelFeedSubmissionsRequest requestTwo = new CancelFeedSubmissionsRequest();
117
        requestTwo.setMerchant( merchantId );
118
        // @TODO: set second request parameters here
119
 
120
        List<CancelFeedSubmissionsRequest> requests = new ArrayList<CancelFeedSubmissionsRequest>();
121
        requests.add(requestOne);
122
        requests.add(requestTwo);
123
 
124
        // invokeCancelFeedSubmissions(service, requests);
125
 
126
    }
127
 
128
 
129
 
130
    /**
131
     * Cancel Feed Submissions request sample
132
     * cancels feed submissions - by default all of the submissions of the
133
     * last 30 days that have not started processing
134
     *   
135
     * @param service instance of MarketplaceWebService service
136
     * @param requests list of requests to process
137
     */
138
    public static void invokeCancelFeedSubmissions(MarketplaceWebService service, List<CancelFeedSubmissionsRequest> requests) {
139
        List<Future<CancelFeedSubmissionsResponse>> responses = new ArrayList<Future<CancelFeedSubmissionsResponse>>();
140
        for (CancelFeedSubmissionsRequest request : requests) {
141
            responses.add(service.cancelFeedSubmissionsAsync(request));
142
        }
143
        for (Future<CancelFeedSubmissionsResponse> future : responses) {
144
            while (!future.isDone()) {
145
                Thread.yield();
146
            }
147
            try {
148
                CancelFeedSubmissionsResponse response = future.get();
149
                // Original request corresponding to this response, if needed:
150
                CancelFeedSubmissionsRequest originalRequest = requests.get(responses.indexOf(future));
151
                System.out.println("Response request id: " + response.getResponseMetadata().getRequestId());
152
                System.out.println(response.getResponseHeaderMetadata());
153
                System.out.println();
154
            } catch (Exception e) {
155
                if (e.getCause() instanceof MarketplaceWebServiceException) {
156
                    MarketplaceWebServiceException exception = MarketplaceWebServiceException.class.cast(e.getCause());
157
                    System.out.println("Caught Exception: " + exception.getMessage());
158
                    System.out.println("Response Status Code: " + exception.getStatusCode());
159
                    System.out.println("Error Code: " + exception.getErrorCode());
160
                    System.out.println("Error Type: " + exception.getErrorType());
161
                    System.out.println("Request ID: " + exception.getRequestId());
162
                    System.out.print("XML: " + exception.getXML());
163
                    System.out.println("ResponseHeaderMetadata: " + exception.getResponseHeaderMetadata());
164
                } else {
165
                    e.printStackTrace();
166
                }
167
            }
168
        }
169
    }
170
 
171
}