@Override void doUpgrade() throws ServiceException { Config config = prov.getConfig(); String oldValue = "displayName,cn=fullName"; String newValue = "displayName,cn=fullName,fullName2,fullName3,fullName4,fullName5,fullName6,fullName7,fullName8,fullName9,fullName10"; String[] curValues = config.getMultiAttr(Provisioning.A_zimbraGalLdapAttrMap); for (String value : curValues) { if (value.equalsIgnoreCase(oldValue)) { Map<String, Object> attr = new HashMap<String, Object>(); attr.put("-" + Provisioning.A_zimbraGalLdapAttrMap, oldValue); attr.put("+" + Provisioning.A_zimbraGalLdapAttrMap, newValue); printer.println("Modifying " + Provisioning.A_zimbraGalLdapAttrMap + " on global config:"); printer.println(" removing value: " + oldValue); printer.println(" adding value: " + newValue); prov.modifyAttrs(config, attr); } } }