@Override
  public int hashCode() {
    return super.hashCode() +
        ((getReference() == null)
            ? 0
            : getReference().hashCode()) +
        ((getPrincipalDescriptor() == null)
            ? 0
            : getPrincipalDescriptor().hashCode()) +
        ((getKeytabDescriptor() == null)
            ? 0
            : getKeytabDescriptor().hashCode()) +
        ((getWhen() == null)
            ? 0
            : getWhen().hashCode());
  }
Explicitly set the path to this {@link KerberosIdentityDescriptor}.
<p>
This is useful when creating detached identity descriptors while dereferencing identity references
so that the path information is not lost.

@param path a path
ambari-server/src/main/java/org/apache/ambari/server/state/kerberos/KerberosIdentityDescriptor.java