java.lang.Object
org.identityconnectors.framework.common.objects.Attribute
Direct Known Subclasses:
Name, Uid

public class Attribute extends Object
Represents a named collection of values within a target object, although the simplest case is a name-value pair (e.g., email, employeeID). Values can be empty, null, or set with various types. Empty and null are supported because it makes a difference on some resources (in particular database resources).

The developer of a Connector should use an AttributeBuilder to construct an instance of Attribute.

The precise meaning of an instance of Attribute depends on the context in which it occurs.

  • When an object is read or is returned by search, an Attribute represents the complete state of an attribute of the target object, current as of the point in time that the object was read.
  • When an Attribute is supplied to the update operation, the Attribute represents a change to the corresponding attribute of the target object:
    • For calls to update, the Attribute contains the complete, intended state of the attribute.
    • When the update type is addAttributeValues, the Attribute contains values to append.
    • When the update type is removeAttributeValues, the Attribute contains values to remove.
  • When an Attribute is used to build a Filter that is an argument to search, an Attribute represents a subset of the current state of an attribute that will be used as a search criterion. Specifically, the Attribute names the attribute to match and contains the values to match.
TODO: define the set of allowed values
Since:
1.0
  • Method Details

    • getName

      public String getName()
    • getValue

      public List<Object> getValue()
    • is

      public boolean is(String name)
      Determines if the 'name' matches this Attribute.
      Parameters:
      name - case insensitive string representation of the attribute's name.
      Returns:
      true if the case insentitive name is equal to that of the one in Attribute.
    • hashCode

      public final int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • equals

      public final boolean equals(Object obj)
      Overrides:
      equals in class Object