Skip to contentMethod: match(Message)
1: /*
2: * Copyright (c) 1997, 2021 Oracle and/or its affiliates. All rights reserved.
3: *
4: * This program and the accompanying materials are made available under the
5: * terms of the Eclipse Public License v. 2.0, which is available at
6: * http://www.eclipse.org/legal/epl-2.0.
7: *
8: * This Source Code may also be made available under the following Secondary
9: * Licenses when the conditions for such availability set forth in the
10: * Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
11: * version 2 with the GNU Classpath Exception, which is available at
12: * https://www.gnu.org/software/classpath/license.html.
13: *
14: * SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
15: */
16:
17: package jakarta.mail.search;
18:
19: import jakarta.mail.Message;
20:
21: /**
22: * This class implements comparisons for Message numbers.
23: *
24: * @author Bill Shannon
25: * @author John Mani
26: */
27: public final class MessageNumberTerm extends IntegerComparisonTerm {
28:
29: private static final long serialVersionUID = -5379625829658623812L;
30:
31: /**
32: * Constructor.
33: *
34: * @param number the Message number
35: */
36: public MessageNumberTerm(int number) {
37:         super(EQ, number);
38: }
39:
40: /**
41: * The match method.
42: *
43: * @param msg        the Message number is matched with this Message
44: * @return                true if the match succeeds, otherwise false
45: */
46: @Override
47: public boolean match(Message msg) {
48:         int msgno;
49:
50:         try {
51:          msgno = msg.getMessageNumber();
52:         } catch (Exception e) {
53:          return false;
54:         }
55:         
56:         return super.match(msgno);
57: }
58:
59: /**
60: * Equality comparison.
61: */
62: @Override
63: public boolean equals(Object obj) {
64:         if (!(obj instanceof MessageNumberTerm))
65:          return false;
66:         return super.equals(obj);
67: }
68: }