001/**
002 * Copyright 2017, Digi International Inc.
003 *
004 * This Source Code Form is subject to the terms of the Mozilla Public
005 * License, v. 2.0. If a copy of the MPL was not distributed with this
006 * file, you can obtain one at http://mozilla.org/MPL/2.0/.
007 *
008 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 
009 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 
010 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR 
011 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 
012 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN 
013 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF 
014 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
015 */
016package com.digi.xbee.api.exceptions;
017
018/**
019 * This exception will be thrown when trying to open an interface with an
020 * invalid configuration. Usually happens when the XBee device is 
021 * communicating through a serial port.
022 * 
023 * @see ConnectionException
024 */
025public class InvalidConfigurationException extends ConnectionException {
026
027        // Constants
028        private static final long serialVersionUID = 1L;
029        private static final String DEFAULT_MESSAGE = "The configuration used to open the interface is invalid.";
030
031        /**
032         * Creates an {@code InvalidConfigurationException} with 
033         * {@value #DEFAULT_MESSAGE} as its error detail message.
034         */
035        public InvalidConfigurationException() {
036                super(DEFAULT_MESSAGE);
037        }
038        
039        /**
040         * Creates an {@code InvalidConfigurationException} with the specified 
041         * message.
042         * 
043         * @param message The associated message.
044         */
045        public InvalidConfigurationException(String message) {
046                super(message);
047        }
048        
049        /**
050         * Creates an {@code InvalidConfigurationException} with the specified 
051         * message and cause.
052         * 
053         * @param message The associated message.
054         * @param cause The cause of this exception.
055         * 
056         * @see Throwable
057         */
058        public InvalidConfigurationException(String message, Throwable cause) {
059                super(message, cause);
060        }
061}