Beispiel #1
0
  @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);
      }
    }
  }