code: public List<String> getSupportedProperties(LdapEntity ldapEntity, List<String> propNames) {
  
          List<String> prop = new ArrayList<String>();
  
          for (String propName : propNames) {
              if (propName.equals(SchemaConstants.VALUE_ALL_PROPERTIES)) {
                  prop.add(propName);
                  continue;
              }
              // call the getAttribute method to see if its supported by LDAP
              String attrName = ldapEntity.getAttribute(propName);
              if (attrName == null) {
                  // check the property to attribute map to see if the property defined
                  // in data object is mapped to a different ldap attribute
                  attrName = iPropToAttrMap.get(propName);
              }
              if (attrName != null) {
                  prop.add(propName);
              }
          }
  
          return prop;
      }
docs: Return the list of properties supported for a given LDAP entity.
  This is an overloaded method to support getSupportedProperties(String, List)
  
  @param ldapEntity : A given LDAP entity
  @param propNames  : List of property names read from data object
  @return list of properties supported by repository for given LDAP entity
  If the list propNames contain VALUE_ALL_PROPERTIES i.e '*', then return the list of properties without any modification
  Code will handle '*' later on