/*
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
 *
 * Copyright (c) 1997-2017 Oracle and/or its affiliates. All rights reserved.
 *
 * The contents of this file are subject to the terms of either the GNU
 * General Public License Version 2 only ("GPL") or the Common Development
 * and Distribution License("CDDL") (collectively, the "License").  You
 * may not use this file except in compliance with the License.  You can
 * obtain a copy of the License at
 * https://oss.oracle.com/licenses/CDDL+GPL-1.1
 * or LICENSE.txt.  See the License for the specific
 * language governing permissions and limitations under the License.
 *
 * When distributing the software, include this License Header Notice in each
 * file and include the License file at LICENSE.txt.
 *
 * GPL Classpath Exception:
 * Oracle designates this particular file as subject to the "Classpath"
 * exception as provided by Oracle in the GPL Version 2 section of the License
 * file that accompanied this code.
 *
 * Modifications:
 * If applicable, add the following below the License Header, with the fields
 * enclosed by brackets [] replaced by your own identifying information:
 * "Portions Copyright [year] [name of copyright owner]"
 *
 * Contributor(s):
 * If you wish your version of this file to be governed by only the CDDL or
 * only the GPL Version 2, indicate your decision by adding "[Contributor]
 * elects to include this software in this distribution under the [CDDL or GPL
 * Version 2] license."  If you don't indicate a single choice of license, a
 * recipient has the option to distribute your version of this file under
 * either the CDDL, the GPL Version 2 or to extend the choice of license to
 * its licensees as provided above.  However, if you add GPL Version 2 code
 * and therefore, elected the GPL Version 2 license, then the option applies
 * only if the new code is made subject to such option by the copyright
 * holder.
 */

package javax.mail.internet;

The exception thrown when a wrongly formatted address is encountered.
Author:Bill Shannon, Max Spivak
/** * The exception thrown when a wrongly formatted address is encountered. * * @author Bill Shannon * @author Max Spivak */
public class AddressException extends ParseException {
The string being parsed.
@serial
/** * The string being parsed. * * @serial */
protected String ref = null;
The index in the string where the error occurred, or -1 if not known.
@serial
/** * The index in the string where the error occurred, or -1 if not known. * * @serial */
protected int pos = -1; private static final long serialVersionUID = 9134583443539323120L;
Constructs an AddressException with no detail message.
/** * Constructs an AddressException with no detail message. */
public AddressException() { super(); }
Constructs an AddressException with the specified detail message.
Params:
  • s – the detail message
/** * Constructs an AddressException with the specified detail message. * @param s the detail message */
public AddressException(String s) { super(s); }
Constructs an AddressException with the specified detail message and reference info.
Params:
  • s – the detail message
  • ref – the string being parsed
/** * Constructs an AddressException with the specified detail message * and reference info. * * @param s the detail message * @param ref the string being parsed */
public AddressException(String s, String ref) { super(s); this.ref = ref; }
Constructs an AddressException with the specified detail message and reference info.
Params:
  • s – the detail message
  • ref – the string being parsed
  • pos – the position of the error
/** * Constructs an AddressException with the specified detail message * and reference info. * * @param s the detail message * @param ref the string being parsed * @param pos the position of the error */
public AddressException(String s, String ref, int pos) { super(s); this.ref = ref; this.pos = pos; }
Get the string that was being parsed when the error was detected (null if not relevant).
Returns: the string that was being parsed
/** * Get the string that was being parsed when the error was detected * (null if not relevant). * * @return the string that was being parsed */
public String getRef() { return ref; }
Get the position with the reference string where the error was detected (-1 if not relevant).
Returns: the position within the string of the error
/** * Get the position with the reference string where the error was * detected (-1 if not relevant). * * @return the position within the string of the error */
public int getPos() { return pos; } @Override public String toString() { String s = super.toString(); if (ref == null) return s; s += " in string ``" + ref + "''"; if (pos < 0) return s; return s + " at position " + pos; } }