Subversion Repositories SmartDukaan

Rev

Rev 9028 | Rev 9259 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
9028 manish.sha 1
package in.shop2020.googleadwords.util;
2
 
3
import java.util.ArrayList;
4
import java.util.List;
5
import java.util.Map;
6
 
7
import org.apache.thrift.TException;
8
import org.apache.thrift.transport.TTransportException;
9
 
10
import adwords.axis.v201309.basicoperations.GetAdGroups;
11
 
12
import in.shop2020.googleadwords.AdwordsAdGroup;
13
import in.shop2020.googleadwords.AdwordsAdGroupStatus;
14
import in.shop2020.googleadwords.AdwordsCampaign;
15
import in.shop2020.googleadwords.GoogleAdwordsService.Client;
16
import in.shop2020.googleadwords.GoogleAdwordsServiceException;
17
import in.shop2020.thrift.clients.AdwordsClient;
18
 
19
public class AdwordsSaholicAdGroupSync{
20
	public static void main(String[] args) {
21
 
22
		AdwordsClient adwordsServiceClient= null;
23
		try {
24
			adwordsServiceClient = new AdwordsClient();
25
		} catch (TTransportException e1) {
26
			e1.printStackTrace();
27
		}
28
		Client client = adwordsServiceClient.getClient();
29
		List<AdwordsCampaign> campaignList =null;
30
		try {
31
			campaignList = client.getAllAdwordsCampaigns();
32
		} catch (GoogleAdwordsServiceException e1) {
33
			e1.printStackTrace();
34
		} catch (TException e1) {
35
			e1.printStackTrace();
36
		}
37
 
38
		List<Long> errorCampaigns = new ArrayList<Long>();
39
		for(AdwordsCampaign campaign: campaignList){
40
			List<Map<String, String>> adgroupDataMainList =null;
41
			try {
42
				adgroupDataMainList = GetAdGroups.runExample(campaign.getCampaignId());
43
			} catch (Exception e) {
44
				System.out.println(e.getMessage());
45
				continue;
46
			}//campaign.getCampaignId());
47
			for(int i=0; i<adgroupDataMainList.size();i++){
48
 
49
				Map<String, String> adgroupDataMap = adgroupDataMainList.get(i);
50
				if(adgroupDataMap!=null){
51
					AdwordsAdGroup adgroup = new AdwordsAdGroup();
52
					System.out.println(adgroupDataMap.get("CampaignId")+" "
53
							+adgroupDataMap.get("Name")+" "
54
							+adgroupDataMap.get("AdgroupId")+ " "
55
							+adgroupDataMap.get("CatalogItemId")+" "+adgroupDataMap.get("BidAmount")+" "
56
							+adgroupDataMap.get("Status"));
57
					adgroup.setCampaignId(Long.parseLong(adgroupDataMap.get("CampaignId")));
58
 
59
					adgroup.setAdgroupId(Long.parseLong(adgroupDataMap.get("AdgroupId")));
60
					adgroup.setCatalogItemId(Long.parseLong(adgroupDataMap.get("CatalogItemId")));
61
					double amount= Double.parseDouble(adgroupDataMap.get("BidAmount"));
62
					amount = amount * Math.pow(10, -6);
63
					adgroup.setBidAmount(amount);
64
					adgroup.setName(adgroupDataMap.get("Name"));
65
					AdwordsAdGroupStatus status;
66
					if("PAUSED".equalsIgnoreCase(adgroupDataMap.get("Status"))){
67
						status= AdwordsAdGroupStatus.PAUSED;
68
					}
69
					else if("ENABLED".equalsIgnoreCase(adgroupDataMap.get("Status"))){
70
						status= AdwordsAdGroupStatus.ENABLED;
71
					}
72
					else{
73
						status= AdwordsAdGroupStatus.DELETED;
74
					}
75
					adgroup.setStatus(status);
9225 manish.sha 76
					adgroup.setStockLinked(0);
9028 manish.sha 77
					try {
78
						client.addAdwordsAdGroup(adgroup);
79
					} catch (GoogleAdwordsServiceException e) {
80
						e.printStackTrace();
81
					} catch (TException e) {
82
						e.printStackTrace();
83
					}
84
				}
85
			}
86
		}
87
 
88
		System.out.println("$$$$$$$$$$$$$$$$$$ Error Campaigns List $$$$$$$$$$$$$$$$$$$$$$$$$");
89
		for(Long l : errorCampaigns){
90
			System.out.println(l);
91
		}
92
 
93
	}
94
}