src/main/java/org/jivesoftware/smack/util/collections/AbstractReferenceMap.java
protected void purge(Reference ref) {
        // The hashCode of the reference is the hashCode of the
        // mapping key, even if the reference refers to the
        // mapping value...
        int hash = ref.hashCode();
        int index = hashIndex(hash, data.length);
        HashEntry<K, V> previous = null;
        HashEntry<K, V> entry = data[index];
        while (entry != null) {
            if (((ReferenceEntry<K, V>) entry).purge(ref)) {
                if (previous == null) {
                    data[index] = entry.next;
                } else {
                    previous.next = entry.next;
                }
                this.size--;
                return;
            }
            previous = entry;
            entry = entry.next;
        }

    }
protected void purge(Reference ref) {
        // The hashCode of the reference is the hashCode of the
        // mapping key, even if the reference refers to the
        // mapping value...
        int hash = ref.hashCode();
        int index = hashIndex(hash, data.length);
        HashEntry<K, V> previous = null;
        HashEntry<K, V> entry = data[index];
        while (entry != null) {
            if (((ReferenceEntry<K, V>) entry).purge(ref)) {
                if (previous == null) {
                    data[index] = entry.next;
                } else {
                    previous.next = entry.next;
                }
                this.size--;
                return;
            }
            previous = entry;
            entry = entry.next;
        }

    }
protected void purge ( Reference ref ) { // The hashCode of the reference is the hashCode of the // mapping key, even if the reference refers to the // mapping value... int hash = ref . hashCode ( ) ; int index = hashIndex ( hash , data . length ) ; HashEntry < K , V > previous = null ; HashEntry < K , V > entry = data [ index ] ; while ( entry != null ) { if ( ( ( ReferenceEntry < K , V > ) entry ) . purge ( ref ) ) { if ( previous == null ) { data [ index ] = entry . next ; } else { previous . next = entry . next ; } this . size -- ; return ; } previous = entry ; entry = entry . next ; } }
Purges the specified reference.

@param ref
the reference to purge
Purges the specified reference .