class LdapRdn implements Serializable, Comparable {

	public boolean equals(Object obj) {
		if (obj == null || obj.getClass() != this.getClass()) {
			return false;
		}

		LdapRdn that = (LdapRdn) obj;

        if(this.components.size() != that.components.size()) {
            return false;
        }

        Set<Map.Entry<String,LdapRdnComponent>> theseEntries = this.components.entrySet();
        for (Map.Entry<String, LdapRdnComponent> oneEntry : theseEntries) {
            if(!oneEntry.getValue().equals(that.components.get(oneEntry.getKey()))) {
                return false;
            }
        }

        return true;
	}

	public  LdapRdn();
	public  LdapRdn(String string);
	public  LdapRdn(String key, String value);

}