for (int i = 0; i < attributes.size (); ++i)
Attributes bs = (Attributes) obj; if (ignoreCase != bs.isCaseIgnored() || attributes.size () != bs.size ()) return false;  NamingEnumeration bas = bs.getAll(); while (bas.hasMoreElements())
  public boolean equals (Object obj)  {    if (! (obj instanceof BasicAttributes))      return false;    BasicAttributes b = (BasicAttributes) obj;    if (ignoreCase != b.ignoreCase	|| attributes.size () != b.attributes.size ())      return false;    // Does order matter?    for (int i = 0; i < attributes.size (); ++i)      {	if (! attributes.get (i).equals (b.attributes.get (i)))	  return false;      }    return true;  }