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;
}
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);
}
}
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;
}
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;
}
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;
}
Aggregations