/** * Most of the code in the Qalingo project is copyrighted Hoteia and licensed * under the Apache License Version 2.0 (release version 0.8.0) * http://www.apache.org/licenses/LICENSE-2.0 * * Copyright (c) Hoteia, 2012-2014 * http://www.hoteia.com - http://twitter.com/hoteia - contact@hoteia.com * */ package org.hoteia.qalingo.core.solr.bean; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.apache.solr.client.solrj.beans.Field; public class ProductSkuSolr { @Field private Long id; @Field private Long scoring; @Field private String description; private Boolean isDefault; @Field private Boolean enabledB2B; @Field private Boolean enabledB2C; @Field private Boolean salableB2B; @Field private Boolean salableB2C; @Field private String code; @Field private String name; @Field private String productBrandCode; @Field private String productBrandName; @Field private String defaultCategoryCode; @Field private String price; @Field private List<String> catalogCodes = new ArrayList<String>(); @Field private List<String> catalogCategories = new ArrayList<String>(); @Field private List<String> tags = new ArrayList<String>(); @Field private List<String> optionDefinitions = new ArrayList<String>(); @Field private String random; @Field("datecreate") private Date dateCreate; @Field("dateupdate") private Date dateUpdate; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public Long getScoring() { return scoring; } public void setScoring(Long scoring) { this.scoring = scoring; } public Boolean getIsDefault() { return isDefault; } public void setIsDefault(Boolean isDefault) { this.isDefault = isDefault; } public Boolean getEnabledB2B() { return enabledB2B; } public void setEnabledB2B(Boolean enabledB2B) { this.enabledB2B = enabledB2B; } public Boolean getEnabledB2C() { return enabledB2C; } public void setEnabledB2C(Boolean enabledB2C) { this.enabledB2C = enabledB2C; } public Boolean getSalableB2B() { return salableB2B; } public void setSalableB2B(Boolean salableB2B) { this.salableB2B = salableB2B; } public Boolean getSalableB2C() { return salableB2C; } public void setSalableB2C(Boolean salableB2C) { this.salableB2C = salableB2C; } public String getCode() { return code; } public void setCode(String code) { this.code = code; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getDescription() { return description; } public void setDescription(String description) { this.description = description; } public String getProductBrandCode() { return productBrandCode; } public void setProductBrandCode(String productBrandCode) { this.productBrandCode = productBrandCode; } public String getProductBrandName() { return productBrandName; } public void setProductBrandName(String productBrandName) { this.productBrandName = productBrandName; } public String getDefaultCategoryCode() { return defaultCategoryCode; } public void setDefaultCategoryCode(String defaultCategoryCode) { this.defaultCategoryCode = defaultCategoryCode; } public String getPrice() { return price; } public void setPrice(String price) { this.price = price; } public List<String> getCatalogCodes() { return catalogCodes; } public void setCatalogCodes(List<String> catalogCodes) { this.catalogCodes = catalogCodes; } public void addCatalogCode(String catalogCode){ if(this.catalogCodes == null){ this.catalogCodes = new ArrayList<String>(); } if(!this.catalogCodes.contains(catalogCode)){ this.catalogCodes.add(catalogCode); } } public List<String> getCatalogCategories() { return catalogCategories; } public void setCatalogCategories(List<String> catalogCategories) { this.catalogCategories = catalogCategories; } public void addCatalogCategories(String catalogCategoryCode){ if(this.catalogCategories == null){ this.catalogCategories = new ArrayList<String>(); } if(!this.catalogCategories.contains(catalogCategoryCode)){ this.catalogCategories.add(catalogCategoryCode); } } public List<String> getTags() { return tags; } public void addTag(String tag){ if(this.tags == null){ this.tags = new ArrayList<String>(); } if(!this.tags.contains(tag)){ this.tags.add(tag); } } public void setTags(List<String> tags) { this.tags = tags; } public List<String> getOptionDefinitions() { return optionDefinitions; } public void addOptionDefinition(String optionDefinition){ if(this.optionDefinitions == null){ this.optionDefinitions = new ArrayList<String>(); } if(!this.optionDefinitions.contains(optionDefinition)){ this.optionDefinitions.add(optionDefinition); } } public void setOptionDefinitions(List<String> optionDefinitions) { this.optionDefinitions = optionDefinitions; } public void addTags(String tag){ if(this.tags == null){ this.tags = new ArrayList<String>(); } if(!this.tags.contains(tag)){ this.tags.add(tag); } } public String getRandom() { return random; } public void setRandom(String random) { this.random = random; } public Date getDateCreate() { return dateCreate; } public void setDateCreate(Date dateCreate) { this.dateCreate = dateCreate; } public Date getDateUpdate() { return dateUpdate; } public void setDateUpdate(Date dateUpdate) { this.dateUpdate = dateUpdate; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((code == null) ? 0 : code.hashCode()); result = prime * result + ((id == null) ? 0 : id.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; ProductSkuSolr other = (ProductSkuSolr) obj; if (code == null) { if (other.code != null) return false; } else if (!code.equals(other.code)) return false; if (id == null) { if (other.id != null) return false; } else if (!id.equals(other.id)) return false; return true; } @Override public String toString() { return "ProductSkuSolr [id=" + id + ", description=" + description + ", isDefault=" + isDefault + ", code=" + code + ", name=" + name + ", defaultCategoryCode=" + defaultCategoryCode + ", catalogCodes=" + catalogCodes + ", price=" + price + ", dateCreate=" + dateCreate + ", dateUpdate=" + dateUpdate + "]"; } }