Source:
<code>public boolean updateProductOptions(@NonNull TaskData taskData) { if (taskData == null) { return false; } TaskAttribute attributeProduct = taskData.getRoot().getMappedAttribute(SCHEMA.PRODUCT.getKey()); if (attributeProduct != null && !attributeProduct.getValue().isEmpty()) { Product actualProduct = getProductWithName(attributeProduct.getValue()); TaskAttribute attributeComponent = taskData.getRoot().getMappedAttribute(SCHEMA.COMPONENT.getKey()); if (attributeComponent != null) { setAttributeOptionsForProduct(attributeComponent, actualProduct); } TaskAttribute attributeVersion = taskData.getRoot().getMappedAttribute(SCHEMA.VERSION.getKey()); if (attributeVersion != null) { setAttributeOptionsForProduct(attributeVersion, actualProduct); } TaskAttribute attributeTargetMilestone = taskData.getRoot() .getMappedAttribute(SCHEMA.TARGET_MILESTONE.getKey()); if (attributeTargetMilestone != null) { setAttributeOptionsForProduct(attributeTargetMilestone, actualProduct); } } else { <START> if (attributeProduct != null) { <END> for (Product product : getProducts().values()) { attributeProduct.putOption(product.getName(), product.getName()); } } TaskAttribute attributeComponent = taskData.getRoot().getMappedAttribute(SCHEMA.COMPONENT.getKey()); if (attributeComponent != null) { setAllAttributeOptions(attributeComponent, getFieldWithName("component")); } TaskAttribute attributeVersion = taskData.getRoot().getMappedAttribute(SCHEMA.VERSION.getKey()); if (attributeVersion != null) { setAllAttributeOptions(attributeVersion, getFieldWithName("version")); } TaskAttribute attributeTargetMilestone = taskData.getRoot() .getMappedAttribute(SCHEMA.TARGET_MILESTONE.getKey()); if (attributeTargetMilestone != null) { setAllAttributeOptions(attributeTargetMilestone, getFieldWithName("target_milestone")); } } return true; }</code><technical_language>a Field for Product? Is REST API is</technical_language>

Target:
public boolean updateProductOptions(@NonNull TaskData taskData) { if (taskData == null) { return false; } TaskAttribute attributeProduct = taskData.getRoot().getMappedAttribute(SCHEMA.PRODUCT.getKey()); if (!attributeProduct.getValue().isEmpty()) { Product actualProduct = getProductWithName(attributeProduct.getValue()); TaskAttribute attributeComponent = taskData.getRoot().getMappedAttribute(SCHEMA.COMPONENT.getKey()); if (attributeComponent != null) { setAttributeOptionsForProduct(attributeComponent, actualProduct); } TaskAttribute attributeVersion = taskData.getRoot().getMappedAttribute(SCHEMA.VERSION.getKey()); if (attributeVersion != null) { setAttributeOptionsForProduct(attributeVersion, actualProduct); } TaskAttribute attributeTargetMilestone = taskData.getRoot() .getMappedAttribute(SCHEMA.TARGET_MILESTONE.getKey()); if (attributeTargetMilestone != null) { setAttributeOptionsForProduct(attributeTargetMilestone, actualProduct); } } else { for (Product product : getProducts().values()) { attributeProduct.putOption(product.getName(), product.getName()); } TaskAttribute attributeComponent = taskData.getRoot().getMappedAttribute(SCHEMA.COMPONENT.getKey()); if (attributeComponent != null) { setAllAttributeOptions(attributeComponent, getFieldWithName("component")); } TaskAttribute attributeVersion = taskData.getRoot().getMappedAttribute(SCHEMA.VERSION.getKey()); if (attributeVersion != null) { setAllAttributeOptions(attributeVersion, getFieldWithName("version")); } TaskAttribute attributeTargetMilestone = taskData.getRoot() .getMappedAttribute(SCHEMA.TARGET_MILESTONE.getKey()); if (attributeTargetMilestone != null) { setAllAttributeOptions(attributeTargetMilestone, getFieldWithName("target_milestone")); } } return true; }