Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.jasig.portal.services.persondir
Interface IPersonAttributeDao

All Known Implementing Classes:
  AbstractDefaultQueryPersonAttributeDao, CachingPersonAttributeDaoImpl, CascadingPersonAttributeDao, EchoPersonAttributeDaoImpl, JdbcPersonAttributeDaoImpl, LdapPersonAttributeDaoImpl, LegacyPersonAttributeDao, MergingPersonAttributeDaoImpl, StubPersonAttributeDao

    public interface IPersonAttributeDao

Data access object which, for a given `Map` of query data, returns a `Map` from attribute names to attribute values.

Since:
  uPortal 2.5
Version:
  $Revision: 1.4 $ $Date: 2005/05/25 17:13:00 $
Author:
  andrew.petro@yale.edu, Eric Dalquist edalquist@unicon.net

Method Summary
`java.util.Set` | `getPossibleUserAttributeNames()` Gets a `Set` of attribute names that may be returned by the `getUserAttributes(Map)`.
`java.util.Map` | `getUserAttributes(java.util.Map seed)` Obtains a mutable `Map` from attribute names to values for the given query seed which is an immutable Map.
`java.util.Map` | `getUserAttributes(java.lang.String uid)` This method uses a single attribute to get a `Map` of user attributes.

Method Detail

### getUserAttributes

    java.util.Map getUserAttributes(java.util.Map seed)

  Obtains a mutable `Map` from attribute names to values for the given query seed which is an immutable Map. The values may be mutable objects but it is recommended that they be immutable.
  For the returned `Map`; Keys must be `String`, Values can be any `Object`, they are typically `String`s.
  Values may also be multi-valued, in this case they are of type `List` and the list contents are the values of the attribute.
  This method returns according to the following rules:
  - If the user exists and has attributes a populated `Map` is returned.
  - If the user exists and has no attributes an empty `Map` is returned.
  - If the user doesn't exist `null` is returned.
  - If an error occurs while getting the attributes the appropriate exception will be propagated.
  Unless otherwise specified by an implementation the returned `Map` will not be a union of the seed and query results. If your are given a `Map` that includes the attribute "phone" and value "555-1212" and the returned `Map` contains the attribute "phone" with the value "555-1212", this means that your implementation also believes that the "phone" attribute should have this value.

  Parameters:
    `seed` - immutable Map of attributes to values to seed the query
  Returns:
    Map from attribute names to values
  Throws:
    `java.lang.IllegalArgumentException` - If `seed` is `null.`

### getUserAttributes

    java.util.Map getUserAttributes(java.lang.String uid)

  This method uses a single attribute to get a `Map` of user attributes.
  This methods follows the same return rules as `getUserAttributes(Map)`

  Parameters:
    `uid` - The string to use as the value in the seed
  Returns:
    Map from attribute names to values
  See Also:
    `getUserAttributes(Map)`

### getPossibleUserAttributeNames

    java.util.Set getPossibleUserAttributeNames()

  Gets a `Set` of attribute names that may be returned by the `getUserAttributes(Map)`. The names returned represent all possible names `getUserAttributes(Map)` could return. If the dao doesn't have a way to know all possible attribute names this method should return `null`.
  Returns an immutable `Set`.

  Returns:
    A {link Set} of possible attribute names for user queries.

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD