View Javadoc

1   /*
2    * Licensed to the Apache Software Foundation (ASF) under one
3    * or more contributor license agreements.  See the NOTICE file
4    * distributed with this work for additional information
5    * regarding copyright ownership.  The ASF licenses this file
6    * to you under the Apache License, Version 2.0 (the
7    * "License"); you may not use this file except in compliance
8    * with the License.  You may obtain a copy of the License at
9    *
10   *  http://www.apache.org/licenses/LICENSE-2.0
11   *
12   * Unless required by applicable law or agreed to in writing,
13   * software distributed under the License is distributed on an
14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15   * KIND, either express or implied.  See the License for the
16   * specific language governing permissions and limitations
17   * under the License.
18   */
19  
20  package org.apache.geronimo.javamail.transport.smtp;
21  
22  import javax.mail.Address;
23  import javax.mail.SendFailedException;
24  
25  public class SMTPSendFailedException extends SendFailedException {
26      // the failing command
27      protected String cmd;
28  
29      // the error code for the failure
30      protected int rc;
31  
32      /**
33       * Constructor for an SMTPSendFaileException.
34       * 
35       * @param cmd
36       *            The failing command string.
37       * @param rc
38       *            The error code for the failing command.
39       * @param err
40       *            An error message for the exception.
41       * @param ex
42       *            Any associated nested exception.
43       * @param vs
44       *            An array of valid, sent addresses.
45       * @param vus
46       *            An array of addresses that were valid, but were unsent.
47       * @param inv
48       *            An array of addresses deemed invalid.
49       */
50      SMTPSendFailedException(java.lang.String cmd, int rc, java.lang.String err, java.lang.Exception ex, Address[] vs,
51              Address[] vus, Address[] inv) {
52          super(err, ex, vs, vus, inv);
53          this.cmd = cmd;
54          this.rc = rc;
55      }
56  
57      /**
58       * Get the failing command string for the exception.
59       * 
60       * @return The string value of the failing command.
61       */
62      public String getCommand() {
63          return cmd;
64      }
65  
66      /**
67       * The failing command return code.
68       * 
69       * @return The failure return code.
70       */
71      public int getReturnCode() {
72          return rc;
73      }
74  }