Subversion Repositories SmartDukaan

Rev

Rev 3094 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
3084 vikas 1
package in.shop2020.web;
2
 
3094 vikas 3
import in.shop2020.model.Item;
4
import in.shop2020.server.ItemRepository;
5
 
3084 vikas 6
import java.lang.reflect.Type;
7
import java.util.ArrayList;
8
import java.util.List;
9
import java.util.Map;
10
 
11
import javax.servlet.http.HttpServlet;
12
import javax.servlet.http.HttpServletRequest;
13
import javax.servlet.http.HttpServletResponse;
14
 
3094 vikas 15
import org.slf4j.Logger;
16
import org.slf4j.LoggerFactory;
17
 
3084 vikas 18
import com.google.gson.Gson;
19
import com.google.gson.reflect.TypeToken;
20
 
21
public class UploadCatalogItemsServlet extends HttpServlet {
22
 
23
    private static final long serialVersionUID = -3936645972813167428L;
3094 vikas 24
    private static final Logger log = LoggerFactory.getLogger(UploadCatalogItemsServlet.class);
25
    private ItemRepository itemRepository = new ItemRepository();
26
 
3084 vikas 27
    public void doPost(HttpServletRequest req, HttpServletResponse resp) {
28
        String data = req.getParameter("data");
29
        Gson gson = new Gson();
30
        List<Map<String, String>> jsonItems = new ArrayList<Map<String, String>>();
31
        Type listOfMapType = new TypeToken<List<Map<String, String>>>() {}.getType();
32
        jsonItems = gson.fromJson(data, listOfMapType);
3097 vikas 33
        List<Item> items = new ArrayList<Item>();
3084 vikas 34
        for (Map<String, String> jsonItem : jsonItems) {
3094 vikas 35
            Item item = new Item();
36
            item.setId(Long.parseLong(jsonItem.get(Item.ID_KEY)));
37
            item.setBrand(jsonItem.get(Item.BRAND_KEY));
38
            item.setCatalogId(Long.parseLong(jsonItem.get(Item.CATALOG_ID_KEY)));
39
            item.setColor(jsonItem.get(Item.COLOR_KEY));
40
            item.setName(jsonItem.get(Item.NAME_KEY));
3097 vikas 41
            items.add(item);
3084 vikas 42
        }
3097 vikas 43
        itemRepository.createAll(items);
3084 vikas 44
    }
45
 
46
    public void doGet(HttpServletRequest req, HttpServletResponse resp) {
47
        doPost(req, resp);
48
    }
49
}