private void getGroupsByOperationalAttribute(Entity entity, LdapEntry ldapEntry, String[] bases, int level, List<String> propNames) throws WIMException {
        String filter = "(objectclass=*)";
        List<String> grpTypes = iLdapConfigMgr.getGroupTypes();

        // Get the list of supported properties
        List<String> supportedProps = iLdapConfigMgr.getSupportedProperties(SchemaConstants.DO_GROUP, propNames);

        SearchResult result = iLdapConn.searchByOperationalAttribute(ldapEntry.getDN(), filter, grpTypes, supportedProps, LdapConstants.LDAP_ATTR_IBM_ALL_GROUP);

        if (result != null) {
            Attribute attribute = result.getAttributes().get(LDAP_ATTR_IBM_ALL_GROUP);
            if (attribute != null) {
                try {
                    NamingEnumeration<?> groups = attribute.getAll();
                    while (groups.hasMore()) {
                        if (entity != null) {
                            String groupDN = String.valueOf(groups.next());
                            LdapEntry grpEntry = iLdapConn.getEntityByIdentifier(groupDN, null, null, iLdapConfigMgr.getGroupTypes(), propNames, false, false);
                            createEntityFromLdapEntry(entity, SchemaConstants.DO_GROUP, grpEntry, supportedProps);
                        }
                    }
                } catch (NamingException e) {
                    throw new WIMSystemException(WIMMessageKey.NAMING_EXCEPTION, Tr.formatMessage(
                                                                                                  tc,
                                                                                                  WIMMessageKey.NAMING_EXCEPTION,
                                                                                                  WIMMessageHelper.generateMsgParms(e.toString(true))));
                }
            }
        }
    }
private void getGroupsByOperationalAttribute ( Entity entity , LdapEntry ldapEntry , String [ ] bases , int level , List < String > propNames ) throws WIMException { String filter = "(objectclass=*)" ; List < String > grpTypes = iLdapConfigMgr . getGroupTypes ( ) ; List < String > supportedProps = iLdapConfigMgr . getSupportedProperties ( SchemaConstants . DO_GROUP , propNames ) ; SearchResult result = iLdapConn . searchByOperationalAttribute ( ldapEntry . getDN ( ) , filter , grpTypes , supportedProps , LdapConstants . LDAP_ATTR_IBM_ALL_GROUP ) ; if ( result != null ) { Attribute attribute = result . getAttributes ( ) . get ( LDAP_ATTR_IBM_ALL_GROUP ) ; if ( attribute != null ) { try { NamingEnumeration < ? > groups = attribute . getAll ( ) ; while ( groups . hasMore ( ) ) { if ( entity != null ) { String groupDN = String . valueOf ( groups . next ( ) ) ; LdapEntry grpEntry = iLdapConn . getEntityByIdentifier ( groupDN , null , null , iLdapConfigMgr . getGroupTypes ( ) , propNames , false , false ) ; createEntityFromLdapEntry ( entity , SchemaConstants . DO_GROUP , grpEntry , supportedProps ) ; } } } catch ( NamingException e ) { throw new WIMSystemException ( WIMMessageKey . NAMING_EXCEPTION , Tr . formatMessage ( tc , WIMMessageKey . NAMING_EXCEPTION , WIMMessageHelper . generateMsgParms ( e . toString ( true ) ) ) ) ; } } } }
@param entity
@param ldapEntry
@param bases
@param level
@param propNames
@param object