Search in sources :

Example 41 with Filter

use of com.unboundid.ldap.sdk.Filter in project oxCore by GluuFederation.

the class LookupService method buildInumFilter.

public Filter buildInumFilter(List<String> inums) {
    List<Filter> inumFilters = new ArrayList<Filter>(inums.size());
    for (String inum : inums) {
        inumFilters.add(Filter.createEqualityFilter(OxConstants.INUM, inum));
    }
    Filter searchFilter = Filter.createORFilter(inumFilters);
    return searchFilter;
}
Also used : Filter(com.unboundid.ldap.sdk.Filter) ArrayList(java.util.ArrayList)

Example 42 with Filter

use of com.unboundid.ldap.sdk.Filter in project oxCore by GluuFederation.

the class LdapSample method main.

public static void main(String[] args) {
    // Prepare sample connection details
    LdapSampleEntryManager ldapSampleEntryManager = new LdapSampleEntryManager();
    // Create LDAP entry manager
    LdapEntryManager ldapEntryManager = ldapSampleEntryManager.createLdapEntryManager();
    // Find all users which have specified object classes defined in SimpleUser
    List<SimpleUser> users = ldapEntryManager.findEntries("o=gluu", SimpleUser.class, null);
    for (SimpleUser user : users) {
        log.debug("User with uid: " + user.getUserId());
    }
    if (users.size() > 0) {
        // Add attribute "streetAddress" to first user
        SimpleUser user = users.get(0);
        user.getCustomAttributes().add(new CustomAttribute("streetAddress", "Somewhere: " + System.currentTimeMillis()));
        ldapEntryManager.merge(user);
    }
    Filter filter = Filter.createEqualityFilter("gluuStatus", "active");
    List<SimpleAttribute> attributes = ldapEntryManager.findEntries("o=gluu", SimpleAttribute.class, filter, SearchScope.SUB, null, null, 10, 0, 0);
    for (SimpleAttribute attribute : attributes) {
        log.debug("Attribute with displayName: " + attribute.getCustomAttributes().get(1));
    }
    List<SimpleSession> sessions = ldapEntryManager.findEntries("o=gluu", SimpleSession.class, filter, SearchScope.SUB, null, null, 10, 0, 0);
    log.debug("Found sessions: " + sessions.size());
    List<SimpleGrant> grants = ldapEntryManager.findEntries("o=gluu", SimpleGrant.class, null, SearchScope.SUB, new String[] { "oxAuthGrantId" }, null, 10, 0, 0);
    log.debug("Found grants: " + grants.size());
    try {
        VirtualListViewResponse virtualListViewResponse = new VirtualListViewResponse();
        SearchResult searchResult = ldapEntryManager.getLdapOperationService().searchSearchResult("o=gluu", Filter.createEqualityFilter("objectClass", "gluuPerson"), SearchScope.SUB, 10, 100, 100000, "displayName", null, virtualListViewResponse, "uid", "displayName", "gluuStatus");
        log.debug("Found persons: " + virtualListViewResponse.getTotalResults());
        System.out.println(searchResult.getSearchEntries());
    } catch (Exception ex) {
        log.error("Failed to search", ex);
    }
}
Also used : CustomAttribute(org.xdi.ldap.model.CustomAttribute) VirtualListViewResponse(org.xdi.ldap.model.VirtualListViewResponse) SearchResult(com.unboundid.ldap.sdk.SearchResult) LdapEntryManager(org.gluu.site.ldap.persistence.LdapEntryManager) Filter(com.unboundid.ldap.sdk.Filter)

Example 43 with Filter

use of com.unboundid.ldap.sdk.Filter in project oxTrust by GluuFederation.

the class PersonService method searchPersons.

/* (non-Javadoc)
	 * @see org.gluu.oxtrust.ldap.service.IPersonService#searchPersons(java.lang.String)
	 */
@Override
public List<GluuCustomPerson> searchPersons(String pattern) {
    String[] targetArray = new String[] { pattern };
    Filter uidFilter = Filter.createSubstringFilter(OxTrustConstants.uid, null, targetArray, null);
    Filter mailFilter = Filter.createSubstringFilter(OxTrustConstants.mail, null, targetArray, null);
    Filter nameFilter = Filter.createSubstringFilter(OxTrustConstants.displayName, null, targetArray, null);
    Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
    Filter searchFilter = Filter.createORFilter(uidFilter, mailFilter, nameFilter, inameFilter);
    List<GluuCustomPerson> result = ldapEntryManager.findEntries(getDnForPerson(null), GluuCustomPerson.class, searchFilter, 0);
    return result;
}
Also used : GluuCustomPerson(org.gluu.oxtrust.model.GluuCustomPerson) Filter(com.unboundid.ldap.sdk.Filter)

Example 44 with Filter

use of com.unboundid.ldap.sdk.Filter in project oxTrust by GluuFederation.

the class ScopeService method searchScopes.

