Subversion Repositories SmartDukaan

Rev

Rev 6875 | Rev 6885 | 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
            Client CatalogClient = new CatalogClient().getClient();
46
            if (StringUtils.isNotEmpty(action)) {
47
            	CatalogClient.deleteBanner(action);
48
            	CatalogClient.deleteBannerMap(action);
49
            }
50
            if (StringUtils.isNotEmpty(userImageFileName)) {
6875 kshitij.so 51
 
52
            File fileToCreate = new File(filePath, this.imageName); 
6848 kshitij.so 53
            FileUtils.copyFile(this.userImage, fileToCreate);
54
            try {
55
                ScpService scp = new ScpService();
6853 kshitij.so 56
                scp.scpFile("/var/lib/tomcat6/webapps/ROOT/images/banners/"+imageName, filePath+"/"+imageName);
6848 kshitij.so 57
                } catch (Exception e) {
6879 kshitij.so 58
                	log.error("SCP FAIL",e);
6848 kshitij.so 59
                	addActionError("Image Failed To Upload");
60
                	return "redirect";
61
                }
62
            }
63
            if (StringUtils.isEmpty(link)) {
6879 kshitij.so 64
            	log.info("Empty Link Field");
6848 kshitij.so 65
            	this.link="#";
66
            }
67
            long rating = Long.parseLong(priority);
6879 kshitij.so 68
            log.info("Parsing String Priority To Long");
6848 kshitij.so 69
            boolean state = Boolean.parseBoolean(status);
6879 kshitij.so 70
            log.info("Parsing String Sctatus To Boolean");
6848 kshitij.so 71
            boolean containsMap = Boolean.parseBoolean(hasMap);
6879 kshitij.so 72
            log.info("Parsing String hasMap To Boolean");
6848 kshitij.so 73
        	CatalogClient.addBanner(bannerName, imageName,link, rating, state, containsMap);
6879 kshitij.so 74
        	log.info("Adding banner"+bannerName+imageName+link+rating+state+containsMap);
6848 kshitij.so 75
        	if(containsMap) {
6879 kshitij.so 76
        		log.info("Found Map");
6848 kshitij.so 77
        	   for(int i=0;i<mapLink.length;i++){
78
        		   log.info("maplink"+mapLink[i]);
79
        		   log.info("maplink"+mapCoordinates[i]);
80
    			   if(mapLink[i].isEmpty()) {
81
    				  continue;
82
    			   }
83
    	 	       CatalogClient.addBannerMap(bannerName, mapLink[i], mapCoordinates[i]);
84
         	   }	
85
        	}
86
        } catch (Exception e) {   
6879 kshitij.so 87
        	log.error("Error while uploading/changing map",e);
6848 kshitij.so 88
            addActionError("Failed To Do Changes");
89
            return "redirect";
90
        }
91
        addActionMessage("Changes Applied Successfully");
92
        return "redirect";
93
    }
94
 
95
    public List<String> getAllBanners() throws TException{
96
    	Client CatalogClient = null;
97
		try {
98
			CatalogClient = new CatalogClient().getClient();
99
		} catch (TTransportException e) {
100
			e.printStackTrace();
101
		}
102
    	return CatalogClient.getAllBanners();	
103
    }
104
 
105
    public String destroy() throws TException {
106
    	Client CatalogClient = new CatalogClient().getClient();
107
    	CatalogClient.deleteBanner(bannerName);
108
    	CatalogClient.deleteBannerMap(bannerName);
109
    	setUrl("/user-image");
110
    	return "redirect";
111
 
112
    }
113
 
114
    public Banner getUpdates() throws TException {
115
    	Client CatalogClient = null;
116
		CatalogClient = new CatalogClient().getClient();
117
		return CatalogClient.getBannerDetails(bannerName);
118
    } 
119
 
120
    public Banner getUpdates(String name) throws TException {
121
    	Client CatalogClient = null;
122
		CatalogClient = new CatalogClient().getClient();
123
		return CatalogClient.getBannerDetails(name);
124
    } 
125
 
126
    public List<BannerMap> getbannermapdetails() throws TException {
127
    	Client CatalogClient = null;
128
    	CatalogClient = new CatalogClient().getClient();
129
    	return CatalogClient.getBannerMapDetails(bannerName);
130
    }
131
 
132
    public String index() {
133
        return "index";
134
    }
135
 
136
    public String show() {
137
        return "show";
138
    }
139
 
140
    public String edit() {
141
        return "edit";
142
    }
143
 
144
 
145
    public String editNew() {
146
        return "editNew";
147
    }
148
 
149
    public File getUserImage() {
150
        return userImage;
151
    }
152
 
153
    public void setUserImage(File userImage) {
154
        this.userImage = userImage;
155
    }
156
 
157
    public String getUserImageContentType() {
158
        return userImageContentType;
159
    }
160
 
161
    public void setUserImageContentType(String userImageContentType) {
162
    	this.userImageContentType = userImageContentType;
163
    }
164
 
165
    public String getUserImageFileName() {
166
        return userImageFileName;
167
    }
168
 
169
    public void setUserImageFileName(String userImageFileName) {
170
        this.userImageFileName = userImageFileName;
171
    }
172
 
173
    public void setUrl(String url) {
174
		this.url = url;
175
	}
176
 
177
	public String getUrl() {
178
		return url;
179
	}
180
 
181
	public void setIsActive(String isActive) {
182
		this.status=isActive;
183
	}
184
 
185
	public String getIsActive() {
186
		return status;
187
	}
188
 
189
 
190
	public void setBannerName(String bannerName) {
191
		this.bannerName=bannerName;
192
	}
193
 
194
	public String getBannerName() {
195
		return bannerName;
196
	}
197
 
198
	public void setLink(String link) {
199
		this.link=link;
200
	}
201
 
202
	public String getLink() {
203
		return link;
204
	}
205
 
206
	public void setAction(String action) {
207
		this.action=action;
208
	}
209
 
210
	public String getAction() {
211
		return action;
212
	}
213
 
214
	public void setPriority(String priority) {
215
		this.priority=priority;
216
	}
217
 
218
	public String getPriority() {
219
		return priority;
220
	}
221
 
222
	public void setImageName(String imageName) {
223
		this.imageName=imageName;
224
	}
225
 
226
	public String getImageName() {
227
		return imageName;
228
	}
229
 
230
	public void setId(String id) {
231
        this.bannerName = id;
232
    }
233
 
234
	public String[] getMapLink() {
235
		return mapLink;
236
	}
237
	public void setMapLink(String[] mapLink) {
238
		this.mapLink = mapLink;
239
	}
240
	public String[] getReturnQty() {
241
		return mapCoordinates;
242
	}
243
	public void setMapCoordinates(String[] mapCoordinates) {
244
		this.mapCoordinates = mapCoordinates;
245
	}
246
 
247
	public void setHasMap(String hasMap) {
248
		this.hasMap=hasMap;
249
	}
250
 
251
	public String getHasMap() {
252
		return hasMap;
253
	}
254
 
255
 
256
    @Override
257
    public void setServletRequest(HttpServletRequest servletRequest) {
258
    	log.info("setservletrequest");
259
        this.servletRequest = servletRequest;
260
 
261
    }
262
}