Subversion Repositories SmartDukaan

Rev

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

Rev Author Line No. Line
6848 kshitij.so 1
package in.shop2020.serving.controllers;
2
 
3
import java.io.File;
4
import java.util.List;
5
 
6
import org.apache.log4j.Logger;
7
import org.apache.struts2.convention.annotation.Result;
8
import org.apache.struts2.convention.annotation.Results;
9
import javax.servlet.http.HttpServletRequest;
10
import org.apache.commons.io.FileUtils;
11
import org.apache.commons.lang.xwork.StringUtils;
12
import in.shop2020.model.v1.catalog.Banner;
13
import in.shop2020.model.v1.catalog.BannerMap;
14
import in.shop2020.model.v1.catalog.CatalogService.Client;
15
import in.shop2020.serving.services.ScpService;
16
import in.shop2020.thrift.clients.CatalogClient;
17
import org.apache.thrift.TException;
18
import org.apache.thrift.transport.TTransportException;
19
 
20
 
21
@SuppressWarnings("serial")
22
@Results({
23
    @Result(name = "redirect", location = "${url}", type = "redirect") })
24
   public class UserImageController extends BaseController {
25
	private static Logger log = Logger.getLogger(Class.class);
26
    private File userImage;
27
    private String filePath;
28
    private String userImageContentType;
29
    private String userImageFileName;
30
    private String url;
31
    private HttpServletRequest servletRequest;
32
    private String status;
33
    private String bannerName;
34
    private String link;
35
    private String priority;
36
    private String hasMap;
37
    private String action;
38
    private String imageName;
39
    private String[] mapLink;
40
    private String[] mapCoordinates;
41
    public String create() {
42
        try {
43
            filePath = servletRequest.getSession().getServletContext().getRealPath("/images/banners/");
44
            setUrl("/user-image");
45
            if (StringUtils.isNotEmpty(userImageFileName)) {
6875 kshitij.so 46
            File fileToCreate = new File(filePath, this.imageName); 
6848 kshitij.so 47
            FileUtils.copyFile(this.userImage, fileToCreate);
48
            try {
49
                ScpService scp = new ScpService();
6853 kshitij.so 50
                scp.scpFile("/var/lib/tomcat6/webapps/ROOT/images/banners/"+imageName, filePath+"/"+imageName);
6848 kshitij.so 51
                } catch (Exception e) {
6885 kshitij.so 52
                	log.error("Scp To Servers Failed",e);
6848 kshitij.so 53
                	addActionError("Image Failed To Upload");
54
                	return "redirect";
55
                }
56
            }
57
            if (StringUtils.isEmpty(link)) {
6879 kshitij.so 58
            	log.info("Empty Link Field");
6848 kshitij.so 59
            	this.link="#";
60
            }
61
            long rating = Long.parseLong(priority);
62
            boolean state = Boolean.parseBoolean(status);
63
            boolean containsMap = Boolean.parseBoolean(hasMap);
6885 kshitij.so 64
            log.info("Adding banner: "+"Banner Name"+bannerName+"Image Name"+imageName+"Link"+link+"Rating"+rating+"Status"+state+"Has Map"+containsMap);
65
            Client CatalogClient = new CatalogClient().getClient();
66
            if (StringUtils.isNotEmpty(action)) {
67
            	CatalogClient.deleteBanner(action);
68
            	CatalogClient.deleteBannerMap(action);
69
            }
70
            CatalogClient.addBanner(bannerName, imageName,link, rating, state, containsMap);
6848 kshitij.so 71
        	if(containsMap) {
6879 kshitij.so 72
        		log.info("Found Map");
6848 kshitij.so 73
        	   for(int i=0;i<mapLink.length;i++){
74
        		   log.info("maplink"+mapLink[i]);
75
        		   log.info("maplink"+mapCoordinates[i]);
76
    			   if(mapLink[i].isEmpty()) {
77
    				  continue;
78
    			   }
79
    	 	       CatalogClient.addBannerMap(bannerName, mapLink[i], mapCoordinates[i]);
80
         	   }	
81
        	}
82
        } catch (Exception e) {   
6879 kshitij.so 83
        	log.error("Error while uploading/changing map",e);
6848 kshitij.so 84
            addActionError("Failed To Do Changes");
85
            return "redirect";
86
        }
87
        addActionMessage("Changes Applied Successfully");
88
        return "redirect";
89
    }
90
 
91
    public List<String> getAllBanners() throws TException{
92
    	Client CatalogClient = null;
93
		try {
94
			CatalogClient = new CatalogClient().getClient();
95
		} catch (TTransportException e) {
96
			e.printStackTrace();
97
		}
98
    	return CatalogClient.getAllBanners();	
99
    }
100
 
101
    public String destroy() throws TException {
102
    	Client CatalogClient = new CatalogClient().getClient();
103
    	CatalogClient.deleteBanner(bannerName);
104
    	CatalogClient.deleteBannerMap(bannerName);
105
    	setUrl("/user-image");
106
    	return "redirect";
107
 
108
    }
109
 
110
    public Banner getUpdates() throws TException {
111
    	Client CatalogClient = null;
112
		CatalogClient = new CatalogClient().getClient();
113
		return CatalogClient.getBannerDetails(bannerName);
114
    } 
115
 
116
    public Banner getUpdates(String name) throws TException {
117
    	Client CatalogClient = null;
118
		CatalogClient = new CatalogClient().getClient();
119
		return CatalogClient.getBannerDetails(name);
120
    } 
121
 
122
    public List<BannerMap> getbannermapdetails() throws TException {
123
    	Client CatalogClient = null;
124
    	CatalogClient = new CatalogClient().getClient();
125
    	return CatalogClient.getBannerMapDetails(bannerName);
126
    }
127
 
128
    public String index() {
129
        return "index";
130
    }
131
 
132
    public String show() {
133
        return "show";
134
    }
135
 
136
    public String edit() {
137
        return "edit";
138
    }
139
 
140
 
141
    public String editNew() {
142
        return "editNew";
143
    }
144
 
145
    public File getUserImage() {
146
        return userImage;
147
    }
148
 
149
    public void setUserImage(File userImage) {
150
        this.userImage = userImage;
151
    }
152
 
153
    public String getUserImageContentType() {
154
        return userImageContentType;
155
    }
156
 
157
    public void setUserImageContentType(String userImageContentType) {
158
    	this.userImageContentType = userImageContentType;
159
    }
160
 
161
    public String getUserImageFileName() {
162
        return userImageFileName;
163
    }
164
 
165
    public void setUserImageFileName(String userImageFileName) {
166
        this.userImageFileName = userImageFileName;
167
    }
168
 
169
    public void setUrl(String url) {
170
		this.url = url;
171
	}
172
 
173
	public String getUrl() {
174
		return url;
175
	}
176
 
177
	public void setIsActive(String isActive) {
178
		this.status=isActive;
179
	}
180
 
181
	public String getIsActive() {
182
		return status;
183
	}
184
 
185
 
186
	public void setBannerName(String bannerName) {
187
		this.bannerName=bannerName;
188
	}
189
 
190
	public String getBannerName() {
191
		return bannerName;
192
	}
193
 
194
	public void setLink(String link) {
195
		this.link=link;
196
	}
197
 
198
	public String getLink() {
199
		return link;
200
	}
201
 
202
	public void setAction(String action) {
203
		this.action=action;
204
	}
205
 
206
	public String getAction() {
207
		return action;
208
	}
209
 
210
	public void setPriority(String priority) {
211
		this.priority=priority;
212
	}
213
 
214
	public String getPriority() {
215
		return priority;
216
	}
217
 
218
	public void setImageName(String imageName) {
219
		this.imageName=imageName;
220
	}
221
 
222
	public String getImageName() {
223
		return imageName;
224
	}
225
 
226
	public void setId(String id) {
227
        this.bannerName = id;
228
    }
229
 
230
	public String[] getMapLink() {
231
		return mapLink;
232
	}
233
	public void setMapLink(String[] mapLink) {
234
		this.mapLink = mapLink;
235
	}
236
	public String[] getReturnQty() {
237
		return mapCoordinates;
238
	}
239
	public void setMapCoordinates(String[] mapCoordinates) {
240
		this.mapCoordinates = mapCoordinates;
241
	}
242
 
243
	public void setHasMap(String hasMap) {
244
		this.hasMap=hasMap;
245
	}
246
 
247
	public String getHasMap() {
248
		return hasMap;
249
	}
250
 
251
 
252
    @Override
253
    public void setServletRequest(HttpServletRequest servletRequest) {
254
        this.servletRequest = servletRequest;
255
 
256
    }
257
}