void updateGadgetConfigurations(final List<Long> fieldsToConvertToSystem) throws GenericEntityException
{
final List<GenericValue> labelsGadgetGVs = ofBizDelegator.findByLike(OfbizPortletConfigurationStore.TABLE,
MapBuilder.singletonMap(OfbizPortletConfigurationStore.Columns.GADGET_XML, LABEL_GADGET));
final List<Long> labelGadgetIds = CollectionUtil.transform(labelsGadgetGVs, GenericValueFunctions.getLong(OfbizPortletConfigurationStore.Columns.ID));
if (!labelGadgetIds.isEmpty())
{
final EntityCondition entityCondition = new EntityConditionList(Arrays.asList(new EntityExpr(OfbizPortletConfigurationStore.UserPreferenceColumns.PORTLETID,
EntityOperator.IN, labelGadgetIds), new EntityExpr(OfbizPortletConfigurationStore.UserPreferenceColumns.KEY, EntityOperator.EQUALS, "fieldId")), EntityOperator.AND);
final List<GenericValue> userPrefGVs = ofBizDelegator.findByCondition(OfbizPortletConfigurationStore.USER_PREFERENCES_TABLE, entityCondition, null);
for (GenericValue userPrefGV : userPrefGVs)
{
final String value = userPrefGV.getString(OfbizPortletConfigurationStore.UserPreferenceColumns.VALUE);
final Long id = CustomFieldUtils.getCustomFieldId(value);
if (id != null && fieldsToConvertToSystem.contains(id))
{
userPrefGV.setString(OfbizPortletConfigurationStore.UserPreferenceColumns.VALUE, IssueFieldConstants.LABELS);
userPrefGV.store();
}
}
ofBizDelegator.bulkUpdateByPrimaryKey(OfbizPortletConfigurationStore.TABLE,
MapBuilder.singletonMap(OfbizPortletConfigurationStore.Columns.GADGET_XML, NEW_LABEL_GADGET),
labelGadgetIds);
cachingPortletConfigurationStore.onClearCache(null);
}
}