Author: doogie
Date: Mon Nov 10 18:16:46 2008 New Revision: 712916 URL: http://svn.apache.org/viewvc?rev=712916&view=rev Log: First set of actual generics markup, only on product/product. Modified: ofbiz/trunk/applications/product/src/org/ofbiz/product/product/KeywordIndex.java ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductContentWrapper.java ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearch.java ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearchEvents.java ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearchSession.java ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductServices.java ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductUtilServices.java ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductWorker.java ofbiz/trunk/applications/product/src/org/ofbiz/product/product/VariantEvents.java Modified: ofbiz/trunk/applications/product/src/org/ofbiz/product/product/KeywordIndex.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/product/KeywordIndex.java?rev=712916&r1=712915&r2=712916&view=diff ============================================================================== --- ofbiz/trunk/applications/product/src/org/ofbiz/product/product/KeywordIndex.java (original) +++ ofbiz/trunk/applications/product/src/org/ofbiz/product/product/KeywordIndex.java Mon Nov 10 18:16:46 2008 @@ -83,10 +83,10 @@ String stopWordBagOr = KeywordSearchUtil.getStopWordBagOr(); String stopWordBagAnd = KeywordSearchUtil.getStopWordBagAnd(); boolean removeStems = KeywordSearchUtil.getRemoveStems(); - Set stemSet = KeywordSearchUtil.getStemSet(); + Set<String> stemSet = KeywordSearchUtil.getStemSet(); - Map keywords = new TreeMap(); - List strings = FastList.newInstance(); + Map<String, Long> keywords = new TreeMap<String, Long>(); + List<String> strings = FastList.newInstance(); int pidWeight = 1; try { @@ -118,9 +118,9 @@ !"0".equals(UtilProperties.getPropertyValue("prodsearch", "index.weight.ProductFeatureAndAppl.abbrev", "0")) || !"0".equals(UtilProperties.getPropertyValue("prodsearch", "index.weight.ProductFeatureAndAppl.idCode", "0"))) { // get strings from attributes and features - Iterator productFeatureAndAppls = UtilMisc.toIterator(delegator.findByAnd("ProductFeatureAndAppl", UtilMisc.toMap("productId", productId))); + Iterator<GenericValue> productFeatureAndAppls = UtilMisc.toIterator(delegator.findByAnd("ProductFeatureAndAppl", UtilMisc.toMap("productId", productId))); while (productFeatureAndAppls != null && productFeatureAndAppls.hasNext()) { - GenericValue productFeatureAndAppl = (GenericValue) productFeatureAndAppls.next(); + GenericValue productFeatureAndAppl = productFeatureAndAppls.next(); addWeightedKeywordSourceString(productFeatureAndAppl, "description", strings); addWeightedKeywordSourceString(productFeatureAndAppl, "abbrev", strings); addWeightedKeywordSourceString(productFeatureAndAppl, "idCode", strings); @@ -130,9 +130,9 @@ // ProductAttribute if (!"0".equals(UtilProperties.getPropertyValue("prodsearch", "index.weight.ProductAttribute.attrName", "0")) || !"0".equals(UtilProperties.getPropertyValue("prodsearch", "index.weight.ProductAttribute.attrValue", "0"))) { - Iterator productAttributes = UtilMisc.toIterator(delegator.findByAnd("ProductAttribute", UtilMisc.toMap("productId", productId))); + Iterator<GenericValue> productAttributes = UtilMisc.toIterator(delegator.findByAnd("ProductAttribute", UtilMisc.toMap("productId", productId))); while (productAttributes != null && productAttributes.hasNext()) { - GenericValue productAttribute = (GenericValue) productAttributes.next(); + GenericValue productAttribute = productAttributes.next(); addWeightedKeywordSourceString(productAttribute, "attrName", strings); addWeightedKeywordSourceString(productAttribute, "attrValue", strings); } @@ -140,9 +140,9 @@ // GoodIdentification if (!"0".equals(UtilProperties.getPropertyValue("prodsearch", "index.weight.GoodIdentification.idValue", "0"))) { - Iterator goodIdentifications = UtilMisc.toIterator(delegator.findByAnd("GoodIdentification", UtilMisc.toMap("productId", productId))); + Iterator<GenericValue> goodIdentifications = UtilMisc.toIterator(delegator.findByAnd("GoodIdentification", UtilMisc.toMap("productId", productId))); while (goodIdentifications != null && goodIdentifications.hasNext()) { - GenericValue goodIdentification = (GenericValue) goodIdentifications.next(); + GenericValue goodIdentification = goodIdentifications.next(); addWeightedKeywordSourceString(goodIdentification, "idValue", strings); } } @@ -150,11 +150,11 @@ // Variant Product IDs if ("Y".equals(product.getString("isVirtual"))) { if (!"0".equals(UtilProperties.getPropertyValue("prodsearch", "index.weight.Variant.Product.productId", "0"))) { - List variantProductAssocs = delegator.findByAnd("ProductAssoc", UtilMisc.toMap("productId", productId, "productAssocTypeId", "PRODUCT_VARIANT")); + List<GenericValue> variantProductAssocs = delegator.findByAnd("ProductAssoc", UtilMisc.toMap("productId", productId, "productAssocTypeId", "PRODUCT_VARIANT")); variantProductAssocs = EntityUtil.filterByDate(variantProductAssocs); - Iterator variantProductAssocsIt = variantProductAssocs.iterator(); + Iterator<GenericValue> variantProductAssocsIt = variantProductAssocs.iterator(); while (variantProductAssocsIt.hasNext()) { - GenericValue variantProductAssoc = (GenericValue) variantProductAssocsIt.next(); + GenericValue variantProductAssoc = variantProductAssocsIt.next(); int weight = 1; try { weight = Integer.parseInt(UtilProperties.getPropertyValue("prodsearch", "index.weight.Variant.Product.productId", "0")); @@ -169,10 +169,10 @@ } String productContentTypes = UtilProperties.getPropertyValue("prodsearch", "index.include.ProductContentTypes"); - List productContentTypeList = Arrays.asList(productContentTypes.split(",")); - Iterator productContentTypeIter = productContentTypeList.iterator(); + List<String> productContentTypeList = Arrays.asList(productContentTypes.split(",")); + Iterator<String> productContentTypeIter = productContentTypeList.iterator(); while (productContentTypeIter.hasNext()) { - String productContentTypeId = (String) productContentTypeIter.next(); + String productContentTypeId = productContentTypeIter.next(); int weight = 1; try { @@ -182,33 +182,33 @@ Debug.logWarning("Could not parse weight number: " + e.toString(), module); } - List productContentAndInfos = delegator.findByAnd("ProductContentAndInfo", UtilMisc.toMap("productId", productId, "productContentTypeId", productContentTypeId), null); - Iterator productContentAndInfoIter = productContentAndInfos.iterator(); + List<GenericValue> productContentAndInfos = delegator.findByAnd("ProductContentAndInfo", UtilMisc.toMap("productId", productId, "productContentTypeId", productContentTypeId), null); + Iterator<GenericValue> productContentAndInfoIter = productContentAndInfos.iterator(); while (productContentAndInfoIter.hasNext()) { - GenericValue productContentAndInfo = (GenericValue) productContentAndInfoIter.next(); + GenericValue productContentAndInfo = productContentAndInfoIter.next(); addWeightedDataResourceString(productContentAndInfo, weight, strings, delegator, product); - List alternateViews = productContentAndInfo.getRelated("ContentAssocDataResourceViewTo", UtilMisc.toMap("caContentAssocTypeId", "ALTERNATE_LOCALE"), UtilMisc.toList("-caFromDate")); + List<GenericValue> alternateViews = productContentAndInfo.getRelated("ContentAssocDataResourceViewTo", UtilMisc.toMap("caContentAssocTypeId", "ALTERNATE_LOCALE"), UtilMisc.toList("-caFromDate")); alternateViews = EntityUtil.filterByDate(alternateViews, UtilDateTime.nowTimestamp(), "caFromDate", "caThruDate", true); - Iterator alternateViewIter = alternateViews.iterator(); + Iterator<GenericValue> alternateViewIter = alternateViews.iterator(); while (alternateViewIter.hasNext()) { - GenericValue thisView = (GenericValue) alternateViewIter.next(); + GenericValue thisView = alternateViewIter.next(); addWeightedDataResourceString(thisView, weight, strings, delegator, product); } } } - Iterator strIter = strings.iterator(); + Iterator<String> strIter = strings.iterator(); while (strIter.hasNext()) { - String str = (String) strIter.next(); + String str = strIter.next(); // call process keywords method here KeywordSearchUtil.processKeywordsForIndex(str, keywords, separators, stopWordBagAnd, stopWordBagOr, removeStems, stemSet); } - List toBeStored = FastList.newInstance(); - Iterator kiter = keywords.entrySet().iterator(); + List<GenericValue> toBeStored = FastList.newInstance(); + Iterator<Map.Entry<String, Long>> kiter = keywords.entrySet().iterator(); while (kiter.hasNext()) { - Map.Entry entry = (Map.Entry) kiter.next(); + Map.Entry<String, Long> entry = kiter.next(); GenericValue productKeyword = delegator.makeValue("ProductKeyword", UtilMisc.toMap("productId", product.getString("productId"), "keyword", entry.getKey(), "relevancyWeight", entry.getValue())); toBeStored.add(productKeyword); } @@ -224,8 +224,8 @@ } } - public static void addWeightedDataResourceString(GenericValue drView, int weight, List strings, GenericDelegator delegator, GenericValue product) { - Map drContext = UtilMisc.toMap("product", product); + public static void addWeightedDataResourceString(GenericValue drView, int weight, List<String> strings, GenericDelegator delegator, GenericValue product) { + Map<String, GenericValue> drContext = UtilMisc.toMap("product", product); try { String contentText = DataResourceWorker.renderDataResourceAsText(delegator, drView.getString("dataResourceId"), drContext, null, null, false); for (int i = 0; i < weight; i++) { @@ -238,7 +238,7 @@ } } - public static void addWeightedKeywordSourceString(GenericValue value, String fieldName, List strings) { + public static void addWeightedKeywordSourceString(GenericValue value, String fieldName, List<String> strings) { if (value.getString(fieldName) != null) { int weight = 1; Modified: ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductContentWrapper.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductContentWrapper.java?rev=712916&r1=712915&r2=712916&view=diff ============================================================================== --- ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductContentWrapper.java (original) +++ ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductContentWrapper.java Mon Nov 10 18:16:46 2008 @@ -53,7 +53,7 @@ public static final String module = ProductContentWrapper.class.getName(); public static final String SEPARATOR = "::"; // cache key separator - public static UtilCache productContentCache = new UtilCache("product.content.rendered", true); + public static UtilCache<String, String> productContentCache = new UtilCache<String, String>("product.content.rendered", true); public static ProductContentWrapper makeProductContentWrapper(GenericValue product, HttpServletRequest request) { return new ProductContentWrapper(product, request); @@ -107,7 +107,7 @@ String cacheKey = productContentTypeId + SEPARATOR + locale + SEPARATOR + mimeTypeId + SEPARATOR + product.get("productId"); try { if (productContentCache.get(cacheKey) != null) { - return (String) productContentCache.get(cacheKey); + return productContentCache.get(cacheKey); } Writer outWriter = new StringWriter(); @@ -175,12 +175,12 @@ } } - List productContentList = delegator.findByAndCache("ProductContent", UtilMisc.toMap("productId", productId, "productContentTypeId", productContentTypeId), UtilMisc.toList("-fromDate")); + List<GenericValue> productContentList = delegator.findByAndCache("ProductContent", UtilMisc.toMap("productId", productId, "productContentTypeId", productContentTypeId), UtilMisc.toList("-fromDate")); productContentList = EntityUtil.filterByDate(productContentList); GenericValue productContent = EntityUtil.getFirst(productContentList); if (productContent != null) { // when rendering the product content, always include the Product and ProductContent records that this comes from - Map inContext = FastMap.newInstance(); + Map<String, Object> inContext = FastMap.newInstance(); inContext.put("product", product); inContext.put("productContent", productContent); ContentWorker.renderContentAsText(dispatcher, delegator, productContent.getString("contentId"), outWriter, inContext, locale, mimeTypeId, false); Modified: ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java?rev=712916&r1=712915&r2=712916&view=diff ============================================================================== --- ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java (original) +++ ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java Mon Nov 10 18:16:46 2008 @@ -83,7 +83,7 @@ // check permissions before moving on... if (!security.hasEntityPermission("CATALOG", "_" + updateMode, request.getSession())) { - Map messageMap = UtilMisc.toMap("updateMode", updateMode); + Map<String, String> messageMap = UtilMisc.toMap("updateMode", updateMode); errMsg = UtilProperties.getMessage(resource,"productevents.not_sufficient_permissions", messageMap, UtilHttp.getLocale(request)); request.setAttribute("_ERROR_MESSAGE_", errMsg); return "error"; @@ -91,7 +91,7 @@ EntityCondition condition = null; if (!"Y".equals(doAll)) { - List condList = FastList.newInstance(); + List<EntityCondition> condList = FastList.newInstance(); condList.add(EntityCondition.makeCondition(EntityCondition.makeCondition("autoCreateKeywords", EntityOperator.EQUALS, null), EntityOperator.OR, EntityCondition.makeCondition("autoCreateKeywords", EntityOperator.NOT_EQUAL, "N"))); if ("true".equals(UtilProperties.getPropertyValue("prodsearch", "index.ignore.variants"))) { condList.add(EntityCondition.makeCondition(EntityCondition.makeCondition("isVariant", EntityOperator.EQUALS, null), EntityOperator.OR, EntityCondition.makeCondition("isVariant", EntityOperator.NOT_EQUAL, "Y"))); @@ -121,14 +121,14 @@ entityListIterator = delegator.find("Product", condition, null, null, null, null); } catch (GenericEntityException gee) { Debug.logWarning(gee, gee.getMessage(), module); - Map messageMap = UtilMisc.toMap("gee", gee.toString()); + Map<String, String> messageMap = UtilMisc.toMap("gee", gee.toString()); errMsg = UtilProperties.getMessage(resource,"productevents.error_getting_product_list", messageMap, UtilHttp.getLocale(request)); request.setAttribute("_ERROR_MESSAGE_", errMsg); throw gee; } GenericValue product; - while ((product = (GenericValue) entityListIterator.next()) != null) { + while ((product = entityListIterator.next()) != null) { try { KeywordIndex.indexKeywords(product, "Y".equals(doAll)); } catch (GenericEntityException e) { @@ -176,12 +176,12 @@ } if (errProds == 0) { - Map messageMap = UtilMisc.toMap("numProds", Integer.toString(numProds)); + Map<String, String> messageMap = UtilMisc.toMap("numProds", Integer.toString(numProds)); errMsg = UtilProperties.getMessage(resource,"productevents.keyword_creation_complete_for_products", messageMap, UtilHttp.getLocale(request)); request.setAttribute("_EVENT_MESSAGE_", errMsg); return "success"; } else { - Map messageMap = UtilMisc.toMap("numProds", Integer.toString(numProds)); + Map<String, String> messageMap = UtilMisc.toMap("numProds", Integer.toString(numProds)); messageMap.put("errProds", Integer.toString(errProds)); errMsg = UtilProperties.getMessage(resource,"productevents.keyword_creation_complete_for_products_with_errors", messageMap, UtilHttp.getLocale(request)); request.setAttribute( "_ERROR_MESSAGE_", errMsg); @@ -198,7 +198,7 @@ */ public static String updateProductAssoc(HttpServletRequest request, HttpServletResponse response) { String errMsg = ""; - List errMsgList = FastList.newInstance(); + List<Object> errMsgList = FastList.newInstance(); GenericDelegator delegator = (GenericDelegator) request.getAttribute("delegator"); Security security = (Security) request.getAttribute("security"); @@ -213,7 +213,7 @@ // check permissions before moving on... if (!security.hasEntityPermission("CATALOG", "_" + updateMode, request.getSession())) { - Map messageMap = UtilMisc.toMap("updateMode", updateMode); + Map<String, String> messageMap = UtilMisc.toMap("updateMode", updateMode); errMsg = UtilProperties.getMessage(resource,"productevents.not_sufficient_permissions", messageMap, UtilHttp.getLocale(request)); request.setAttribute("_ERROR_MESSAGE_", errMsg); return "error"; @@ -227,11 +227,11 @@ try { if (delegator.findByPrimaryKey("Product", UtilMisc.toMap("productId", productId)) == null) { - Map messageMap = UtilMisc.toMap("productId", productId); + Map<String, String> messageMap = UtilMisc.toMap("productId", productId); errMsgList.add(UtilProperties.getMessage(resource,"productevents.product_with_id_not_found", messageMap, UtilHttp.getLocale(request))); } if (delegator.findByPrimaryKey("Product", UtilMisc.toMap("productId", productIdTo)) == null) { - Map messageMap = UtilMisc.toMap("productIdTo", productIdTo); + Map<String, String> messageMap = UtilMisc.toMap("productIdTo", productIdTo); errMsgList.add(UtilProperties.getMessage(resource,"productevents.product_To_with_id_not_found", messageMap, UtilHttp.getLocale(request))); } } catch (GenericEntityException e) { @@ -377,7 +377,7 @@ return "error"; } } else { - Map messageMap = UtilMisc.toMap("updateMode", updateMode); + Map<String, String> messageMap = UtilMisc.toMap("updateMode", updateMode); errMsg = UtilProperties.getMessage(resource,"productevents.specified_update_mode_not_supported", messageMap, UtilHttp.getLocale(request)); request.setAttribute("_ERROR_MESSAGE_", errMsg); return "error"; @@ -449,7 +449,7 @@ Double ntwt = parseDoubleForEntity(request.getParameter("~ntwt")); Double grams = parseDoubleForEntity(request.getParameter("~grams")); - List currentProductFeatureAndAppls = EntityUtil.filterByDate(delegator.findByAnd("ProductFeatureAndAppl", UtilMisc.toMap("productId", productId, "productFeatureApplTypeId", "STANDARD_FEATURE")), true); + List<GenericValue> currentProductFeatureAndAppls = EntityUtil.filterByDate(delegator.findByAnd("ProductFeatureAndAppl", UtilMisc.toMap("productId", productId, "productFeatureApplTypeId", "STANDARD_FEATURE")), true); setOrCreateProdFeature(delegator, productId, currentProductFeatureAndAppls, "VLIQ_ozUS", "AMOUNT", floz); setOrCreateProdFeature(delegator, productId, currentProductFeatureAndAppls, "VLIQ_ml", "AMOUNT", ml); setOrCreateProdFeature(delegator, productId, currentProductFeatureAndAppls, "WT_g", "AMOUNT", grams); @@ -479,7 +479,7 @@ Double ntwt = parseDoubleForEntity(request.getParameter("~ntwt" + attribIdx)); Double grams = parseDoubleForEntity(request.getParameter("~grams" + attribIdx)); - List currentProductFeatureAndAppls = EntityUtil.filterByDate(delegator.findByAnd("ProductFeatureAndAppl", UtilMisc.toMap("productId", productId, "productFeatureApplTypeId", "STANDARD_FEATURE")), true); + List<GenericValue> currentProductFeatureAndAppls = EntityUtil.filterByDate(delegator.findByAnd("ProductFeatureAndAppl", UtilMisc.toMap("productId", productId, "productFeatureApplTypeId", "STANDARD_FEATURE")), true); setOrCreateProdFeature(delegator, productId, currentProductFeatureAndAppls, "VLIQ_ozUS", "AMOUNT", floz); setOrCreateProdFeature(delegator, productId, currentProductFeatureAndAppls, "VLIQ_ml", "AMOUNT", ml); setOrCreateProdFeature(delegator, productId, currentProductFeatureAndAppls, "WT_g", "AMOUNT", grams); @@ -526,7 +526,7 @@ * @return * @throws GenericEntityException */ - private static void setOrCreateProdFeature(GenericDelegator delegator, String productId, List currentProductFeatureAndAppls, + private static void setOrCreateProdFeature(GenericDelegator delegator, String productId, List<GenericValue> currentProductFeatureAndAppls, String uomId, String productFeatureTypeId, Double numberSpecified) throws GenericEntityException { GenericValue productFeatureType = delegator.findByPrimaryKey("ProductFeatureType", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId)); @@ -535,13 +535,13 @@ Timestamp nowTimestamp = UtilDateTime.nowTimestamp(); // filter list of features to the one we'll be editing - List typeUomProductFeatureAndApplList = EntityUtil.filterByAnd(currentProductFeatureAndAppls, UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "uomId", uomId)); + List<GenericValue> typeUomProductFeatureAndApplList = EntityUtil.filterByAnd(currentProductFeatureAndAppls, UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "uomId", uomId)); // go through each; need to remove? do it now - Iterator typeUomProductFeatureAndApplIter = typeUomProductFeatureAndApplList.iterator(); + Iterator<GenericValue> typeUomProductFeatureAndApplIter = typeUomProductFeatureAndApplList.iterator(); boolean foundOneEqual = false; while (typeUomProductFeatureAndApplIter.hasNext()) { - GenericValue typeUomProductFeatureAndAppl = (GenericValue) typeUomProductFeatureAndApplIter.next(); + GenericValue typeUomProductFeatureAndAppl = typeUomProductFeatureAndApplIter.next(); if ((numberSpecified != null) && (numberSpecified.equals(typeUomProductFeatureAndAppl.getDouble("numberSpecified")))) { foundOneEqual = true; } else { @@ -554,9 +554,9 @@ // NOTE: if numberSpecified is null then foundOneEqual will always be false, so need to check both if (numberSpecified != null && !foundOneEqual) { String productFeatureId = null; - List existingProductFeatureList = delegator.findByAnd("ProductFeature", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "numberSpecified", numberSpecified, "uomId", uomId)); + List<GenericValue> existingProductFeatureList = delegator.findByAnd("ProductFeature", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "numberSpecified", numberSpecified, "uomId", uomId)); if (existingProductFeatureList.size() > 0) { - GenericValue existingProductFeature = (GenericValue) existingProductFeatureList.get(0); + GenericValue existingProductFeature = existingProductFeatureList.get(0); productFeatureId = existingProductFeature.getString("productFeatureId"); } else { // doesn't exist, so create it @@ -623,7 +623,7 @@ description = null; } - Set variantDescRemoveToRemoveOnVirtual = FastSet.newInstance(); + Set<String> variantDescRemoveToRemoveOnVirtual = FastSet.newInstance(); checkUpdateFeatureApplByDescription(variantProductId, variantProduct, description, productFeatureTypeId, productFeatureType, "STANDARD_FEATURE", nowTimestamp, delegator, null, variantDescRemoveToRemoveOnVirtual); checkUpdateFeatureApplByDescription(productId, product, description, productFeatureTypeId, productFeatureType, "SELECTABLE_FEATURE", nowTimestamp, delegator, variantDescRemoveToRemoveOnVirtual, null); @@ -659,38 +659,38 @@ protected static void checkUpdateFeatureApplByDescription(String productId, GenericValue product, String description, String productFeatureTypeId, GenericValue productFeatureType, String productFeatureApplTypeId, - Timestamp nowTimestamp, GenericDelegator delegator, Set descriptionsToRemove, Set descriptionsRemoved) throws GenericEntityException { + Timestamp nowTimestamp, GenericDelegator delegator, Set<String> descriptionsToRemove, Set<String> descriptionsRemoved) throws GenericEntityException { if (productFeatureType == null) { return; } GenericValue productFeatureAndAppl = null; - Set descriptionsForThisType = FastSet.newInstance(); - List productFeatureAndApplList = EntityUtil.filterByDate(delegator.findByAnd("ProductFeatureAndAppl", UtilMisc.toMap("productId", productId, + Set<String> descriptionsForThisType = FastSet.newInstance(); + List<GenericValue> productFeatureAndApplList = EntityUtil.filterByDate(delegator.findByAnd("ProductFeatureAndAppl", UtilMisc.toMap("productId", productId, "productFeatureApplTypeId", productFeatureApplTypeId, "productFeatureTypeId", productFeatureTypeId)), true); if (productFeatureAndApplList.size() > 0) { - Iterator productFeatureAndApplIter = productFeatureAndApplList.iterator(); + Iterator<GenericValue> productFeatureAndApplIter = productFeatureAndApplList.iterator(); while (productFeatureAndApplIter.hasNext()) { - productFeatureAndAppl = (GenericValue) productFeatureAndApplIter.next(); + productFeatureAndAppl = productFeatureAndApplIter.next(); GenericValue productFeatureAppl = delegator.makeValidValue("ProductFeatureAppl", productFeatureAndAppl); // remove productFeatureAppl IFF: productFeatureAppl != null && (description is empty/null || description is different than existing) if (productFeatureAppl != null && (description == null || !description.equals(productFeatureAndAppl.getString("description")))) { // if descriptionsToRemove is not null, only remove if description is in that set - if (descriptionsToRemove == null || (descriptionsToRemove != null && descriptionsToRemove.contains(productFeatureAndAppl.get("description")))) { + if (descriptionsToRemove == null || (descriptionsToRemove != null && descriptionsToRemove.contains(productFeatureAndAppl.getString("description")))) { // okay, almost there: before removing it if this is a virtual product check to make SURE this feature's description doesn't exist on any of the variants; wouldn't want to remove something we should have kept around... if ("Y".equals(product.getString("isVirtual"))) { boolean foundFeatureOnVariant = false; // get/check all the variants - List variantAssocs = product.getRelatedByAnd("MainProductAssoc", UtilMisc.toMap("productAssocTypeId", "PRODUCT_VARIANT")); + List<GenericValue> variantAssocs = product.getRelatedByAnd("MainProductAssoc", UtilMisc.toMap("productAssocTypeId", "PRODUCT_VARIANT")); variantAssocs = EntityUtil.filterByDate(variantAssocs); - List variants = EntityUtil.getRelated("AssocProduct", variantAssocs); - Iterator variantIter = variants.iterator(); + List<GenericValue> variants = EntityUtil.getRelated("AssocProduct", variantAssocs); + Iterator<GenericValue> variantIter = variants.iterator(); while (!foundFeatureOnVariant && variantIter.hasNext()) { - GenericValue variant = (GenericValue) variantIter.next(); + GenericValue variant = variantIter.next(); // get the selectable features for the variant - List variantProductFeatureAndAppls = variant.getRelated("ProductFeatureAndAppl", + List<GenericValue> variantProductFeatureAndAppls = variant.getRelated("ProductFeatureAndAppl", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "productFeatureApplTypeId", "STANDARD_FEATURE", "description", description), null); if (variantProductFeatureAndAppls.size() > 0) { @@ -705,7 +705,7 @@ } if (descriptionsRemoved != null) { - descriptionsRemoved.add(productFeatureAndAppl.get("description")); + descriptionsRemoved.add(productFeatureAndAppl.getString("description")); } productFeatureAppl.remove(); continue; @@ -713,7 +713,7 @@ } // we got here, is still a valid description associated with this product - descriptionsForThisType.add(productFeatureAndAppl.get("description")); + descriptionsForThisType.add(productFeatureAndAppl.getString("description")); } } @@ -722,9 +722,9 @@ // see if a feature exists with the type and description specified (if doesn't exist will create later) String productFeatureId = null; - List existingProductFeatureList = delegator.findByAnd("ProductFeature", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "description", description)); + List<GenericValue> existingProductFeatureList = delegator.findByAnd("ProductFeature", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "description", description)); if (existingProductFeatureList.size() > 0) { - GenericValue existingProductFeature = (GenericValue) existingProductFeatureList.get(0); + GenericValue existingProductFeature = existingProductFeatureList.get(0); productFeatureId = existingProductFeature.getString("productFeatureId"); } else { // doesn't exist, so create it @@ -747,7 +747,7 @@ } // check to see if the productFeatureId is already attached to the virtual or variant, if not attach them... - List specificProductFeatureApplList = EntityUtil.filterByDate(delegator.findByAnd("ProductFeatureAppl", UtilMisc.toMap("productId", productId, + List<GenericValue> specificProductFeatureApplList = EntityUtil.filterByDate(delegator.findByAnd("ProductFeatureAppl", UtilMisc.toMap("productId", productId, "productFeatureApplTypeId", productFeatureApplTypeId, "productFeatureId", productFeatureId)), true); if (specificProductFeatureApplList.size() == 0) { @@ -770,26 +770,26 @@ try { GenericValue product = delegator.findByPrimaryKey("Product", UtilMisc.toMap("productId", productId)); // get all the variants - List variantAssocs = product.getRelatedByAnd("MainProductAssoc", UtilMisc.toMap("productAssocTypeId", "PRODUCT_VARIANT")); + List<GenericValue> variantAssocs = product.getRelatedByAnd("MainProductAssoc", UtilMisc.toMap("productAssocTypeId", "PRODUCT_VARIANT")); variantAssocs = EntityUtil.filterByDate(variantAssocs); - List variants = EntityUtil.getRelated("AssocProduct", variantAssocs); - Iterator variantIter = variants.iterator(); + List<GenericValue> variants = EntityUtil.getRelated("AssocProduct", variantAssocs); + Iterator<GenericValue> variantIter = variants.iterator(); while (variantIter.hasNext()) { - GenericValue variant = (GenericValue) variantIter.next(); + GenericValue variant = variantIter.next(); // get the selectable features for the variant - List productFeatureAndAppls = variant.getRelated("ProductFeatureAndAppl", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "productFeatureApplTypeId", "STANDARD_FEATURE"), null); - Iterator productFeatureAndApplIter = productFeatureAndAppls.iterator(); + List<GenericValue> productFeatureAndAppls = variant.getRelated("ProductFeatureAndAppl", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "productFeatureApplTypeId", "STANDARD_FEATURE"), null); + Iterator<GenericValue> productFeatureAndApplIter = productFeatureAndAppls.iterator(); while (productFeatureAndApplIter.hasNext()) { - GenericValue productFeatureAndAppl = (GenericValue) productFeatureAndApplIter.next(); + GenericValue productFeatureAndAppl = productFeatureAndApplIter.next(); GenericPK productFeatureApplPK = delegator.makePK("ProductFeatureAppl"); productFeatureApplPK.setPKFields(productFeatureAndAppl); delegator.removeByPrimaryKey(productFeatureApplPK); } } - List productFeatureAndAppls = product.getRelated("ProductFeatureAndAppl", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "productFeatureApplTypeId", "SELECTABLE_FEATURE"), null); - Iterator productFeatureAndApplIter = productFeatureAndAppls.iterator(); + List<GenericValue> productFeatureAndAppls = product.getRelated("ProductFeatureAndAppl", UtilMisc.toMap("productFeatureTypeId", productFeatureTypeId, "productFeatureApplTypeId", "SELECTABLE_FEATURE"), null); + Iterator<GenericValue> productFeatureAndApplIter = productFeatureAndAppls.iterator(); while (productFeatureAndApplIter.hasNext()) { - GenericValue productFeatureAndAppl = (GenericValue) productFeatureAndApplIter.next(); + GenericValue productFeatureAndAppl = productFeatureAndApplIter.next(); GenericPK productFeatureApplPK = delegator.makePK("ProductFeatureAppl"); productFeatureApplPK.setPKFields(productFeatureAndAppl); delegator.removeByPrimaryKey(productFeatureApplPK); @@ -836,7 +836,7 @@ if (categoryId != null) { for (int i = 0; i < categoryId.length; i++) { try { - List catMembs = delegator.findByAnd("ProductCategoryMember", UtilMisc.toMap( + List<GenericValue> catMembs = delegator.findByAnd("ProductCategoryMember", UtilMisc.toMap( "productCategoryId", categoryId[i], "productId", productId)); catMembs = EntityUtil.filterByDate(catMembs); @@ -864,12 +864,12 @@ thruDate = UtilDateTime.nowTimestamp().toString(); } try { - List prodCatMembs = delegator.findByAnd("ProductCategoryMember", + List<GenericValue> prodCatMembs = delegator.findByAnd("ProductCategoryMember", UtilMisc.toMap("productCategoryId", productCategoryId, "productId", productId)); prodCatMembs = EntityUtil.filterByDate(prodCatMembs); if (prodCatMembs.size() > 0) { // there is one to modify - GenericValue prodCatMemb = (GenericValue)prodCatMembs.get(0); + GenericValue prodCatMemb = prodCatMembs.get(0); prodCatMemb.setString("thruDate", thruDate); prodCatMemb.store(); } @@ -895,7 +895,7 @@ try { for (int i = 0; i < productFeatureIdArray.length; i++) { if (!productFeatureIdArray[i].equals("~~any~~")) { - List featureAppls = delegator.findByAnd("ProductFeatureAppl", + List<GenericValue> featureAppls = delegator.findByAnd("ProductFeatureAppl", UtilMisc.toMap("productId", productId, "productFeatureId", productFeatureIdArray[i], "productFeatureApplTypeId", productFeatureApplTypeId)); @@ -966,7 +966,7 @@ GenericValue productStore = ProductStoreWorker.getProductStore(request); if (productStore != null && userLogin != null) { if ("Y".equals(productStore.getString("requireCustomerRole"))) { - List productStoreRoleList = null; + List<GenericValue> productStoreRoleList = null; try { productStoreRoleList = delegator.findByAnd("ProductStoreRole", UtilMisc.toMap("productStoreId", productStore.get("productStoreId"), "partyId", userLogin.get("partyId"), "roleTypeId", "CUSTOMER")); @@ -1024,11 +1024,11 @@ bodyScreenLocation = defaultScreenLocation; } - Map paramMap = UtilHttp.getParameterMap(request); + Map<String, Object> paramMap = UtilHttp.getParameterMap(request); paramMap.put("locale", UtilHttp.getLocale(request)); paramMap.put("userLogin", session.getAttribute("userLogin")); - Map context = FastMap.newInstance(); + Map<String, Object> context = FastMap.newInstance(); context.put("bodyScreenUri", bodyScreenLocation); context.put("bodyParameters", paramMap); context.put("sendTo", paramMap.get("sendTo")); Modified: ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearch.java URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearch.java?rev=712916&r1=712915&r2=712916&view=diff ============================================================================== --- ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearch.java (original) +++ ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductSearch.java Mon Nov 10 18:16:46 2008 @@ -71,8 +71,8 @@ public static final String resource = "ProductUiLabels"; public static final String resourceCommon = "CommonUiLabels"; - public static ArrayList parametricKeywordSearch(Map featureIdByType, String keywordsString, GenericDelegator delegator, String productCategoryId, String visitId, boolean anyPrefix, boolean anySuffix, boolean isAnd) { - Set featureIdSet = FastSet.newInstance(); + public static ArrayList parametricKeywordSearch(Map<?, String> featureIdByType, String keywordsString, GenericDelegator delegator, String productCategoryId, String visitId, boolean anyPrefix, boolean anySuffix, boolean isAnd) { + Set<String> featureIdSet = FastSet.newInstance(); if (featureIdByType != null) { featureIdSet.addAll(featureIdByType.values()); } @@ -80,8 +80,8 @@ return parametricKeywordSearch(featureIdSet, keywordsString, delegator, productCategoryId, true, visitId, anyPrefix, anySuffix, isAnd); } - public static ArrayList parametricKeywordSearch(Set featureIdSet, String keywordsString, GenericDelegator delegator, String productCategoryId, boolean includeSubCategories, String visitId, boolean anyPrefix, boolean anySuffix, boolean isAnd) { - List productSearchConstraintList = FastList.newInstance(); + public static ArrayList parametricKeywordSearch(Set<String> featureIdSet, String keywordsString, GenericDelegator delegator, String productCategoryId, boolean includeSubCategories, String visitId, boolean anyPrefix, boolean anySuffix, boolean isAnd) { + List<ProductSearchConstraint> productSearchConstraintList = FastList.newInstance(); if (UtilValidate.isNotEmpty(productCategoryId)) { productSearchConstraintList.add(new CategoryConstraint(productCategoryId, includeSubCategories, null)); @@ -92,9 +92,9 @@ } if (UtilValidate.isNotEmpty(featureIdSet)) { - Iterator featureIdIter = featureIdSet.iterator(); + Iterator<String> featureIdIter = featureIdSet.iterator(); while (featureIdIter.hasNext()) { - String productFeatureId = (String) featureIdIter.next(); + String productFeatureId = featureIdIter.next(); productSearchConstraintList.add(new FeatureConstraint(productFeatureId, null)); } } @@ -102,17 +102,17 @@ return searchProducts(productSearchConstraintList, new SortKeywordRelevancy(), delegator, visitId); } - public static ArrayList searchProducts(List productSearchConstraintList, ResultSortOrder resultSortOrder, GenericDelegator delegator, String visitId) { + public static ArrayList<String> searchProducts(List<ProductSearchConstraint> productSearchConstraintList, ResultSortOrder resultSortOrder, GenericDelegator delegator, String visitId) { ProductSearchContext productSearchContext = new ProductSearchContext(delegator, visitId); productSearchContext.addProductSearchConstraints(productSearchConstraintList); productSearchContext.setResultSortOrder(resultSortOrder); - ArrayList productIds = productSearchContext.doSearch(); + ArrayList<String> productIds = productSearchContext.doSearch(); return productIds; } - public static void getAllSubCategoryIds(String productCategoryId, Set productCategoryIdSet, GenericDelegator delegator, Timestamp nowTimestamp) { + public static void getAllSubCategoryIds(String productCategoryId, Set<String> productCategoryIdSet, GenericDelegator delegator, Timestamp nowTimestamp) { if (nowTimestamp == null) { nowTimestamp = UtilDateTime.nowTimestamp(); } @@ -124,10 +124,11 @@ // now find all sub-categories, filtered by effective dates, and call this routine for them try { - List productCategoryRollupList = delegator.findByAndCache("ProductCategoryRollup", UtilMisc.toMap("parentProductCategoryId", productCategoryId)); - Iterator productCategoryRollupIter = productCategoryRollupList.iterator(); + List<GenericValue> productCategoryRollupList = delegator.findByAndCache("ProductCategoryRollup", UtilMisc.toMap("parentProductCategoryId", productCategoryId)); + + Iterator<GenericValue> productCategoryRollupIter = productCategoryRollupList.iterator(); while (productCategoryRollupIter.hasNext()) { - GenericValue productCategoryRollup = (GenericValue) productCategoryRollupIter.next(); + GenericValue productCategoryRollup = productCategoryRollupIter.next(); String subProductCategoryId = productCategoryRollup.getString("productCategoryId"); if (productCategoryIdSet.contains(subProductCategoryId)) { @@ -147,17 +148,17 @@ public static class ProductSearchContext { public int index = 1; - public List entityConditionList = FastList.newInstance(); - public List orderByList = FastList.newInstance(); - public List fieldsToSelect = UtilMisc.toList("mainProductId"); + public List<EntityCondition> entityConditionList = FastList.newInstance(); + public List<String> orderByList = FastList.newInstance(); + public List<String> fieldsToSelect = UtilMisc.toList("mainProductId"); public DynamicViewEntity dynamicViewEntity = new DynamicViewEntity(); public boolean productIdGroupBy = false; public boolean includedKeywordSearch = false; public Timestamp nowTimestamp = UtilDateTime.nowTimestamp(); - public List keywordFixedOrSetAndList = FastList.newInstance(); - public Set orKeywordFixedSet = FastSet.newInstance(); - public Set andKeywordFixedSet = FastSet.newInstance(); - public List productSearchConstraintList = FastList.newInstance(); + public List<Set<String>> keywordFixedOrSetAndList = FastList.newInstance(); + public Set<String> orKeywordFixedSet = FastSet.newInstance(); + public Set<String> andKeywordFixedSet = FastSet.newInstance(); + public List<GenericValue> productSearchConstraintList = FastList.newInstance(); public ResultSortOrder resultSortOrder = null; public Integer resultOffset = null; public Integer maxResults = null; @@ -165,27 +166,27 @@ protected String visitId = null; protected Integer totalResults = null; - public Set includeCategoryIds = FastSet.newInstance(); - public Set excludeCategoryIds = FastSet.newInstance(); + public Set<String> includeCategoryIds = FastSet.newInstance(); + public Set<String> excludeCategoryIds = FastSet.newInstance(); public Set alwaysIncludeCategoryIds = FastSet.newInstance(); - public List includeCategoryIdOrSetAndList = FastList.newInstance(); - public List alwaysIncludeCategoryIdOrSetAndList = FastList.newInstance(); + public List<Set<String>> includeCategoryIdOrSetAndList = FastList.newInstance(); + public List<Set<String>> alwaysIncludeCategoryIdOrSetAndList = FastList.newInstance(); - public Set includeFeatureIds = FastSet.newInstance(); - public Set excludeFeatureIds = FastSet.newInstance(); - public Set alwaysIncludeFeatureIds = FastSet.newInstance(); + public Set<String> includeFeatureIds = FastSet.newInstance(); + public Set<String> excludeFeatureIds = FastSet.newInstance(); + public Set<String> alwaysIncludeFeatureIds = FastSet.newInstance(); - public List includeFeatureIdOrSetAndList = FastList.newInstance(); - public List alwaysIncludeFeatureIdOrSetAndList = FastList.newInstance(); + public List<Set<String>> includeFeatureIdOrSetAndList = FastList.newInstance(); + public List<Set<String>> alwaysIncludeFeatureIdOrSetAndList = FastList.newInstance(); - public Set includeFeatureCategoryIds = FastSet.newInstance(); - public Set excludeFeatureCategoryIds = FastSet.newInstance(); - public Set alwaysIncludeFeatureCategoryIds = FastSet.newInstance(); - - public Set includeFeatureGroupIds = FastSet.newInstance(); - public Set excludeFeatureGroupIds = FastSet.newInstance(); - public Set alwaysIncludeFeatureGroupIds = FastSet.newInstance(); + public Set<String> includeFeatureCategoryIds = FastSet.newInstance(); + public Set<String> excludeFeatureCategoryIds = FastSet.newInstance(); + public Set<String> alwaysIncludeFeatureCategoryIds = FastSet.newInstance(); + + public Set<String> includeFeatureGroupIds = FastSet.newInstance(); + public Set<String> excludeFeatureGroupIds = FastSet.newInstance(); + public Set<String> alwaysIncludeFeatureGroupIds = FastSet.newInstance(); public ProductSearchContext(GenericDelegator delegator, String visitId) { this.delegator = delegator; @@ -199,11 +200,11 @@ return this.delegator; } - public void addProductSearchConstraints(List productSearchConstraintList) { + public void addProductSearchConstraints(List<ProductSearchConstraint> productSearchConstraintList) { // Go through the constraints and add them in - Iterator productSearchConstraintIter = productSearchConstraintList.iterator(); + Iterator<ProductSearchConstraint> productSearchConstraintIter = productSearchConstraintList.iterator(); while (productSearchConstraintIter.hasNext()) { - ProductSearchConstraint constraint = (ProductSearchConstraint) productSearchConstraintIter.next(); + ProductSearchConstraint constraint = productSearchConstraintIter.next(); constraint.addConstraint(this); } } @@ -224,12 +225,12 @@ return this.totalResults; } - public ArrayList doSearch() { + public ArrayList<String> doSearch() { long startMillis = System.currentTimeMillis(); // do the query EntityListIterator eli = this.doQuery(delegator); - ArrayList productIds = this.makeProductIdList(eli); + ArrayList<String> productIds = this.makeProductIdList(eli); if (eli != null) { try { eli.close(); @@ -262,9 +263,9 @@ } // remove all or sets from the or set and list where the or set is size 1 and put them in the and list - Iterator keywordFixedOrSetAndTestIter = keywordFixedOrSetAndList.iterator(); + Iterator<Set<String>> keywordFixedOrSetAndTestIter = keywordFixedOrSetAndList.iterator(); while (keywordFixedOrSetAndTestIter.hasNext()) { - Set keywordFixedOrSet = (Set) keywordFixedOrSetAndTestIter.next(); + Set<String> keywordFixedOrSet = keywordFixedOrSetAndTestIter.next(); if (keywordFixedOrSet.size() == 0) { keywordFixedOrSetAndTestIter.remove(); } else if (keywordFixedOrSet.size() == 1) { @@ -282,9 +283,9 @@ if (andKeywordFixedSet.size() > 0) { // add up the relevancyWeight fields from all keyword member entities for a total to sort by - Iterator keywordIter = andKeywordFixedSet.iterator(); + Iterator<String> keywordIter = andKeywordFixedSet.iterator(); while (keywordIter.hasNext()) { - String keyword = (String) keywordIter.next(); + String keyword = keywordIter.next(); // make index based values and increment String entityAlias = "PK" + index; @@ -311,9 +312,9 @@ } } if (keywordFixedOrSetAndList.size() > 0) { - Iterator keywordFixedOrSetAndIter = keywordFixedOrSetAndList.iterator(); + Iterator<Set<String>> keywordFixedOrSetAndIter = keywordFixedOrSetAndList.iterator(); while (keywordFixedOrSetAndIter.hasNext()) { - Set keywordFixedOrSet = (Set) keywordFixedOrSetAndIter.next(); + Set<String> keywordFixedOrSet = keywordFixedOrSetAndIter.next(); // make index based values and increment String entityAlias = "PK" + index; String prefix = "pk" + index; @@ -322,10 +323,10 @@ dynamicViewEntity.addMemberEntity(entityAlias, "ProductKeyword"); dynamicViewEntity.addAlias(entityAlias, prefix + "Keyword", "keyword", null, null, null, null); dynamicViewEntity.addViewLink("PROD", entityAlias, Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId")); - List keywordOrList = FastList.newInstance(); - Iterator keywordIter = keywordFixedOrSet.iterator(); + List<EntityCondition> keywordOrList = FastList.newInstance(); + Iterator<String> keywordIter = keywordFixedOrSet.iterator(); while (keywordIter.hasNext()) { - String keyword = (String) keywordIter.next(); + String keyword = keywordIter.next(); keywordOrList.add(EntityCondition.makeCondition(prefix + "Keyword", EntityOperator.LIKE, keyword)); } entityConditionList.add(EntityCondition.makeCondition(keywordOrList, EntityOperator.OR)); @@ -358,18 +359,18 @@ // create new view members with logic: // ((each Id = category includes AND Id IN feature includes) AND (Id NOT IN category excludes AND Id NOT IN feature excludes)) // OR (each Id = category alwaysIncludes AND each Id = feature alwaysIncludes) - List incExcCondList = FastList.newInstance(); + List<EntityCondition> incExcCondList = FastList.newInstance(); EntityCondition incExcCond = null; - List alwIncCondList = FastList.newInstance(); + List<EntityCondition> alwIncCondList = FastList.newInstance(); EntityCondition alwIncCond = null; EntityCondition topCond = null; if (includeCategoryIds.size() > 0) { - Iterator includeCategoryIdIter = includeCategoryIds.iterator(); + Iterator<String> includeCategoryIdIter = includeCategoryIds.iterator(); while (includeCategoryIdIter.hasNext()) { - String includeCategoryId = (String) includeCategoryIdIter.next(); + String includeCategoryId = includeCategoryIdIter.next(); String categoryPrefix = "pcm" + this.index; String entityAlias = "PCM" + this.index; this.index++; @@ -385,9 +386,9 @@ } } if (includeFeatureIds.size() > 0) { - Iterator includeFeatureIdIter = includeFeatureIds.iterator(); + Iterator<String> includeFeatureIdIter = includeFeatureIds.iterator(); while (includeFeatureIdIter.hasNext()) { - String includeFeatureId = (String) includeFeatureIdIter.next(); + String includeFeatureId = includeFeatureIdIter.next(); String featurePrefix = "pfa" + this.index; String entityAlias = "PFA" + this.index; this.index++; @@ -403,9 +404,9 @@ } } if (includeFeatureCategoryIds.size() > 0) { - Iterator includeFeatureCategoryIdIter = includeFeatureCategoryIds.iterator(); + Iterator<String> includeFeatureCategoryIdIter = includeFeatureCategoryIds.iterator(); while (includeFeatureCategoryIdIter.hasNext()) { - String includeFeatureCategoryId = (String) includeFeatureCategoryIdIter.next(); + String includeFeatureCategoryId = includeFeatureCategoryIdIter.next(); String featurePrefix = "pfa" + this.index; String entityAlias = "PFA" + this.index; String otherFeaturePrefix = "pfe" + this.index; @@ -425,9 +426,9 @@ } } if (includeFeatureGroupIds.size() > 0) { - Iterator includeFeatureGroupIdIter = includeFeatureGroupIds.iterator(); + Iterator<String> includeFeatureGroupIdIter = includeFeatureGroupIds.iterator(); while (includeFeatureGroupIdIter.hasNext()) { - String includeFeatureGroupId = (String) includeFeatureGroupIdIter.next(); + String includeFeatureGroupId = includeFeatureGroupIdIter.next(); String featurePrefix = "pfa" + this.index; String entityAlias = "PFA" + this.index; String otherFeaturePrefix = "pfga" + this.index; @@ -452,7 +453,7 @@ } if (excludeCategoryIds.size() > 0) { - List idExcludeCondList = FastList.newInstance(); + List<EntityCondition> idExcludeCondList = FastList.newInstance(); idExcludeCondList.add(EntityCondition.makeCondition(EntityCondition.makeCondition("thruDate", EntityOperator.EQUALS, null), EntityOperator.OR, EntityCondition.makeCondition("thruDate", EntityOperator.GREATER_THAN, this.nowTimestamp))); idExcludeCondList.add(EntityCondition.makeCondition("fromDate", EntityOperator.LESS_THAN, this.nowTimestamp)); idExcludeCondList.add(EntityCondition.makeCondition("productCategoryId", EntityOperator.IN, excludeCategoryIds)); @@ -460,7 +461,7 @@ incExcCondList.add(EntityCondition.makeCondition("mainProductId", EntityOperator.NOT_EQUAL, subSelCond)); } if (excludeFeatureIds.size() > 0) { - List idExcludeCondList = FastList.newInstance(); + List<EntityCondition> idExcludeCondList = FastList.newInstance(); idExcludeCondList.add(EntityCondition.makeCondition(EntityCondition.makeCondition("thruDate", EntityOperator.EQUALS, null), EntityOperator.OR, EntityCondition.makeCondition("thruDate", EntityOperator.GREATER_THAN, this.nowTimestamp))); idExcludeCondList.add(EntityCondition.makeCondition("fromDate", EntityOperator.LESS_THAN, this.nowTimestamp)); idExcludeCondList.add(EntityCondition.makeCondition("productFeatureId", EntityOperator.IN, excludeFeatureIds)); @@ -468,7 +469,7 @@ incExcCondList.add(EntityCondition.makeCondition("mainProductId", EntityOperator.NOT_EQUAL, subSelCond)); } if (excludeFeatureCategoryIds.size() > 0) { - List idExcludeCondList = FastList.newInstance(); + List<EntityCondition> idExcludeCondList = FastList.newInstance(); idExcludeCondList.add(EntityCondition.makeCondition(EntityCondition.makeCondition("thruDate", EntityOperator.EQUALS, null), EntityOperator.OR, EntityCondition.makeCondition("thruDate", EntityOperator.GREATER_THAN, this.nowTimestamp))); idExcludeCondList.add(EntityCondition.makeCondition("fromDate", EntityOperator.LESS_THAN, this.nowTimestamp)); idExcludeCondList.add(EntityCondition.makeCondition("productFeatureCategoryId", EntityOperator.IN, excludeFeatureCategoryIds)); @@ -476,7 +477,7 @@ incExcCondList.add(EntityCondition.makeCondition("mainProductId", EntityOperator.NOT_EQUAL, subSelCond)); } if (excludeFeatureGroupIds.size() > 0) { - List idExcludeCondList = FastList.newInstance(); + List<EntityCondition> idExcludeCondList = FastList.newInstance(); idExcludeCondList.add(EntityCondition.makeCondition(EntityCondition.makeCondition("thruDate", EntityOperator.EQUALS, null), EntityOperator.OR, EntityCondition.makeCondition("thruDate", EntityOperator.GREATER_THAN, this.nowTimestamp))); idExcludeCondList.add(EntityCondition.makeCondition("fromDate", EntityOperator.LESS_THAN, this.nowTimestamp)); idExcludeCondList.add(EntityCondition.makeCondition(EntityCondition.makeCondition("groupThruDate", EntityOperator.EQUALS, null), EntityOperator.OR, EntityCondition.makeCondition("groupThruDate", EntityOperator.GREATER_THAN, this.nowTimestamp))); @@ -515,9 +516,9 @@ alwIncCondList.add(EntityCondition.makeCondition(featurePrefix + "ProductFeatureId", EntityOperator.IN, alwaysIncludeFeatureIds)); } if (alwaysIncludeFeatureCategoryIds.size() > 0) { - Iterator alwaysIncludeFeatureCategoryIdIter = alwaysIncludeFeatureCategoryIds.iterator(); + Iterator<String> alwaysIncludeFeatureCategoryIdIter = alwaysIncludeFeatureCategoryIds.iterator(); while (alwaysIncludeFeatureCategoryIdIter.hasNext()) { - String alwaysIncludeFeatureCategoryId = (String) alwaysIncludeFeatureCategoryIdIter.next(); + String alwaysIncludeFeatureCategoryId = alwaysIncludeFeatureCategoryIdIter.next(); String featurePrefix = "pfa" + this.index; String entityAlias = "PFA" + this.index; String otherFeaturePrefix = "pfe" + this.index; @@ -537,9 +538,9 @@ } } if (alwaysIncludeFeatureGroupIds.size() > 0) { - Iterator alwaysIncludeFeatureGroupIdIter = alwaysIncludeFeatureGroupIds.iterator(); + Iterator<String> alwaysIncludeFeatureGroupIdIter = alwaysIncludeFeatureGroupIds.iterator(); while (alwaysIncludeFeatureGroupIdIter.hasNext()) { - String alwaysIncludeFeatureGroupId = (String) alwaysIncludeFeatureGroupIdIter.next(); + String alwaysIncludeFeatureGroupId = alwaysIncludeFeatureGroupIdIter.next(); String featurePrefix = "pfa" + this.index; String entityAlias = "PFA" + this.index; String otherFeaturePrefix = "pfga" + this.index; @@ -565,9 +566,9 @@ // handle includeFeatureIdOrSetAndList and alwaysIncludeFeatureIdOrSetAndList if (includeFeatureIdOrSetAndList.size() > 0) { - Iterator includeFeatureIdOrSetAndIter = includeFeatureIdOrSetAndList.iterator(); + Iterator<Set<String>> includeFeatureIdOrSetAndIter = includeFeatureIdOrSetAndList.iterator(); while (includeFeatureIdOrSetAndIter.hasNext()) { - Set includeFeatureIdOrSet = (Set) includeFeatureIdOrSetAndIter.next(); + Set<String> includeFeatureIdOrSet = includeFeatureIdOrSetAndIter.next(); String featurePrefix = "pfa" + this.index; String entityAlias = "PFA" + this.index; this.index++; @@ -583,9 +584,9 @@ } } if (alwaysIncludeFeatureIdOrSetAndList.size() > 0) { - Iterator alwaysIncludeFeatureIdOrSetAndIter = alwaysIncludeFeatureIdOrSetAndList.iterator(); + Iterator<Set<String>> alwaysIncludeFeatureIdOrSetAndIter = alwaysIncludeFeatureIdOrSetAndList.iterator(); while (alwaysIncludeFeatureIdOrSetAndIter.hasNext()) { - Set alwaysIncludeFeatureIdOrSet = (Set) alwaysIncludeFeatureIdOrSetAndIter.next(); + Set<String> alwaysIncludeFeatureIdOrSet = alwaysIncludeFeatureIdOrSetAndIter.next(); String featurePrefix = "pfa" + this.index; String entityAlias = "PFA" + this.index; this.index++; @@ -603,9 +604,9 @@ // handle includeCategoryIdOrSetAndList and alwaysIncludeCategoryIdOrSetAndList if (includeCategoryIdOrSetAndList.size() > 0) { - Iterator includeCategoryIdOrSetAndIter = includeCategoryIdOrSetAndList.iterator(); + Iterator<Set<String>> includeCategoryIdOrSetAndIter = includeCategoryIdOrSetAndList.iterator(); while (includeCategoryIdOrSetAndIter.hasNext()) { - Set includeCategoryIdOrSet = (Set) includeCategoryIdOrSetAndIter.next(); + Set<String> includeCategoryIdOrSet = includeCategoryIdOrSetAndIter.next(); String categoryPrefix = "pcm" + this.index; String entityAlias = "PCM" + this.index; this.index++; @@ -621,9 +622,9 @@ } } if (alwaysIncludeCategoryIdOrSetAndList.size() > 0) { - Iterator alwaysIncludeCategoryIdOrSetAndIter = alwaysIncludeCategoryIdOrSetAndList.iterator(); + Iterator<Set<String>> alwaysIncludeCategoryIdOrSetAndIter = alwaysIncludeCategoryIdOrSetAndList.iterator(); while (alwaysIncludeCategoryIdOrSetAndIter.hasNext()) { - Set alwaysIncludeCategoryIdOrSet = (Set) alwaysIncludeCategoryIdOrSetAndIter.next(); + Set<String> alwaysIncludeCategoryIdOrSet = alwaysIncludeCategoryIdOrSetAndIter.next(); String categoryPrefix = "pcm" + this.index; String entityAlias = "PCM" + this.index; this.index++; @@ -686,8 +687,8 @@ return eli; } - public ArrayList makeProductIdList(EntityListIterator eli) { - ArrayList productIds = new ArrayList(maxResults == null ? 100 : maxResults.intValue()); + public ArrayList<String> makeProductIdList(EntityListIterator eli) { + ArrayList<String> productIds = new ArrayList<String>(maxResults == null ? 100 : maxResults.intValue()); if (eli == null) { Debug.logWarning("The eli is null, returning zero results", module); return productIds; @@ -744,7 +745,7 @@ int numRetreived = 1; int duplicatesFound = 0; - Set productIdSet = FastSet.newInstance(); + Set<String> productIdSet = FastSet.newInstance(); productIds.add(searchResult.getString("mainProductId")); productIdSet.add(searchResult.getString("mainProductId")); @@ -761,9 +762,9 @@ /* StringBuilder lineMsg = new StringBuilder("Got search result line: "); - Iterator fieldsToSelectIter = fieldsToSelect.iterator(); + Iterator<String> fieldsToSelectIter = fieldsToSelect.iterator(); while (fieldsToSelectIter.hasNext()) { - String fieldName = (String) fieldsToSelectIter.next(); + String fieldName = fieldsToSelectIter.next(); lineMsg.append(fieldName); lineMsg.append("="); lineMsg.append(searchResult.get(fieldName)); @@ -822,10 +823,10 @@ productSearchResult.set("searchDate", nowTimestamp); productSearchResult.create(); - Iterator productSearchConstraintIter = productSearchConstraintList.iterator(); + Iterator<GenericValue> productSearchConstraintIter = productSearchConstraintList.iterator(); int seqId = 1; while (productSearchConstraintIter.hasNext()) { - GenericValue productSearchConstraint = (GenericValue) productSearchConstraintIter.next(); + GenericValue productSearchConstraint = productSearchConstraintIter.next(); productSearchConstraint.set("productSearchResultId", productSearchResultId); productSearchConstraint.set("constraintSeqId", Integer.toString(seqId)); productSearchConstraint.create(); @@ -860,18 +861,18 @@ public static class CatalogConstraint extends ProductSearchConstraint { public static final String constraintName = "Catalog"; protected String prodCatalogId; - protected List productCategories; + protected List<GenericValue> productCategories; - public CatalogConstraint(String prodCatalogId, List productCategories) { + public CatalogConstraint(String prodCatalogId, List<GenericValue> productCategories) { this.prodCatalogId = prodCatalogId; this.productCategories = productCategories; } public void addConstraint(ProductSearchContext productSearchContext) { - List productCategoryIds = FastList.newInstance(); - Iterator itCat = productCategories.iterator(); + List<String> productCategoryIds = FastList.newInstance(); + Iterator<GenericValue> itCat = productCategories.iterator(); while (itCat.hasNext()) { - GenericValue category = (GenericValue)itCat.next(); + GenericValue category = itCat.next(); productCategoryIds.add(category.getString("productCategoryId")); } @@ -901,7 +902,7 @@ Debug.logError(e, "Error finding ProdCatalog information for constraint pretty print", module); } StringBuilder ppBuf = new StringBuilder(); - ppBuf.append(UtilProperties.getMessage(resource, "ProductCatalog", locale)+": "); + ppBuf.append(UtilProperties.getMessage(resource, "ProductCatalog", locale)).append(": "); if (prodCatalog != null) { ppBuf.append(prodCatalog.getString("catalogName")); } @@ -948,7 +949,7 @@ } public void addConstraint(ProductSearchContext productSearchContext) { - Set productCategoryIdSet = FastSet.newInstance(); + Set<String> productCategoryIdSet = FastSet.newInstance(); if (includeSubCategories) { // find all sub-categories recursively, make a Set of productCategoryId ProductSearch.getAllSubCategoryIds(productCategoryId, productCategoryIdSet, productSearchContext.getDelegator(), productSearchContext.nowTimestamp); @@ -978,7 +979,7 @@ Debug.logError(e, "Error finding ProductCategory information for constraint pretty print", module); } StringBuilder ppBuf = new StringBuilder(); - ppBuf.append(UtilProperties.getMessage(resource, "ProductCategory", locale)+": "); + ppBuf.append(UtilProperties.getMessage(resource, "ProductCategory", locale)).append(": "); if (productCategory != null) { String catInfo = CategoryContentWrapper.getProductCategoryContentAsText(productCategory, "CATEGORY_NAME", locale, null); if (UtilValidate.isEmpty(catInfo)) { @@ -992,7 +993,7 @@ ppBuf.append("]"); } if (includeSubCategories) { - ppBuf.append(" ("+UtilProperties.getMessage(resource, "ProductIncludeAllSubCategories", locale)+")"); + ppBuf.append(" (").append(UtilProperties.getMessage(resource, "ProductIncludeAllSubCategories", locale)).append(")"); } return ppBuf.toString(); } @@ -1061,11 +1062,11 @@ } StringBuilder ppBuf = new StringBuilder(); if (productFeatureType == null) { - ppBuf.append(UtilProperties.getMessage(resource, "ProductFeature", locale)+": "); - ppBuf.append("[" + this.productFeatureId + "]"); + ppBuf.append(UtilProperties.getMessage(resource, "ProductFeature", locale)).append(": "); + ppBuf.append("[").append(this.productFeatureId).append("]"); } else { // TODO getString to be localized like get("description", locale) - ppBuf.append(productFeatureType.getString("description") + ": "); + ppBuf.append(productFeatureType.getString("description")).append(": "); ppBuf.append(productFeature.getString("description")); } if (this.exclude != null) { @@ -1138,11 +1139,11 @@ } StringBuilder ppBuf = new StringBuilder(); if (productFeatureCategory != null) { - ppBuf.append(UtilProperties.getMessage(resource, "ProductFeatureCategory", locale)+": "); + ppBuf.append(UtilProperties.getMessage(resource, "ProductFeatureCategory", locale)).append(": "); if(productFeatureCategory.get("description") != null) { ppBuf.append(productFeatureCategory.get("description")); } else { - ppBuf.append("[" + this.productFeatureCategoryId + "]"); + ppBuf.append("[").append(this.productFeatureCategoryId).append("]"); } } @@ -1215,11 +1216,11 @@ } StringBuilder ppBuf = new StringBuilder(); if (productFeatureGroup != null) { - ppBuf.append(UtilProperties.getMessage(resource, "ProductFeatureGroup", locale) + ": "); + ppBuf.append(UtilProperties.getMessage(resource, "ProductFeatureGroup", locale)).append(": "); if(productFeatureGroup.get("description") != null) { ppBuf.append(productFeatureGroup.get("description")); } else { - ppBuf.append("[" + this.productFeatureGroupId + "]"); + ppBuf.append("[").append(this.productFeatureGroupId).append("]"); } } if (this.exclude != null) { @@ -1255,7 +1256,7 @@ public static class FeatureSetConstraint extends ProductSearchConstraint { public static final String constraintName = "Feature Set"; - protected Set productFeatureIdSet; + protected Set<String> productFeatureIdSet; /** This is a tri-state variable: null = Include, true = Exclude, false = AlwaysInclude */ protected Boolean exclude; @@ -1264,7 +1265,7 @@ * @param productFeatureIdSet * @param exclude This is a tri-state variable: null = Include, true = Exclude, false = AlwaysInclude */ - public FeatureSetConstraint(Collection productFeatureIdSet, Boolean exclude) { + public FeatureSetConstraint(Collection<String> productFeatureIdSet, Boolean exclude) { this.productFeatureIdSet = FastSet.newInstance(); this.productFeatureIdSet.addAll(productFeatureIdSet); this.exclude = exclude; @@ -1282,9 +1283,9 @@ // add in productSearchConstraint, don't worry about the productSearchResultId or constraintSeqId, those will be fill in later StringBuilder featureIdInfo = new StringBuilder(); - Iterator featureIdIter = this.productFeatureIdSet.iterator(); + Iterator<String> featureIdIter = this.productFeatureIdSet.iterator(); while (featureIdIter.hasNext()) { - String featureId = (String) featureIdIter.next(); + String featureId = featureIdIter.next(); featureIdInfo.append(featureId); if (featureIdIter.hasNext()) { featureIdInfo.append(","); @@ -1297,9 +1298,9 @@ public String prettyPrintConstraint(GenericDelegator delegator, boolean detailed, Locale locale) { StringBuilder infoOut = new StringBuilder(); try { - Iterator featureIdIter = this.productFeatureIdSet.iterator(); + Iterator<String> featureIdIter = this.productFeatureIdSet.iterator(); while (featureIdIter.hasNext()) { - String featureId = (String) featureIdIter.next(); + String featureId = featureIdIter.next(); GenericValue productFeature = delegator.findByPrimaryKeyCache("ProductFeature", UtilMisc.toMap("productFeatureId", featureId)); GenericValue productFeatureType = productFeature == null ? null : productFeature.getRelatedOneCache("ProductFeatureType"); if (productFeatureType == null) { @@ -1367,15 +1368,15 @@ } } - public Set makeFullKeywordSet(GenericDelegator delegator) { - Set keywordSet = KeywordSearchUtil.makeKeywordSet(this.keywordsString, null, true); - Set fullKeywordSet = new TreeSet(); + public Set<String> makeFullKeywordSet(GenericDelegator delegator) { + Set<String> keywordSet = KeywordSearchUtil.makeKeywordSet(this.keywordsString, null, true); + Set<String> fullKeywordSet = new TreeSet<String>(); // expand the keyword list according to the thesaurus and create a new set of keywords - Iterator keywordIter = keywordSet.iterator(); + Iterator<String> keywordIter = keywordSet.iterator(); while (keywordIter.hasNext()) { - String keyword = (String) keywordIter.next(); - Set expandedSet = new TreeSet(); + String keyword = keywordIter.next(); + Set<String> expandedSet = new TreeSet<String>(); boolean replaceEntered = KeywordSearchUtil.expandKeywordForSearch(keyword, expandedSet, delegator); fullKeywordSet.addAll(expandedSet); if (!replaceEntered) { @@ -1395,31 +1396,31 @@ //but then the sets should be and'ed to produce the overall expression; create the SQL for this //needs some work as the current method only support a list of and'ed words and a list of or'ed words, not //a list of or'ed sets to be and'ed together - Set keywordSet = KeywordSearchUtil.makeKeywordSet(this.keywordsString, null, true); + Set<String> keywordSet = KeywordSearchUtil.makeKeywordSet(this.keywordsString, null, true); // expand the keyword list according to the thesaurus and create a new set of keywords - Iterator keywordIter = keywordSet.iterator(); + Iterator<String> keywordIter = keywordSet.iterator(); while (keywordIter.hasNext()) { - String keyword = (String) keywordIter.next(); - Set expandedSet = new TreeSet(); + String keyword = keywordIter.next(); + Set<String> expandedSet = new TreeSet<String>(); boolean replaceEntered = KeywordSearchUtil.expandKeywordForSearch(keyword, expandedSet, productSearchContext.getDelegator()); if (!replaceEntered) { expandedSet.add(keyword); } - Set fixedSet = KeywordSearchUtil.fixKeywordsForSearch(expandedSet, anyPrefix, anySuffix, removeStems, isAnd); - Set fixedKeywordSet = FastSet.newInstance(); + Set<String> fixedSet = KeywordSearchUtil.fixKeywordsForSearch(expandedSet, anyPrefix, anySuffix, removeStems, isAnd); + Set<String> fixedKeywordSet = FastSet.newInstance(); fixedKeywordSet.addAll(fixedSet); productSearchContext.keywordFixedOrSetAndList.add(fixedKeywordSet); } } else { // when isAnd is false, just add all of the new entries to the big list - Set keywordFirstPass = makeFullKeywordSet(productSearchContext.getDelegator()); // includes keyword expansion, etc - Set keywordSet = KeywordSearchUtil.fixKeywordsForSearch(keywordFirstPass, anyPrefix, anySuffix, removeStems, isAnd); + Set<String> keywordFirstPass = makeFullKeywordSet(productSearchContext.getDelegator()); // includes keyword expansion, etc + Set<String> keywordSet = KeywordSearchUtil.fixKeywordsForSearch(keywordFirstPass, anyPrefix, anySuffix, removeStems, isAnd); productSearchContext.orKeywordFixedSet.addAll(keywordSet); } // add in productSearchConstraint, don't worry about the productSearchResultId or constraintSeqId, those will be fill in later - Map valueMap = UtilMisc.toMap("constraintName", constraintName, "infoString", this.keywordsString); + Map<String, String> valueMap = UtilMisc.toMap("constraintName", constraintName, "infoString", this.keywordsString); valueMap.put("anyPrefix", this.anyPrefix ? "Y" : "N"); valueMap.put("anySuffix", this.anySuffix ? "Y" : "N"); valueMap.put("isAnd", this.isAnd ? "Y" : "N"); @@ -1430,8 +1431,8 @@ /** pretty print for log messages and even UI stuff */ public String prettyPrintConstraint(GenericDelegator delegator, boolean detailed, Locale locale) { StringBuilder ppBuf = new StringBuilder(); - ppBuf.append(UtilProperties.getMessage(resource, "ProductKeywords", locale) + ": \""); - ppBuf.append(this.keywordsString + "\", " + UtilProperties.getMessage(resource, "ProductKeywordWhere", locale) + " "); + ppBuf.append(UtilProperties.getMessage(resource, "ProductKeywords", locale)).append(": \""); + ppBuf.append(this.keywordsString).append("\", ").append(UtilProperties.getMessage(resource, "ProductKeywordWhere", locale)).append(" "); ppBuf.append(isAnd ? UtilProperties.getMessage(resource, "ProductKeywordAllWordsMatch", locale) : UtilProperties.getMessage(resource, "ProductKeywordAnyWordMatches", locale)); return ppBuf.toString(); } @@ -1554,9 +1555,9 @@ public String prettyPrintConstraint(GenericDelegator delegator, boolean detailed, Locale locale) { StringBuilder buff = new StringBuilder(); buff.append("Product Store Mandatory Price Constraint: "); - buff.append("Product Store Group ["+productStoreGroupId+"], "); - buff.append("Product Price Type ["+productPriceTypeId+"], "); - buff.append("Currency ["+currencyUomId+"]."); + buff.append("Product Store Group [").append(productStoreGroupId).append("], "); + buff.append("Product Price Type [").append(productPriceTypeId).append("], "); + buff.append("Currency [").append(currencyUomId).append("]."); return buff.toString(); } @@ -2096,9 +2097,9 @@ // add up the relevancyWeight fields from all keyword member entities for a total to sort by ComplexAlias complexAlias = new ComplexAlias("+"); - Iterator keywordIter = keywordList.iterator(); + Iterator<String> keywordIter = keywordList.iterator(); while (keywordIter.hasNext()) { - String keyword = (String) keywordIter.next(); + String keyword = keywordIter.next(); // make index based values and increment String entityAlias = "PK" + index; @@ -2128,10 +2129,10 @@ dynamicViewEntity.addViewLink("PROD", entityAlias, Boolean.FALSE, ModelKeyMap.makeKeyMapList("productId")); orderByList.add("-totalRelevancy"); fieldsToSelect.add("totalRelevancy"); - List keywordOrList = new FastList.newInstance(); - Iterator keywordIter = keywordList.iterator(); + List<EntityCondition> keywordOrList = new FastList.newInstance(); + Iterator<String> keywordIter = keywordList.iterator(); while (keywordIter.hasNext()) { - String keyword = (String) keywordIter.next(); + String keyword = keywordIter.next(); keywordOrList.add(EntityCondition.makeCondition(prefix + "Keyword", EntityOperator.LIKE, keyword)); } entityConditionList.add(EntityCondition.makeCondition(keywordOrList, EntityOperator.OR)); @@ -2142,10 +2143,9 @@ // Features if (UtilValidate.isNotEmpty(featureIdSet)) { - Iterator featureIdIter = featureIdSet.iterator(); + Iterator<String> featureIdIter = featureIdSet.iterator(); while (featureIdIter.hasNext()) { - String productFeatureId = (String) featureIdIter.next(); - + String productFeatureId = featureIdIter.next(); // make index based values and increment String entityAlias = "PFA" + index; String prefix = "pfa" + index; |
Free forum by Nabble | Edit this page |