/**
	 * Search scopes by pattern
	 * 
	 * @param pattern
	 *            Pattern
	 * @param sizeLimit
	 *            Maximum count of results
	 * @return List of scopes
	 * @throws Exception
	 */
public List<OxAuthScope> searchScopes(String pattern, int sizeLimit) throws Exception {
    Filter searchFilter = null;
    if (StringHelper.isNotEmpty(pattern)) {
        String[] targetArray = new String[] { pattern };
        Filter displayNameFilter = Filter.createSubstringFilter(OxTrustConstants.displayName, null, targetArray, null);
        Filter descriptionFilter = Filter.createSubstringFilter(OxTrustConstants.description, null, targetArray, null);
        Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
        searchFilter = Filter.createORFilter(displayNameFilter, descriptionFilter, inameFilter);
    }
    List<OxAuthScope> result = ldapEntryManager.findEntries(getDnForScope(null), OxAuthScope.class, searchFilter, 0, sizeLimit);
    return result;
}
Also used : Filter(com.unboundid.ldap.sdk.Filter) OxAuthScope(org.gluu.oxtrust.model.OxAuthScope)

Example 45 with Filter

use of com.unboundid.ldap.sdk.Filter in project oxTrust by GluuFederation.

the class PersonService method searchPersons.

/* (non-Javadoc)
	 * @see org.gluu.oxtrust.ldap.service.IPersonService#searchPersons(java.lang.String, int, java.util.List)
	 */
@Override
public List<GluuCustomPerson> searchPersons(String pattern, int sizeLimit, List<GluuCustomPerson> excludedPersons) throws Exception {
    String[] targetArray = new String[] { pattern };
    Filter uidFilter = Filter.createSubstringFilter(OxTrustConstants.uid, null, targetArray, null);
    Filter mailFilter = Filter.createSubstringFilter(OxTrustConstants.mail, null, targetArray, null);
    Filter nameFilter = Filter.createSubstringFilter(OxTrustConstants.displayName, null, targetArray, null);
    Filter inameFilter = Filter.createSubstringFilter(OxTrustConstants.iname, null, targetArray, null);
    Filter orFilter = Filter.createORFilter(uidFilter, mailFilter, nameFilter, inameFilter);
    Filter searchFilter = orFilter;
    if (excludedPersons != null && excludedPersons.size() > 0) {
        List<Filter> excludeFilters = new ArrayList<Filter>();
        for (GluuCustomPerson excludedPerson : excludedPersons) {
            Filter eqFilter = Filter.createEqualityFilter(OxTrustConstants.uid, excludedPerson.getUid());
            excludeFilters.add(eqFilter);
        }
        Filter orExcludeFilter = null;
        if (excludedPersons.size() == 1) {
            orExcludeFilter = excludeFilters.get(0);
        } else {
            orExcludeFilter = Filter.createORFilter(excludeFilters);
        }
        Filter notFilter = Filter.createNOTFilter(orExcludeFilter);
        searchFilter = Filter.createANDFilter(orFilter, notFilter);
    }
    List<GluuCustomPerson> result = ldapEntryManager.findEntries(getDnForPerson(null), GluuCustomPerson.class, searchFilter, 0, sizeLimit);
    return result;
}
Also used : GluuCustomPerson(org.gluu.oxtrust.model.GluuCustomPerson) Filter(com.unboundid.ldap.sdk.Filter) ArrayList(java.util.ArrayList)

Aggregations

Filter (com.unboundid.ldap.sdk.Filter)61 ArrayList (java.util.ArrayList)21 LDAPException (com.unboundid.ldap.sdk.LDAPException)9 GluuCustomPerson (org.gluu.oxtrust.model.GluuCustomPerson)6 LdapEntryManager (org.gluu.site.ldap.persistence.LdapEntryManager)6 LinkedHashSet (java.util.LinkedHashSet)4 WebApplicationException (javax.ws.rs.WebApplicationException)4 GluuGroup (org.gluu.oxtrust.model.GluuGroup)4 GluuAttribute (org.xdi.model.GluuAttribute)4 ScopeDescription (org.xdi.oxauth.model.uma.persistence.ScopeDescription)4 List (java.util.List)3 EntryPersistenceException (org.gluu.site.ldap.persistence.exception.EntryPersistenceException)3 HashSet (java.util.HashSet)2 ObjectMapper (org.codehaus.jackson.map.ObjectMapper)2 GluuSimplePerson (org.gluu.oxtrust.ldap.cache.model.GluuSimplePerson)2 GluuCustomFidoDevice (org.gluu.oxtrust.model.fido.GluuCustomFidoDevice)2 DEFAULT_COUNT (org.gluu.oxtrust.model.scim2.Constants.DEFAULT_COUNT)2 CustomAttribute (org.xdi.ldap.model.CustomAttribute)2 LdapDummyEntry (org.xdi.ldap.model.LdapDummyEntry)2 SortOrder (org.xdi.ldap.model.SortOrder)2