String virtualProductId = getVariantVirtualId(variantProduct);
// find all selectable features on the virtual product that are also standard features on the variant
Set<GenericValue> distFeatures = FastSet.newInstance();
List<GenericValue> variantDistinguishingFeatures = delegator.findByAndCache("ProductFeatureAndAppl", UtilMisc.toMap("productId", variantProduct.get("productId"), "productFeatureApplTypeId", "DISTINGUISHING_FEAT"));
// Debug.logInfo("Found variantDistinguishingFeatures: " + variantDistinguishingFeatures, module);
for (GenericValue variantDistinguishingFeature: EntityUtil.filterByDate(variantDistinguishingFeatures)) {
GenericValue dummyFeature = delegator.makeValue("ProductFeature");
dummyFeature.setAllFields(variantDistinguishingFeature, true, null, null);