Class ResourceShadowDiscriminator

  • All Implemented Interfaces:
    DebugDumpable, HumanReadableDescribable, Serializable

    public class ResourceShadowDiscriminator
    extends Object
    implements Serializable, DebugDumpable, HumanReadableDescribable
    Aggregate bean containing resource OID, intent and tombstone flag. It uniquely identifies an shadow projection (usually account) for a specific user regardless whether it has OID, does not have OID yet, it exists of was deleted. This is used mostly as a key in hashes and for searches. TODO: split to two objects: 1: ResourceShadowCoordinates which will stay in common 2: ResourceShadowDiscriminator (subclass) which will go to model. This will contains tombstone and order.
    Author:
    Radovan Semancik
    See Also:
    Serialized Form
    • Constructor Detail

      • ResourceShadowDiscriminator

        public ResourceShadowDiscriminator​(String resourceOid,
                                           ShadowKindType kind,
                                           String intent,
                                           String tag,
                                           boolean tombstone)
      • ResourceShadowDiscriminator

        public ResourceShadowDiscriminator​(String resourceOid)
      • ResourceShadowDiscriminator

        public ResourceShadowDiscriminator​(String resourceOid,
                                           QName objectClass)
    • Method Detail

      • getResourceOid

        public String getResourceOid()
      • setResourceOid

        public void setResourceOid​(String resourceOid)
      • getIntent

        public String getIntent()
      • setIntent

        public void setIntent​(String intent)
      • getTag

        public String getTag()
      • setTag

        public void setTag​(String tag)
      • getObjectClass

        public QName getObjectClass()
      • setObjectClass

        public void setObjectClass​(QName objectClass)
      • getOrder

        public int getOrder()
      • setOrder

        public void setOrder​(int order)
      • isTombstone

        public boolean isTombstone()
        Tombstone flag is true: the account no longer exists. The data we have are the latest metadata we were able to get. The projection will be marked as tombstone if we discover that the associated resource object is gone. Or the shadow is gone and we can no longer associate the resource object. In any way the tombstoned projection is marked for removal. It will be eventually unlinked and the shadow will be deleted. The shadow may stay around in the "dead" state for some time for reporting purposes.
      • setTombstone

        public void setTombstone​(boolean tombstone)
      • isWildcard

        public boolean isWildcard()
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object
      • equivalent

        public boolean equivalent​(Object obj)
        Similar to equals but ignores the order.
      • equalsIntent

        public static boolean equalsIntent​(String a,
                                           String b)
      • toHumanReadableDescription

        public String toHumanReadableDescription​(boolean writeOid)