1 /*
2  *    GeoAPI - Java interfaces for OGC/ISO standards
3  *    http://www.geoapi.org
4  *
5  *    Copyright (C) 2004-2011 Open Geospatial Consortium, Inc.
6  *    All Rights Reserved. http://www.opengeospatial.org/ogc/legal
7  *
8  *    Permission to use, copy, and modify this software and its documentation, with
9  *    or without modification, for any purpose and without fee or royalty is hereby
10  *    granted, provided that you include the following on ALL copies of the software
11  *    and documentation or portions thereof, including modifications, that you make:
12  *
13  *    1. The full text of this NOTICE in a location viewable to users of the
14  *       redistributed or derivative work.
15  *    2. Notice of any changes or modifications to the OGC files, including the
16  *       date changes were made.
17  *
18  *    THIS SOFTWARE AND DOCUMENTATION IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE
19  *    NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED
20  *    TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT
21  *    THE USE OF THE SOFTWARE OR DOCUMENTATION WILL NOT INFRINGE ANY THIRD PARTY
22  *    PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
23  *
24  *    COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR
25  *    CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENTATION.
26  *
27  *    The name and trademarks of copyright holders may NOT be used in advertising or
28  *    publicity pertaining to the software without specific, written prior permission.
29  *    Title to copyright in this software and any associated documentation will at all
30  *    times remain with copyright holders.
31  */
32 package org.opengis.parameter;
33 
34 import org.opengis.annotation.UML;
35 import static org.opengis.annotation.Specification.*;
36 
37 
38 /**
39  * Thrown when an unexpected parameter was found in a
40  * {@linkplain ParameterDescriptorGroup parameter group}.
41  *
42  * @author  Martin Desruisseaux (IRD)
43  * @version 3.0
44  * @since   1.0
45  */
46 @UML(identifier="GC_InvalidParameterName", specification=OGC_01004)
47 public class InvalidParameterNameException extends IllegalArgumentException {
48     /**
49      * Serial number for inter-operability with different versions.
50      */
51     private static final long serialVersionUID = -8473266898408204803L;
52 
53     /**
54      * The invalid parameter name.
55      */
56     private final String parameterName;
57 
58     /**
59      * Creates an exception with the specified message and parameter name.
60      *
61      * @param  message The detail message. The detail message is saved for
62      *         later retrieval by the {@link #getMessage()} method.
63      * @param parameterName The invalid parameter name.
64      */
InvalidParameterNameException(String message, String parameterName)65     public InvalidParameterNameException(String message, String parameterName) {
66         super(message);
67         this.parameterName = parameterName;
68     }
69 
70     /**
71      * Returns the invalid parameter name.
72      *
73      * @return The name of the invalid parameter.
74      */
getParameterName()75     public String getParameterName() {
76         return parameterName;
77     }
78 }
79