BCStrictStyle.java revision e6bf3e8dfa2804891a82075cb469b736321b4827
1package org.bouncycastle.asn1.x500.style;
2
3import org.bouncycastle.asn1.x500.RDN;
4import org.bouncycastle.asn1.x500.X500Name;
5
6/**
7 * Variation of BCStyle that insists on strict ordering for equality
8 * and hashCode comparisons
9 */
10public class BCStrictStyle
11    extends BCStyle
12{
13    public boolean areEqual(X500Name name1, X500Name name2)
14    {
15        RDN[] rdns1 = name1.getRDNs();
16        RDN[] rdns2 = name2.getRDNs();
17
18        if (rdns1.length != rdns2.length)
19        {
20            return false;
21        }
22
23        for (int i = 0; i != rdns1.length; i++)
24        {
25            if (rdnAreEqual(rdns1[i], rdns2[i]))
26            {
27                return false;
28            }
29        }
30
31        return true;
32    }
33}
34