AddressStringTerm.javaAPI DocGlassfish v2 API3879Mon May 14 15:28:50 BST


public abstract class AddressStringTerm extends StringTerm
This abstract class implements string comparisons for Message addresses.

Note that this class differs from the AddressTerm class in that this class does comparisons on address strings rather than Address objects.

JavaMail 1.1

Fields Summary
private static final long
Constructors Summary
protected AddressStringTerm(String pattern)

pattern the address pattern to be compared.

	super(pattern, true); // we need case-insensitive comparison.
Methods Summary
public booleanequals(java.lang.Object obj)
Equality comparison.

	if (!(obj instanceof AddressStringTerm))
	    return false;
	return super.equals(obj);
protected booleanmatch(javax.mail.Address a)
Check whether the address pattern specified in the constructor is a substring of the string representation of the given Address object.

Note that if the string representation of the given Address object contains charset or transfer encodings, the encodings must be accounted for, during the match process.

a The comparison is applied to this Address object.
true if the match succeeds, otherwise false.

	if (a instanceof InternetAddress) {
	    InternetAddress ia = (InternetAddress)a;
	    // We dont use toString() to get "a"'s String representation,
	    // because InternetAddress.toString() returns a RFC 2047 
	    // encoded string, which isn't what we need here.

	    return super.match(ia.toUnicodeString());
	} else
	    return super.match(a.toString());