package com.salesmanager.core.model.search; import java.util.List; import org.json.simple.JSONArray; import org.json.simple.JSONAware; import org.json.simple.JSONObject; public class IndexProduct implements JSONAware { private String name; private Double price; private List<String> categories;//category code private String manufacturer;//id of the manufacturer private boolean available; private String description; private List<String> tags;//keywords ? private String highlight; private String store; private String lang; private String id;//required by the search framework @SuppressWarnings("unchecked") @Override public String toJSONString() { JSONObject obj = new JSONObject(); obj.put("name", this.getName()); obj.put("price", this.getPrice()); obj.put("description", this.getDescription()); obj.put("highlight", this.getHighlight()); obj.put("store", this.getStore()); obj.put("manufacturer", this.getManufacturer()); obj.put("lang", this.getLang()); obj.put("id", this.getId()); if(categories!=null) { JSONArray categoriesArray = new JSONArray(); for(String category : categories) { categoriesArray.add(category); } obj.put("categories", categoriesArray); } if(tags!=null) { JSONArray tagsArray = new JSONArray(); for(String tag : tags) { tagsArray.add(tag); } obj.put("tags", tagsArray); } return obj.toJSONString(); } public String getName() { return name; } public void setName(String name) { this.name = name; } public List<String> getCategories() { return categories; } public void setCategories(List<String> categories) { this.categories = categories; } public boolean isAvailable() { return available; } public void setAvailable(boolean available) { this.available = available; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public List<String> getTags() { return tags; } public void setTags(List<String> tags) { this.tags = tags; } public String getHighlight() { return highlight; } public void setHighlight(String highlight) { this.highlight = highlight; } public void setPrice(Double price) { this.price = price; } public Double getPrice() { return price; } public void setStore(String store) { this.store = store; } public String getStore() { return store; } public void setLang(String lang) { this.lang = lang; } public String getLang() { return lang; } public void setId(String id) { this.id = id; } public String getId() { return id; } public void setManufacturer(String manufacturer) { this.manufacturer = manufacturer; } public String getManufacturer() { return manufacturer; } }