JBoss Community Archive (Read Only)

PicketLink

PicketLink IDM - User Queries

Queries for User Instances

Query User Instances by ID

In the following example, we are going to query User instances by their ID.

IdentityManager identityManager = getIdentityManager();
IdentityQuery<User> query = identityManager.createQuery(User.class);
query.setParameter(User.ID, "admin");

List<User> result = query.getResultList();
assertFalse(result.isEmpty());
assertTrue(result.size() == 1);
assertEquals("admin", result.get(0).getId());

Query User Instances by First Name and Last Name

In the following example, we are going to query User instances by their first name and last name.

query.setParameter(User.FIRST_NAME, "The");

// find only by the first name
List<User> result = query.getResultList();

assertFalse(result.isEmpty());
assertTrue(result.size() == 1);
assertEquals("admin", result.get(0).getId());

query = identityManager.createQuery(User.class);
query.setParameter(User.LAST_NAME, "Administrator");

// find only by the last name
result = query.getResultList();

assertFalse(result.isEmpty());
assertTrue(result.size() == 1);

query = identityManager.createQuery(User.class);
query.setParameter(User.FIRST_NAME, "The");
query.setParameter(User.LAST_NAME, "Administrator");

// find by first and last names
result = query.getResultList();
assertFalse(result.isEmpty());
assertTrue(result.size() == 1);

assertEquals("admin", result.get(0).getId());


query = identityManager.createQuery(User.class);
query.setParameter(User.FIRST_NAME, "The");
query.setParameter(User.LAST_NAME, "Bad Administrator");

// must not return any result because we provided a invalid last name
result = query.getResultList();
assertTrue(result.isEmpty());
For many other use cases, please refer to the test case:  https://github.com/picketlink/picketlink/blob/master/idm/impl/src/test/java/org/picketlink/test/idm/UserQueryTestCase.java

Courtesy: Pedro Igor Silva.

JBoss.org Content Archive (Read Only), exported from JBoss Community Documentation Editor at 2020-03-11 12:19:14 UTC, last content change 2012-12-14 21:55:29 UTC.