docs: public void setObjectClassesForCreate(List<String> objectClasses) {
          if (iRDNObjectClass != null && iRDNObjectClass.length > 1) {
              iObjectClassAttrs = new Attribute[iRDNObjectClass.length];
              for (int i = 0; i < iRDNObjectClass.length; i++) {
                  iObjectClassAttrs[i] = new BasicAttribute(LdapConstants.LDAP_ATTR_OBJECTCLASS, iRDNObjectClass[i][0]);
                  // Remove the object class for create
                  objectClasses.remove(iRDNObjectClass[i][0]);
              }
              // Add rest auxliary object classes.
              for (int i = 0; i < iObjectClassAttrs.length; i++) {
                  for (int j = 0; j < objectClasses.size(); j++) {
                      iObjectClassAttrs[i].add(objectClasses.get(j));
                  }
              }
          } else {
              iObjectClassAttrs = new Attribute[1];
              iObjectClassAttrs[0] = new BasicAttribute(LdapConstants.LDAP_ATTR_OBJECTCLASS);
              if (objectClasses.size() > 0) {
                  for (int i = 0; i < objectClasses.size(); i++) {
                      iObjectClassAttrs[0].add(objectClasses.get(i));
                  }
              } else {
                  // If create object class is not define, use object classes
                  for (int i = 0; i < iObjectClasses.size(); i++) {
                      iObjectClassAttrs[0].add(iObjectClasses.get(i));
                  }
              }
          }
      }