1 /* -*- mode: JDE; c-basic-offset: 2; indent-tabs-mode: nil -*-
2 *
3 * $Id: UploadException.java,v 1.3 2003/07/03 14:41:12 ljnelson Exp $
4 *
5 * Copyright (c) 2003 Laird Jarrett Nelson.
6 *
7 * Permission is hereby granted, free of charge, to any person obtaining a copy
8 * of this software and associated documentation files (the "Software"), to deal
9 * in the Software without restriction, including without limitation the rights
10 * to use, copy, modify, merge, publish, distribute, sublicense and/or sell
11 * copies of the Software, and to permit persons to whom the Software is
12 * furnished to do so, subject to the following conditions:
13 *
14 * The above copyright notice and this permission notice shall be included in
15 * all copies or substantial portions of the Software.
16 *
17 * THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23 * SOFTWARE.
24 *
25 * The original copy of this license is available at
26 * http://www.opensource.org/license/mit-license.html.
27 */
28 package sfutils.frs.web;
29
30 import sfutils.frs.PublishingException;
31
32 /***
33 * A {@link PublishingException} that is thrown when a multithreaded file upload
34 * operation fails.
35 *
36 * @author <a href="mailto:ljnelson94@alumni.amherst.edu">Laird Nelson</a>
37 * @version $Revision: 1.3 $ $Date: 2003/07/03 14:41:12 $
38 * @since June 19, 2003
39 */
40 public class UploadException extends PublishingException {
41
42 /***
43 * The {@link Exception}s that caused this {@link UploadException} to be
44 * created and thrown. This field may be <code>null</code>.
45 */
46 private final Exception[] causes;
47
48 /***
49 * Creates a new {@link UploadException}.
50 *
51 * @param causes
52 * the {@link Exception}s that caused this {@link
53 * UploadException} to be created and thrown; may be
54 * <code>null</code>
55 */
56 public UploadException(final Exception[] causes) {
57 super(causes == null ? null : causes[0]);
58 this.causes = causes;
59 }
60
61 /***
62 * Returns the {@link Exception}s that caused this {@link UploadException} to
63 * be thrown. This method may return <code>null</code>.
64 *
65 * @return the {@link Exception}s that caused this {@link UploadException}
66 * to be thrown, or <code>null</code>
67 */
68 public Exception[] getCauses() {
69 return this.causes;
70 }
71
72 }